/*@import "lightbox";
@import "font-awesome";
@import "bootstrap.min.scss";
@import "cookie-consent";*/
@import url("https://fonts.googleapis.com/css2?family=Source+Sans+Pro:wght@400;600&display=swap");
@font-face {
  font-family: 'Kompakt';
  src: url("/site/fonts/Kompakt.eot");
  src: url("/site/fonts/Kompakt.eot?#iefix") format("embedded-opentype"), url("/site/fonts/Kompakt.woff2") format("woff2"), url("/site/fonts/Kompakt.woff") format("woff"), url("/site/fonts/Kompakt.ttf") format("truetype"), url("/site/fonts/Kompakt.svg#Kompakt") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: swap; }
/*
# -------------------------------------------------------------------
# -------------------------------------------------------------------
#				COLOURS & VARIABLES
# -------------------------------------------------------------------
# -------------------------------------------------------------------
*/
:root {
  --primary: #004997;
  --secondary: #00a2e1;
  --contrast: #ffff00;
  --paleBlue: #c2d0e0;
  --text: #00a2e1;
  --black: #1a1a1a;
  --white: #ffffff;
  --footer: #333333;
  --faded: #c2d0e0;
  --paleGrey: #f2f2f2;
  --lightGrey: #adadad; }

.pre-school {
  --primary: #ff2020;
  --secondary: #f95858;
  --contrast: #ffff00;
  --paleBlue: #c2d0e0;
  --text: #840d0d; }

@keyframes bounce-7 {
  0% {
    transform: scale(1, 1) translateY(0); }
  10% {
    transform: scale(1.1, 1.1) translateY(0); }
  30% {
    transform: translateY(-6px) translateX(6px); }
  50% {
    transform: translateY(0); }
  60% {
    transform: scale(1, 1) translateY(2px) translateX(-2px); }
  80% {
    transform: scale(1, 1) translateY(0); }
  100% {
    transform: scale(1, 1) translateY(0); } }
/*$darkGreen:	#71a243;
$green: 	#9cd309; 
$paleGreen: #f6fbe9;
$blue: 		#488ec7; 
$grey: 		#e6e6e6;


$black: 	#000000;
$white: 	#fff; 
$red: 		#8C0005;
$darkGrey:	#3D444E;
$grey:		#cfd3d4;
$lightGrey:	#ededed;*/
/*
# ------------------------------------------------------------------------------------
# ------------------------------------------------------------------------------------
# 						HTML
# ------------------------------------------------------------------------------------
# ------------------------------------------------------------------------------------
*/
body {
  font-family: 'Dosis', sans-serif;
  font-weight: 400;
  font-size: 13pt; }

a {
  -moz-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  cursor: pointer;
  color: var(--secondary); }
  a:hover {
    text-decoration: none; }

h2 {
  font-weight: 800;
  color: var(--primary);
  font-size: 2em;
  margin: 0 0 30px 0; }
  @media (min-width: 992px) {
    h2 {
      font-size: 2.2em; } }

blockquote {
  position: relative;
  z-index: 10; }
  blockquote p:first-child, blockquote h2:first-child {
    display: inline-block;
    position: relative; }
    blockquote p:first-child:before, blockquote h2:first-child:before {
      content: '\f10d';
      display: block;
      position: absolute;
      font-family: FontAwesome;
      left: 0;
      font-size: 0.8em;
      margin: -10px 0 0 -10px;
      color: var(--paleBlue);
      z-index: -1; }
    blockquote p:first-child:after, blockquote h2:first-child:after {
      content: '\f10e';
      display: block;
      position: absolute;
      font-family: FontAwesome;
      right: 0;
      bottom: 10px;
      font-size: 0.8em;
      margin: 0 -10px 0 0;
      color: var(--paleBlue);
      z-index: -1; }

.page-content {
  position: relative;
  min-height: 70vh; }
  .page-content img {
    max-width: 100%;
    height: auto; }

/*
# ------------------------------------------------------------------------------------
# ------------------------------------------------------------------------------------
# 						CLASSES
# ------------------------------------------------------------------------------------
# ------------------------------------------------------------------------------------
*/
@media (min-width: 1400px) {
  .container {
    max-width: 1300px; } }
@media (min-width: 1500px) {
  .container {
    max-width: 1400px; } }
@media (min-width: 1600px) {
  .container {
    max-width: 1500px; } }

.serif {
  font-family: 'Dosis', sans-serif;
  font-weight: 400; }

.semi-bold {
  font-weight: 700; }

.image-left {
  float: left;
  margin: 0 30px 30px 0; }

.image-right {
  float: right;
  margin: 0 0 30px 30px; }

.hide {
  position: absolute;
  left: -9999px;
  width: 0;
  height: 0;
  overflow: hidden; }

.nav-opener {
  position: fixed;
  left: 50%;
  bottom: 10px;
  font-size: 1.5em;
  z-index: 200;
  -moz-transition: all 0.4s ease-in-out;
  -o-transition: all 0.4s ease-in-out;
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
  color: #ffffff;
  margin-left: -10px; }
  .nav-opener.toggled {
    -moz-transform: rotate(270deg);
    -ms-transform: rotate(270deg);
    -webkit-transform: rotate(270deg);
    transform: rotate(270deg); }
    .nav-opener.toggled:before {
      content: '\f00d'; }
  @media (min-width: 992px) {
    .nav-opener {
      display: none; } }

a.btn {
  border: solid 1px var(--primary);
  color: var(--primary);
  padding: 10px 30px;
  display: inline-block;
  margin: 0 20px 20px 0;
  border-radius: 0;
  overflow: hidden;
  position: relative;
  z-index: 10; }
  a.btn:before {
    display: block;
    content: '';
    position: absolute;
    width: 0;
    left: 50%;
    height: 100%;
    background: var(--primary);
    z-index: -1;
    top: 0;
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
    opacity: 0;
    -moz-transition: all 0.4s ease-in-out;
    -o-transition: all 0.4s ease-in-out;
    -webkit-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out; }
  a.btn:hover {
    color: #ffffff; }
    a.btn:hover:before {
      filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
      opacity: 1;
      width: 100%;
      left: 0; }

[class^="icon"] {
  /*display: inline-flex; width: 2em; height: 2em; color: $white; background: orange; border-radius: 50%; @include justify-content(center); @include align-items(center); font-size: 1.2em; text-align: center; */
  display: inline-block;
  position: relative;
  color: #ffffff;
  margin: 0 10px;
  font-size: 1.3em; }
  @media (min-width: 992px) {
    [class^="icon"] {
      margin: 0 20px 0 0; } }
  [class^="icon"]:before {
    background: var(--secondary);
    display: block;
    width: 2em;
    height: 2em;
    content: '';
    position: absolute;
    border-radius: 50%;
    z-index: -1;
    left: -0.5em;
    top: -0.5em;
    -moz-transition: background-color 0.5s ease-in-out;
    -o-transition: background-color 0.5s ease-in-out;
    -webkit-transition: background-color 0.5s ease-in-out;
    transition: background-color 0.5s ease-in-out;
    border: solid 2px #ffffff; }
    @media (min-width: 992px) {
      [class^="icon"]:before {
        border: none; } }
  [class^="icon"]:hover {
    color: #ffffff; }
    [class^="icon"]:hover:before {
      background: var(--primary); }
  [class^="icon"].icon-calendar {
    color: var(--primary); }
    [class^="icon"].icon-calendar:before {
      background: var(--contrast); }
    [class^="icon"].icon-calendar:hover {
      color: #ffffff; }
      [class^="icon"].icon-calendar:hover:before {
        background: var(--primary); }
  [class^="icon"].icon-telephone:before {
    background: var(--primary); }
  [class^="icon"].icon-telephone:hover:before {
    background: var(--secondary); }

.wrapper {
  /*min-height: 200vh;*/ }

.cb-edit-btn {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 1000;
  padding: 10px;
  background: var(--contrast);
  color: #1a1a1a;
  -moz-transition: opacity 0.3s ease-in-out;
  -o-transition: opacity 0.3s ease-in-out;
  -webkit-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out; }
  .cb-edit-btn a {
    color: #1a1a1a !important; }

.carousel-item:hover > .cb-edit-btn, .carousel-item:hover > .learning-group-intro > .cb-edit-btn, .ad-block:hover > .cb-edit-btn, .ad-block:hover > .learning-group-intro > .cb-edit-btn, .pre-footer .col-sm-6:hover > .cb-edit-btn, .pre-footer .col-sm-6:hover > .learning-group-intro > .cb-edit-btn, .pre-footer .col-sm-3:hover > .cb-edit-btn, .pre-footer .col-sm-3:hover > .learning-group-intro > .cb-edit-btn, .ticker li:hover > .cb-edit-btn, .ticker li:hover > .learning-group-intro > .cb-edit-btn, .page-content:hover > .cb-edit-btn, .page-content:hover > .learning-group-intro > .cb-edit-btn, .learning-group:hover > .cb-edit-btn, .learning-group:hover > .learning-group-intro > .cb-edit-btn, .learning-stage-intro-block:hover > .cb-edit-btn, .learning-stage-intro-block:hover > .learning-group-intro > .cb-edit-btn {
  filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
  opacity: 1;
  pointer-events: auto;
  color: #1a1a1a !important; }
  .carousel-item:hover > .cb-edit-btn a, .carousel-item:hover > .learning-group-intro > .cb-edit-btn a, .ad-block:hover > .cb-edit-btn a, .ad-block:hover > .learning-group-intro > .cb-edit-btn a, .pre-footer .col-sm-6:hover > .cb-edit-btn a, .pre-footer .col-sm-6:hover > .learning-group-intro > .cb-edit-btn a, .pre-footer .col-sm-3:hover > .cb-edit-btn a, .pre-footer .col-sm-3:hover > .learning-group-intro > .cb-edit-btn a, .ticker li:hover > .cb-edit-btn a, .ticker li:hover > .learning-group-intro > .cb-edit-btn a, .page-content:hover > .cb-edit-btn a, .page-content:hover > .learning-group-intro > .cb-edit-btn a, .learning-group:hover > .cb-edit-btn a, .learning-group:hover > .learning-group-intro > .cb-edit-btn a, .learning-stage-intro-block:hover > .cb-edit-btn a, .learning-stage-intro-block:hover > .learning-group-intro > .cb-edit-btn a {
    color: #1a1a1a !important; }

.carousel-item .cb-edit-btn {
  filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
  opacity: 1;
  pointer-events: auto;
  color: #1a1a1a !important; }

.ticker li .cb-edit-btn {
  display: none !important; }
.ticker li.active .cb-edit-btn {
  display: block !important; }

.address, .telephone, .email {
  padding-left: 40px;
  position: relative; }
  .address:before, .telephone:before, .email:before {
    display: block;
    position: absolute;
    font-family: FontAwesome;
    left: 0;
    font-size: 1.5em;
    margin-top: -10px; }

.address:before {
  content: '\f041'; }

.telephone:before {
  content: '\f095'; }

.email:before {
  content: '\f1d8'; }

/*.telephone {
	padding-left: 30px; position: relative;
	&:before {
		display: block; position: absolute; content: '\f095'; font-family: FontAwesome; left: 0; font-size: 1.5em; margin-top: -10px; 
	}
}
.email {
	padding-left: 30px; position: relative;
	&:before {
		display: block; position: absolute; content: '\f1d8'; font-family: FontAwesome; left: 0; font-size: 1.5em; margin-top: -10px; 
	}
}*/
/*
# ------------------------------------------------------------------------------------
# ------------------------------------------------------------------------------------
# 						STRUCTURE
# ------------------------------------------------------------------------------------
# ------------------------------------------------------------------------------------
*/
.header {
  z-index: 140;
  padding: 0 0 30px 0;
  position: absolute;
  top: 0;
  left: 0;
  width: 100vw;
  -moz-transition: all 0.5s ease-in-out;
  -o-transition: all 0.5s ease-in-out;
  -webkit-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out; }
  .header:before {
    display: block;
    position: fixed;
    content: '';
    background: var(--secondary);
    border-radius: 50%;
    left: calc(50vw);
    width: 100px;
    height: 100px;
    bottom: -50px;
    z-index: 550;
    margin-left: -50px;
    -moz-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out; }
  @media (min-width: 992px) {
    .header {
      position: fixed; }
      .header:before {
        display: none; } }
  .header h1 a {
    display: block;
    background: url("/site/img/misson-logo.svg") left bottom no-repeat;
    background-size: 100% auto;
    width: 335px;
    height: 108px;
    max-width: 80%;
    margin: 0 auto; }
    @media (min-width: 992px) {
      .header h1 a {
        -moz-transition: all 0.5s ease-in-out;
        -o-transition: all 0.5s ease-in-out;
        -webkit-transition: all 0.5s ease-in-out;
        transition: all 0.5s ease-in-out;
        margin: 0; } }
    .header h1 a span {
      position: absolute;
      left: -9999px;
      width: 0;
      height: 0;
      overflow: hidden; }
  .header h2 {
    position: absolute;
    left: -9999px;
    width: 0;
    height: 0;
    overflow: hidden; }
  .header .logo-container, .header .nav-outer-container {
    -webkit-align-items: center;
    align-items: center;
    position: relative; }
  .header .nav-outer-container {
    position: fixed;
    padding-top: 140px;
    -moz-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
    opacity: 0;
    z-index: 560;
    pointer-events: none; }
    @media (min-width: 992px) {
      .header .nav-outer-container {
        position: inherit;
        padding-top: 0;
        -moz-transition: none;
        -o-transition: none;
        -webkit-transition: none;
        transition: none;
        filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
        opacity: 1;
        pointer-events: auto; } }
  .header .nav-container {
    height: 100%;
    color: #ffffff;
    text-align: center; }
    .header .nav-container ul {
      margin: 0;
      padding: 0;
      list-style-type: none;
      display: block; }
      .header .nav-container ul li {
        margin: 0;
        padding: 0;
        display: block; }
        .header .nav-container ul li a {
          display: block;
          color: #ffffff;
          font-size: 1.5em; }
    .header .nav-container .contact-details ul.menu-default > li .drop-down a {
      font-size: 1.2em; }
    .header .nav-container .contact-details ul.menu-default > li .drop-down ul {
      margin-bottom: 20px; }
    @media (min-width: 992px) {
      .header .nav-container {
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: flex-end;
        align-items: flex-end;
        pointer-events: auto; }
        .header .nav-container ul li a {
          filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
          opacity: 1;
          pointer-events: auto;
          font-size: inherit; }
        .header .nav-container .contact-details {
          text-align: right;
          width: 100%; }
          .header .nav-container .contact-details ul.menu-default {
            margin: 0;
            padding: 0; }
            .header .nav-container .contact-details ul.menu-default > li {
              display: inline-block;
              position: relative; }
              .header .nav-container .contact-details ul.menu-default > li > a {
                display: inline-block;
                padding: 0; }
                .header .nav-container .contact-details ul.menu-default > li > a:before {
                  display: inline-block;
                  content: '';
                  width: 5px;
                  height: 5px;
                  border-radius: 50%;
                  margin: 0 15px;
                  background: var(--secondary); }
              .header .nav-container .contact-details ul.menu-default > li:first-child > a:before {
                display: none; }
              .header .nav-container .contact-details ul.menu-default > li.active > a, .header .nav-container .contact-details ul.menu-default > li.active-child > a {
                color: var(--secondary); }
              .header .nav-container .contact-details ul.menu-default > li:hover > a {
                color: var(--secondary); }
              .header .nav-container .contact-details ul.menu-default > li .drop-down {
                position: absolute;
                filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
                opacity: 0;
                -moz-transition: all 0.5s ease-in-out;
                -o-transition: all 0.5s ease-in-out;
                -webkit-transition: all 0.5s ease-in-out;
                transition: all 0.5s ease-in-out;
                right: -15px;
                padding-top: 10px;
                pointer-events: none; }
                .header .nav-container .contact-details ul.menu-default > li .drop-down > ul {
                  background: var(--primary);
                  text-align: right;
                  width: auto;
                  min-width: 300px; }
                .header .nav-container .contact-details ul.menu-default > li .drop-down a {
                  color: #ffffff;
                  padding: 5px 15px;
                  font-size: 1em;
                  pointer-events: none; }
                .header .nav-container .contact-details ul.menu-default > li .drop-down li:hover > a {
                  background: var(--secondary); }
              .header .nav-container .contact-details ul.menu-default > li:hover .drop-down {
                filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
                opacity: 1;
                pointer-events: auto; }
                .header .nav-container .contact-details ul.menu-default > li:hover .drop-down a {
                  pointer-events: auto; }
            .header .nav-container .contact-details ul.menu-default li a {
              color: #ffffff; }
            .header .nav-container .contact-details ul.menu-default li.active > a, .header .nav-container .contact-details ul.menu-default li.active-child > a {
              color: var(--secondary); }
            .header .nav-container .contact-details ul.menu-default li.active:hover > a, .header .nav-container .contact-details ul.menu-default li.active-child:hover > a {
              color: #ffffff; } }

.pre-school .header h1 a {
  background-image: url("/site/img/misson-pre-school-logo.svg"); }
@media (min-width: 992px) {
  .pre-school .header #navmenu-default > li:hover > a {
    color: var(--contrast) !important; }
  .pre-school .header #navmenu-default li.active > a, .pre-school .header #navmenu-default li.active-child > a {
    color: var(--contrast); }
  .pre-school .header #navmenu-default li.active:hover > a, .pre-school .header #navmenu-default li.active-child:hover > a {
    color: var(--contrast); } }
@media (min-width: 992px) {
  .pre-school.scrolled .header #navmenu-default li.active > a, .pre-school.scrolled .header #navmenu-default li.active-child > a {
    color: var(--contrast); } }

.mobile-visible .header {
  z-index: 102; }
  .mobile-visible .header:before {
    width: 100vmax;
    height: 100vmax;
    transform: translate3d(-50vh, -50vh, 0) scale(5); }
  .mobile-visible .header .nav-outer-container {
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
    opacity: 1;
    pointer-events: auto; }
    .mobile-visible .header .nav-outer-container .nav-container {
      pointer-events: auto; }
      .mobile-visible .header .nav-outer-container .nav-container ul li a {
        filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
        opacity: 1;
        pointer-events: auto; }

@media (min-width: 992px) {
  .scrolled .header, .no-banners .header {
    background: var(--primary);
    padding: 0 0 15px 0; }
    .scrolled .header h1 > a, .no-banners .header h1 > a {
      width: 200px;
      height: 80px; }
  .scrolled .icon-telephone, .no-banners .icon-telephone {
    color: var(--primary); }
    .scrolled .icon-telephone:before, .no-banners .icon-telephone:before {
      background: #ffffff; }
    .scrolled .icon-telephone:hover:before, .no-banners .icon-telephone:hover:before {
      background: var(--secondary); } }

.no-banners .logo-container {
  background: var(--primary);
  padding: 10px 0; }
  @media (min-width: 992px) {
    .no-banners .logo-container {
      background: none;
      padding: inherit; } }
.no-banners .page-content {
  padding-top: 130px; }
@media (min-width: 992px) {
  .no-banners .page-content {
    padding-top: 110px; } }

.section-default {
  padding: 30px 0 10px 0; }

.hero {
  height: 100vh; }
  @media (min-width: 992px) {
    .hero {
      height: 170vw; } }
  .hero.small-banner {
    height: 90vw; }
    @media (min-width: 992px) {
      .hero.small-banner {
        height: 20vw; } }
  .hero .carousel, .hero .carousel-inner, .hero .carousel-item, .hero .slide-inner-container, .hero .slide-inner-container .container {
    position: relative;
    width: 100%;
    height: 100%; }
@keyframes kenBurns {
  from {
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -webkit-transform: scale(1);
    transform: scale(1); }
  to {
    -moz-transform: scale(1.2);
    -ms-transform: scale(1.2);
    -webkit-transform: scale(1.2);
    transform: scale(1.2); } }
  .hero .slide-bg {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: hidden; }
    .hero .slide-bg img {
      position: relative;
      object-fit: cover;
      width: 100%;
      height: 100%; }
  .hero .carousel-item.active .slide-bg {
    animation: 7s ease-out kenBurns;
    animation-fill-mode: forwards; }
@keyframes carouselFadeIn {
  from {
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
    opacity: 0;
    -moz-transform: scale(0.5);
    -ms-transform: scale(0.5);
    -webkit-transform: scale(0.5);
    transform: scale(0.5); }
  to {
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
    opacity: 1;
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -webkit-transform: scale(1);
    transform: scale(1); } }
  .hero .carousel-item .inner-content {
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
    opacity: 0;
    -moz-transform: translateY(130px) scale(0.5);
    -ms-transform: translateY(130px) scale(0.5);
    -webkit-transform: translateY(130px) scale(0.5);
    transform: translateY(130px) scale(0.5);
    transform-origin: 50% 50%; }
  .hero .carousel-item.active .inner-content {
    animation: 0.8s cubic-bezier(0.6, 0.2, 0.1, 1) carouselFadeIn;
    animation-fill-mode: forwards; }
  .hero .slide-inner-container {
    background-size: cover;
    background-position: center center; }
    .hero .slide-inner-container:before {
      position: absolute;
      content: '';
      display: block;
      width: 100%;
      height: 100%;
      background: rgba(0, 0, 0, 0.5);
      z-index: 10; }
  .hero .slide-inner-container .container {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
    z-index: 12; }
  .hero.small-banner .slide-inner-container .container {
    -webkit-align-items: flex-end;
    align-items: flex-end;
    padding-bottom: 20px; }
    @media (min-width: 992px) {
      .hero.small-banner .slide-inner-container .container {
        padding-bottom: 30px; } }
  .hero .banner-video {
    position: absolute;
    left: -50%;
    top: 0;
    min-width: 100%;
    min-height: 100%; }
    @media (min-width: 992px) {
      .hero .banner-video {
        left: 0;
        margin-left: 0; } }
  .hero .inner-content {
    max-width: 90% !important; }
    @media (min-width: 992px) {
      .hero .inner-content {
        min-width: 600px; } }
    .hero .inner-content * {
      color: #ffffff !important;
      text-align: center; }
    .hero .inner-content h3 {
      font-size: 1.2em;
      margin: 0; }
    .hero .inner-content h2 {
      font-weight: 700;
      font-size: 2.5em;
      margin: 0 0 30px 0; }
    .hero .inner-content a {
      white-space: nowrap;
      display: block;
      padding: 10px 20px;
      border: solid 1px var(--primary) !important;
      margin: 0 auto 30px auto;
      background: var(--primary); }
      .hero .inner-content a:hover {
        border-color: var(--secondary) !important;
        color: #ffffff;
        background: var(--secondary) !important; }
    .hero .inner-content .row .col:nth-child(2) a {
      border-color: var(--secondary) !important;
      background: var(--secondary) !important; }
      .hero .inner-content .row .col:nth-child(2) a:hover {
        border-color: var(--primary) !important;
        background: var(--primary) !important; }
    @media (min-width: 992px) {
      .hero .inner-content h3 {
        font-size: 1.5em; }
      .hero .inner-content h2 {
        font-size: 4.5em;
        margin: 0 0 30px 0; }
      .hero .inner-content a {
        white-space: nowrap;
        display: block;
        padding: 10px 20px;
        border: solid 1px #ffffff;
        margin: 0 auto 30px auto; }
        .hero .inner-content a:hover {
          border-color: var(--primary);
          color: #ffffff;
          background: var(--primary); } }
  @media (min-width: 992px) {
    .hero {
      height: 100vh; } }
  .hero .carousel-control-prev, .hero .carousel-control-next {
    display: none;
    z-index: 110; }
    @media (min-width: 992px) {
      .hero .carousel-control-prev, .hero .carousel-control-next {
        display: -webkit-flex;
        display: flex; } }

.ticker {
  background: var(--primary);
  color: #ffffff;
  height: 2.5em;
  overflow: hidden;
  width: 100vw;
  position: relative; }
  @media (min-width: 992px) {
    .ticker {
      position: sticky;
      bottom: 0;
      z-index: 110; } }
  .ticker a {
    color: #ffffff;
    text-decoration: underline; }
  .ticker ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
    position: absolute;
    left: 0;
    top: 0; }
    .ticker ul li {
      padding: 0;
      margin: 0;
      height: 2.5em;
      white-space: nowrap;
      position: absolute;
      left: 0;
      top: 0;
      padding: 10px;
      display: none;
      width: 100vw; }
      .ticker ul li .news-inner {
        position: absolute;
        display: block; }
        .ticker ul li .news-inner strong {
          display: inline-block; }
      .ticker ul li.active {
        display: block; }

.js .ticker ul li {
  display: block;
  position: absolute;
  pointer-events: none; }
  .js .ticker ul li .news-inner a {
    text-decoration: none;
    display: inline-block;
    overflow: hidden;
    width: 0;
    -moz-transition: width 3s;
    -o-transition: width 3s;
    -webkit-transition: width 3s;
    transition: width 3s; }
.js .ticker ul li.active {
  pointer-events: auto; }
  .js .ticker ul li.active .news-inner a {
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
    opacity: 1;
    width: 100vw; }
.js .ticker ul li.hiding .news-inner a {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0; }

.build-block {
  padding: 50px 0;
  background: #ffffff;
  position: relative; }

.build-block-alt {
  padding: 50px 0;
  background: #f2f2f2;
  position: relative; }
  .build-block-alt + .build-block-alt {
    background: #ffffff; }

.pre-footer {
  padding: 50px 0;
  background: #333333;
  color: #f2f2f2; }
  .pre-footer * {
    color: #f2f2f2; }
  .pre-footer a {
    color: #f2f2f2; }
    .pre-footer a:hover {
      color: var(--secondary); }
  .pre-footer ul {
    padding-left: 20px; }
  .pre-footer > .container > .row > .col-sm-3, .pre-footer > .container > .row > .col-sm-6 {
    margin: 30px 15px;
    padding-bottom: 30px;
    border-bottom: solid 1px #c2d0e0; }
    @media (min-width: 992px) {
      .pre-footer > .container > .row > .col-sm-3, .pre-footer > .container > .row > .col-sm-6 {
        margin: inherit;
        padding-bottom: inherit;
        border-bottom: none; } }

.footer {
  padding: 10px 0;
  background: var(--primary);
  color: #ffffff;
  border-top: solid 1px #c2d0e0;
  border-bottom: solid 1px #c2d0e0;
  font-size: 80%; }
  .footer p {
    margin: 0; }
  .footer a {
    color: #ffffff; }

.ad-block {
  background: var(--primary);
  padding: 15px;
  color: #ffffff;
  margin: 0 0 30px 0;
  position: relative; }
  .ad-block a {
    color: #ffffff; }
  .ad-block .ad-title h2 {
    font-size: 2em;
    margin: 0 0 10px 0; }
    .ad-block .ad-title h2 a {
      display: block; }
      .ad-block .ad-title h2 a span {
        display: block;
        max-width: 70%; }
      .ad-block .ad-title h2 a:after {
        display: block;
        content: '';
        width: 30px;
        height: 30px;
        border-top: solid 15px #ffffff;
        border-right: solid 15px #ffffff;
        border-bottom: solid 15px transparent;
        border-left: solid 15px transparent;
        position: absolute;
        right: 15px;
        top: 15px; }
  .ad-block.no-corner > a img {
    position: absolute;
    width: 60px;
    right: 15px;
    top: 15px; }
  .ad-block.no-corner > a .fa {
    position: absolute;
    right: 15px;
    top: 15px;
    font-size: 1.8em; }
  .ad-block.no-corner .ad-title h2 a:after {
    display: none; }
  .ad-block.ad-block-light-blue {
    background: var(--secondary); }
  .ad-block.ad-block-facebook {
    min-height: 300px; }
  .ad-block:hover .ad-title h2 a:after {
    animation-duration: 1.0s;
    animation-iteration-count: infinite;
    transform-origin: bottom;
    animation-name: bounce-7;
    /*animation-timing-function: cubic-bezier(0.280, 0.840, 0.420, 1);*/ }

.half-width .ad-block.no-corner a img {
  float: right;
  margin: 0 0 10px 10px;
  position: relative;
  width: inherit;
  right: inherit;
  top: inherit;
  max-width: 50%; }

.portal-stages .stage-teaser {
  border: none;
  color: #ffffff;
  /*height: 100%; */
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center; }
  .portal-stages .stage-teaser .stage-teaser-inner {
    display: block;
    width: 100%;
    text-align: center;
    background: var(--primary);
    -moz-transition: all 0.4s ease-in-out;
    -o-transition: all 0.4s ease-in-out;
    -webkit-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out;
    border: solid 1px transparent; }
    .portal-stages .stage-teaser .stage-teaser-inner h3 {
      font-size: 1em; }
    .portal-stages .stage-teaser .stage-teaser-inner a {
      color: #ffffff;
      display: block;
      padding: 30px;
      width: 100%; }
  .portal-stages .stage-teaser:hover {
    color: #1a1a1a; }
    .portal-stages .stage-teaser:hover .stage-teaser-inner {
      background: transparent !important;
      border-color: var(--primary); }
      .portal-stages .stage-teaser:hover .stage-teaser-inner a {
        color: #1a1a1a; }

@media (min-width: 992px) {
  .learning-group-links .learning-group-links-content {
    position: sticky;
    top: 0; } }

.learning-group table.table tr td {
  padding: 0;
  background: #f2f2f2;
  -moz-transition: background-color 0.2s ease-in-out;
  -o-transition: background-color 0.2s ease-in-out;
  -webkit-transition: background-color 0.2s ease-in-out;
  transition: background-color 0.2s ease-in-out; }
  .learning-group table.table tr td > a {
    display: block !important;
    padding: 8px; }
.learning-group table.table tr td:first-child {
  padding-left: 15px; }
.learning-group table.table tr td:last-child {
  width: 50px;
  text-align: right;
  padding-right: 15px; }
.learning-group table.table tr:hover td {
  background: var(--secondary); }
  .learning-group table.table tr:hover td > a {
    color: #ffffff; }
.learning-group table.table .btn {
  margin: 3px 0 0 0;
  padding: 3px 10px;
  border: none;
  display: inline-block; }
  .learning-group table.table .btn .fa {
    margin-right: 10px; }
  .learning-group table.table .btn span {
    display: none; }
    @media (min-width: 992px) {
      .learning-group table.table .btn span {
        display: inline-block; } }
  .learning-group table.table .btn:hover:before {
    display: none; }
.learning-group table.table p {
  margin: 0 0 10px 10px; }

.learning-stage-intro-block {
  position: relative;
  margin-bottom: 30px; }

h3.group-title {
  background: var(--secondary);
  font-size: 1.2em;
  margin: 0 0 15px 0;
  padding: 10px;
  color: #ffffff; }

.learning-group-intro {
  position: relative;
  background: var(--primary);
  padding: 0 0 1px 0; }
  .learning-group-intro h3 {
    font-size: 1.2em;
    margin: 0 0 15px 0;
    color: #ffffff;
    padding: 10px 10px 0 10px; }
  .learning-group-intro .group-intro-inner {
    padding: 0 10px; }
    .learning-group-intro .group-intro-inner * {
      color: #ffffff; }

.group-intro-photo img, .group-intro img {
  display: block;
  width: 100% !important; }

.learning-group-content .table a {
  color: var(--primary); }

.accordion .accordion-trigger {
  cursor: pointer;
  position: relative; }
  .accordion .accordion-trigger:before {
    display: block;
    color: #ffffff;
    position: absolute;
    right: 10px;
    content: '\f150';
    font-family: FontAwesome;
    font-size: 1em;
    -moz-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out; }
  .accordion .accordion-trigger.no-icon:before {
    display: none; }
  .accordion .accordion-trigger.accordion-open:before {
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg); }
.accordion .accordion-closed {
  display: none; }

.gallery-thumbnail, .gallery-items {
  position: relative;
  z-index: 10;
  margin-bottom: 15px; }
  .gallery-thumbnail a, .gallery-items a {
    display: block;
    position: relative;
    border: solid 2px #ffffff;
    min-height: 100px; }
    .gallery-thumbnail a img, .gallery-items a img {
      display: block;
      width: 100%; }
    .gallery-thumbnail a .gallery-caption, .gallery-items a .gallery-caption {
      position: absolute;
      bottom: 0;
      left: 0;
      padding: 15px;
      background: rgba(0, 0, 0, 0.5);
      color: #ffffff;
      width: 100%;
      display: block; }
    .gallery-thumbnail a:after, .gallery-items a:after {
      display: block;
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      background: transparent;
      z-index: -1;
      content: '';
      -moz-box-shadow: transparent 5px 5px 0;
      -webkit-box-shadow: transparent 5px 5px 0;
      box-shadow: transparent 5px 5px 0;
      -moz-transition: all 0.4s ease-in-out;
      -o-transition: all 0.4s ease-in-out;
      -webkit-transition: all 0.4s ease-in-out;
      transition: all 0.4s ease-in-out; }
    .gallery-thumbnail a:hover:after, .gallery-items a:hover:after {
      -moz-box-shadow: #1a1a1a 5px 5px 10px;
      -webkit-box-shadow: #1a1a1a 5px 5px 10px;
      box-shadow: #1a1a1a 5px 5px 10px; }

#gallery #gallery-intro {
  margin-bottom: 30px;
  padding: 15px;
  background: #f2f2f2; }
  #gallery #gallery-intro h2 {
    margin: 0 15px 0 0; }
#gallery .paginate a.btn span {
  display: none; }
  @media (min-width: 992px) {
    #gallery .paginate a.btn span {
      display: inline-block; } }
#gallery .paginate .text-left .fa {
  margin-right: 10px; }
#gallery .paginate .text-right .fa {
  margin-left: 10px; }
#gallery .paginate .text-right a.btn {
  margin: 0 0 0 auto; }

.row.masonry {
  margin: 0; }
  .row.masonry .col-sm-3 {
    padding: 0; }

.form-type-checkbox label {
  display: block; }
  .form-type-checkbox label input {
    margin: 0 10px 0 20px; }

.cms--form {
  background: #efefef;
  padding: 30px; }

.group-individual h4 {
  font-weight: 800;
  color: var(--primary);
  font-size: 1.7em;
  margin: 0; }
  @media (min-width: 992px) {
    .group-individual h4 {
      font-size: 1.4em; } }

.gallery-teaser {
  position: relative;
  z-index: 10;
  margin-bottom: 40px; }
  .gallery-teaser a {
    position: relative;
    z-index: 10;
    display: block; }
    .gallery-teaser a img {
      display: block;
      position: relative;
      width: 100%; }
    .gallery-teaser a:before {
      display: block;
      left: 10px;
      top: 10px;
      background: var(--secondary);
      width: 100%;
      height: 100%;
      content: '';
      z-index: -1;
      position: absolute; }

a.pdf-link:before {
  display: inline-block;
  content: '\f1c1';
  font-family: FontAwesome;
  color: red;
  margin: 0 10px 0 0; }

.news-items-content > .news-item {
  border-bottom: solid 1px var(--secondary);
  padding-bottom: 30px;
  margin-bottom: 30px; }

.news-photos img {
  margin: 0 0 15px 0; }

.news-quick-links ul li.active a {
  color: var(--primary); }

.letter {
  background: #F0EFDC;
  padding: 30px;
  margin: 0 0 30px 0; }

.mobile-check {
  display: block; }
  @media (min-width: 992px) {
    .mobile-check {
      display: none; } }

.therm-container {
  position: fixed;
  left: 0;
  top: 0;
  width: 100vw;
  min-height: 100vh;
  background: rgba(0, 0, 0, 0.6);
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: center;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
  pointer-events: none;
  -moz-transition: all 0.5s ease-in-out;
  -o-transition: all 0.5s ease-in-out;
  -webkit-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
  padding: 15px; }
  @media (min-width: 992px) {
    .therm-container {
      padding: 0; } }

.show-thermometer .therm-container {
  filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
  opacity: 1;
  pointer-events: auto; }

.therm-inner {
  width: 800px;
  max-width: 95%;
  background: #fff;
  padding: 30px;
  border-radius: 30px;
  position: relative;
  max-height: 90vh;
  text-align: center; }
  .therm-inner svg {
    margin-bottom: 30px;
    max-height: 70vh; }
  @media (min-width: 992px) {
    .therm-inner {
      text-align: inherit; } }

.therm {
  position: relative; }

.therm-circle {
  padding: 15px;
  border: solid 15px grey;
  background: white;
  border-radius: 50%;
  display: inline-block;
  z-index: 1; }

.therm-circle-inner {
  width: 100px;
  height: 100px;
  background: red;
  border-radius: 50%;
  z-index: 3; }

.therm-current {
  position: relative;
  width: 80px;
  left: 40px;
  height: 400px;
  background: white;
  border: solid 15px grey;
  margin-bottom: -100px;
  z-index: 2; }

.therm-close {
  width: 50px;
  height: 50px;
  position: absolute;
  right: -15px;
  top: -15px;
  background: #fff;
  border-radius: 50%;
  border: solid 5px #444;
  z-index: 1010;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer; }

.therm-close .fa {
  font-size: 1.5rem; }

#sqg-page-notice {
  pointer-events: none; }
