/* Webfont: LatoLatin-Regular */
@font-face {
  font-family: 'Lato';
  src: url("../fonts/LatoLatin-Regular.eot");
  /* IE9 Compat Modes */
  src: url("../fonts/LatoLatin-Regular.eot?#iefix") format("embedded-opentype"), url("../fonts/LatoLatin-Regular.woff2") format("woff2"), url("../fonts/LatoLatin-Regular.woff") format("woff"), url("../fonts/LatoLatin-Regular.ttf") format("truetype");
  font-style: normal;
  font-weight: normal;
  text-rendering: optimizeLegibility; }

/* Webfont: LatoLatin-Italic */
@font-face {
  font-family: 'Lato';
  src: url("../fonts/LatoLatin-Italic.eot");
  /* IE9 Compat Modes */
  src: url("../fonts/LatoLatin-Italic.eot?#iefix") format("embedded-opentype"), url("../fonts/LatoLatin-Italic.woff2") format("woff2"), url("../fonts/LatoLatin-Italic.woff") format("woff"), url("../fonts/LatoLatin-Italic.ttf") format("truetype");
  font-style: italic;
  font-weight: normal;
  text-rendering: optimizeLegibility; }

/* Webfont: LatoLatin-Medium */
@font-face {
  font-family: 'Lato';
  src: url("../fonts/LatoLatin-Medium.eot");
  /* IE9 Compat Modes */
  src: url("../fonts/LatoLatin-Medium.eot?#iefix") format("embedded-opentype"), url("../fonts/LatoLatin-Medium.woff2") format("woff2"), url("../fonts/LatoLatin-Medium.woff") format("woff"), url("../fonts/LatoLatin-Medium.ttf") format("truetype");
  font-style: normal;
  font-weight: 500;
  text-rendering: optimizeLegibility; }

/* Webfont: LatoLatin-Semibold */
@font-face {
  font-family: 'Lato';
  src: url("../fonts/LatoLatin-Semibold.eot");
  /* IE9 Compat Modes */
  src: url("../fonts/LatoLatin-Semibold.eot?#iefix") format("embedded-opentype"), url("../fonts/LatoLatin-Semibold.woff2") format("woff2"), url("../fonts/LatoLatin-Semibold.woff") format("woff"), url("../fonts/LatoLatin-Semibold.ttf") format("truetype");
  font-style: normal;
  font-weight: 600;
  text-rendering: optimizeLegibility; }

/* Webfont: LatoLatin-Bold */
@font-face {
  font-family: 'Lato';
  src: url("../fonts/LatoLatin-Bold.eot");
  /* IE9 Compat Modes */
  src: url("../fonts/LatoLatin-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/LatoLatin-Bold.woff2") format("woff2"), url("../fonts/LatoLatin-Bold.woff") format("woff"), url("../fonts/LatoLatin-Bold.ttf") format("truetype");
  font-style: normal;
  font-weight: bold;
  text-rendering: optimizeLegibility; }

/* Webfont: LatoLatin-BoldItalic */
@font-face {
  font-family: 'Lato';
  src: url("../fonts/LatoLatin-BoldItalic.eot");
  /* IE9 Compat Modes */
  src: url("../fonts/LatoLatin-BoldItalic.eot?#iefix") format("embedded-opentype"), url("../fonts/LatoLatin-BoldItalic.woff2") format("woff2"), url("../fonts/LatoLatin-BoldItalic.woff") format("woff"), url("../fonts/LatoLatin-BoldItalic.ttf") format("truetype");
  font-style: italic;
  font-weight: bold;
  text-rendering: optimizeLegibility; }

