@charset "UTF-8";
.local-base {
  font-size: 1rem;
}

* {
  box-sizing: border-box;
}

html {
  line-height: 30px;
  font-size: 100%;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
}

body {
  margin: 0 auto;
  color: black;
  overflow-x: hidden;
  font-size: 18px;
  line-height: 1.66666667em;
}

main,
article,
aside,
details,
figcaption,
figure,
footer,
header,
nav,
section,
summary {
  display: block;
}

audio,
canvas,
video {
  display: inline-block;
  *display: inline;
  *zoom: 1;
}

a {
  color: #087faa;
  text-decoration: none !important;
  outline: 0;
  transition: all 0.2s ease;
  background: transparent;
}

img {
  border: 0;
  width: 100%;
  height: auto !important;
  vertical-align: middle;
  -ms-interpolation-mode: bicubic;
}

svg:not(:root) {
  overflow: hidden;
}

input {
  border-radius: 0;
}

.right {
  float: right;
}

.u-spacing-down {
  margin-bottom: 50px;
}

.u-spacing-up {
  margin-top: 50px;
}

.u-gap-down {
  margin-bottom: 18px;
}

.u-gap-up {
  margin-top: 18px;
}

.row {
  margin: 0 auto;
  padding: 0 18px;
}

.nav-tabs .nav-link  {
  color: #087faa !important;
}

.nav-tabs .nav-link.active  {
  color: black !important;
}

@media (min-width: 700px) {
  .row {
    max-width: 85vw;
  }
}

.more_info--link-centered {
  text-align: center;
}

h1, .h1 {
  font-size: 28px;
  line-height: 28px;
  font-family: "Lato", sans-serif;
  font-weight: 700;
  margin: 0;
}

@media screen and (min-width: 360px) {
  h1, .h1 {
    font-size: calc(28px + 27 * (100vw - 360px) / 840);
  }
}

@media screen and (min-width: 1200px) {
  h1, .h1 {
    font-size: 55px;
  }
}

@media screen and (min-width: 360px) {
  h1, .h1 {
    line-height: calc(28px + 27 * (100vw - 360px) / 840);
  }
}

@media screen and (min-width: 1200px) {
  h1, .h1 {
    line-height: 55px;
  }
}

h1--alt, .h1--alt {
  font-size: 28px;
  line-height: 28px;
  font-family: "Lato", sans-serif;
  font-weight: 700;
  margin: 0;
  font-family: "Lato", sans-serif;
  font-weight: 700;
}

@media screen and (min-width: 360px) {
  h1--alt, .h1--alt {
    font-size: calc(28px + 27 * (100vw - 360px) / 840);
  }
}

@media screen and (min-width: 1200px) {
  h1--alt, .h1--alt {
    font-size: 55px;
  }
}

@media screen and (min-width: 360px) {
  h1--alt, .h1--alt {
    line-height: calc(28px + 27 * (100vw - 360px) / 840);
  }
}

@media screen and (min-width: 1200px) {
  h1--alt, .h1--alt {
    line-height: 55px;
  }
}

h2, .h2 {
  font-size: 23px;
  line-height: 23px;
  font-family: "Lato", sans-serif;
  font-weight: 700;
}

@media screen and (min-width: 360px) {
  h2, .h2 {
    font-size: calc(23px + 5 * (100vw - 360px) / 840);
  }
}

@media screen and (min-width: 1200px) {
  h2, .h2 {
    font-size: 28px;
  }
}

@media screen and (min-width: 360px) {
  h2, .h2 {
    line-height: calc(23px + 5 * (100vw - 360px) / 840);
  }
}

@media screen and (min-width: 1200px) {
  h2, .h2 {
    line-height: 28px;
  }
}

h2--alt, .h2--alt {
  font-size: 23px;
  line-height: 23px;
  font-family: "Lato", sans-serif;
  font-weight: 700;
  font-family: "Lato", sans-serif;
  font-weight: 300;
}

@media screen and (min-width: 360px) {
  h2--alt, .h2--alt {
    font-size: calc(23px + 5 * (100vw - 360px) / 840);
  }
}

@media screen and (min-width: 1200px) {
  h2--alt, .h2--alt {
    font-size: 28px;
  }
}

@media screen and (min-width: 360px) {
  h2--alt, .h2--alt {
    line-height: calc(23px + 5 * (100vw - 360px) / 840);
  }
}

@media screen and (min-width: 1200px) {
  h2--alt, .h2--alt {
    line-height: 28px;
  }
}

h3, .h3 {
  font-size: 18px;
  line-height: 28px;
  font-family: "Lato", sans-serif;
  font-weight: 700;
  line-height: 30px;
  margin-bottom: 0;
}

@media screen and (min-width: 360px) {
  h3, .h3 {
    font-size: calc(18px + 5 * (100vw - 360px) / 840);
  }
}

@media screen and (min-width: 1200px) {
  h3, .h3 {
    font-size: 23px;
  }
}

@media screen and (min-width: 360px) {
  h3, .h3 {
    line-height: calc(28px + 4 * (100vw - 360px) / 840);
  }
}

@media screen and (min-width: 1200px) {
  h3, .h3 {
    line-height: 32px;
  }
}

h3--alt, .h3--alt {
  font-size: 23px;
  line-height: 23px;
  font-family: "Lato", sans-serif;
  font-weight: 700;
  font-family: "Lato", sans-serif;
  font-weight: 300;
}

@media screen and (min-width: 360px) {
  h3--alt, .h3--alt {
    font-size: calc(23px + 5 * (100vw - 360px) / 840);
  }
}

@media screen and (min-width: 1200px) {
  h3--alt, .h3--alt {
    font-size: 28px;
  }
}

@media screen and (min-width: 360px) {
  h3--alt, .h3--alt {
    line-height: calc(23px + 5 * (100vw - 360px) / 840);
  }
}

@media screen and (min-width: 1200px) {
  h3--alt, .h3--alt {
    line-height: 28px;
  }
}

h4, .h4 {
  font-family: "Lato", sans-serif;
}

.label {
  text-transform: uppercase;
  font-family: "Lato", sans-serif;
  font-size: 15px;
  font-weight: 700;
  color: #087faa;
}

.label--black {
  text-transform: uppercase;
  font-family: "Lato", sans-serif;
  font-size: 15px;
  font-weight: 300;
  color: black;
}

.file-size {
  text-transform: uppercase;
  font-family: "Lato", sans-serif;
}

body {
  font-family: "Roboto Slab", serif;
  font-weight: 400;
}

p {
  margin: 0 0 18px;
}

hr {
  border-style: solid;
  border-width: 1px 0 0;
  color: currentColor;
}

.font-secondary {
  font-family: "Roboto Slab", serif;
  font-weight: 400;
  font-family: "Lato", sans-serif;
}

code:before {
  content: '`';
}

code:after {
  content: '`';
}

pre code:after, pre code:before {
  content: '';
}

.rich-text {
  padding: 18px;
  clear: both;
}

@media (min-width: 980px) {
  .rich-text {
    padding: 0;
  }
}

@media (min-width: 980px) {
  .rich-text {
    max-width: 1100px;
    padding: 18px 72px 18px 18px;
  }
}

@media (min-width: 1200px) {
  .rich-text {
    padding: 18px 118px 18px 18px;
  }
}

.rich-text a {
  color: #087faa;
  position: relative;
  text-decoration: underline;
}

.rich-text a:focus {
  background-color: #62c4dd;
  color: white;
  outline: 0;
}

.rich-text a:hover, .rich-text a:active {
  outline: 0;
  background-color: #62c4dd;
  color: white;
}

.rich-text img {
  max-width: 100%;
  width: auto;
}

.teaser {
  font-size: 15px;
  line-height: 23px;
}

blockquote {
  border-left: 5px solid #62c4dd;
  display: block;
  padding: 18px;
  margin: 0;
  font-size: 23px;
  line-height: 46px;
}

cite {
  font-size: 15px;
  color: #62c4dd;
}

cite:before {
  content: "—";
}

.intro {
  font-family: "Lato", sans-serif;
  margin-bottom: 18px;
}

@media (min-width: 700px) {
  .intro {
    font-size: 23px;
  }
}

.caption {
  font-weight: 700;
  color: #62c4dd;
  margin: 0;
}

.caption--wrapper {
  padding: 18px;
  font-family: "Lato", sans-serif;
}

@media (min-width: 700px) {
  .caption--wrapper {
    padding: 0;
  }
}

@media (min-width: 700px) {
  .caption--wrapper {
    text-align: right;
    float: right;
    width: 60%;
    margin: 0 0 50px 0;
  }
  .caption--wrapper ~ * {
    clear: both;
  }
}

.caption--wrapper hr {
  border-bottom: 5px solid #62c4dd;
}

@media (min-width: 700px) {
  .caption--wrapper hr {
    width: 50px;
    float: right;
  }
}

.bg-img {
  background-size: cover;
}

.bg-img.default {
  background-repeat: no-repeat;
  background-size: contain;
}

img.page--image {
  margin-bottom: 9px;
}

.info-link {
  font-family: "Lato", sans-serif;
  font-size: 12px;
  position: relative;
  display: none;
}

@media (min-width: 980px) {
  .info-link {
    display: block;
    left: 82px;
    top: 3px;
    position: absolute;
  }
}

.social-link {
  width: 40px;
  height: 40px;
}

.social-link svg {
  display: inline-block;
  position: relative;
  left: 50%;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
  fill: #62c4dd;
  height: 25px;
  width: 25px;
}

.social-link:hover, .social-link:focus {
  background-color: black;
  outline: 0;
}

.social-link.twitter:hover svg, .social-link.twitter:focus svg {
  fill: #1da1f2;
}

.social-link.instagram:hover svg, .social-link.instagram:focus svg {
  fill: #d93175;
}

.social-link.slideshare:hover svg, .social-link.slideshare:focus svg {
  fill: #008CC9;
}

.social-link.facebook:hover svg, .social-link.facebook:focus svg {
  fill: #4267b2;
}

.social-link.google-plus:hover svg, .social-link.google-plus:focus svg {
  fill: #d34836;
}

.animate-fade {
  transition: opacity 0.3s ease-out;
}

.animate-fade:hover {
  opacity: 0;
}

.js--hide {
  display: none;
}

.visually-hidden {
  position: absolute !important;
  clip: rect(1px, 1px, 1px, 1px);
  overflow: hidden;
  height: 1px;
  width: 1px;
  word-wrap: normal;
}

.layout-content {
  margin: 0 auto;
  padding: 18px;
}

@media (min-width: 700px) {
  .layout-content {
    max-width: 85vw;
  }
}

.button {
  font-family: "Lato", sans-serif;
  position: relative;
  margin-right: 26px;
}

.button:link, .button:visited {
  color: black;
  text-decoration: none;
}

.button:hover, .button:active {
  color: black;
  text-decoration: underline;
  background-color: transparent;
}

.button svg {
  fill: #62c4dd;
  height: 20px;
  width: 26px;
  position: relative;
  transition: fill 0.3s ease-out;
}

.button:hover {
  cursor: pointer;
}

.button:hover svg {
  fill: black;
}

.button:focus {
  text-decoration: underline;
  outline: 0;
}

.button--box {
  font-family: "Lato", sans-serif;
  position: relative;
  margin-right: 26px;
  float: none;
  padding: 18px 50px 18px 30px;
  border: 3px solid #62c4dd;
  color: #62c4dd;
  font-weight: 700;
  background-color: transparent;
  display: inline-block;
  transition: background-color 0.3s ease-out;
}

.button--box:link, .button--box:visited {
  color: black;
  text-decoration: none;
}

.button--box:hover, .button--box:active {
  color: black;
  text-decoration: underline;
  background-color: transparent;
}

.button--box svg {
  fill: #62c4dd;
  height: 20px;
  width: 26px;
  position: relative;
  transition: fill 0.3s ease-out;
}

.button--box:hover {
  cursor: pointer;
}

.button--box:hover svg {
  fill: black;
}

.button--box:focus {
  text-decoration: underline;
  outline: 0;
}

.button--box:hover, .button--box:focus {
  background-color: #62c4dd;
  color: black;
}

.button--box:hover svg, .button--box:focus svg {
  fill: black;
}

.button--simple {
  text-transform: uppercase;
  font-weight: 700;
  color: #62c4dd;
  text-decoration: underline;
}

