@import url(https://fonts.googleapis.com/css2?family=Rubik:wght@500&display=swap);
@import url(https://use.typekit.net/dqu8yam.css);
/**
 * Breakpoints
 * WordPress Breakpoints: 782px 600px
 * Other Breakpoints: 1280px 960px 425px
 * Example usage:
 *
 *   .container {
 *     flex-direction: column;
 *     @include above(782px) {
 *       flex-direction: row;
 *     }
 *   }
 *
 */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

* {
  box-sizing: border-box;
}

html {
  line-height: 1;
  scroll-behavior: smooth;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

a {
  color: currentColor;
  text-decoration: none;
}

ol, ul {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption,
th,
td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

q,
blockquote {
  quotes: none;
}

q:before,
q:after,
blockquote:before,
blockquote:after {
  content: "";
  content: none;
}

a img {
  border: none;
}

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

input[type=text],
input[type=email],
input[type=tel],
input[type=url],
input[type=search],
input[type=submit],
textarea {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border-radius: 0;
}
input[type=text]:focus,
input[type=email]:focus,
input[type=tel]:focus,
input[type=url]:focus,
input[type=search]:focus,
input[type=submit]:focus,
textarea:focus {
  outline: none;
}

textarea {
  resize: vertical;
}

select {
  display: block;
}

/*! locomotive-scroll v4.1.1 | MIT License | https://github.com/locomotivemtl/locomotive-scroll */
html.has-scroll-smooth {
  overflow: hidden;
}

html.has-scroll-dragging {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.has-scroll-smooth body {
  overflow: hidden;
}

.has-scroll-smooth [data-scroll-container] {
  min-height: 100vh;
}

[data-scroll-direction=horizontal] [data-scroll-container] {
  height: 100vh;
  display: inline-block;
  white-space: nowrap;
}

[data-scroll-direction=horizontal] [data-scroll-section] {
  display: inline-block;
  vertical-align: top;
  white-space: nowrap;
  height: 100%;
}

.c-scrollbar {
  position: absolute;
  right: 0;
  top: 0;
  width: 11px;
  height: 100%;
  transform-origin: center right;
  transition: transform 0.3s, opacity 0.3s;
  opacity: 0;
}

.c-scrollbar:hover {
  transform: scaleX(1.45);
}

.c-scrollbar:hover,
.has-scroll-scrolling .c-scrollbar,
.has-scroll-dragging .c-scrollbar {
  opacity: 1;
}

[data-scroll-direction=horizontal] .c-scrollbar {
  width: 100%;
  height: 10px;
  top: auto;
  bottom: 0;
  transform: scaleY(1);
}

[data-scroll-direction=horizontal] .c-scrollbar:hover {
  transform: scaleY(1.3);
}

.c-scrollbar_thumb {
  position: absolute;
  top: 0;
  right: 0;
  background-color: black;
  opacity: 0.5;
  width: 7px;
  border-radius: 10px;
  margin: 2px;
  cursor: -webkit-grab;
  cursor: grab;
}

.has-scroll-dragging .c-scrollbar_thumb {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

[data-scroll-direction=horizontal] .c-scrollbar_thumb {
  right: auto;
  bottom: 0;
}

.contact-form {
  background: #58D0E2;
  padding: 50px 0 70px;
}
.contact-form .introduction {
  margin: 0 auto;
  width: calc(100% - 200px);
  max-width: 900px;
}
@media (max-width: 782px) {
  .contact-form .introduction {
    width: calc(100% - 40px);
  }
}
.contact-form .introduction .content {
  max-width: 300px;
}
@media (min-width: 960px) {
  .contact-form .introduction .content {
    margin: 0 0 0 90px;
  }
}
.contact-form .introduction h2 {
  font-family: "Rubik", sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 50px;
  line-height: 1;
  color: #2B2E34;
}
.contact-form .introduction p {
  font-family: ff-tisa-sans-web-pro, sans-serif;
  font-weight: 300;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 16px;
  line-height: 1.6;
  color: #2B2E34;
  margin: 30px 0 0;
}
.contact-form form {
  margin: 0 auto;
  width: calc(100% - 200px);
  max-width: 900px;
  width: 100%;
  margin: 50px auto 0;
}
@media (max-width: 782px) {
  .contact-form form {
    width: calc(100% - 40px);
  }
}
@media (min-width: 960px) {
  .contact-form form {
    padding: 0 90px;
  }
}
.contact-form form .form-row {
  margin: 15px 0 0;
}
.contact-form form .form-row:first-child {
  margin: 0;
}
.contact-form form .form-footer {
  margin: 20px 0 0;
}
.contact-form form .sfu {
  display: none;
}
.contact-form form .error-message {
  font-family: ff-tisa-sans-web-pro, sans-serif;
  font-weight: 300;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 12px;
  line-height: 1.6;
  color: #FFFFFF;
  font-weight: bold;
  background: #0C7DA8;
  padding: 7px 35px 8px;
}
.contact-form form .success-msg {
  font-family: ff-tisa-sans-web-pro, sans-serif;
  font-weight: 300;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 16px;
  line-height: 1.6;
  color: #2B2E34;
}
.contact-form form input[type=text],
.contact-form form input[type=number],
.contact-form form input[type=email] {
  font-family: ff-tisa-sans-web-pro, sans-serif;
  font-weight: 300;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 12px;
  line-height: 55px;
  width: 100%;
  height: 55px;
  padding: 0 35px;
  background: #83dcea;
  border: 0;
  outline: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.contact-form form textarea {
  font-family: ff-tisa-sans-web-pro, sans-serif;
  font-weight: 300;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 12px;
  line-height: 1.4;
  width: 100%;
  height: 165px;
  padding: 18px 35px;
  background: #83dcea;
  border: 0;
  outline: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.contact-form form button {
  font-family: "Rubik", sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 14px;
  text-transform: uppercase;
  color: #FFFFFF;
  height: 35px;
  line-height: 36px;
  padding: 0 40px;
  cursor: pointer;
  background: none;
  border: 0;
  opacity: 0;
  display: block;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  transform: scale(1);
  transition: transform 0.3s, opacity 0s 0.3s;
  margin: 0 0 0 auto;
}
.contact-form form button:before {
  content: " ";
  background: #00ABE3;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transform: skew(-28deg, 0deg);
  transition: background 0.3s, left 0.3s, width 0.3s;
  z-index: -1;
}
.contact-form form button:focus, .contact-form form button:hover {
  transform: scale(1.11);
}
.contact-form form button:focus:before, .contact-form form button:hover:before {
  background: #faaf41;
  left: -10px;
  width: calc(100% + 20px);
}
.ready .contact-form form button {
  opacity: 1;
}

.footer-strap {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  min-height: 62px;
  text-align: center;
  padding: 18px 20px 0;
  background: #0C7DA8;
  white-space: nowrap;
  font-family: ff-tisa-sans-web-pro, sans-serif;
  font-weight: 300;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 16px;
  line-height: 1.6;
  color: #FFFFFF;
  background: #0b6f95;
  transition: background 0.3s;
  z-index: 9;
}
.footer-strap:focus, .footer-strap:hover {
  background: #096182;
}
.footer-strap .link {
  color: #faaf41;
  font-weight: bold;
}

.site-footer {
  background: #0C7DA8;
  padding: 65px 0 127px;
}
.site-footer .inner {
  margin: 0 auto;
  width: calc(100% - 200px);
  max-width: 900px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media (max-width: 782px) {
  .site-footer .inner {
    width: calc(100% - 40px);
  }
}
@media (max-width: 782px) {
  .site-footer .inner {
    flex-direction: column;
  }
}
.site-footer .brand {
  width: 196px;
}
.site-footer .brand img {
  width: 100%;
  height: auto;
  display: block;
}
.site-footer .brand .terms {
  font-family: ff-tisa-sans-web-pro, sans-serif;
  font-weight: 300;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 12px;
  line-height: 1.6;
  display: inline-block;
  color: #FFFFFF;
  margin: 15px 0 0;
}
.site-footer .business-details {
  display: flex;
}
@media (max-width: 782px) {
  .site-footer .business-details {
    margin: 40px 0 0;
    flex-direction: column;
  }
}
.site-footer .business-details .side {
  display: flex;
  justify-content: center;
  flex-direction: column;
}
.site-footer .business-details .side:first-child {
  align-items: center;
  border-bottom: 2px solid #FFFFFF;
  text-align: center;
  padding: 0 0 20px;
}
@media (min-width: 782px) {
  .site-footer .business-details .side:first-child {
    padding: 10px 20px 10px 0;
    text-align: right;
    align-items: flex-end;
    border-bottom: 0;
    border-right: 2px solid #FFFFFF;
  }
}
.site-footer .business-details .side:last-child {
  align-items: center;
  text-align: center;
  padding: 20px 0 0;
}
@media (min-width: 782px) {
  .site-footer .business-details .side:last-child {
    padding: 10px 0 10px 20px;
    text-align: left;
    align-items: flex-start;
  }
}
.site-footer .business-details .contact-method {
  font-family: ff-tisa-sans-web-pro, sans-serif;
  font-weight: 300;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 12px;
  line-height: 1.6;
  font-weight: bold;
  color: #FFFFFF;
}
.site-footer .business-details .label {
  font-family: ff-tisa-sans-web-pro, sans-serif;
  font-weight: 300;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 12px;
  line-height: 1.6;
  font-weight: bold;
  color: #FFFFFF;
}
.site-footer .business-details address {
  font-family: ff-tisa-sans-web-pro, sans-serif;
  font-weight: 300;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 12px;
  line-height: 1.6;
  color: #FFFFFF;
}

body {
  font-family: "Rubik", sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.admin-bar .container {
  padding: 32px 0 0;
}

::-moz-selection {
  background: #faaf41;
  color: #FFFFFF;
}

::selection {
  background: #faaf41;
  color: #FFFFFF;
}

.shutter {
  display: none;
}
@media (min-width: 960px) {
  .shutter {
    position: fixed;
    display: block;
    top: 115px;
    left: 0;
    height: calc(100% - 115px);
    width: 100%;
    opacity: 1;
    background: #FFFFFF;
    transition: height 1s cubic-bezier(0.23, 1, 0.32, 1), opacity 0s 1s;
  }
  .admin-bar .shutter {
    top: 147px;
    height: calc(100% - 83px);
  }
  [data-scroll-detected=true] .shutter {
    top: 0;
    height: 100%;
  }
  .ready .shutter {
    opacity: 0;
    height: 0;
  }
}

::-moz-placeholder {
  color: #2B2E34;
}

:-ms-input-placeholder {
  color: #2B2E34;
}

::placeholder {
  color: #2B2E34;
}

.site-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background: #FFFFFF;
  transform: translateY(0);
  transition: transform 0.4s;
  z-index: 99;
}
.admin-bar .site-header {
  top: 32px;
}
[data-scroll-detected=true] .site-header {
  transform: translateY(-100%);
}
.site-header .inner {
  margin: 0 auto;
  width: calc(100% - 200px);
  max-width: 900px;
  position: relative;
  height: 90px;
  opacity: 0;
  transform: translateY(-50px);
  transition: opacity 0.8s 0.2s, transform 0.8s 0.2s;
}
@media (max-width: 782px) {
  .site-header .inner {
    width: calc(100% - 40px);
  }
}
.ready .site-header .inner {
  opacity: 1;
  transform: translateY(0);
}
@media (min-width: 960px) {
  .site-header .inner {
    height: 115px;
  }
}
.site-header .brand {
  position: absolute;
  top: 12.5px;
  left: calc(50% - 87.5px);
  width: 175px;
}
@media (min-width: 960px) {
  .site-header .brand {
    top: 25px;
    left: 0;
  }
}
.site-header .enquire-button {
  font-family: "Rubik", sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 14px;
  text-transform: uppercase;
  color: #FFFFFF;
  height: 35px;
  line-height: 36px;
  padding: 0 40px;
  cursor: pointer;
  background: none;
  border: 0;
  opacity: 0;
  display: block;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  transform: scale(1);
  transition: transform 0.3s, opacity 0s 0.3s;
  position: absolute;
  top: 40px;
  right: 0;
}
.site-header .enquire-button:before {
  content: " ";
  background: #00ABE3;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transform: skew(-28deg, 0deg);
  transition: background 0.3s, left 0.3s, width 0.3s;
  z-index: -1;
}
.site-header .enquire-button:focus, .site-header .enquire-button:hover {
  transform: scale(1.11);
}
.site-header .enquire-button:focus:before, .site-header .enquire-button:hover:before {
  background: #faaf41;
  left: -10px;
  width: calc(100% + 20px);
}
.ready .site-header .enquire-button {
  opacity: 1;
}
@media (max-width: 960px) {
  .site-header .enquire-button {
    display: none;
  }
}

.homepage-banner {
  background: #58D0E2;
  position: relative;
  overflow: hidden;
}
.homepage-banner .pattern {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 1000vw;
  transform: translate(-50%, -50%);
}
@media (max-width: 960px) {
  .homepage-banner .pattern {
    transform: translate(-50%, -50%) scale(2);
  }
}
.homepage-banner .pattern img {
  width: 100%;
  height: auto;
  display: block;
}
@media (max-width: 960px) {
  .homepage-banner .pattern img {
    -webkit-animation: pattern_movement 25s infinite cubic-bezier(0.77, 0, 0.175, 1);
            animation: pattern_movement 25s infinite cubic-bezier(0.77, 0, 0.175, 1);
  }
}
.homepage-banner .inner {
  margin: 0 auto;
  width: calc(100% - 200px);
  max-width: 900px;
  min-height: 600px;
  padding: 165px 0 200px;
  position: relative;
}
@media (max-width: 782px) {
  .homepage-banner .inner {
    width: calc(100% - 40px);
  }
}
@media (min-width: 1920px) {
  .homepage-banner .inner {
    padding: 245px 0 200px;
  }
}
@media (min-width: 960px) {
  .homepage-banner .inner {
    min-height: calc(100vh - 60px);
  }
  .admin-bar .homepage-banner .inner {
    min-height: calc(100vh - 94px);
  }
}
@media (min-width: 960px) {
  .homepage-banner .content {
    margin: 0 0 0 90px;
  }
}
.homepage-banner .lower {
  margin: 0 auto;
  width: calc(100% - 200px);
  max-width: 900px;
  position: relative;
  height: 0;
}
@media (max-width: 782px) {
  .homepage-banner .lower {
    width: calc(100% - 40px);
  }
}
@media (max-width: 782px) {
  .homepage-banner .lower {
    width: 100%;
  }
}
.homepage-banner h1 {
  font-family: "Rubik", sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 50px;
  line-height: 1;
  text-transform: uppercase;
  color: #FFFFFF;
}
@media (min-width: 782px) {
  .homepage-banner h1 {
    font-size: 98px;
  }
}
.homepage-banner p {
  font-family: ff-tisa-sans-web-pro, sans-serif;
  font-weight: 300;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 16px;
  line-height: 1.6;
  color: #FFFFFF;
  max-width: 500px;
  margin: 30px 0 0;
}
.homepage-banner .scroll-down-icon {
  position: absolute;
  bottom: 30px;
  left: 0;
  color: #FFFFFF;
}
@media (max-width: 782px) {
  .homepage-banner .scroll-down-icon {
    left: 20px;
  }
}
.homepage-banner .quicklinks {
  position: absolute;
  bottom: 0;
  right: 0;
  display: flex;
  width: 50%;
}
.homepage-banner .quicklinks .link {
  display: block;
  padding: 18px 20px 16px;
  width: 33.3%;
  transition: background 0.3s;
}
.homepage-banner .quicklinks .link:nth-child(1) {
  background-color: rgba(88, 208, 226, 0.8);
}
@media (max-width: 960px) {
  .homepage-banner .quicklinks .link:nth-child(1) {
    width: 100%;
    background-color: rgba(0, 171, 227, 0.8);
  }
}
.homepage-banner .quicklinks .link:nth-child(2) {
  background-color: rgba(12, 125, 168, 0.8);
}
@media (max-width: 960px) {
  .homepage-banner .quicklinks .link:nth-child(2) {
    display: none;
  }
}
.homepage-banner .quicklinks .link:nth-child(3) {
  background-color: rgba(0, 171, 227, 0.8);
}
@media (max-width: 960px) {
  .homepage-banner .quicklinks .link:nth-child(3) {
    display: none;
  }
}
.homepage-banner .quicklinks .link:focus, .homepage-banner .quicklinks .link:hover {
  background-color: #faaf41;
}
.homepage-banner .quicklinks img {
  width: 32px;
  height: auto;
  display: block;
}
.homepage-banner .quicklinks span {
  display: block;
  color: #FFFFFF;
  margin: 5px 0 0;
}
.homepage-banner .quicklinks span.name {
  font-family: "Rubik", sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 16px;
  line-height: 1;
  text-transform: uppercase;
}
.homepage-banner .quicklinks span.detail {
  font-family: ff-tisa-sans-web-pro, sans-serif;
  font-weight: 300;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 12px;
  line-height: 1.6;
}

@-webkit-keyframes pattern_movement {
  0% {
    transform: translate(0, 0);
  }
  25% {
    transform: translate(-2.5%, 2.5%);
  }
  50% {
    transform: translate(0, 0);
  }
  75% {
    transform: translate(2.5%, 2.5%);
  }
  100% {
    transform: translate(0, 0);
  }
}

@keyframes pattern_movement {
  0% {
    transform: translate(0, 0);
  }
  25% {
    transform: translate(-2.5%, 2.5%);
  }
  50% {
    transform: translate(0, 0);
  }
  75% {
    transform: translate(2.5%, 2.5%);
  }
  100% {
    transform: translate(0, 0);
  }
}
.homepage-learn {
  background: #EBECEC;
  padding: 70px 0;
}
.homepage-learn .introduction {
  margin: 0 auto;
  width: calc(100% - 200px);
  max-width: 900px;
}
@media (max-width: 782px) {
  .homepage-learn .introduction {
    width: calc(100% - 40px);
  }
}
.homepage-learn .introduction .content {
  max-width: 300px;
}
@media (min-width: 960px) {
  .homepage-learn .introduction .content {
    margin: 0 0 0 90px;
  }
}
.homepage-learn .introduction h2 {
  font-family: "Rubik", sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 50px;
  line-height: 1;
  color: #2B2E34;
}
.homepage-learn .introduction p {
  font-family: ff-tisa-sans-web-pro, sans-serif;
  font-weight: 300;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 16px;
  line-height: 1.6;
  color: #2B2E34;
  margin: 30px 0 0;
}
.homepage-learn .main {
  margin: 0 auto;
  width: calc(100% - 200px);
  max-width: 900px;
  display: flex;
  flex-wrap: wrap;
  margin: 70px auto 0;
}
@media (max-width: 782px) {
  .homepage-learn .main {
    width: calc(100% - 40px);
  }
}
@media (min-width: 960px) {
  .homepage-learn .main {
    padding: 0 90px;
  }
}
.homepage-learn .main .item {
  width: 100%;
}
@media (max-width: 782px) {
  .homepage-learn .main .item:nth-child(n+2) {
    margin: 50px 0 0;
  }
}
@media (min-width: 782px) {
  .homepage-learn .main .item {
    width: 50%;
    padding: 0 50px 0 0;
  }
  .homepage-learn .main .item:nth-child(n+3) {
    margin: 50px 0 0;
  }
}
.homepage-learn .main .top {
  display: flex;
  align-items: center;
}
.homepage-learn .main img {
  width: 50px;
  height: 50px;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
  margin: 0 25px 0 0;
}
.homepage-learn .main h3 {
  font-family: "Rubik", sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 28px;
  line-height: 1;
  color: #00ABE3;
}
.homepage-learn .main p {
  font-family: ff-tisa-sans-web-pro, sans-serif;
  font-weight: 300;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 16px;
  line-height: 1.6;
  color: #2B2E34;
  margin: 20px 0 0;
}
.homepage-learn .cta {
  margin: 0 auto;
  width: calc(100% - 200px);
  max-width: 900px;
  display: flex;
  margin: 50px auto 0;
}
@media (max-width: 782px) {
  .homepage-learn .cta {
    width: calc(100% - 40px);
  }
}
@media (min-width: 960px) {
  .homepage-learn .cta {
    padding: 0 90px;
  }
}
.homepage-learn .cta .button {
  font-family: "Rubik", sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 14px;
  text-transform: uppercase;
  color: #FFFFFF;
  height: 35px;
  line-height: 36px;
  padding: 0 40px;
  cursor: pointer;
  background: none;
  border: 0;
  opacity: 0;
  display: block;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  transform: scale(1);
  transition: transform 0.3s, opacity 0s 0.3s;
}
.homepage-learn .cta .button:before {
  content: " ";
  background: #00ABE3;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transform: skew(-28deg, 0deg);
  transition: background 0.3s, left 0.3s, width 0.3s;
  z-index: -1;
}
.homepage-learn .cta .button:focus, .homepage-learn .cta .button:hover {
  transform: scale(1.11);
}
.homepage-learn .cta .button:focus:before, .homepage-learn .cta .button:hover:before {
  background: #faaf41;
  left: -10px;
  width: calc(100% + 20px);
}
.ready .homepage-learn .cta .button {
  opacity: 1;
}

.homepage-locations {
  padding: 60px 0 140px;
  background-image: url("data:image/svg+xml,%3Csvg class='background-shape' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1298.88 1499.83'%3E%3Cpath fill='%23F9F9f9' d='M649.44,0L0,374.97v749.9l649.44,374.96,649.44-374.96V374.97L649.44,0Zm601.92,1097.44l-601.92,347.5L47.52,1097.44V402.4L649.44,54.88l578.46,333.97-253.62,146.09-324.84-187.56-348.6,201.28v402.52l348.6,201.26,348.6-201.26v-.36l253.32-145.92v292.54Zm-601.92-301.53l270.99,145.22-270.99,156.44-270.98-156.44,270.98-145.22Zm-301.08,107.38v-327.21l277.32-160.11v337.02l-277.32,150.3Zm324.84-150.3V415.97l277.32,160.11v327.21l-277.32-150.3Zm578.16-2.95l-253.32,145.92v-319.85l253.32-145.93v319.86Z'/%3E%3C/svg%3E");
  background-size: 1316px auto;
  background-position: calc(50vw - 360px) -515px;
  background-repeat: no-repeat;
}
@media (min-width: 960px) {
  .homepage-locations {
    padding: 60px 0;
  }
}
.homepage-locations .introduction {
  margin: 0 auto;
  width: calc(100% - 200px);
  max-width: 900px;
}
@media (max-width: 782px) {
  .homepage-locations .introduction {
    width: calc(100% - 40px);
  }
}
.homepage-locations .introduction .content {
  max-width: 460px;
}
@media (min-width: 960px) {
  .homepage-locations .introduction .content {
    margin: 0 0 0 90px;
  }
}
@media (min-width: 782px) {
  .homepage-locations .introduction .content {
    max-width: 300px;
  }
}
.homepage-locations .introduction h2 {
  font-family: "Rubik", sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 50px;
  line-height: 1;
  color: #2B2E34;
}
.homepage-locations .introduction p {
  font-family: ff-tisa-sans-web-pro, sans-serif;
  font-weight: 300;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 16px;
  line-height: 1.6;
  color: #2B2E34;
  margin: 30px 0 0;
}
.homepage-locations .main {
  margin: 0 auto;
  width: calc(100% - 200px);
  max-width: 900px;
  display: flex;
  position: relative;
  margin: 50px auto 0;
}
@media (max-width: 782px) {
  .homepage-locations .main {
    width: calc(100% - 40px);
  }
}
.homepage-locations .main .shaft {
  position: relative;
  margin: 0 20px 60px 0;
  width: calc(40% - 20px);
}
@media (min-width: 782px) {
  .homepage-locations .main .shaft {
    margin: 0 70px 0 0;
    width: calc(50% - 70px);
  }
}
@media (min-width: 960px) {
  .homepage-locations .main .shaft {
    margin: 0 70px 0 90px;
    width: calc(50% - 160px);
  }
}
.homepage-locations .main .shaft:before {
  content: " ";
  position: absolute;
  top: 50px;
  left: calc(50% - 2px);
  width: 4px;
  bottom: 30px;
  background: #58D0E2;
}
.homepage-locations .main .shaft svg {
  position: absolute;
  top: 0;
  left: calc(50% - 50px);
  width: 100px;
  height: 100px;
  transform-origin: 50% 50%;
}
.homepage-locations .main .items {
  width: 60%;
}
@media (min-width: 782px) {
  .homepage-locations .main .items {
    width: 50%;
  }
}
.homepage-locations .main .item {
  max-width: 250px;
}
.homepage-locations .main .item:nth-child(n+2) {
  margin: 70px 0 0;
}
.homepage-locations h3 {
  font-family: "Rubik", sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 28px;
  line-height: 1;
  color: #2B2E34;
  margin: 0 0 10px;
  transform-origin: bottom left;
}
.homepage-locations .label {
  font-family: ff-tisa-sans-web-pro, sans-serif;
  font-weight: 300;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 12px;
  line-height: 1.6;
  color: #58D0E2;
  display: block;
}
.homepage-locations .address {
  font-family: ff-tisa-sans-web-pro, sans-serif;
  font-weight: 300;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 12px;
  line-height: 1.6;
  color: #2B2E34;
  display: block;
}
.homepage-locations .scroll-down-icon {
  margin: 0 auto;
  width: calc(100% - 200px);
  max-width: 900px;
  position: absolute;
  bottom: -100px;
  left: 0;
  color: #58D0E2;
}
@media (max-width: 782px) {
  .homepage-locations .scroll-down-icon {
    width: calc(100% - 40px);
  }
}
@media (min-width: 960px) {
  .homepage-locations .scroll-down-icon {
    bottom: 0;
  }
}

.scroll-down-icon {
  display: flex;
  align-items: center;
}
.scroll-down-icon svg {
  width: 22px;
  height: auto;
  display: block;
  /*
  .arrows {
    animation: arrow_move_down 2s 0.5s infinite;
  }
  .arrow-1 {
    animation: arrow_fade_in 2s 0.5s infinite;
  }
  .arrow-3 {
    animation: arrow_fade_out 2s 0.5s infinite;
  }
  */
}
.scroll-down-icon svg .element {
  fill: currentColor;
}
.scroll-down-icon svg .arrows {
  -webkit-animation: arrow_bobbing 3s 0.5s infinite;
          animation: arrow_bobbing 3s 0.5s infinite;
}
.scroll-down-icon svg .arrow-1 {
  opacity: 0;
}
.scroll-down-icon .label {
  font-family: ff-tisa-sans-web-pro, sans-serif;
  font-weight: 300;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 12px;
  line-height: 1.6;
  display: block;
  width: 110px;
  margin: -4px 0 0 20px;
}

@-webkit-keyframes arrow_move_down {
  0% {
    transform: translateY(0);
  }
  25% {
    transform: translateY(0);
  }
  75% {
    transform: translateY(4.2px);
  }
  100% {
    transform: translateY(4.2px);
  }
}

@keyframes arrow_move_down {
  0% {
    transform: translateY(0);
  }
  25% {
    transform: translateY(0);
  }
  75% {
    transform: translateY(4.2px);
  }
  100% {
    transform: translateY(4.2px);
  }
}
@-webkit-keyframes arrow_fade_in {
  0% {
    opacity: 0;
  }
  25% {
    opacity: 0;
  }
  75% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
@keyframes arrow_fade_in {
  0% {
    opacity: 0;
  }
  25% {
    opacity: 0;
  }
  75% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes arrow_fade_out {
  0% {
    opacity: 1;
  }
  25% {
    opacity: 1;
  }
  75% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes arrow_fade_out {
  0% {
    opacity: 1;
  }
  25% {
    opacity: 1;
  }
  75% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@-webkit-keyframes arrow_bobbing {
  0% {
    transform: translateY(0);
  }
  10% {
    transform: translateY(5px);
  }
  20% {
    transform: translateY(0);
  }
  30% {
    transform: translateY(5px);
  }
  40% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes arrow_bobbing {
  0% {
    transform: translateY(0);
  }
  10% {
    transform: translateY(5px);
  }
  20% {
    transform: translateY(0);
  }
  30% {
    transform: translateY(5px);
  }
  40% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(0);
  }
}
.social-media-icons {
  display: flex;
  list-style-type: none;
}
.social-media-icons .item {
  margin: 0 8px 0 0;
}
.social-media-icons .item:last-child {
  margin: 0;
}
.social-media-icons .link {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 38px;
  width: 38px;
  border-radius: 50%;
  background: #000000;
  transition: background 0.3s;
}
.social-media-icons .link:before {
  width: 22px;
  height: 22px;
  display: block;
}
.social-media-icons .link:hover {
  background: #ffffff;
}
.social-media-icons .link.twitter:before {
  content: url("data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 32 32' enable-background='new 0 0 32 32' xml:space='preserve'%3E%3Cpath fill='%23753090' d='M32,6.1c-1.2,0.5-2.4,0.9-3.8,1c1.4-0.8,2.4-2.1,2.9-3.6c-1.3,0.8-2.7,1.3-4.2,1.6C25.7,3.8,24,3,22.2,3 c-3.6,0-6.6,2.9-6.6,6.6c0,0.5,0.1,1,0.2,1.5C10.3,10.8,5.5,8.2,2.2,4.2c-0.6,1-0.9,2.1-0.9,3.3c0,2.3,1.2,4.3,2.9,5.5 c-1.1,0-2.1-0.3-3-0.8c0,0,0,0.1,0,0.1c0,3.2,2.3,5.8,5.3,6.4c-0.6,0.1-1.1,0.2-1.7,0.2c-0.4,0-0.8,0-1.2-0.1 c0.8,2.6,3.3,4.5,6.1,4.6c-2.2,1.8-5.1,2.8-8.2,2.8c-0.5,0-1.1,0-1.6-0.1C2.9,27.9,6.4,29,10.1,29c12.1,0,18.7-10,18.7-18.7 c0-0.3,0-0.6,0-0.8C30,8.5,31.1,7.4,32,6.1z'/%3E%3C/svg%3E");
}
.social-media-icons .link.facebook:before {
  content: url("data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 32 32' enable-background='new 0 0 32 32' xml:space='preserve'%3E%3Cpath fill='%23753090' d='M30.7,0H1.3C0.6,0,0,0.6,0,1.3v29.3C0,31.4,0.6,32,1.3,32H17V20h-4v-5h4v-4c0-4.1,2.6-6.2,6.3-6.2C25.1,4.8,26.6,5,27,5v4.3l-2.6,0c-2,0-2.5,1-2.5,2.4V15h5l-1,5h-4l0.1,12h8.6c0.7,0,1.3-0.6,1.3-1.3V1.3C32,0.6,31.4,0,30.7,0z'/%3E%3C/svg%3E");
}
.social-media-icons .link.instagram:before {
  content: url("data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 98 98' style='enable-background:new 0 0 98 98;' xml:space='preserve'%3E%3Cpath fill='%23753090' d='M68,8c12.2,0,22,9.8,22,22v38c0,12.2-9.8,22-22,22H30C17.8,90,8,80.2,8,68V30C8,17.8,17.8,8,30,8H68 M68,0H30C13.5,0,0,13.5,0,30v38c0,16.5,13.5,30,30,30h38c16.5,0,30-13.5,30-30V30C98,13.5,84.5,0,68,0z'/%3E%3Cpath fill='%23753090' d='M75.1,17c-3.2,0-5.7,2.6-5.7,5.7s2.6,5.7,5.7,5.7c3.2,0,5.7-2.6,5.7-5.7C80.9,19.6,78.3,17,75.1,17L75.1,17z'/%3E%3Cpath fill='%23753090' d='M49.3,31.5C59,31.5,67,39.4,67,49.1s-7.9,17.7-17.7,17.7s-17.7-7.9-17.7-17.7c0,0,0,0,0,0C31.6,39.4,39.5,31.5,49.3,31.5 M49.3,23.5c-14.2,0-25.7,11.5-25.6,25.7c0,14.2,11.5,25.7,25.7,25.6C63.5,74.8,75,63.3,75,49.1C75,35,63.5,23.5,49.3,23.5C49.3,23.5,49.3,23.5,49.3,23.5z'/%3E%3C/svg%3E");
}
.social-media-icons .link.linkedin:before {
  content: url("data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 32 32' enable-background='new 0 0 32 32' xml:space='preserve'%3E%3Cpath fill='%23753090' d='M30.7,0H1.3C0.6,0,0,0.6,0,1.3v29.3C0,31.4,0.6,32,1.3,32h29.3c0.7,0,1.3-0.6,1.3-1.3V1.3 C32,0.6,31.4,0,30.7,0z M9.5,27.3H4.7V12h4.8V27.3z M7.1,9.9c-1.5,0-2.8-1.2-2.8-2.8c0-1.5,1.2-2.8,2.8-2.8c1.5,0,2.8,1.2,2.8,2.8 C9.9,8.7,8.6,9.9,7.1,9.9z M27.3,27.3h-4.7v-7.4c0-1.8,0-4-2.5-4c-2.5,0-2.8,1.9-2.8,3.9v7.6h-4.7V12H17v2.1h0.1 c0.6-1.2,2.2-2.5,4.5-2.5c4.8,0,5.7,3.2,5.7,7.3V27.3z'/%3E%3C/svg%3E%0A");
}
.social-media-icons .link.youtube:before {
  content: url("data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 32 32' enable-background='new 0 0 32 32' xml:space='preserve'%3E%3Cpath fill='%23753090' d='M31.7,9.6c0,0-0.3-2.2-1.3-3.2c-1.2-1.3-2.6-1.3-3.2-1.4C22.7,4.7,16,4.7,16,4.7h0c0,0-6.7,0-11.2,0.3c-0.6,0.1-2,0.1-3.2,1.4c-1,1-1.3,3.2-1.3,3.2S0,12.2,0,14.8v2.4c0,2.6,0.3,5.2,0.3,5.2s0.3,2.2,1.3,3.2c1.2,1.3,2.8,1.2,3.5,1.4C7.7,27.2,16,27.3,16,27.3s6.7,0,11.2-0.3c0.6-0.1,2-0.1,3.2-1.4c1-1,1.3-3.2,1.3-3.2s0.3-2.6,0.3-5.2v-2.4C32,12.2,31.7,9.6,31.7,9.6z M12.7,20.2l0-9l8.6,4.5L12.7,20.2z'/%3E%3C/svg%3E");
}
.social-media-icons .link.mail:before {
  content: url("data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 90 90' style='enable-background:new 0 0 90 90;' xml:space='preserve'%3E%3Cpath fill='%23753090' d='M89.2,71.2c0.5-1.1,0.8-2.3,0.8-3.5V22.3c0-1.3-0.3-2.5-0.8-3.5L58.9,45L89.2,71.2z'/%3E%3Cpath fill='%23753090' d='M43.3,48.3c0.3,0.3,0.9,0.6,1.7,0.6c0.8,0,1.4-0.3,1.7-0.6l1.8-1.6l36.7-31.8c-1.1-0.5-2.3-0.8-3.5-0.8H8.2c-1.3,0-2.5,0.3-3.5,0.8L43.3,48.3z'/%3E%3Cpath fill='%23753090' d='M0.8,18.8C0.3,19.8,0,21,0,22.3v45.4c0,1.3,0.3,2.5,0.8,3.5L31.1,45L0.8,18.8z'/%3E%3Cpath fill='%23753090' d='M54.8,48.6l-4.5,3.9c-1.5,1.3-3.4,1.9-5.3,1.9c-1.9,0-3.8-0.7-5.3-1.9l-4.5-3.9L4.7,75.1c1.1,0.5,2.3,0.8,3.5,0.8h73.6c1.3,0,2.5-0.3,3.5-0.8L54.8,48.6z'/%3E%3C/svg%3E");
}
.social-media-icons .label {
  display: none;
}

.standard-banner {
  background: #00ABE3;
  padding: 200px 0;
}
.standard-banner .inner {
  margin: 0 auto;
  width: calc(100% - 200px);
  max-width: 900px;
}
@media (max-width: 782px) {
  .standard-banner .inner {
    width: calc(100% - 40px);
  }
}
.standard-banner h1 {
  font-family: "Rubik", sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 50px;
  line-height: 1;
  text-transform: uppercase;
  color: #FFFFFF;
}
@media (min-width: 782px) {
  .standard-banner h1 {
    font-size: 98px;
  }
}
.standard-banner p {
  font-family: ff-tisa-sans-web-pro, sans-serif;
  font-weight: 300;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 16px;
  line-height: 1.6;
  color: #FFFFFF;
  max-width: 500px;
  margin: 30px 0 0;
}

.standard-content {
  background: #FFFFFF;
  padding: 60px 0;
}
.standard-content .inner {
  margin: 0 auto;
  width: calc(100% - 200px);
  max-width: 900px;
}
@media (max-width: 782px) {
  .standard-content .inner {
    width: calc(100% - 40px);
  }
}
.standard-content h2 {
  font-family: "Rubik", sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 50px;
  line-height: 1;
  color: #2B2E34;
  margin: 30px 0 0;
}
.standard-content p {
  font-family: ff-tisa-sans-web-pro, sans-serif;
  font-weight: 300;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 16px;
  line-height: 1.6;
  color: #2B2E34;
  margin: 20px 0;
}
.standard-content p a {
  color: #0C7DA8;
}
.standard-content p a:hover {
  text-decoration: underline;
}
.standard-content ul,
.standard-content ol {
  margin: 20px 0;
  list-style-position: inside;
}
.standard-content ul {
  list-style-type: disc;
}
.standard-content ol {
  list-style-type: decimal;
}
.standard-content li {
  font-family: ff-tisa-sans-web-pro, sans-serif;
  font-weight: 300;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 16px;
  line-height: 1.6;
  color: #2B2E34;
}
.standard-content strong {
  font-weight: bold;
}