.owl-carousel {
  display: none;
  width: 100%;
  -webkit-tap-highlight-color: transparent;
  /* position relative and z-index fix webkit rendering fonts issue */
  position: relative;
  z-index: 1; }
  .owl-carousel .owl-stage {
    position: relative;
    -ms-touch-action: pan-Y;
    touch-action: manipulation;
    -moz-backface-visibility: hidden;
    /* fix firefox animation glitch */ }
  .owl-carousel .owl-stage:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0; }
  .owl-carousel .owl-stage-outer {
    position: relative;
    /* fix for flashing background */
    -webkit-transform: translate3d(0px, 0px, 0px); }
  .owl-carousel .owl-wrapper,
  .owl-carousel .owl-item {
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0); }
  .owl-carousel .owl-item {
    position: relative;
    min-height: 1px;
    float: left;
    -webkit-backface-visibility: hidden;
    -webkit-tap-highlight-color: transparent;
    -webkit-touch-callout: none; }
    .owl-carousel .owl-item .owl-lazy {
      opacity: 0;
      -webkit-transition: opacity 400ms ease;
      -o-transition: opacity 400ms ease;
      transition: opacity 400ms ease; }
    .owl-carousel .owl-item img.owl-lazy {
      -webkit-transform-style: preserve-3d;
      transform-style: preserve-3d; }
  .owl-carousel .owl-nav.disabled,
  .owl-carousel .owl-dots.disabled {
    display: none; }
  .owl-carousel .owl-nav .owl-prev,
  .owl-carousel .owl-nav .owl-next,
  .owl-carousel .owl-dot {
    cursor: pointer;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none; }
  .owl-carousel .owl-nav button.owl-prev,
  .owl-carousel .owl-nav button.owl-next,
  .owl-carousel button.owl-dot {
    background: none;
    color: inherit;
    border: none;
    padding: 0 !important;
    font: inherit; }
  .owl-carousel.owl-loaded {
    display: block; }
  .owl-carousel.owl-loading {
    opacity: 0;
    display: block; }
  .owl-carousel.owl-hidden {
    opacity: 0; }
  .owl-carousel.owl-refresh .owl-item {
    visibility: hidden; }
  .owl-carousel.owl-drag .owl-item {
    -ms-touch-action: none;
    touch-action: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none; }
  .owl-carousel.owl-grab {
    cursor: move;
    cursor: -webkit-grab;
    cursor: grab; }
  .owl-carousel.owl-rtl {
    direction: rtl; }
  .owl-carousel.owl-rtl .owl-item {
    float: right; }

.owl-height {
  -webkit-transition: height 500ms ease-in-out;
  -o-transition: height 500ms ease-in-out;
  transition: height 500ms ease-in-out; }

/* No Js */
.no-js .owl-carousel {
  display: block; }