.button--wrapper a {
  display: block;
  background-color: #62c4dd;
  padding: 9px 18px;
  color: black;
}

.button--wrapper a:hover {
  background-color: #38b4d4;
}

.button--wrapper svg {
  fill: black;
}

.button-black {
  border: 3px solid black;
  font-weight: 700;
  background-color: black;
  transition: background-color 0.3s ease-out;
}

.button-black:hover, .button-black:focus {
  background-color: transparent;
  color: black;
}

.button-black:hover svg, .button-black:focus svg {
  fill: black;
}

.button--back-to-top {
  float: right;
}

.button--wrapper .button {
  display: block;
  background-color: #62c4dd;
  padding: 9px 18px;
  margin: 18px;
  color: black;
  text-align: left;
}

.button--wrapper .button:hover {
  background-color: #38b4d4;
}

.button--wrapper svg {
  fill: black;
}

a.button-wysiwyg {
  display: block;
  background-color: #62c4dd;
  padding: 9px 18px;
  color: black;
}

@media (min-width: 700px) {
  a.button-wysiwyg {
    display: inline-block;
    width: 45%;
    margin-right: 18px;
  }
}

a.button-wysiwyg:hover {
  background-color: #38b4d4;
}

a.button-wysiwyg:after {
  display: inline-block;
  content: "";
  height: 18px;
  width: 20px;
  margin-left: 9px;
  background: url('data:image/svg+xml;utf8,<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="18" viewBox="0 0 36 32"><title>triangle</title><path fill="#000000" d="M35.563 16l-30.555 13.75v-27.5z"></path></svg>') no-repeat left center;
}

.attribute {
  margin: 0;
}

.attribute svg {
  fill: #62c4dd;
  height: 20px;
  width: 26px;
  margin-right: 6px;
}

.meta {
  font-family: "Lato", sans-serif;
  font-size: 15px;
  padding: 18px 0;
  margin-bottom: 18px;
  border-bottom: 1px solid black;
  position: relative;
  overflow: hidden;
}

.meta .button {
  margin: 0 0 0 26px;
}

.meta .button svg {
  margin-left: -26px;
}

.labels {
  margin-bottom: 18px;
}

.meta .attribute {
  position: relative;
  padding-left: 28px;
}

.meta svg {
  fill: #62c4dd;
  height: 20px;
  width: 26px;
  display: inline-block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  transition: fill 0.3s ease-out;
  height: 18px;
  left: 0;
}

.meta .button svg {
  height: 18px;
}

.list--floated-2 .btn {
  width: 100%;
  border: 0;
  border-radius: 0;
}

.box {
  padding: 18px;
}

@media (min-width: 700px) {
  .box {
    padding: 0;
  }
}

.cta {
  font-family: "Lato", sans-serif;
  font-size: 18px;
  line-height: 1.6;
  color: black;
  background-color: #62c4dd;
  overflow: hidden;
}

.cta p {
  padding: 50px 18px 18px 18px;
}

.cta .button--box {
  margin: 18px;
  color: black;
}

.cta .button--box svg {
  fill: black;
}

.more-like-this {
  color: black;
  padding: 50px;
}

.more-like-this svg {
  fill: black;
}

@media (min-width: 700px) {
  .more-like-this {
    padding: 18px;
  }
}

.card {
  text-align: center;
  border: 1px solid lightgray;
}

.card .card--inner {
  padding: 18px 9px;
}

@media (min-width: 700px) {
  .card .card--image {
    width: 100%;
  }
}

.card .card--image img {
  transition: opacity 0.3s ease-out;
  max-width: 100%;
}

.card .button--wrapper a {
  margin: 36px 18px;
}

.featured .card {
  background-color: #62c4dd;
  color: black;
  border: 0;
  text-align: left;
}

.featured .card .label {
  color: black;
}

.featured .card a {
  color: black;
}

.featured .card a:hover, .featured .card a:focus {
  color: black;
}

.featured .card .card--inner {
  padding: 18px;
}

.featured .card .card--details svg,
.featured .card svg {
  fill: black;
}

.featured .card .button {
  color: black;
}

.featured .card .button:focus {
  background-color: black;
  color: #62c4dd;
}

.cards--paragraph .card:hover {
  background-color: #77cce2;
  color: black;
}

.cards--paragraph .card:hover .card--image {
  opacity: 0.8;
}

.cards--paragraph .card:hover .card--inner {
  background-color: #77cce2;
}

.cards--paragraph .card:hover h2 a {
  color: black;
}

.cards--paragraph .card:hover h2 a:hover {
  text-decoration: underline;
}

.card .card--inner:first-of-type {
  min-height: 250px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
}

.card-event {
  position: relative;
  border-top: 1px solid black;
  border-bottom: 1px solid black;
  overflow: hidden;
}

.card-event .label {
  font-size: 14px;
  color: #62c4dd;
  font-family: "Lato", sans-serif;
  margin: 0;
  text-transform: uppercase;
}

.card-event h3 {
  margin: 0 0 18px 0;
}

.card-event .card--details {
  margin-bottom: 18px;
}

.card.card-logo {
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: auto 120px;
      grid-template-rows: auto 120px;
  height: 100%;
}

.card.card-logo svg {
  fill: #62c4dd;
}

.card.card-logo .button:focus {
  color: #62c4dd;
}

.card.card-logo .button--wrapper {
  margin-top: 18px;
}

.card.card-logo:hover {
  background-color: #77cce2;
  color: black;
}

.card.card-logo:hover .card--inner {
  background-color: #77cce2;
}

.card.card-logo:hover svg {
  fill: black;
}

.card.card-logo:hover .button:link {
  color: black;
}

.card.card-logo:hover h3 {
  text-decoration: underline;
}

.card.card-logo .card--inner {
  -ms-grid-row: 2;
  -ms-grid-column-span: 1;
}

.cards--box li {
  background-color: #62c4dd;
}

@media (min-width: 980px) {
  .cards--box li {
    margin: 0 18px 0 0;
  }
}

.cards--box li .card--image {
  margin: 0;
  overflow: hidden;
}

.cards--box li .card--inner {
  background-color: #62c4dd;
  color: black;
  height: 100%;
}

.contact-details {
  list-style: none;
  list-style-type: none;
  margin: 0;
  padding: 0;
  font-family: "Lato", sans-serif;
}

.contact-details li {
  padding-bottom: 18px;
}

.contact-details p {
  margin: 0;
}

.contact-details--wrapper {
  max-width: 35%;
}

.contact--wrapper {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: end;
      align-items: flex-end;
  -ms-flex-pack: justify;
      justify-content: space-between;
}

.calendardate {
  display: -ms-flexbox;
  display: flex;
  width: 160px;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  margin: 38px 0 0 0;
}

.calendardate--item {
  border: 1px solid black;
  text-align: center;
  text-transform: uppercase;
  display: inline-block;
}

.calendardate-day {
  background-color: #62c4dd;
  color: white;
  font-size: 15px;
  margin: 0;
  padding: 0 9px;
}

.calendardate-date {
  font-family: "Lato", sans-serif;
  font-size: 36px;
  font-weight: 700;
  padding: 4.5px 9px 0;
  margin: 0;
}

.calendardate-month {
  margin: 0;
  padding: 0 9px;
  line-height: 1.2em;
}

.calendardate-year {
  margin: 0;
  padding: 0 9px;
  line-height: 1.2em;
}

.calendardate-separator {
  margin: 0;
  padding: 0 9px;
}

.details {
  font-family: "Lato", sans-serif;
}

.details--item {
  margin-right: 9px;
  padding-right: 9px;
  border-right: 3px solid #62c4dd;
}

.details--item:last-of-type {
  border-right: 0;
}

.external-button {
  background-color: #62c4dd;
  color: white;
  padding: 7px 8px 5px;
}

.file {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 70% 1fr 1fr;
      grid-template-columns: 70% 1fr 1fr;
  grid-column-gap: 18px;
  max-width: 70%;
  border-bottom: 1px solid black;
  padding: 9px 0;
}

.webform-submission-form {
  margin: 0 auto;
  max-width: 85vw;
  padding: 18px;
}

.description {
  font-family: "Lato", sans-serif;
  font-weight: 300;
  font-size: 15px;
  line-height: 18px;
  margin-bottom: 23px !important;
}

label {
  font-family: "Lato", sans-serif;
}

button,
input {
  border: 0;
  padding: 18px;
  margin-bottom: 18px;
  font-size: 18px;
  border: 1px solid #62c4dd;
  border-radius: 0;
}

@media (min-width: 700px) {
  button,
  input {
    width: auto;
  }
}

button[type="file"]::-webkit-file-upload-button, button[type="submit"], button[type="image"],
input[type="button"],
input[type="file"]::-webkit-file-upload-button,
input[type="submit"],
input[type="image"] {
  border: 1px solid #62c4dd;
  background-color: #62c4dd;
  color: black;
}

button[type="file"]::-webkit-file-upload-button:hover, button[type="file"]::-webkit-file-upload-button:focus, button[type="submit"]:hover, button[type="submit"]:focus, button[type="image"]:hover, button[type="image"]:focus,
input[type="button"]:hover,
input[type="button"]:focus,
input[type="file"]::-webkit-file-upload-button:hover,
input[type="file"]::-webkit-file-upload-button:focus,
input[type="submit"]:hover,
input[type="submit"]:focus,
input[type="image"]:hover,
input[type="image"]:focus {
  background-color: #62c4dd;
  opacity: 0.8;
  color: black;
}

button[type="reset"],
input[type="reset"] {
  color: #087faa;
  background-color: white;
}

input[type="checkbox"] {
  width: auto;
}

button {
  background-color: #62c4dd;
  color: black;
}

form label {
  display: block;
}

.graphical-quicklinks {
  padding: 18px;
}

.graphical-quicklinks.bg-img {
  background-position: 50% 15%;
}

@media (min-width: 980px) {
  .graphical-quicklinks {
    padding: 36px;
  }
}

.graphical-quicklinks h2 {
  font-size: 46px;
  line-height: 1.2;
  color: white;
  text-shadow: 2px 2px 3px black;
}

.graphical-quicklinks ul {
  list-style: none;
  list-style-type: none;
  margin: 0;
  padding: 0;
}

@media (min-width: 980px) {
  .graphical-quicklinks ul li {
    display: inline;
    padding-right: 18px;
  }
  .graphical-quicklinks ul li:after {
    content: "|";
    color: white;
    padding-left: 18px;
  }
  .graphical-quicklinks ul li:last-child:after {
    content: "";
  }
}

.graphical-quicklinks a {
  font-size: 23px;
  text-shadow: 1px 1px 1px black;
  color: white;
}

.graphical-quicklinks a:hover, .graphical-quicklinks a:focus {
  text-decoration: underline;
}

.hero {
  position: relative;
  max-height: 370px;
  overflow: hidden;
  border-bottom: 2px solid #62c4dd;
}

.hero--image {
  display: none;
}

@media (min-width: 480px) {
  .hero--image {
    opacity: 0.8;
    display: block;
  }
}

.hero--description {
  display: inline-block;
  width: 100%;
  background-color: #62c4dd;
  padding: 18px;
}

@media (min-width: 700px) {
  .hero--description {
    background-color: rgba(255, 255, 255, 0.3);
    width: 70%;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-right: -50%;
    transform: translate(-50%, -50%);
  }
}

@media (min-width: 980px) {
  .hero--description {
    width: 55%;
  }
}

.standfirst {
  padding: 0;
  font-weight: 300;
  margin: 0;
  display: inline;
  color: black;
}

@media (min-width: 980px) {
  .standfirst {
    padding: 12px;
    line-height: 45px;
  }
}

.link {
  color: black;
}

.codeenigma {
  font-family: "Lato", sans-serif;
  font-size: 15px;
  padding: 0 10px;
  -ms-flex-item-align: end;
      align-self: flex-end;
}

.codeenigma__text {
  padding-right: 18px;
  font-size: 14px;
  color: white;
}

.codeenigma__container {
  display: inline-block;
  overflow: hidden;
  vertical-align: text-top;
}

.codeenigma__logo {
  width: 88px;
  height: 35px;
}

#codeenigma .t {
  transition: fill 0.3s ease-out;
  fill: white;
}

#codeenigma .l {
  transition: fill 0.3s ease-out;
  fill: #DCDCDC;
}

#codeenigma .m {
  transition: fill 0.3s ease-out;
  fill: #CECECE;
}

#codeenigma .d {
  transition: fill 0.3s ease-out;
  fill: #8B8B8B;
}

.codeenigma:hover #codeenigma .l {
  fill: #FCE07F;
}

.codeenigma:hover #codeenigma .m {
  fill: #FBD342;
}

.codeenigma:hover #codeenigma .d {
  fill: #BD9F2E;
}

.codeenigma:focus #codeenigma .t {
  fill: #8B8B8B;
}

.codeenigma:focus #codeenigma .l {
  fill: #FCE07F;
}

.codeenigma:focus #codeenigma .m {
  fill: #FBD342;
}

.codeenigma:focus #codeenigma .d {
  fill: #BD9F2E;
}

#skiptocontent a {
  padding: 6px;
  position: absolute;
  top: -40px;
  left: 0px;
  color: white;
  background: transparent;
  transition: top 0.3s ease-out;
  transition: background 0.3s ease-out;
  transition: top 0.3s ease-out, background 0.3s linear;
  z-index: 100;
}

#skiptocontent a:focus {
  position: absolute;
  left: 0px;
  top: 0px;
  background: #62c4dd;
  outline: 0;
  transition: top 0.3s ease-in, background 0.2s linear;
}

.list--item.featured {
  margin: 0 0 50px;
  border-top: 0;
  display: block;
}

@media (min-width: 980px) {
  .list--item.featured {
    -ms-flex-align: baseline;
        align-items: baseline;
  }
}

.list--item.featured .label {
  color: black;
}

.list--item.featured .calendardate {
  padding: 18px 9px 0;
  margin: 0;
}

.list--item.featured .list--text {
  padding: 36px 18px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
}

.list--item.featured .list--text .featured-text:hover,
.list--item.featured .list--text .more-like-this:hover {
  background-color: #77cce2;
  color: black;
}

.list--item.featured .list--text .featured-text:hover h2, .list--item.featured .list--text .featured-text:hover h3, .list--item.featured .list--text .featured-text:hover p, .list--item.featured .list--text .featured-text:hover .label,
.list--item.featured .list--text .more-like-this:hover h2,
.list--item.featured .list--text .more-like-this:hover h3,
.list--item.featured .list--text .more-like-this:hover p,
.list--item.featured .list--text .more-like-this:hover .label {
  color: black;
}

.list--item.featured .list--text .featured-text:hover svg,
.list--item.featured .list--text .more-like-this:hover svg {
  fill: black;
}

.list--item.featured .list--text .featured-text:hover .button:hover,
.list--item.featured .list--text .more-like-this:hover .button:hover {
  color: black;
}

.list--item.featured .list--text .featured-text {
  height: 100%;
  padding: 36px 36px 18px 36px;
}

.list--item.featured .list--text .featured-text p {
  color: black;
}

.list--item.featured .list--text .more-like-this {
  border-top: 5px solid #62c4dd;
  padding: 18px 36px 18px 36px;
}

.list--item.featured .list--text .more-like-this p {
  color: black;
}

.list--item.featured .list--text h2 {
  color: black;
  margin-top: 0;
}

.list--item.featured .list--text h3 {
  color: black;
}

.homepage-featured {
  border-top: 0;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
      grid-template-columns: 1fr;
  -ms-grid-rows: 1fr 1fr;
      grid-template-rows: 1fr 1fr;
}

.homepage-featured .list--image-wrapper {
  background-size: cover;
  height: 100%;
}

.homepage-featured .featured-text {
  padding: 18px 0;
  background-color: white;
}

@media (min-width: 980px) {
  .homepage-featured .featured-text {
    padding: 50px;
  }
}

.homepage-featured h2 {
  margin-top: 0;
}

.list-item__tender h4.label {
  display: inline;
  margin-right: 9px;
}

.list-item__tender span {
  font-size: 15px;
}

.media-list {
  list-style: none;
  list-style-type: none;
  margin: 0;
  padding: 0;
  padding: 18px;
}

.media-list li {
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: 1fr 1fr;
      grid-template-rows: 1fr 1fr;
  border-bottom: 1px solid black;
  padding: 9px 0;
}

.media-list li:first-of-type {
  border-top: 1px solid black;
}

.media-list li div:first-of-type {
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
}

.media-list li div:last-of-type {
  -ms-grid-row: 2;
  -ms-grid-row-span: 1;
}

@media (min-width: 480px) {
  .media-list li {
    -ms-grid-columns: 1fr 1fr;
        grid-template-columns: 1fr 1fr;
    -ms-grid-rows: 1fr;
        grid-template-rows: 1fr;
  }
  .media-list li div:first-of-type {
    -ms-grid-column: 1;
    -ms-grid-row-span: 1;
    -ms-grid-row-align: center;
  }
  .media-list li div:last-of-type {
    -ms-grid-column: 2;
    -ms-grid-row-span: 1;
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
  }
}

.media-list li img,
.media-list li .views-field-field-video {
  display: block;
}

@media (min-width: 480px) {
  .media-list li img,
  .media-list li .views-field-field-video {
    width: auto;
    margin-right: 18px;
  }
}

.media-list li .file {
  display: block;
  max-width: none;
  border-bottom: 0;
}

.rich-text .media-list {
  padding: 18px 0;
}

.list--item__simple {
  list-style: none;
  list-style-type: none;
  margin: 0;
  padding: 0;
}

.list--item__simple h4 {
  margin: 0;
}

.list--item__simple h4 a {
  color: black;
}

.list--item__simple h4 a:focus {
  outline: none;
  background-color: #62c4dd;
  color: white;
}

.list--item__simple h4 a:hover {
  text-decoration: underline;
}

@media (min-width: 700px) {
  .logos-block {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: baseline;
        align-items: baseline;
    -ms-flex-pack: justify;
        justify-content: space-between;
  }
}

@media (min-width: 980px) {
  .logos-block {
    padding: 18px;
  }
}

.logos-block .logo {
  margin: 18px 0;
}

.logos-block .partners {
  margin-top: 50px;
}

.statictoolbar {
	display: flex;
	justify-content: end;
	margin-top: 0.4em;
	margin-right: 0.95em;
}

.breadcrumb {
  list-style: none;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0;
  padding: 0 0 18px 0;
}

.breadcrumb .label {
  padding-right: 9px;
  font-weight: inherit;
}

.breadcrumb .label:hover, .breadcrumb .label:focus {
  text-decoration: underline;
}

.breadcrumb .label svg {
  width: 12px;
  height: 12px;
}

.breadcrumb .label:last-of-type:hover, .breadcrumb .label:last-of-type:focus {
  text-decoration: none;
}

.breadcrumb .label:last-of-type a {
  color: black;
}

.breadcrumb .label:last-of-type svg {
  display: none;
}

@media (min-width: 700px) {
  .fancy .breadcrumb {
    -ms-flex-pack: center;
        justify-content: center;
  }
}

.nav--footer {
  list-style: none;
  list-style-type: none;
  margin: 0;
  padding: 0;
  font-family: "Lato", sans-serif;
  font-size: 15px;
  width: 100%;
}

@media (min-width: 980px) {
  .nav--footer {
    width: auto;
  }
}

@media (min-width: 700px) {
  .nav--footer li {
    display: inline;
  }
}

.nav--footer a {
  margin-right: 18px;
  font-family: "Lato", sans-serif;
  font-weight: 700;
  color: black;
}

.nav--footer a:hover, .nav--footer a:active, .nav--footer a:focus {
  text-decoration: underline;
}

.menu--horiz {
  list-style: none;
  list-style-type: none;
  margin: 0;
  padding: 0;
}

.menu--horiz li {
  display: inline;
  margin-right: 18px;
}

.menu--horiz li a {
  color: black;
  text-transform: uppercase;
  font-family: "Lato", sans-serif;
  font-weight: 300;
}

.nav__main {
  list-style: none;
  list-style-type: none;
  margin: 0;
  padding: 0;
  position: relative;
}

@media (min-width: 700px) {
  .nav__main {
    text-align: right;
  }
}

.nav__main li {
  font-family: "Lato", sans-serif;
  font-weight: 400;
  font-size: 18px;
  border-bottom: 1px solid white;
  height: 10vh;
}

@media (min-width: 700px) {
  .nav__main li {
    padding-right: 36px;
    display: inline;
    border-bottom: 0;
    height: auto;
  }
}

@media (min-width: 980px) {
  .nav__main li {
    font-size: 22px;
  }
}

.nav__main li:last-child {
  padding-right: 0;
}

.nav__main li.menu-item--active-trail a {
  color: #62c4dd;
  font-weight: 700;
}

.nav__main li a {
  position: relative;
  position: relative;
  color: white;
  display: inline-block;
  position: relative;
  left: 50%;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
  letter-spacing: -1px;
  word-spacing: 5px;
  text-transform: uppercase;
}

.nav__main li a:after {
  content: '';
  position: absolute;
  bottom: -1px;
  right: 0;
  width: 0;
  height: 1px;
  background: #62c4dd;
  transition: all 0.3s ease 0s;
}

.nav__main li a:hover:after {
  width: 100%;
  left: 0;
  right: auto;
}

.nav__main li a:after {
  content: '';
  position: absolute;
  bottom: -1px;
  right: 0;
  width: 0;
  height: 1px;
  background: #62c4dd;
  transition: all 0.3s ease 0s;
}

.nav__main li a:focus {
  outline: 0;
}

.nav__main li a:focus:after {
  width: 100%;
  left: 0;
  right: auto;
}

@media (min-width: 700px) {
  .nav__main li a {
    color: black !important;
    display: inline-block;
    position: relative;
    left: 50%;
    top: 50%;
    transform: translateX(-50%) translateY(-50%);
    position: static;
    left: auto;
    transform: none;
    position: relative;
  }
}

.news-tags {
  list-style: none;
  list-style-type: none;
  margin: 0;
  padding: 0;
}

.news-tags li {
  display: inline-block;
  background-color: #62c4dd;
}

.news-tags .button {
  border: 1px solid #62c4dd;
  border-bottom: 0;
  padding: 9px;
  margin-right: 0;
  display: block;
}

.news-tags .active {
  background-color: white;
  color: black;
}

.nav__section {
  padding: 0;
  margin-top: 0;
}

.nav__section li {
  list-style: none;
  list-style-type: none;
  margin: 0;
  padding: 0;
  border-top: 1px solid black;
}

.nav__section a {
  padding: 18px;
  font-family: "Lato", sans-serif;
  font-weight: 700;
  color: black;
}

@media (min-width: 700px) {
  .nav__section a {
    padding: 0;
  }
}

.menu-item--active-trail > .nav__section a {
  color: #62c4dd;
  font-weight: 700;
}

.nav__section a:hover, .nav__section a:focus {
  text-decoration: underline;
  outline: 0;
}

.nav__section a.is-active {
  color: #62c4dd;
  font-weight: 700;
}

.nav__section ul {
  padding: 0;
}

.nav__section ul a {
  font-weight: 300;
  padding-left: 30px;
  display: inline-block;
}

@media (min-width: 980px) {
  .nav__sub-wrapper {
    right: -150px;
    position: relative;
  }
}

.nav__sub {
  list-style: none;
  list-style-type: none;
  margin: 0;
  padding: 0;
  text-align: center;
  color: white;
  column-count: 2;
  padding: 25px 0;
}

@media (min-width: 980px) {
  .nav__sub {
    text-align: right;
    float: right;
    color: #62c4dd;
    column-count: unset;
    padding: 0;
    display: inline-table;
  }
}

.nav__sub li {
  font-family: "Lato", sans-serif;
  font-weight: 400;
}

@media (min-width: 980px) {
  .nav__sub li {
    display: inline;
    padding-left: 9px;
  }
}

.nav__sub li.menu-item--active-trail a {
  color: #62c4dd;
  font-weight: 700;
}

.nav__sub li a {
  color: white;
  position: relative;
  position: relative;
  font-size: 15px;
}

.nav__sub li a:after {
  content: '';
  position: absolute;
  bottom: -1px;
  right: 0;
  width: 0;
  height: 1px;
  background: #62c4dd;
  transition: all 0.3s ease 0s;
}

.nav__sub li a:hover:after {
  width: 100%;
  left: 0;
  right: auto;
}

.nav__sub li a:after {
  content: '';
  position: absolute;
  bottom: -1px;
  right: 0;
  width: 0;
  height: 1px;
  background: #62c4dd;
  transition: all 0.3s ease 0s;
}