.content__region .button__link a {
  background-color: #E71D13; }
  .content__region .button__link a:hover {
    background-color: #003e6a; }

.schoolGrid {
  padding: 20px 5% 0; }

.schoolGrid__item {
  height: 350px;
  display: block;
  background-color: #003e6a;
  margin-bottom: 20px; }
  .schoolGrid__item:last-child {
    margin-bottom: 0; }

.schoolGrid__item--event {
  text-align: center;
  padding: 25px 0; }
  .schoolGrid__item--event .events__item__subtitle {
    color: #fff;
    letter-spacing: 4px;
    text-transform: uppercase; }
  .schoolGrid__item--event .events__item__date {
    color: #fff;
    margin: 10px 0 25px;
    font-size: 1.875em; }
  .schoolGrid__item--event .events__item__desc {
    padding: 0 10%;
    margin-bottom: 25px;
    line-height: 1.6;
    font-size: 0.875em; }
    .schoolGrid__item--event .events__item__desc > * {
      color: #fff; }
      .schoolGrid__item--event .events__item__desc > *:first-child {
        margin-top: 0; }
      .schoolGrid__item--event .events__item__desc > *:last-child {
        margin-bottom: 0; }
  .schoolGrid__item--event .button__link a {
    background-color: #fff;
    color: #003e6a; }

.schoolGrid__item--link {
  position: relative; }
  .schoolGrid__item--link .schoolGrid__item__link {
    height: 100%;
    display: block;
    position: relative; }
  .schoolGrid__item--link .schoolGrid__item__img {
    height: 100%;
    position: relative;
    overflow: hidden;
    -webkit-transition: opacity 350ms ease;
    -o-transition: opacity 350ms ease;
    transition: opacity 350ms ease; }
    .schoolGrid__item--link .schoolGrid__item__img:after {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0.8)));
      background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.8) 100%);
      background: -o-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.8) 100%);
      background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.8) 100%); }
  .schoolGrid__item--link .schoolGrid__item__title {
    margin: 0;
    position: absolute;
    bottom: 25px;
    left: 10%;
    right: 10%;
    color: #fff;
    z-index: 1;
    letter-spacing: 2px;
    text-align: center;
    font-size: 1.5em;
    line-height: 40px;
    -webkit-transition: -webkit-transform 350ms ease;
    transition: -webkit-transform 350ms ease;
    -o-transition: transform 350ms ease;
    transition: transform 350ms ease;
    transition: transform 350ms ease, -webkit-transform 350ms ease; }
  .schoolGrid__item--link .schoolGrid__item__more {
    position: absolute;
    bottom: 25px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    z-index: 1;
    opacity: 0;
    visibility: hidden;
    text-align: center;
    -webkit-transition: opacity 350ms ease, visibility 0ms linear 350ms, background-color 350ms ease, color 350ms ease;
    -o-transition: opacity 350ms ease, visibility 0ms linear 350ms, background-color 350ms ease, color 350ms ease;
    transition: opacity 350ms ease, visibility 0ms linear 350ms, background-color 350ms ease, color 350ms ease;
    line-height: 48px;
    white-space: nowrap;
    border-radius: 25px;
    background-color: #fff;
    color: #003e6a;
    padding: 2px 30px 0;
    font-size: 0.875em;
    letter-spacing: 2px;
    text-transform: uppercase; }
    .schoolGrid__item--link .schoolGrid__item__more:hover {
      background-color: #E71D13;
      color: #fff; }
  .schoolGrid__item--link:hover .schoolGrid__item__img {
    opacity: 0.15; }
  .schoolGrid__item--link:hover .schoolGrid__item__title {
    -webkit-transform: translateY(-60px);
    -ms-transform: translateY(-60px);
    transform: translateY(-60px); }
  .schoolGrid__item--link:hover .schoolGrid__item__more {
    -webkit-transition: opacity 350ms ease 150ms, visibility 0ms linear 150ms, background-color 350ms ease, color 350ms ease;
    -o-transition: opacity 350ms ease 150ms, visibility 0ms linear 150ms, background-color 350ms ease, color 350ms ease;
    transition: opacity 350ms ease 150ms, visibility 0ms linear 150ms, background-color 350ms ease, color 350ms ease;
    opacity: 1;
    visibility: visible; }

@media all and (min-width: 1025px) {
  .schoolGrid {
    padding: 0 20px; }
  .schoolGrid__item {
    width: calc(33.3333% - (40px / 3));
    height: 500px;
    display: inline-block;
    vertical-align: top;
    margin-right: 20px;
    margin-bottom: 0; }
    .schoolGrid__item:last-child {
      margin-right: 0; }
  .schoolGrid__item--event {
    padding: 100px 0; }
    .schoolGrid__item--event .events__item__date {
      font-size: 3.5em; }
  .schoolGrid__item--link .schoolGrid__item__title {
    font-size: 2.375em;
    bottom: 75px; }
  .schoolGrid__item--link .schoolGrid__item__more {
    bottom: 75px; }
  .schoolGrid__item--link:hover .schoolGrid__item__title {
    -webkit-transform: translateY(-75px);
    -ms-transform: translateY(-75px);
    transform: translateY(-75px); } }

.schoolSlider {
  padding: 45px 5%;
  position: relative; }

.schoolSlider__pager {
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%); }
  .schoolSlider__pager div {
    width: 20px;
    height: 1px;
    background-color: #1c1c1c;
    margin-bottom: 20px;
    position: relative;
    -webkit-transition: background-color 350ms ease, width 350ms ease;
    -o-transition: background-color 350ms ease, width 350ms ease;
    transition: background-color 350ms ease, width 350ms ease; }
    .schoolSlider__pager div span {
      position: absolute;
      left: 50px;
      top: -9px;
      bottom: -10px;
      margin: auto;
      color: #E71D13;
      font-size: 0.875em;
      line-height: 20px;
      opacity: 0;
      visibility: hidden;
      -webkit-transition: opacity 350ms ease, visibility 0ms linear 350ms;
      -o-transition: opacity 350ms ease, visibility 0ms linear 350ms;
      transition: opacity 350ms ease, visibility 0ms linear 350ms; }
    .schoolSlider__pager div.active {
      background-color: #E71D13;
      width: 40px; }
      .schoolSlider__pager div.active span {
        opacity: 1;
        visibility: visible;
        -webkit-transition: opacity 350ms ease, visibility 0ms linear;
        -o-transition: opacity 350ms ease, visibility 0ms linear;
        transition: opacity 350ms ease, visibility 0ms linear; }