.nav__sub li a:focus {
  outline: 0;
}

.nav__sub li a:focus:after {
  width: 100%;
  left: 0;
  right: auto;
}

@media (min-width: 980px) {
  .nav__sub li a {
    color: #000 !important;
  }
}

.useful-links {
  width: 100%;
}

.useful-links h2 {
  color: black;
}

.nav__useful-links {
  margin: 0;
  padding: 0;
}

.nav__useful-links li {
  list-style: none;
  list-style-type: none;
  margin: 0;
  padding: 0;
}

.nav__useful-links a {
  font-family: "Lato", sans-serif;
  font-weight: 700;
  color: black;
  border-bottom: 0;
  position: relative;
}

.nav__useful-links a:after {
  content: '';
  position: absolute;
  bottom: -1px;
  right: 0;
  width: 0;
  height: 1px;
  background: black;
  transition: all 0.3s ease 0s;
}

.nav__useful-links a:hover:after {
  width: 100%;
  left: 0;
  right: auto;
}

.newsletter .h2--alt {
  line-height: 74px;
}

.newsletter input {
  width: 100%;
}

.newsletter input[type="submit"] {
  float: none;
  padding: 18px 50px 18px 30px;
  border: 3px solid black;
  font-weight: 700;
  background-color: black;
  transition: background-color 0.3s ease-out;
  color: white;
}

.newsletter input[type="submit"]:hover, .newsletter input[type="submit"]:focus {
  background-color: transparent;
  color: black;
}

.newsletter input[type="submit"]:hover svg, .newsletter input[type="submit"]:focus svg {
  fill: black;
}

.message {
  margin: 9px auto;
  padding: 18px;
  border-left: 9px solid #62c4dd;
}

.message::before {
  content: "Status Message";
  color: #62c4dd;
  font-size: 15px;
  font-family: "Lato", sans-serif;
  text-transform: uppercase;
  display: block;
}

@media (min-width: 700px) {
  .message {
    max-width: 85vw;
  }
}

.message--error {
  border-left-color: red;
}

.message--error::before {
  content: "Error Message";
  color: #941333;
  font-size: 15px;
  font-family: "Lato", sans-serif;
  text-transform: uppercase;
  display: block;
}

.page-title {
  background-color: white;
  padding: 18px;
}

@media (min-width: 700px) {
  .page-title {
    padding: 0;
  }
}

@media (min-width: 700px) {
  .page-title {
    padding: 72px 18px 18px;
  }
}

@media (min-width: 980px) {
  .page-title {
    margin: 0 auto 0 auto;
  }
  .page-title h1 {
    margin-bottom: 36px;
  }
  .page-title .intro {
    margin-bottom: 50px;
  }
}

@media (min-width: 1200px) {
  .page-title {
    max-width: 85vw;
  }
}

.page-title--inner {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: start;
      align-items: start;
  -ms-flex-pack: justify;
      justify-content: space-between;
  border-bottom: 1px solid black;
}

.page-details {
  display: inline-block;
  border-top: 1px solid black;
  border-bottom: 1px solid black;
  width: 100%;
}

.js--assumed-listing-page .page-details {
  width: auto;
}

.page-details .page-details--inner {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-align: center;
      align-items: center;
}

.project.page-title--wrapper {
  position: relative;
}

.project.page-title--wrapper #mapid {
  height: 82.7vh;
  margin: 0 auto;
}

.project.page-title--wrapper .page-title {
  margin: 0 0 50px 0;
  padding: 0;
  overflow: hidden;
  max-width: initial;
}

.project.page-title--wrapper .page-title .page-details {
  width: 100%;
  border-top-width: 5px;
  border-bottom-width: 5px;
}

.project.page-title--wrapper .page-title .page-details--inner {
  max-width: 85vw;
  margin: 0 auto;
  padding: 0 18px;
}

.project.page-title--wrapper .page-title--inner {
  background-color: white;
  border: 3px solid #62c4dd;
  position: absolute;
  top: 100px;
  z-index: 1000;
  max-height: 75vh;
  width: 30vw;
  padding: 50px;
  overflow: scroll;
}

.fancy {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: end;
      align-items: flex-end;
  height: auto;
}

@media (min-width: 700px) {
  .fancy {
    height: 86vh;
    text-align: center;
  }
}

.fancy .page-title {
  background-color: white;
  padding: 50px 18px;
}

@media (min-width: 700px) {
  .fancy .page-title {
    padding: 0;
  }
}

@media (min-width: 700px) {
  .fancy .page-title {
    padding: 63px 18px 18px;
  }
}

@media (min-width: 980px) {
  .fancy .page-title {
    margin: 0 auto 0 auto;
    padding: 36px 50px 0;
  }
}

@media (min-width: 1200px) {
  .fancy .page-title {
    max-width: 85vw;
    min-width: 45vw;
  }
}

.fancy .page-title h1 {
  margin: 0 auto 18px auto;
}

.fancy .page-title .intro {
  max-width: 100%;
}

.fancy .page-title--inner {
  max-width: 100%;
  display: inherit;
  border-bottom: 0;
}

.fancy .page-details {
  display: -ms-inline-flexbox;
  display: inline-flex;
  border-bottom: 0;
  width: auto;
}

.fancy .page-details .page-details--inner {
  display: initial;
}

.fancy .share {
  border-top: 0;
}

.fancy .share .social-list__inner {
  -ms-flex-pack: center;
      justify-content: center;
  text-align: left;
}

.js--assumed-listing-page .fancy {
  height: auto;
}

@media (min-width: 980px) {
  .js--assumed-listing-page .fancy {
    text-align: center;
  }
}

@media (min-width: 1200px) {
  .js--assumed-listing-page .fancy {
    height: 45vh;
  }
}

.project.page-title--wrapper {
  position: relative;
}

.project.page-title--wrapper #mapid {
  height: 82.7vh;
  margin: 0 auto;
}

.project.page-title--wrapper .page-title {
  margin: 0 0 50px 0;
  padding: 0;
  overflow: hidden;
  max-width: initial;
}

.project.page-title--wrapper .page-title .page-details {
  width: 100%;
  border-top-width: 5px;
  border-bottom-width: 5px;
}

.project.page-title--wrapper .page-title .page-details--inner {
  max-width: 85vw;
  margin: 0 auto;
  padding: 0 18px;
}

.project.page-title--wrapper .page-title--inner {
  background-color: white;
  border: 3px solid #62c4dd;
  position: absolute;
  top: 100px;
  z-index: 1000;
  max-height: 75vh;
  width: 25vw;
  padding: 50px;
  overflow: scroll;
}

.pager {
  max-width: 85vw;
  margin: 0 auto;
}

.pager__items {
  text-align: center;
}

.pager__item {
  display: inline-block;
  color: black;
  margin: 0;
  padding: 0 0.4em;
  font-family: "Lato", sans-serif;
  text-transform: uppercase;
}

.pager a {
  font-weight: 700;
  font-size: 23px;
}

.tabs.primary {
  list-style: none;
  list-style-type: none;
  margin: 0;
  padding: 0;
  background-color: #62c4dd;
  text-align: center;
  overflow: hidden;
  padding-top: 9px;
}

.tabs.primary li {
  display: inline-block;
  background-color: white;
}

.tabs.primary li.is-active {
  opacity: 0.5;
}

.tabs.primary li.is-active a {
  color: #62c4dd;
}

.tabs.primary li a {
  padding: 9px;
  border: 1px solid #62c4dd;
  border-bottom: 0;
  color: black;
  font-family: "Lato", sans-serif;
  text-transform: uppercase;
}

.tabs.primary li a:focus {
  outline: 0;
  background-color: #62c4dd;
  color: white;
}

.provider {
  font-family: "Lato", sans-serif;
}

.provider--list {
  margin-bottom: 18px;
}

.provider--list .list--item {
  display: block;
}

.provider--list .list--item:first-of-type {
  border-top: 0;
}

.provider--list .card--image {
  margin-bottom: 18px;
}

.provider h3 {
  margin: 0;
}

.provider--wrapper {
  clear: both;
}

.provider {
  padding: 18px;
  border-bottom: 1px solid black;
}

.provider .details {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 15% 1fr;
      grid-template-columns: 15% 1fr;
  grid-gap: 0 18px;
}

.provider h3 {
  font-size: 18px;
  justify-self: end;
}

.provider p {
  margin: 0;
}

.main-provider {
  display: -ms-grid;
  display: grid;
  grid-gap: 18px;
  -ms-grid-columns: 15% auto;
      grid-template-columns: 15% auto;
  -ms-flex-align: end;
      align-items: end;
  margin-bottom: 18px;
}

.subcontractors {
  display: -ms-grid;
  display: grid;
  grid-gap: 18px;
  -ms-grid-columns: 15% auto;
      grid-template-columns: 15% auto;
  margin: 18px 0;
}

.subcontractors ul {
  list-style: none;
  list-style-type: none;
  margin: 0;
  padding: 0;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1fr 1fr;
      grid-template-columns: 1fr 1fr 1fr;
  grid-gap: 9px 18px;
}

.subcontractor {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-align: center;
      align-items: center;
  height: 100%;
}

.subcontractor .image {
  width: 150px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
}

.subcontractor img {
  max-width: 200px;
}

.subcontractor p {
  padding: 18px;
}

a.referenced-content {
  display: block;
  background-color: #62c4dd;
  transition: opacity 0.3s ease-out;
}

a.referenced-content .list--image {
  opacity: 0.8;
}

a.referenced-content h3 {
  font-weight: 300;
  margin-bottom: 18px;
  padding: 9px;
  text-transform: uppercase;
  color: black;
}

a.referenced-content h3 svg {
  height: 20px;
  width: 23px;
  fill: black;
}

a.referenced-content:hover {
  background-color: #77cce2;
}

a.referenced-content:hover .list--image {
  opacity: 1;
}

a.referenced-content:hover h3 {
  text-decoration: underline;
}

a.referenced-content.with-teaser .teaser {
  font-family: "Lato", sans-serif;
  padding: 0 9px 18px;
  color: black;
}

.related-content--wrapper {
  font-family: "Lato", sans-serif;
}

.related-content--wrapper ul {
  list-style: none;
  list-style-type: none;
  margin: 0;
  padding: 0;
}

.related-content--wrapper h2 {
  border-bottom: 1px solid black;
}

.related-documents--wrapper {
  padding: 18px;
  font-family: "Lato", sans-serif;
}

.related-documents--wrapper ul {
  list-style: none;
  list-style-type: none;
  margin: 0;
  padding: 0;
}

.related-documents--wrapper h2 {
  border-bottom: 1px solid black;
}

.related-document {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 70% 1fr 1fr;
      grid-template-columns: 70% 1fr 1fr;
  grid-column-gap: 18px;
  border-bottom: 1px solid black;
  padding: 9px 0;
}

.related-sites--wrapper {
  font-family: "Lato", sans-serif;
}

.related-sites--wrapper ul {
  list-style: none;
  list-style-type: none;
  margin: 0;
  padding: 0;
}

.related-sites--wrapper h2 {
  border-bottom: 1px solid black;
}

.search-bar {
  padding: 50px 18px;
  background-color: #62c4dd;
}

.search-bar .form--inline {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: end;
      align-items: flex-end;
}

@media (min-width: 480px) {
  .search-bar .form--inline {
    -ms-flex-direction: row;
        flex-direction: row;
  }
}

.search-bar label {
  font-size: 18px;
  line-height: 28px;
  font-family: "Lato", sans-serif;
  font-weight: 700;
  line-height: 30px;
  margin-bottom: 0;
  color: black;
  padding-right: 18px;
}

@media screen and (min-width: 360px) {
  .search-bar label {
    font-size: calc(18px + 5 * (100vw - 360px) / 840);
  }
}

@media screen and (min-width: 1200px) {
  .search-bar label {
    font-size: 23px;
  }
}

@media screen and (min-width: 360px) {
  .search-bar label {
    line-height: calc(28px + 4 * (100vw - 360px) / 840);
  }
}

@media screen and (min-width: 1200px) {
  .search-bar label {
    line-height: 32px;
  }
}

.search-bar input {
  border: 0;
}

.search-bar input[type="submit"] {
  border: 3px solid black;
  font-weight: 700;
  background-color: black;
  transition: background-color 0.3s ease-out;
  color: white;
  border: 0;
}

.search-bar input[type="submit"]:hover, .search-bar input[type="submit"]:focus {
  background-color: transparent;
  color: black;
}

.search-bar input[type="submit"]:hover svg, .search-bar input[type="submit"]:focus svg {
  fill: black;
}

.search-bar input[type="submit"]:hover {
  padding: 15px;
  border: 3px solid;
}

.search-bar .form-wrapper {
  width: 100%;
}

@media (min-width: 700px) {
  .search-bar .form-wrapper {
    width: auto;
  }
}

.site-header-search {
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: end;
      justify-content: flex-end;
}

.search--listing {
  margin: 0 auto;
  padding: 18px;
}

@media (min-width: 700px) {
  .search--listing {
    padding: 0;
  }
}

@media (min-width: 700px) {
  .search--listing {
    width: 85vw;
    padding: 18px;
  }
}

.search--listing ul {
  margin: 0;
  padding: 0;
}

.social-list__inner {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
}

.social-list__heading {
  padding-right: 18px;
}

.social-link--text {
  position: absolute !important;
  clip: rect(1px, 1px, 1px, 1px);
  overflow: hidden;
  height: 1px;
  width: 1px;
  word-wrap: normal;
}

.social-link--text:active, .social-link--text:focus {
  position: static !important;
  clip: auto;
  overflow: visible;
  height: auto;
  width: auto;
}

.share__inner {
  display: -ms-inline-flexbox;
  display: inline-flex;
}

#st-el-2 .st-logo img {
  width: auto;
}

.stat-bar {
  background-color: #f2f2f2;
  padding: 18px;
}

.stat-bar__inner {
  margin: 0 auto;
  padding: 0 18px;
}

@media (min-width: 700px) {
  .stat-bar__inner {
    max-width: 85vw;
  }
}

.stat-bar ul {
  list-style: none;
  list-style-type: none;
  margin: 0;
  padding: 0;
  display: -ms-grid;
  display: grid;
  margin-bottom: 18px;
}

@media (min-width: 480px) {
  .stat-bar ul {
    -ms-grid-columns: 1fr 1fr;
        grid-template-columns: 1fr 1fr;
  }
}

@media (min-width: 980px) {
  .stat-bar ul {
    -ms-grid-columns: 1fr 1fr 1fr 1fr;
        grid-template-columns: 1fr 1fr 1fr 1fr;
    grid-gap: 18px;
  }
}

@media (min-width: 1200px) {
  .stat-bar ul {
    grid-gap: 18px;
  }
}

.stat-bar .stat {
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: 36px 60px 36px;
      grid-template-rows: 36px 60px 36px;
  text-align: center;
  grid-gap: 18px;
}

@media (min-width: 980px) {
  .stat-bar .stat {
    text-align: left;
  }
}

.stat-bar h3 {
  color: #62c4dd;
  font-size: 80px;
  line-height: 40px;
  font-weight: bold;
  margin: 0;
  padding: 6px 0;
}

.stat-bar p {
  margin: 0;
  position: relative;
  font-family: "Lato", sans-serif;
  font-size: 15px;
}

.stat-bar .bold {
  font-weight: bold;
  font-size: 18px;
}

.twitter-feed {
  margin-top: 31px !important;
  width: 100% !important;
  padding-right: 18px;
}

.twitter-feed .timeline-Header-title {
  font-family: "Lato", sans-serif !important;
  font-weight: 300;
}

.cards {
  margin: 0 auto 50px auto;
}

@media (min-width: 980px) {
  .cards {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 30%;
        grid-template-columns: 1fr 30%;
    -ms-grid-rows: 10% 1fr;
        grid-template-rows: 10% 1fr;
    -ms-flex-pack: justify;
        justify-content: space-between;
  }
}

@media (min-width: 1200px) {
  .cards {
    max-width: 85vw;
  }
}

.cards h2 {
  padding: 18px 0;
  -ms-grid-column: 1;
  -ms-grid-row: 1;
  -ms-grid-column-span: 1;
}

.cards--list {
  grid-row: 2;
  -ms-grid-column: 1;
  -ms-grid-row: 2;
  -ms-grid-column-span: 1;
  list-style: none;
  list-style-type: none;
  margin: 0;
  padding: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
}