.schoolSlider__inner {
  position: relative; }
  .schoolSlider__inner:before, .schoolSlider__inner:after {
    content: "";
    display: table; }
  .schoolSlider__inner:after {
    clear: both; }

.schoolSlider__btns {
  margin: 25px 0;
  text-align: center; }

.schoolSlider__btn {
  display: inline-block;
  vertical-align: top;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  border: 1px #e6e6e6 solid;
  background: none;
  color: #E71D13;
  padding: 0;
  outline: none;
  font-size: 1.25em;
  -webkit-transition: color 350ms ease;
  -o-transition: color 350ms ease;
  transition: color 350ms ease; }
  .schoolSlider__btn:hover {
    color: #003e6a; }

.schoolSlider__btn--prev {
  margin-right: 10px;
  padding-right: 1px; }

.schoolSlider__btn--next {
  padding-left: 1px; }

.schoolSlider__imageList {
  height: 320px;
  list-style: none;
  margin: 0;
  padding: 0;
  position: relative; }

.schoolSlider__imageList__item {
  width: 200px;
  height: 320px;
  position: absolute;
  margin: auto;
  left: 0;
  right: 0;
  z-index: 0;
  overflow: hidden;
  -webkit-transform: scale(0.8);
  -ms-transform: scale(0.8);
  transform: scale(0.8);
  background-color: #fff;
  -webkit-transition: left 1s ease, right 1s ease, -webkit-transform 1s ease;
  transition: left 1s ease, right 1s ease, -webkit-transform 1s ease;
  -o-transition: transform 1s ease, left 1s ease, right 1s ease;
  transition: transform 1s ease, left 1s ease, right 1s ease;
  transition: transform 1s ease, left 1s ease, right 1s ease, -webkit-transform 1s ease; }
  .schoolSlider__imageList__item img {
    opacity: 0.6 !important;
    -webkit-transition: opacity 1s ease;
    -o-transition: opacity 1s ease;
    transition: opacity 1s ease; }
  .schoolSlider__imageList__item.prev {
    left: 0;
    right: calc(100% - 200px);
    z-index: 1; }
  .schoolSlider__imageList__item.active {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    left: 0;
    right: 0;
    z-index: 3;
    -webkit-transition: left 1s ease, right 1s ease, -webkit-transform 1s ease;
    transition: left 1s ease, right 1s ease, -webkit-transform 1s ease;
    -o-transition: transform 1s ease, left 1s ease, right 1s ease;
    transition: transform 1s ease, left 1s ease, right 1s ease;
    transition: transform 1s ease, left 1s ease, right 1s ease, -webkit-transform 1s ease; }
    .schoolSlider__imageList__item.active img {
      opacity: 1 !important; }
  .schoolSlider__imageList__item.next {
    left: calc(100% - 200px);
    right: 0;
    z-index: 2; }

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

.schoolSlider__textList__item {
  width: 100%;
  text-align: center;
  position: absolute;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 500ms ease, visibility 0ms linear 500ms;
  -o-transition: opacity 500ms ease, visibility 0ms linear 500ms;
  transition: opacity 500ms ease, visibility 0ms linear 500ms; }
  .schoolSlider__textList__item.active {
    opacity: 1;
    visibility: visible;
    -webkit-transition: opacity 500ms ease 500ms, visibility 0ms linear 500ms;
    -o-transition: opacity 500ms ease 500ms, visibility 0ms linear 500ms;
    transition: opacity 500ms ease 500ms, visibility 0ms linear 500ms; }
  .schoolSlider__textList__item span {
    color: #E71D13;
    text-transform: uppercase;
    letter-spacing: 3px;
    display: block; }
  .schoolSlider__textList__item h3 {
    margin: 0;
    font-size: 1.5em; }
  .schoolSlider__textList__item p {
    line-height: 1.6;
    margin: 35px 0; }
  .schoolSlider__textList__item .button__link a {
    background-color: #E71D13; }
    .schoolSlider__textList__item .button__link a:hover {
      background-color: #003e6a; }

@media all and (min-width: 1025px) {
  .schoolSlider {
    padding: 90px 5%; }
  .schoolSlider__pager div {
    margin-bottom: 40px; }
  .schoolSlider__btns {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    height: 110px;
    width: 50px;
    z-index: 10; }
  .schoolSlider__btn--prev {
    margin-bottom: 10px;
    margin-right: 0; }
  .schoolSlider__imageList {
    width: 55%;
    float: left;
    height: 510px; }
  .schoolSlider__imageList__item {
    width: 450px;
    height: 510px; }
    .schoolSlider__imageList__item.prev {
      right: calc(100% - 450px); }
    .schoolSlider__imageList__item.next {
      left: calc(100% - 450px); }
  .schoolSlider__textList {
    width: 45%;
    float: right; }
  .schoolSlider__textList__item {
    padding: 75px 115px 0 60px;
    text-align: left; }
    .schoolSlider__textList__item h3 {
      font-size: 3em; } }

.visit {
  background: #E71D13;
  width: 90%;
  margin: 0 auto;
  background-blend-mode: multiply;
  padding: 45px 5vw; }

.visit__content {
  text-align: center; }
  .visit__content .button__link {
    display: block;
    margin-bottom: 20px; }
    .visit__content .button__link a {
      display: inline-block;
      background-color: transparent;
      color: #fff;
      line-height: 46px;
      border: 1px rgba(255, 255, 255, 0.25) solid; }
      .visit__content .button__link a:hover {
        background-color: #fff;
        color: #E71D13; }
    .visit__content .button__link:last-child {
      margin-bottom: 0;
      margin-right: 0; }

.visit__title {
  color: #fff;
  font-size: 1.5em;
  margin: 0;
  letter-spacing: 2px; }

.visit__region {
  margin: 35px 0; }
  .visit__region > * {
    color: #fff;
    line-height: 1.6; }
    .visit__region > *:first-child {
      margin-top: 0; }
    .visit__region > *:last-child {
      margin-bottom: 0; }

@media all and (min-width: 1025px) {
  .visit {
    padding: 90px calc(5vw - 20px);
    width: calc(100% - 40px);
    background: #E71D13 url("/_site/images/design/visit.png") right/auto 100% no-repeat; }
  .visit__content {
    width: 655px;
    text-align: left; }
    .visit__content .button__link {
      display: inline-block;
      margin-right: 20px; }
      .visit__content .button__link a {
        display: block; }
  .visit__title {
    font-size: 3em; } }

@media all and (min-width: 1301px) {
  .visit {
    padding: 90px calc(50vw - 585px - 20px);
    background: #E71D13 url("/_site/images/design/visit.png") right/auto 100% no-repeat; } }

.quotes {
  padding: 45px 0;
  position: relative; }

.quotes__list {
  list-style: none;
  padding: 0;
  margin: 0;
  width: 90%;
  max-width: 1170px;
  margin-right: auto;
  margin-left: auto;
  float: none;
  margin-right: auto;
  margin-left: auto;
  max-width: 910px; }

.quotes__item {
  text-align: center;
  top: 50% !important;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%); }
  .quotes__item p {
    margin: 0;
    font-size: 1.375em;
    font-family: "Playfair Display", serif;
    font-style: italic;
    position: relative; }
    .quotes__item p:before {
      content: "";
      position: absolute;
      left: -75px;
      top: -30px;
      width: 75px;
      height: 61px;
      background-image: url("/_site/images/design/quote.svg"); }
    .quotes__item p:after {
      content: "";
      position: absolute;
      right: -75px;
      bottom: -30px;
      width: 75px;
      height: 61px;
      -webkit-transform: scale(-1);
      -ms-transform: scale(-1);
      transform: scale(-1);
      background-image: url("/_site/images/design/quote.svg"); }
  .quotes__item span {
    color: #E71D13;
    text-transform: uppercase;
    letter-spacing: 3px;
    display: block;
    margin-top: 30px; }

@media all and (min-width: 1025px) {
  .quotes {
    padding: 90px 0; }
  .quotes__item p {
    font-size: 2.25em; } }