@media (min-width: 480px) {
  .cards--list {
    -ms-flex-direction: row;
        flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

.cards--list li {
  margin: 0 auto 50px auto;
}

@media (min-width: 480px) {
  .cards--list li {
    max-width: 48%;
  }
}

@media (min-width: 980px) {
  .cards--list li {
    width: 30%;
  }
}

.cards--paragraph {
  list-style: none;
  list-style-type: none;
  margin: 0;
  padding: 0;
  display: -ms-grid;
  display: grid;
  grid-gap: 18px;
  -ms-grid-columns: (minmax(100%, 1fr))[auto-fit];
      grid-template-columns: repeat(auto-fit, minmax(100%, 1fr));
}

@media (min-width: 700px) {
  .cards--paragraph {
    -ms-grid-columns: (minmax(40%, 1fr))[auto-fit];
        grid-template-columns: repeat(auto-fit, minmax(40%, 1fr));
  }
}

@media (min-width: 980px) {
  .cards--paragraph {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    /* one item */
    /* two items */
    /* three items */
    /* four items */
  }
  .cards--paragraph li {
    padding: 18px;
  }
  .cards--paragraph li:first-child:nth-last-child(1) {
    width: 50%;
  }
  .cards--paragraph li:first-child:nth-last-child(2),
  .cards--paragraph li:first-child:nth-last-child(2) ~ li {
    width: 50%;
  }
  .cards--paragraph li:first-child:nth-last-child(3),
  .cards--paragraph li:first-child:nth-last-child(3) ~ li {
    width: 33.33%;
  }
  .cards--paragraph li:first-child:nth-last-child(4),
  .cards--paragraph li:first-child:nth-last-child(4) ~ li {
    width: 50%;
  }
}

@media (min-width: 1200px) {
  .cards--paragraph {
    /* four items */
  }
  .cards--paragraph li:first-child:nth-last-child(4),
  .cards--paragraph li:first-child:nth-last-child(4) ~ li {
    width: 25%;
  }
}

.cards--paragraph li {
  max-width: unset;
}

.with-sidebar .cards--list li {
  padding: 0 9px 50px;
}

@media (min-width: 980px) {
  .cards .featured {
    margin-right: 18px;
    grid-column: 2;
    grid-row: 1 / -1;
    -ms-grid-column: 2;
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
  }
}

.homepage-cards {
  margin-bottom: 0;
}

@media (min-width: 1200px) {
  .homepage-cards h2 {
    padding: 50px 18px 18px;
  }
  .homepage-cards .featured .card .card--image {
    height: 230px;
    overflow: hidden;
  }
}

.card-25-25-50 {
  max-width: 85vw;
  margin: 0 auto 50px auto;
  display: -ms-grid;
  display: grid;
}

@media (min-width: 980px) {
  .card-25-25-50 {
    -ms-grid-columns: 50% 50%;
        grid-template-columns: 50% 50%;
    -ms-grid-rows: 10% 1fr;
        grid-template-rows: 10% 1fr;
    -ms-flex-pack: justify;
        justify-content: space-between;
  }
}

.card-25-25-50 h2 {
  padding: 18px 0;
}

.card-25-25-50 .cards--list {
  /* autoprefixer: off */
  grid-row: 2;
  list-style: none;
  list-style-type: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
}

@media (min-width: 480px) {
  .card-25-25-50 .cards--list {
    -ms-flex-direction: row;
        flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    height: 100%;
  }
}

.card-25-25-50 .cards--list li {
  margin: 0 auto 50px auto;
  background-color: #62c4dd;
  width: auto;
  height: 100%;
}

@media (min-width: 480px) {
  .card-25-25-50 .cards--list li {
    max-width: 45%;
    -ms-flex-item-align: baseline;
        align-self: baseline;
  }
}

@media (min-width: 980px) {
  .card-25-25-50 .cards--list li {
    margin: 0 18px 0 0;
  }
}

@media (min-width: 980px) {
  .video {
    margin-right: 18px;
    margin-bottom: 18px;
    -ms-grid-column: 2;
    -ms-grid-row-span: 2;
    grid-column: 2;
    -ms-grid-row-span: 2;
    -ms-grid-row: 1;
        grid-row: 1 / span 2;
  }
}

.feature-banner {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  margin: 0 auto;
  max-width: 85vw;
}

@media (min-width: 700px) {
  .feature-banner {
    max-width: 85vw;
  }
}

@media (min-width: 700px) {
  .feature-banner {
    -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
  }
}

.feature-banner > div {
  -ms-flex: 1 100%;
      flex: 1 100%;
}

@media (min-width: 700px) {
  .feature-banner > div {
    -ms-flex: 1 50%;
        flex: 1 50%;
  }
}

@media (min-width: 980px) {
  .feature-banner > div:first-of-type {
    -ms-flex: 1 85%;
        flex: 1 85%;
  }
  .feature-banner > div:last-of-type {
    -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center;
  }
}

@media (min-width: 1200px) {
  .feature-banner > div:first-of-type {
    -ms-flex: 1 100%;
        flex: 1 100%;
  }
}

.feature-banner--wrapper {
  margin: 0 -9999rem;
  /* add back negative margin value */
  padding: 0 9999rem;
  background-color: #62c4dd;
}

.feature-content {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
      grid-template-columns: 1fr;
  background-color: #62c4dd;
  margin: 0 auto;
  margin-bottom: 36px !important;
  border: 1px solid black;
}

@media (min-width: 700px) {
  .feature-content {
    max-width: 85vw;
  }
}

@media (min-width: 980px) {
  .feature-content {
    -ms-grid-columns: 1fr 1fr 1fr;
    grid-template-columns: repeat(auto-fit, minmax(33%, 1fr));
  }
}

.feature-content--wrapper {
  padding: 18px;
}

.feature-content .list--item.featured {
  margin-bottom: 0;
  background-color: white;
  grid-column-start: 2;
  grid-column-end: 3;
  -ms-grid-column: 2;
  -ms-grid-column-span: 1;
}

.feature-content .list--image-wrapper {
  height: auto;
  overflow: hidden;
  background-size: cover;
  background-position: 50% 50%;
  grid-column-start: 1;
  grid-column-end: 2;
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
}

.feature-content .cta {
  grid-column-start: 3;
  grid-column-end: -1;
  -ms-grid-column: 3;
  -ms-grid-column-span: 1;
}

@media (min-width: 980px) {
  .feature-content--wrapper.event .feature-content {
    -ms-grid-columns: 66% 1fr;
  }
}

.feature-content--wrapper.event .feature-content .list--item.featured {
  -ms-grid-column: 1;
}

.homepage-feature-cta {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
      grid-template-columns: 1fr;
  margin: 0 auto;
}

@media (min-width: 700px) {
  .homepage-feature-cta {
    max-width: 85vw;
  }
}

@media (min-width: 700px) {
  .homepage-feature-cta {
    -ms-grid-columns: 60% 40%;
        grid-template-columns: 60% 40%;
    -ms-flex-align: center;
        align-items: center;
    grid-gap: 18px;
  }
}

@media (min-width: 980px) {
  .homepage-feature-cta {
    grid-gap: 50px;
  }
}

.homepage-feature-cta--wrapper {
  background-color: #62c4dd;
}

.homepage-feature-cta .featured-text {
  margin-bottom: 0;
  padding: 18px;
}

@media (min-width: 700px) {
  .homepage-feature-cta .featured-text {
    padding: 50px 18px;
  }
}

.empty-view {
  margin: 9px;
}

.empty-view a {
  color: black;
  text-decoration: underline;
}

.list {
  list-style: none;
  list-style-type: none;
  margin: 0;
  padding: 0;
  margin: 0 auto;
  border-bottom: 1px solid black;
}

.list--item {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  border-top: 1px solid black;
}

.list--item .calendardate {
  padding: 18px 9px 50px 9px;
}

@media (min-width: 980px) {
  .list--item {
    -ms-flex-direction: row;
        flex-direction: row;
  }
}

@media (min-width: 1200px) {
  .list--item {
    max-width: 85vw;
  }
}

@media (min-width: 980px) {
  .list--bg-img-wrapper img {
    display: none;
  }
}

@media (min-width: 980px) {
  .list--bg-img-wrapper {
    background-position: 50% 50%;
    -ms-flex-preferred-size: 30%;
        flex-basis: 30%;
  }
}

.list--bg-img-wrapper:focus {
  outline: none;
}

.list--text {
  padding: 18px 9px 50px 9px;
}

@media (min-width: 700px) {
  .list--text {
    -ms-flex-preferred-size: 70%;
        flex-basis: 70%;
    padding: 18px 18px 50px 18px;
  }
}

.list--text h3 {
  margin: 0.25em 0 0.5em 0;
}

.list--text h3 a {
  color: black;
}

.list--text h3 a:focus {
  outline: none;
  background-color: #62c4dd;
  color: white;
}

.list--text h3 a:hover {
  text-decoration: underline;
}

.col-2 {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
      grid-template-columns: 1fr;
}

@media (min-width: 700px) {
  .col-2 {
    -ms-grid-columns: 1fr 1fr;
        grid-template-columns: 1fr 1fr;
    grid-column-gap: 18px;
  }
}

.col-2 li {
  counter-increment: step-counter;
}

.col-2 li::before {
  content: counter(step-counter);
  font-size: 28px;
  color: #62c4dd;
  font-weight: 700;
  margin-right: 18px;
}

.list__graphical {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: 0;
}

.list__graphical li {
  list-style: none;
  list-style-type: none;
  margin: 0;
  padding: 0;
  font-family: "Lato", sans-serif;
  padding: 18px;
  margin: 0 18px 18px 0;
  border: 3px solid #62c4dd;
  width: 48%;
}

ol.list__graphical {
  padding: 0;
}

ol.list__graphical li {
  counter-increment: step-counter;
}

ol.list__graphical li::before {
  content: counter(step-counter);
  font-size: 55px;
  color: #62c4dd;
  font-weight: 700;
  margin-right: 18px;
}

ol.list__graphical li a {
  text-decoration: underline;
}

ol.list__graphical-inverted {
  padding: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

ol.list__graphical-inverted li {
  background-color: #62c4dd;
  color: white;
  font-family: "Lato", sans-serif;
  padding: 18px;
  margin: 18px;
  display: -ms-flexbox;
  display: flex;
  border-bottom: 5px solid #62c4dd;
  border-right: 5px solid #62c4dd;
  counter-increment: step-counter;
  width: 48%;
}

ol.list__graphical-inverted li::before {
  content: counter(step-counter);
  font-size: 55px;
  color: white;
  font-weight: 700;
  margin-right: 18px;
}

ol.list__graphical-inverted li a {
  color: white;
}

.list-grid {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
      grid-template-columns: 1fr;
}

@media (min-width: 700px) {
  .list-grid {
    -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
    grid-gap: 18px;
  }
}

@media (min-width: 980px) {
  .list-grid {
    -ms-grid-columns: 1fr 1fr;
        grid-template-columns: 1fr 1fr;
  }
  .list-grid li {
    margin: 18px;
  }
  .list-grid li:last-of-type {
    margin-bottom: 18px;
  }
  @supports (grid-gap: 18px) {
    .list-grid li {
      margin: 0;
    }
    .list-grid li:last-of-type {
      margin-bottom: 0;
    }
  }
  .list-grid li:nth-child(1) {
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
  }
  .list-grid li:nth-child(2) {
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
  }
  .list-grid li:nth-child(3) {
    -ms-grid-column: 3;
    -ms-grid-column-span: 1;
  }
  .list-grid li:nth-child(4) {
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
  }
  .list-grid li:nth-child(5) {
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
  }
  .list-grid li:nth-child(6) {
    -ms-grid-column: 3;
    -ms-grid-column-span: 1;
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
  }
}

@media (min-width: 1200px) {
  .list-grid {
    -ms-grid-columns: 1fr 1fr 1fr;
        grid-template-columns: 1fr 1fr 1fr;
  }
  .list-grid li:nth-child(1) {
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    /* autoprefixer: off */
    grid-row: 1;
  }
  .list-grid li:nth-child(2) {
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    /* autoprefixer: off */
    grid-row: 1;
  }
  .list-grid li:nth-child(3) {
    -ms-grid-column: 3;
    -ms-grid-column-span: 1;
    /* autoprefixer: off */
    grid-row: 1;
  }
  .list-grid li:nth-child(4) {
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    /* autoprefixer: off */
    grid-row: 2;
  }
  .list-grid li:nth-child(5) {
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    /* autoprefixer: off */
    grid-row: 2;
  }
  .list-grid li:nth-child(6) {
    -ms-grid-column: 3;
    -ms-grid-column-span: 1;
    /* autoprefixer: off */
    grid-row: 2;
  }
}

.list-grid .list--text {
  padding: 18px 18px 50px 18px;
}

@media (min-width: 980px) {
  .list-grid .list--text {
    padding: 18px 0 50px 0;
  }
}

video {
  width: 100%;
}

@media (min-width: 1200px) {
  .list--image-wrapper {
    height: 174px;
    overflow: hidden;
  }
}

.viewsreference--view-title {
  font-family: "Lato", sans-serif;
  font-weight: 300;
  text-transform: uppercase;
  font-size: 23px;
  border-bottom: 1px solid black;
}

.list__simple {
  padding: 0 18px;
  margin: 0;
}

.list__simple li {
  border-bottom: 1px solid black;
  padding: 18px 0;
}

.news-and-events-row {
  border-top: 2px solid #62c4dd;
  margin-bottom: 50px;
}

.news-and-events-row--inner {
  margin: 0 auto;
}

@media (min-width: 700px) {
  .news-and-events-row--inner {
    max-width: 85vw;
  }
}

@media (min-width: 980px) {
  .news-and-events-row--inner {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 2fr 30%;
        grid-template-columns: 1fr 2fr 30%;
  }
  .news-and-events-row--inner > div {
    margin-right: 36px;
  }
  @supports (grid-gap: 36px) {
    .news-and-events-row--inner {
      grid-gap: 36px;
    }
    .news-and-events-row--inner > div {
      margin-right: 0;
    }
  }
}

@media (min-width: 1200px) {
  .news-and-events-row--inner {
    padding: 0 18px;
  }
}

.news-and-events-row .featured {
  background-color: #62c4dd;
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
}

.news-and-events-row .views-element-container {
  -ms-grid-column: 2;
  -ms-grid-column-span: 1;
}

.news-and-events-row .list .list--text {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  padding: 9px 0;
}

.news-and-events-row .list .list--text:first-of-type {
  border-top: 0;
}

.news-and-events-row .twitter-feed {
  -ms-grid-column: 3;
  -ms-grid-column-span: 1;
}

.paragraphs__inner {
  max-width: 85vw;
  margin: 0 auto;
}

.section--image {
  overflow: hidden;
  margin-top: 18px;
  margin-bottom: 0;
}

@media (min-width: 700px) {
  .section--image {
    margin-top: 0;
    margin-bottom: 50px;
  }
}

.paragraph--image-text-50 .paragraphs__inner {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
      grid-template-columns: 1fr;
  grid-gap: 18px;
}

@media (min-width: 700px) {
  .paragraph--image-text-50 .paragraphs__inner {
    padding: 18px;
    -ms-grid-columns: 1fr 1fr 1fr;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  }
}

.paragraph--image-text-50 .paragraphs__inner .rich-text {
  margin: 18px;
  padding: 0;
}

@supports (grid-gap: 18px) {
  .paragraph--image-text-50 .paragraphs__inner .rich-text {
    margin: 0;
  }
}

.paragraph--image-text-50 .paragraphs__inner a.button-wysiwyg {
  width: auto;
}

.paragraph--image-text-50 .paragraphs__inner .section--image {
  -ms-grid-column: 1;
  -ms-grid-row-span: 1;
}

.paragraph--image-text-50 .paragraphs__inner .section--image img {
  width: 100%;
}

.paragraph--image-text-50 .paragraphs__inner .second_column {
  -ms-grid-column: 2;
  -ms-grid-row-span: 1;
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
}

.paragraph--image-text-50 .paragraphs__inner .third_column {
  -ms-grid-column: 3;
  -ms-grid-row-span: 1;
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
}

.paragraph--large-image-text-overlay .paragraphs__inner {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
}

@media (min-width: 700px) {
  .paragraph--large-image-text-overlay .paragraphs__inner {
    -ms-flex-direction: row;
        flex-direction: row;
  }
}

.paragraph--large-image-text-overlay .paragraphs__inner .rich-text {
  font-family: "Lato", sans-serif;
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center;
  background-color: white;
  border: 9px solid #62c4dd;
  width: 100%;
  padding: 18px 50px 18px;
  margin-bottom: 18px;
  z-index: 1;
}

@media (min-width: 700px) {
  .paragraph--large-image-text-overlay .paragraphs__inner .rich-text {
    margin-left: -150px;
    margin-right: 50px;
    margin-bottom: 0;
    width: auto;
  }
}

@media (min-width: 700px) {
  .paragraph--large-image-text-overlay .paragraphs__inner .section--image {
    max-width: 75%;
    min-width: 75%;
    overflow: hidden;
  }
}

.paragraph--large-image-text-overlay .paragraphs__inner .section--image img {
  width: 100%;
}

@media (min-width: 700px) {
  .paragraph--large-image-text-overlay .paragraphs__inner .section--image img {
    padding: 50px;
  }
}

.paragraph--large-image-text-overlay .paragraphs__inner .caption--wrapper {
  float: left;
  text-align: left;
}

.paragraph--large-image-text-overlay .paragraphs__inner .caption--wrapper hr {
  float: left;
}

.paragraph--large-image-text-overlay:nth-child(even) {
  background-color: #62c4dd;
  padding: 0 9999px;
  margin: 0 -9999px;
}

.paragraph--large-image-text-overlay:nth-child(even) .paragraphs__inner {
  -ms-flex-direction: column;
      flex-direction: column;
}

.paragraph--large-image-text-overlay:nth-child(even) .paragraphs__inner .rich-text {
  margin: 0 0 18px;
}

@media (min-width: 700px) {
  .paragraph--large-image-text-overlay:nth-child(even) .paragraphs__inner .rich-text {
    margin-right: -150px;
    margin-left: 50px;
    margin-bottom: 0;
  }
}

.paragraph--large-image-text-overlay:nth-child(even) .paragraphs__inner .caption--wrapper {
  color: white;
}

.paragraph--large-image-text-overlay:nth-child(even) .paragraphs__inner .caption--wrapper .caption {
  color: white;
}

.paragraph--large-image-text-overlay:nth-child(even) .paragraphs__inner .caption--wrapper hr {
  color: white;
}

@media (min-width: 700px) {
  .paragraph--large-image-text-overlay:nth-child(even) .paragraphs__inner {
    -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
  }
}

.paragraph--blockquote-mega {
  clear: both;
  background-color: #62c4dd;
  margin: 50px -9999rem;
  /* add back negative margin value */
  padding: 50px 9999rem;
  color: black;
}

.paragraph--blockquote-mega blockquote {
  width: 100%;
  margin: 0;
  line-height: 46px;
}

.paragraph--blockquote-mega cite {
  color: black;
}

.paragraph--section-title .paragraphs__inner {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -ms-flex-pack: justify;
      justify-content: space-between;
  border-bottom: 1px solid black;
  margin: 36px 18px 18px 18px;
}

.paragraph--section-title .h2--alt,
.paragraph--section-title .button {
  margin: 0.5em 0;
}

.main--section > .rich-text > p:first-of-type {
  padding-top: 27px;
}

.main--section > .rich-text > h2 + p {
  padding-top: 0;
}

section .section-inner {
  margin: 0 auto;
  padding: 18px 0 50px;
  display: -ms-grid;
  display: grid;
  grid-column-gap: 30px;
  -ms-grid-columns: 33% 66%;
      grid-template-columns: 33% 66%;
  -ms-grid-rows: auto;
      grid-template-rows: auto;
  -ms-flex-align: baseline;
      align-items: baseline;
}

@media (min-width: 700px) {
  section .section-inner {
    max-width: 85vw;
  }
}

.section--text-grid {
  border-top: 2px solid #62c4dd;
  margin-bottom: 50px;
}

.section--text-grid--inner {
  max-width: 85vw;
  margin: 0 auto 0 auto;
  display: -ms-grid;
  display: grid;
}

.section--text-grid--inner .list-grid {
  margin: 0;
}

.section--text-grid--inner .list {
  border-bottom: 0;
}

.section--text-grid--inner .box {
  -ms-grid-row: 1;
}

.section--text-grid--inner .list {
  -ms-grid-row: 2;
}

.taxonomy-page {
  margin: 0 auto;
}

.taxonomy-page header > div > p,
.taxonomy-page .intro {
  padding: 18px;
}

.taxonomy-page .bg-img {
  display: none;
}

@media (min-width: 700px) {
  .taxonomy-page .list {
    padding: 18px;
  }
}

@media (min-width: 1200px) {
  .taxonomy-page {
    max-width: 85vw;
  }
}

.js--assumed-listing-page .with-sidebar .main--section .view-title {
  padding: 0 18px;
}

.js--assumed-listing-page .with-sidebar .main--section .views-element-container {
  margin-top: 18px;
  padding: 0 18px;
}

.main--content {
  margin: 0 auto;
}

@media (min-width: 1200px) {
  .main--content {
    max-width: 85vw;
  }
}

.with-sidebar {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 100%;
      grid-template-columns: 100%;
}

@media (min-width: 700px) {
  .with-sidebar {
    -ms-grid-columns: 65% auto;
        grid-template-columns: 65% auto;
    grid-column-gap: 18px;
    margin: 0 auto;
  }
}

@media (min-width: 980px) {
  .with-sidebar {
    grid-column-gap: 36px;
  }
}

@media (min-width: 1200px) {
  .with-sidebar {
    -ms-grid-columns: 70% auto;
        grid-template-columns: 70% auto;
    max-width: 85vw;
  }
}

@media (min-width: 700px) {
  .main--section .with-sidebar {
    padding-left: 18px;
  }
}

.with-sidebar .sidebar {
  background-color: white;
}

@media (min-width: 700px) {
  .with-sidebar .sidebar {
    padding-right: 18px;
    padding-left: 18px;
    grid-column-start: 2;
    grid-column-end: 3;
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
  }
}

.with-sidebar .sidebar .h2--alt {
  text-transform: uppercase;
  padding: 18px;
}

@media (min-width: 700px) {
  .with-sidebar .sidebar .h2--alt {
    padding: 0;
  }
}

.sidebar--item {
  margin-bottom: 50px;
  border-top: 5px solid black;
}

.sidebar--button {
  margin-bottom: 50px;
  background-color: #62c4dd;
  padding: 18px;
}

.sidebar--button a {
  margin: 0;
  display: block;
  float: none;
  text-transform: uppercase;
}

.sidebar--button a:link, .sidebar--button a:visited {
  color: white;
}

.sidebar--button a svg {
  fill: white;
}

.sidebar--button a:focus, .sidebar--button a:hover {
  border-bottom: 5px solid white;
}

.sidebar--button a:focus svg, .sidebar--button a:hover svg {
  fill: white;
}

.sidebar .rich-text {
  margin-bottom: 50px;
  max-width: initial;
  width: initial;
  padding-right: 0;
  padding-left: 0;
  font-family: "Lato", sans-serif;
}

.sidebar .rich-text h1, .sidebar .rich-text h2, .sidebar .rich-text h3, .sidebar .rich-text h4 {
  font-weight: 300;
  text-transform: uppercase;
}

.sidebar a.button-wysiwyg {
  width: auto;
}

.sidebar .provider--wrapper {
  margin-bottom: 50px;
  border-top: 3px solid black;
}

.sidebar .view-title {
  border-top: 3px solid black;
}

.sidebar .views-element-container {
  padding: 0;
  margin-bottom: 50px;
}

.sidebar .views-element-container .list__simple {
  padding: 0;
}

.site-footer {
  clear: both;
  overflow: hidden;
  color: black;
  margin-top: 50px;
}

.site-footer__top {
  background-color: #62c4dd;
}

@media (min-width: 700px) {
  .site-footer__top {
    padding-bottom: 50px;
  }
}

.site-footer__top__inner {
  padding: 18px;
  background-color: #62c4dd;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
      grid-template-columns: 1fr;
}

@media (min-width: 700px) {
  .site-footer__top__inner {
    -ms-grid-columns: 1fr 1fr;
        grid-template-columns: 1fr 1fr;
    -ms-grid-rows: 1fr 1fr;
    grid-column-gap: 18px;
    padding: 0;
  }
  .site-footer__top__inner .newsletter {
    grid-column-start: 1;
    grid-column-end: 2;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    /* autoprefixer: off */
    grid-row: 2;
  }
  .site-footer__top__inner .social-list {
    grid-column-start: 2;
    grid-column-end: 3;
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    /* autoprefixer: off */
    grid-row: 2;
  }
  .site-footer__top__inner > div {
    margin: 18px;
  }
}

@media (min-width: 980px) {
  .site-footer__top__inner {
    grid-column-gap: 30px;
    -ms-grid-columns: 50% 1fr auto;
        grid-template-columns: 50% 1fr auto;
    -ms-grid-rows: 1fr;
        grid-template-rows: 1fr;
  }
  .site-footer__top__inner .newsletter {
    grid-column-start: 1;
    grid-column-end: 2;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    /* autoprefixer: off */
    grid-row: 1;
  }
  .site-footer__top__inner .social-list {
    grid-column-start: 2;
    grid-column-end: 3;
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    /* autoprefixer: off */
    grid-row: 1;
  }
}

@media (min-width: 1200px) {
  .site-footer__top__inner {
    max-width: 85vw;
    margin: 0 auto;
  }
}

.site-footer__middle {
  color: #62c4dd;
}

.site-footer__middle__inner {
  padding: 0 18px;
}

@media (min-width: 1200px) {
  .site-footer__middle__inner {
    max-width: 85vw;
    margin: 0 auto;
  }
}

.site-footer__bottom {
  background-color: #62c4dd;
}

.site-footer__bottom__inner {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: justify;
      justify-content: space-between;
  padding: 0 9px;
}

@media (min-width: 980px) {
  .site-footer__bottom__inner {
    -ms-flex-direction: row;
        flex-direction: row;
  }
}

@media (min-width: 1200px) {
  .site-footer__bottom__inner {
    max-width: 85vw;
    margin: 0 auto;
  }
}

.site-footer .social-link svg {
  fill: black;
}

.site-footer .social-link:hover, .site-footer .social-link:focus {
  background-color: black;
  outline: 0;
}

.banner {
  border-bottom: 5px solid #62c4dd;
  background-color: white;
  overflow: hidden;
  position: relative;
}

@media (min-width: 980px) {
  .banner {
    padding: 0 0 18px 0;
  }
}

.banner svg {
  width: 20px;
  height: 20px;
}

.banner__inner {
  margin: 18px auto 0 auto;
  position: relative;
}

@media (min-width: 980px) {
  .banner__inner {
    margin: 0 auto 0 auto;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: column;
        flex-flow: column;
    -ms-flex-pack: justify;
        justify-content: space-between;
    -ms-flex-flow: row;
        flex-flow: row;
    -ms-flex-align: end;
        align-items: flex-end;
  }
}

@media (min-width: 1200px) {
  .banner__inner {
    max-width: 85vw;
  }
}

.banner__logo {
  padding-left: 18px;
}

.banner__logo a {
  position: relative;
  display: inline-block;
  position: relative;
}

.banner__logo a:after {
  content: '';
  position: absolute;
  bottom: -5px;
  right: 0;
  width: 0;
  height: 5px;
  background: #62c4dd;
  transition: all 0.3s ease 0s;
}

.banner__logo a:focus {
  outline: 0;
}

.banner__logo a:focus:after {
  width: 100%;
  left: 0;
  right: auto;
}

.banner__logo .info-link a {
  display: inline;
  border-bottom: 5px solid white;
  position: relative;
  position: relative;
}

.banner__logo .info-link a:after {
  content: '';
  position: absolute;
  bottom: -1px;
  right: 0;
  width: 0;
  height: 1px;
  background: #62c4dd;
  transition: all 0.3s ease 0s;
}

.banner__logo .info-link a:hover:after {
  width: 100%;
  left: 0;
  right: auto;
}

.banner__logo .info-link a:after {
  content: '';
  position: absolute;
  bottom: -1px;
  right: 0;
  width: 0;
  height: 1px;
  background: #62c4dd;
  transition: all 0.3s ease 0s;
}

.banner__logo .info-link a:focus {
  outline: 0;
}

.banner__logo .info-link a:focus:after {
  width: 100%;
  left: 0;
  right: auto;
}

.bar {
  border-bottom: 5px solid #62c4dd;
}

.bar__inner {
  max-width: 85vw;
  margin: 0 auto;
}

.bar__inner h2 {
  margin: 0;
}

.bar .button--light {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  color: #aaa;
}

.bar .button--light svg {
  fill: #aaa;
}

.menus {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: column;
      flex-flow: column;
  background-color: #292929;
}

@media (min-width: 700px) {
  .menus {
    background-color: transparent;
  }
}

@media (min-width: 980px) {
  .menus {
    padding: 0 18px;
    width: 70%;
  }
}

@media (min-width: 700px) {
  .menus .nav__main-wrapper {
    position: absolute;
    right: 20px;
    top: 18px;
  }
}

@media (min-width: 980px) {
  .menus .nav__main-wrapper {
    -ms-flex-order: 2;
        order: 2;
    padding-top: 20px;
    background-color: transparent;
    position: relative;
    right: 0;
    top: 0;
  }
}

.menus .nav__sub-wrapper {
  background-color: #292929;
}

@media (min-width: 980px) {
  .menus .nav__sub-wrapper {
    -ms-flex-order: 1;
        order: 1;
    background-color: transparent;
  }
}

.mobile-menu-box,
.mobile-menu-label {
  display: none;
}

.search-label:before {
  content: 'Search';
  padding-left: 25px;
  background: url('data:image/svg+xml;utf8,<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="28" height="28" viewBox="0 0 50 18">\a     <path fill="#ffffff" d="M31.008 27.231l-7.58-6.447c-0.784-0.705-1.622-1.029-2.299-0.998 1.789-2.096 2.87-4.815 2.87-7.787 0-6.627-5.373-12-12-12s-12 5.373-12 12 5.373 12 12 12c2.972 0 5.691-1.081 7.787-2.87-0.031 0.677 0.293 1.515 0.998 2.299l6.447 7.58c1.104 1.226 2.907 1.33 4.007 0.23s0.997-2.903-0.23-4.007zM12 20c-4.418 0-8-3.582-8-8s3.582-8 8-8 8 3.582 8 8-3.582 8-8 8z"></path>\a     </svg>') no-repeat left bottom;
}

.search-label,
.mobile-menu-label {
  color: #fff;
  background-color: black;
  padding: 18px;
  text-decoration: none;
  text-transform: uppercase;
  font-family: "Lato", sans-serif;
  text-align: center;
  letter-spacing: 1px;
  width: 50%;
  float: left;
}

@media screen and (max-width: 700px) {
  .mobile-menu-label:before {
    content: 'Menu';
    background: url('data:image/svg+xml;utf8,<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="26" height="26" viewBox="0 0 32 32">\a     <path fill="#ffffff" d="M2 6h28v6h-28zM2 14h28v6h-28zM2 22h28v6h-28z"></path>\a     </svg>') no-repeat left center;
  }
  .mobile-menu-box:checked ~ .menus {
    height: auto;
  }
  .mobile-menu-box:checked ~ .mobile-menu-labels .mobile-menu-label:before {
    content: 'Close';
    padding-left: 25px;
    background: url('data:image/svg+xml;utf8,<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 32 32">\a     <path fill="#aaa" d="M31.708 25.708c-0-0-0-0-0-0l-9.708-9.708 9.708-9.708c0-0 0-0 0-0 0.105-0.105 0.18-0.227 0.229-0.357 0.133-0.356 0.057-0.771-0.229-1.057l-4.586-4.586c-0.286-0.286-0.702-0.361-1.057-0.229-0.13 0.048-0.252 0.124-0.357 0.228 0 0-0 0-0 0l-9.708 9.708-9.708-9.708c-0-0-0-0-0-0-0.105-0.104-0.227-0.18-0.357-0.228-0.356-0.133-0.771-0.057-1.057 0.229l-4.586 4.586c-0.286 0.286-0.361 0.702-0.229 1.057 0.049 0.13 0.124 0.252 0.229 0.357 0 0 0 0 0 0l9.708 9.708-9.708 9.708c-0 0-0 0-0 0-0.104 0.105-0.18 0.227-0.229 0.357-0.133 0.355-0.057 0.771 0.229 1.057l4.586 4.586c0.286 0.286 0.702 0.361 1.057 0.229 0.13-0.049 0.252-0.124 0.357-0.229 0-0 0-0 0-0l9.708-9.708 9.708 9.708c0 0 0 0 0 0 0.105 0.105 0.227 0.18 0.357 0.229 0.356 0.133 0.771 0.057 1.057-0.229l4.586-4.586c0.286-0.286 0.362-0.702 0.229-1.057-0.049-0.13-0.124-0.252-0.229-0.357z"></path>\a     </svg>') no-repeat left center;
  }
  .menus {
    margin-top: 5px;
    overflow: hidden;
    max-height: 0;
    transition: max-height 1s;
  }
  .mobile-menu-box:checked ~ .menus {
    height: auto;
    max-height: 1000px;
  }
  .mobile-menu-label {
    display: block;
    cursor: pointer;
  }
  .mobile-menu-box:checked ~ .mobile-menu-labels .mobile-menu-label {
    color: #aaa;
    background-color: #292929;
  }
}

@media screen and (min-width: 700px) and (max-width: 980px) {
  .mobile-menu-label:before {
    content: 'Menu';
    background: url('data:image/svg+xml;utf8,<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="26" height="26" viewBox="0 0 32 32">\a     <path fill="#ffffff" d="M2 6h28v6h-28zM2 14h28v6h-28zM2 22h28v6h-28z"></path>\a     </svg>') no-repeat left center;
  }
  .mobile-menu-box:checked ~ .menus .nav__sub-wrapper {
    height: auto;
  }
  .mobile-menu-box:checked ~ .mobile-menu-labels .mobile-menu-label:before {
    content: 'Close';
    padding-left: 25px;
    background: url('data:image/svg+xml;utf8,<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 32 32">\a     <path fill="#aaa" d="M31.708 25.708c-0-0-0-0-0-0l-9.708-9.708 9.708-9.708c0-0 0-0 0-0 0.105-0.105 0.18-0.227 0.229-0.357 0.133-0.356 0.057-0.771-0.229-1.057l-4.586-4.586c-0.286-0.286-0.702-0.361-1.057-0.229-0.13 0.048-0.252 0.124-0.357 0.228 0 0-0 0-0 0l-9.708 9.708-9.708-9.708c-0-0-0-0-0-0-0.105-0.104-0.227-0.18-0.357-0.228-0.356-0.133-0.771-0.057-1.057 0.229l-4.586 4.586c-0.286 0.286-0.361 0.702-0.229 1.057 0.049 0.13 0.124 0.252 0.229 0.357 0 0 0 0 0 0l9.708 9.708-9.708 9.708c-0 0-0 0-0 0-0.104 0.105-0.18 0.227-0.229 0.357-0.133 0.355-0.057 0.771 0.229 1.057l4.586 4.586c0.286 0.286 0.702 0.361 1.057 0.229 0.13-0.049 0.252-0.124 0.357-0.229 0-0 0-0 0-0l9.708-9.708 9.708 9.708c0 0 0 0 0 0 0.105 0.105 0.227 0.18 0.357 0.229 0.356 0.133 0.771 0.057 1.057-0.229l4.586-4.586c0.286-0.286 0.362-0.702 0.229-1.057-0.049-0.13-0.124-0.252-0.229-0.357z"></path>\a     </svg>') no-repeat left center;
  }
  .nav__sub-wrapper {
    margin-top: 5px;
    overflow: hidden;
    max-height: 0;
    transition: max-height 1s;
  }
  .mobile-menu-box:checked ~ .menus .nav__sub-wrapper {
    height: auto;
    max-height: 1000px;
  }
  .mobile-menu-label {
    display: block;
    cursor: pointer;
  }
  .mobile-menu-box:checked ~ .mobile-menu-labels .mobile-menu-label {
    color: #aaa;
    background-color: #292929;
  }
}

@media (min-width: 980px) {
  .search-label {
    float: none;
    font-size: 22px;
    background-color: transparent;
    color: black;
    position: relative;
  }
  .search-label:before {
    background-image: url(../img/search.svg);
    background-size: contain;
  }
  .search-label.open:after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 20px 20px 20px;
    border-color: transparent transparent #62c4dd transparent;
    position: absolute;
    left: 40%;
    top: 51px;
  }
}

.video-summary {
  border-top: 2px solid #62c4dd;
}

.video-summary--inner {
  max-width: 85vw;
  margin: 50px auto 50px !important;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-align: center;
      align-items: center;
}

.video-summary .video {
  width: 50%;
}

.video-summary .video .video--inner {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
}

.video-summary .video iframe,
.video-summary .video object,
.video-summary .video embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.video-summary .summary {
  width: 50%;
  padding: 18px 50px;
}

/**
* Table of Contents
*
* General classes, (probably could be moved to specific areas)
* Listing page (/catalogue - Catalogue index)
* Product page (/catalogue/product/urn...)
* Charts (/charts)
*
* Some of these might be in the wrong places, adding TOC retrospectively as I'm confused
*/
.relative {
  position: relative;
}

.floatLeft {
  float: left;
}

.floatRight {
  float: right;
}

.clearfix:before, .clearfix:after {
  content: "";
  display: table;
}

.clearfix:after {
  clear: both;
}

.form-checkbox label {
  font-size: 15px;
}

.form-checkbox input {
  margin-bottom: 0;
}

.preload {
  font-family: "Lato", sans-serif;
}

.catalogue-sidebar {
  min-width: 240px;
  width: 240px;
}

.input-group {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.input:first-child {
  width: 100%;
}

.catalogue-sidebar hr {
  color: #62c4dd;
}

.btn-warning {
  color: #087faa;
  background-color: white;
}

.numbers,
.beta__label {
  text-transform: uppercase;
  color: #62c4dd;
  padding: 0 10px;
}

.numbers {
  height: 43px;
  margin: 18px 0 0 0;
}

span[ng-if="connectionerror"] {
  margin: 50px;
  border: 1px solid lightcoral;
  background-color: lightcoral;
  padding: 50px;
  display: block;
}

.ng-scope h2 {
  color: #62c4dd;
}

@media (min-width: 700px) {
  .row.ng-scope {
    display: -ms-flexbox;
    display: flex;
  }
}

.catalogue-loading,
.current-filters,
.catalogue-container,
.catalogue-header {
  margin: 0 0 18px 18px;
}

.maps-results {
  width: 100%;
}

.catalogue-container {
  display: -ms-flexbox;
  display: flex;
  border-bottom: 1px solid black;
  -ms-flex-pack: justify;
      justify-content: space-between;
}

.catalogue-header {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: end;
      justify-content: flex-end;
}

.current-filters {
  border: 1px solid #62c4dd;
  padding: 18px;
}

.current-filters h4 {
  margin: 0;
  padding: 0;
}

.current-filters a {
  padding-right: 18px;
  float: left;
}

.product-header {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  margin: 0 0 18px 0;
  -ms-flex-preferred-size: 200px;
      flex-basis: 200px;
}

.product-header h3 {
  -ms-flex-preferred-size: 90%;
      flex-basis: 90%;
}

.product-details {
  padding: 0 18px;
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
}

.product-header img {
  padding: 0 18px 0 0;
}

.product-meta {
  padding: 18px 0;
  text-align: right;
  -ms-flex-preferred-size: 300px;
      flex-basis: 300px;
}

.product-meta a {
  color: black;
  background: #62c4dd;
  padding: 3px;
}

.meta-icon {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: space-evenly;
      justify-content: space-evenly;
}

a:hover.catalogue-filter,
a:active.catalogue-filter {
  text-decoration: underline;
}

a:focus.catalogue-filter {
  outline: 0;
}

button.btn-social {
  display: none;
}

.item-box {
  display: -ms-flexbox;
  display: flex;
  max-width: 85vw;
  margin: 0 auto;
}

.item-image {
  padding: 18px 50px 18px 18px;
}

.title-row {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  margin: 0 auto 18px auto;
  -ms-flex-align: baseline;
      align-items: baseline;
}

.chart-controls.parameter-control .parameter-selector,
.chart-controls .parameter-selector.ui-button,
.chart-controls .ui-button,
.filter-status .ui-button {
  border: 1px solid #62c4dd !important;
  padding: 9px;
  background-color: white;
  border-radius: 0;
  color: #087faa;
}

.chart-controls.parameter-control .parameter-selector:hover,
.chart-controls .parameter-selector.ui-button:hover,
.chart-controls .ui-button:hover,
.filter-status .ui-button:hover {
  background-color: #62c4dd;
  color: black;
}

@media (min-width: 980px) {
  .events .page-title h1 {
    max-width: 80%;
  }
  .events .page-title .intro {
    max-width: 80%;
  }
}

.landing-page .paragraphs__wrapper:not(:first-of-type) {
  padding: 54px 0;
}

.help-and-support .main--section {
  margin: 0 auto;
}

@media (min-width: 700px) {
  .help-and-support .main--section {
    max-width: 85vw;
  }
}

.news-social-row {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
      grid-template-columns: 1fr;
  grid-gap: 50px;
}

@media (min-width: 980px) {
  .news-social-row {
    -ms-grid-columns: 67% auto;
        grid-template-columns: 67% auto;
  }
}

.hero .menu--horiz {
  position: absolute;
  bottom: 0;
  margin: 0 auto;
  text-align: center;
  width: 100%;
  border-top: 2px solid #62c4dd;
  background-color: white;
}

.front .site-footer {
  margin-top: 0;
}

.map--wrapper {
  max-width: 85vw;
  margin: 0 auto;
}

.map--title {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -ms-flex-pack: justify;
      justify-content: space-between;
  border-bottom: 1px solid black;
  margin-bottom: 36px;
}

.map--title .h2--alt,
.map--title .button {
  margin: 0.5em 0;
}

#mapid {
  height: 600px;
  width: 85vw;
  max-width: 85vw;
  margin: 0 auto 36px auto;
}

.listing-page .share {
  display: none;
}

.ui-tabs-nav {
  list-style: none;
  list-style-type: none;
  margin: 0;
  padding: 0;
  border-bottom: 1px solid black;
  line-height: 2.2em;
}

.ui-tabs-tab {
  display: inline;
  border-top: 1px solid black;
  border-left: 1px solid black;
  border-right: 1px solid black;
  padding: 9px;
  margin: 0 9px;
  background-color: #62c4dd;
}

.ui-tabs-tab a {
  color: white;
}

.ui-tabs-tab.ui-state-active {
  background-color: white;
}

.ui-tabs-tab.ui-state-active a {
  color: #62c4dd;
}

.ui-tabs-tab:first-of-type {
  margin-left: 18px;
}

.paragraph--wrapper {
  overflow: hidden;
}

.fancy {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: end;
      align-items: flex-end;
  height: auto;
}

@media (min-width: 700px) {
  .fancy {
    height: 86vh;
    text-align: center;
  }
}

.fancy .page-title {
  background-color: white;
  padding: 50px 18px;
}

@media (min-width: 700px) {
  .fancy .page-title {
    padding: 0;
  }
}

@media (min-width: 700px) {
  .fancy .page-title {
    padding: 63px 18px 18px;
  }
}

@media (min-width: 980px) {
  .fancy .page-title {
    margin: 0 auto 0 auto;
    padding: 36px 50px 0;
  }
}

@media (min-width: 1200px) {
  .fancy .page-title {
    max-width: 85vw;
  }
}

.fancy .page-title h1 {
  margin: 0 auto 18px auto;
}

.fancy .page-title .intro {
  max-width: 100%;
}

.fancy .page-title--inner {
  max-width: 100%;
}

.fancy .page-details {
  display: -ms-inline-flexbox;
  display: inline-flex;
  border-bottom: 0;
}

.fancy .share {
  border-top: 0;
}

.fancy .share .social-list__inner {
  -ms-flex-pack: center;
      justify-content: center;
  text-align: left;
}

@media (min-width: 980px) {
  .case-study .main--section {
    padding-top: 63px;
  }
  .case-study .sidebar {
    padding-top: 63px;
  }
  .case-study .sidebar--item {
    background-color: white;
  }
}

.press-media-page video {
  border: 1px solid black;
}

/*# sourceMappingURL=site.css.map */
