@charset "UTF-8";
/* Global CSS Reset */
*,
*::before,
*::after {
  box-sizing: border-box;
}

html, body {
  margin: 0;
  padding: 0;
  height: 100%;
  width: 100%;
  font-family: sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Remove default list styles */
ul, ol {
  list-style: none;
  margin: 0;
  padding: 0;
}

/* Remove default link styles */
a {
  text-decoration: none;
  color: inherit;
}

/* Remove default image border */
img {
  max-width: 100%;
  height: auto;
  display: block;
  border: 0;
}

/* Reset heading and paragraph margins */
h1, h2, h3, h4, h5, h6,
p {
  margin: 0;
  font-weight: normal;
}

/* Reset form elements */
input, button, textarea, select {
  font: inherit;
  margin: 0;
  padding: 0;
  border: none;
  background: none;
  outline: none;
}

/* Buttons inherit cursor and remove weird defaults */
button {
  cursor: pointer;
  background: transparent;
  border: none;
}

/* COLOURS */
.button, .main-navigation a, h1, h2, h3 {
  font-family: "hypatia-sans-pro", sans-serif;
  font-style: normal;
  font-weight: 600;
  text-transform: uppercase;
}

h2 {
  font-size: 30px;
  letter-spacing: 6px;
  line-height: 40px;
  margin-bottom: 20px;
}
@media (min-width: 768px) {
  h2 {
    font-size: 75px;
    letter-spacing: 15px;
    line-height: 85px;
    margin-bottom: 40px;
  }
}

.text h2 {
  font-size: 29px;
  letter-spacing: 6px;
  line-height: 35px;
  margin-bottom: 20px;
}

.text.g-heading-large h2 {
  font-size: 40px;
  letter-spacing: 8px;
  line-height: 50px;
  margin-bottom: 30px;
}
@media (min-width: 768px) {
  .text.g-heading-large h2 {
    font-size: 75px;
    letter-spacing: 15px;
    line-height: 85px;
    margin-bottom: 50px;
  }
}

h3 {
  font-size: 19px;
  letter-spacing: 3px;
  line-height: 27px;
}

p {
  font-family: kepler-std-semicondensed, serif;
  font-size: 29px;
  font-style: normal;
  font-weight: 400;
  line-height: 34px;
  margin-bottom: 20px;
}

#main a {
  transition: color 0.3s;
}

.cky-consent-container .cky-consent-bar {
  padding-bottom: 36.5px !important;
  padding-top: 36.5px !important;
}

.cky-notice .cky-title {
  font-family: "hypatia-sans-pro", sans-serif;
  font-weight: 600 !important;
  letter-spacing: 2px;
}

.cky-notice-des p {
  font-family: kepler-std-semicondensed, serif;
  font-size: 18px;
  line-height: 22px;
}

.cky-btn {
  font-family: "hypatia-sans-pro", sans-serif !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  letter-spacing: 2px;
}

.cky-btn:hover {
  border: 2px solid #70cacb !important;
  color: #70cacb !important;
  opacity: 1 !important;
}

.cky-btn.cky-btn-accept:hover {
  background: #70cacb !important;
  color: #fff !important;
}

.container {
  padding-left: 40px;
  padding-right: 40px;
  width: 100%;
}

.container--gallery {
  margin: 0 auto;
  max-width: 1200px;
  width: 100%;
}

@media (min-width: 768px) {
  .split-content--container {
    padding: 125px 100px;
  }
}

.text--container {
  margin: 0 auto;
  max-width: 910px;
  padding-bottom: 20px;
  padding-top: 40px;
}
@media (min-width: 768px) {
  .text--container {
    padding-bottom: 80px;
    padding-top: 100px;
  }
}

.text--container-extra-padding {
  padding-bottom: 75px;
}
@media (min-width: 768px) {
  .text--container-extra-padding {
    padding-bottom: 150px;
  }
}

.container--narrow {
  display: flex;
  flex-direction: column;
  justify-content: center;
  max-width: 730px;
}
.container--narrow .button {
  align-self: center;
}

#main a.button, #main p, #main h1, #main h2, #main h3, #main h4, #main h5, #main h6, #main li {
  visibility: hidden;
}

.split {
  opacity: 0;
}

.split .char {
  display: inline-block;
  white-space: pre;
}

.centerimage {
  display: block !important;
}
.centerimage .aligncenter {
  margin-bottom: 50px;
  margin-left: auto;
  margin-right: auto;
}

.shift-page-down #main > div:first-of-type.full-screen--video.full-screen--natural-height {
  background: #00445b;
  padding-top: 170px;
}
.shift-page-down #main > div:first-of-type.full-screen--video.full-screen--natural-height .full-screen__text {
  background: #fff;
}

.g-image-wrapper {
  overflow: hidden;
}

@media (min-width: 1300px) {
  .g-mobile {
    display: none;
  }
}
.g-overlay {
  background: rgba(0, 0, 0, 0.25);
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.g-white-bg {
  background: #fff;
}
.g-white-bg div, .g-white-bg a, .g-white-bg p, .g-white-bg h1, .g-white-bg h2, .g-white-bg h3 {
  color: #00445b;
}
.g-white-bg .button {
  border: 2px solid #00445b;
}
.g-white-bg + .g-white-bg .container {
  padding-top: 0;
}
.g-white-bg a:hover {
  color: #70cacb !important;
}

.g-green-bg {
  background: #00445b;
}
.g-green-bg a, .g-green-bg p, .g-green-bg h1, .g-green-bg h2, .g-green-bg h3 {
  color: #fff;
}

.swiper {
  height: 100vh;
  width: 100%;
}

.swiper-wrapper {
  height: 100%;
}

.swiper-slide {
  align-items: center;
  display: flex;
  height: 100%;
  justify-content: center;
}

.swiper-slide img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.swiper-button-prev,
.swiper-button-next {
  background: #fff;
  background-position: center center;
  background-repeat: no-repeat;
  z-index: 100;
}
.swiper-button-prev svg,
.swiper-button-next svg {
  display: none;
  height: 80% !important;
  width: 80% !important;
}
.swiper-button-prev svg path,
.swiper-button-next svg path {
  fill: #00445b;
}

.swiper-button-prev {
  background-image: url("../img/riverside-quarter-previous-arrow.svg");
  left: 0 !important;
}

.swiper-button-next {
  background-image: url("../img/riverside-quarter-next-arrow.svg");
  right: 0 !important;
}

/* BEST REMOVED FROM CONFIG */
.swiper-pagination,
.swiper-scrollbar {
  display: none;
}

@media (max-width: 768px) {
  .full-screen--slider.full-screen--natural-height .swiper {
    height: auto;
    width: auto;
  }
  .full-screen--slider.full-screen--natural-height .swiper-wrapper {
    height: auto;
  }
  .full-screen--slider.full-screen--natural-height .swiper-slide {
    height: auto;
  }
}

header {
  align-items: center;
  display: flex;
  height: 125px;
  left: 0;
  margin-top: 20px;
  padding-top: 20px;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 100;
}

.header__logo {
  left: 50%;
  position: absolute;
  top: 0;
  transform: translateX(-50%);
  width: 130px;
}

.burger {
  background: none;
  border: none;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  height: 21px;
  justify-content: space-between;
  padding: 0;
  position: absolute;
  right: 40px;
  top: 50px;
  width: 30px;
  z-index: 1000;
}
@media (min-width: 1300px) {
  .burger {
    display: none;
  }
}

.burger span {
  background-color: #fff;
  border-radius: 2px;
  display: block;
  height: 3px;
  transition: all 0.3s ease;
  width: 100%;
}

.burger.active {
  right: 20px;
  top: 0;
}

.burger.active span:nth-child(1) {
  transform: translateY(9px) rotate(45deg);
}

.burger.active span:nth-child(2) {
  opacity: 0;
}

.burger.active span:nth-child(3) {
  transform: translateY(-9px) rotate(-45deg);
}

.primary-menu {
  display: flex;
  width: 100%;
}

.main-navigation {
  display: none;
  justify-content: space-between;
}
@media (min-width: 1300px) {
  .main-navigation {
    display: flex;
  }
}
.main-navigation ul {
  display: flex;
}
.main-navigation li a {
  transition: color 0.3s;
}
.main-navigation a {
  color: #fff;
  font-size: 17px;
  letter-spacing: 2px;
  margin: 0 30px;
  text-transform: uppercase;
}
.main-navigation li.current-menu-item a,
.main-navigation li:hover a {
  color: #70cacb;
}

.nav-left,
.nav-right {
  display: flex;
  justify-content: center;
  width: calc(50% - 102.5px);
}

html.active {
  overflow: hidden;
}

.main-navigation.active {
  background: #00445b;
  display: flex;
  flex-direction: column;
  height: 100vh;
  justify-content: start;
  left: 0;
  overflow: scroll;
  padding: 20px;
  position: absolute;
  top: -20px;
  width: 100vw;
}
@media (min-width: 768px) {
  .main-navigation.active {
    justify-content: start;
    padding: 45px;
    text-align: center;
  }
}
.main-navigation.active .mobile-navigation-logo {
  margin-bottom: 50px;
  width: 90px;
}
@media (min-width: 768px) {
  .main-navigation.active .mobile-navigation-logo {
    margin: 0 auto 55px auto;
    width: 130px;
  }
}
.main-navigation.active .nav-left,
.main-navigation.active .nav-right {
  justify-content: start;
}
@media (min-width: 768px) {
  .main-navigation.active .nav-left,
  .main-navigation.active .nav-right {
    width: 100%;
  }
}
@media (min-width: 768px) {
  .main-navigation.active .nav-right {
    margin-bottom: 10px;
  }
}
.main-navigation.active ul {
  flex-direction: column;
}
@media (min-width: 768px) {
  .main-navigation.active ul {
    width: 100%;
  }
}
.main-navigation.active li {
  margin-bottom: 40px;
}
.main-navigation.active a {
  margin: 0;
}
.main-navigation.active .g-links li {
  margin-bottom: 20px;
}
.main-navigation.active .g-social {
  margin-bottom: 0;
  margin-top: -45px;
}
@media (min-width: 768px) {
  .main-navigation.active .g-social {
    justify-content: center;
  }
}
.main-navigation.active .g-social__heading {
  margin-top: -20px;
}

.footer {
  position: relative;
}
.footer a, .footer p, .footer h3 {
  font-family: "hypatia-sans-pro", sans-serif;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 2px;
  line-height: 27px;
  margin-bottom: 0;
  text-transform: uppercase;
}
@media (min-width: 900px) {
  .footer a, .footer p, .footer h3 {
    font-size: 17px;
  }
}
.footer a {
  transition: color 0.3s;
}
.footer a:hover {
  color: #70cacb;
}
.footer h3 {
  width: 100%;
}

.footer--container {
  display: grid;
  gap: 20px;
  grid-template-columns: repeat(1, 1fr);
  padding-bottom: 40px;
  padding-top: 40px;
}
@media (min-width: 900px) {
  .footer--container {
    grid-template-columns: repeat(7, 1fr);
  }
}
@media (min-width: 1200px) {
  .footer--container {
    grid-template-columns: repeat(16, 1fr);
    padding: 90px 90px 150px 90px;
  }
}

.footer__column-one {
  grid-column: span 6;
}
@media (min-width: 900px) {
  .footer__column-one {
    grid-column: span 2;
  }
}
@media (min-width: 1200px) {
  .footer__column-one {
    grid-column: span 3;
  }
}
@media (min-width: 1800px) {
  .footer__column-one {
    grid-column: span 2;
  }
}

.footer__main-logo {
  align-self: start;
  margin-bottom: 25px;
  width: 90px;
}
@media (min-width: 900px) {
  .footer__main-logo {
    margin-bottom: 0;
    width: 130px;
  }
}

.footer__column-two {
  grid-column: span 6;
}
@media (min-width: 900px) {
  .footer__column-two {
    grid-column: span 2;
  }
}
@media (min-width: 1200px) {
  .footer__column-two {
    grid-column: span 4;
  }
}
@media (min-width: 1800px) {
  .footer__column-two {
    grid-column: span 3;
  }
}

.footer .primary-menu {
  flex-direction: column;
  width: auto;
}
.footer .primary-menu li {
  margin-bottom: 27px;
}
.footer .primary-menu a {
  font-size: 17px;
}

.footer__enquiries,
.footer__address {
  margin-bottom: 0;
}
@media (min-width: 900px) {
  .footer__enquiries,
  .footer__address {
    margin-bottom: 27px;
  }
}

.footer__column-wrapper {
  display: flex;
  flex-direction: column;
  gap: 40px;
  grid-column: span 6;
  justify-content: space-between;
  margin-top: 10px;
}
@media (min-width: 900px) {
  .footer__column-wrapper {
    grid-column: span 3;
    margin-top: 0;
  }
}
@media (min-width: 1200px) {
  .footer__column-wrapper {
    grid-column: auto/span 5;
  }
}
@media (min-width: 1800px) {
  .footer__column-wrapper {
    flex-direction: row;
    grid-column: auto/span 8;
    padding-right: 60px;
  }
}

@media (min-width: 1800px) {
  .footer__column-four .footer__logo {
    padding: 16px 0;
  }
}

.footer__column-five {
  grid-column: span 6;
  margin-top: 10px;
}
@media (min-width: 900px) {
  .footer__column-five {
    grid-column: 5/-1;
    margin-top: 40px;
  }
}
@media (min-width: 1200px) {
  .footer__column-five {
    grid-column: span 4;
    grid-row: auto;
    justify-self: end;
    margin-top: 0;
  }
}
@media (min-width: 1800px) {
  .footer__column-five {
    grid-column: span 3;
  }
}

.footer__misrepresentation_and_credit {
  margin-top: -20px;
}
.footer__misrepresentation_and_credit a, .footer__misrepresentation_and_credit p {
  font-family: kepler-std-semicondensed, serif;
  font-weight: 400;
  letter-spacing: 0;
  margin-bottom: 20px;
  text-transform: none;
}
@media (min-width: 900px) {
  .footer__misrepresentation_and_credit {
    margin-top: 40px;
  }
}

.footer__logo {
  margin-bottom: 40px;
  margin-top: 20px;
}
@media (max-width: 900px) {
  .footer__logo {
    margin-bottom: 0;
  }
}

.footer__logo:first-of-type {
  margin-bottom: 30px;
  margin-right: 40px;
}

.button {
  border: 2px solid #fff;
  color: #fff;
  display: inline-block;
  font-size: 19px;
  letter-spacing: 2px;
  margin-top: 40px;
  padding: 25.5px 70px;
  transition: border 0.3s ease, color 0.3s ease;
}
@media (min-width: 768px) {
  .button {
    padding: 25.5px 73px;
  }
}

.button:hover {
  border: 2px solid #70cacb !important;
  color: #70cacb !important;
}

.full-screen-image-text__white .button {
  border: 2px solid #00445b;
  color: #00445b;
}

.availability__button {
  padding: 8px 31px;
}

#main .availability {
  background: #fff;
  position: relative;
  text-align: center;
}

.availability--container {
  padding-bottom: 125px;
  padding-top: 125px;
}

@media (max-width: 1200px) {
  .availability--four-columns .availability__floors {
    flex-wrap: wrap;
  }
  .availability--four-columns .availability__card {
    width: calc(50% - 25px);
  }
}
@media (max-width: 768px) {
  .availability--four-columns {
    width: 100%;
  }
  .availability--four-columns .availability__card {
    width: auto;
  }
}

.availability__sub-heading {
  margin-bottom: 60px;
}

.availability__floors {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 50px;
  justify-content: center;
  margin-bottom: 35px;
}
@media (min-width: 768px) {
  .availability__floors {
    flex-direction: row;
  }
}
.availability__floors p {
  font-size: 20px;
  line-height: 27px;
  margin-bottom: 0;
}

.availability__image-wrapper {
  margin-bottom: 35px;
}

/*.availability__floors__image {
	display: block;
	filter: blur(10px) brightness(3);
	opacity: 0;
	transform: scale(1.5);
	width: 100%;
}*/
.availability__floors__excerpt {
  font-size: 19px;
  line-height: 27px;
  margin-top: 10px;
}

.banner--container {
  display: flex;
  padding: 121px 100px;
  justify-content: center;
  position: relative;
  text-align: center;
}

.banner__image {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  object-fit: cover;
  width: 100%;
  z-index: -1;
}

.banner__text {
  position: relative;
  z-index: 10;
}

.banner__text__pre-heading {
  font-family: "hypatia-sans-pro", sans-serif;
  font-size: 29px;
  letter-spacing: 6px;
  line-height: 35px;
  text-transform: uppercase;
}

/* COLOUR CONFIGURATION */
.banner__text {
  color: #fff;
}

.contact-details {
  position: relative;
}

.contact-details--container {
  margin: 0 auto;
  max-width: 1300px;
  padding: 40px;
}
@media (min-width: 768px) {
  .contact-details--container {
    padding: 100px 100px 175px 100px;
  }
}

.contact-details__flex {
  display: flex;
  flex-direction: column;
}
@media (min-width: 768px) {
  .contact-details__flex {
    flex-direction: row;
  }
}

.contact-details__left,
.contact-details__right {
  flex: 1;
}

.contact-details__left {
  display: flex;
  flex-direction: column;
}

.contact-details__left {
  margin-right: 50px;
}
@media (min-width: 1000px) {
  .contact-details__left {
    max-width: 390px;
  }
}
.contact-details__left > div {
  margin-bottom: 40px;
}
.contact-details__left p {
  font-family: "hypatia-sans-pro", sans-serif;
  font-size: 17px;
  font-weight: 600;
  letter-spacing: 2px;
  line-height: 27px;
  margin-bottom: 0;
  text-transform: uppercase;
}

.contact-details__right p {
  font-size: 20px;
  line-height: 24px;
  letter-spacing: 0;
  visibility: visible !important;
}

.nf-form-title,
.nf-before-form-content,
label {
  display: none;
}

nf-fields-wrap {
  display: flex;
  flex-wrap: wrap;
  gap: 5px 10px;
}

nf-field {
  width: 100%;
}
@media (min-width: 768px) {
  nf-field {
    width: calc(50% - 20px);
  }
}

nf-field:nth-last-child(2),
nf-field:nth-last-child(1) {
  width: 100%;
}

nf-field:nth-last-child(2) {
  margin: 40px 0 30px 0;
}

input {
  background: rgba(112, 202, 203, 0.2);
  color: #00445b;
  font-family: kepler-std-semicondensed, serif;
  font-size: 20px;
  font-style: normal;
  font-weight: 400;
  line-height: 34px;
  padding: 7px 10px;
}

input[type=checkbox] {
  appearance: none;
  background-color: rgba(112, 202, 203, 0.2);
  border-radius: 3px;
  cursor: pointer;
  height: 20px !important;
  padding: 0;
  position: relative;
  transition: background-color 0.2s ease;
  width: 20px !important;
  -webkit-appearance: none;
}

input[type=checkbox]:checked::after {
  content: "✓";
  color: #00445b;
  font-size: 16px;
  left: 50%;
  position: absolute;
  top: 12px;
  transform: translate(-50%, -50%);
}

input[type=submit] {
  background: #fff;
  border: 2px solid #00445b;
  font-family: "hypatia-sans-pro", sans-serif;
  font-size: 19px;
  font-weight: 600;
  letter-spacing: 2px;
  line-height: 27px;
  margin-bottom: 0;
  padding: 26.5px 83px;
  text-transform: uppercase;
  transition: border 0.3s ease, color 0.3s ease;
}

input[type=submit]:hover {
  border: 2px solid #70cacb !important;
  color: #70cacb !important;
}

.nf-field-container {
  margin-bottom: 0 !important;
}

.label-right .nf-field-description {
  margin-right: 0 !important;
}

.nf-error-msg {
  font-family: "hypatia-sans-pro", sans-serif;
  font-size: 14px;
  font-style: normal;
  font-weight: 600;
  letter-spacing: 3px;
  margin: 10px 0px;
  text-transform: uppercase;
}

.full-screen {
  background: #fff;
  height: 100vh;
  overflow: hidden;
  position: relative;
  width: 100%;
}

.full-screen--container {
  padding: 0;
}

.full-screen__image {
  height: 100vh;
  object-fit: cover;
  width: 100vw;
}

.full-screen__text {
  align-items: center;
  display: flex;
  flex-direction: column;
  height: 100vh;
  justify-content: center;
  left: 0;
  padding-left: 40px;
  padding-right: 40px;
  position: absolute;
  text-align: center;
  top: 0;
  width: 100vw;
  z-index: 10;
}
.full-screen__text p, .full-screen__text h1, .full-screen__text h2 {
  color: #fff;
}
.full-screen__text h1 {
  font-size: 30px;
  letter-spacing: 8px;
  line-height: 40px;
}
@media (min-width: 768px) {
  .full-screen__text h1 {
    font-size: 120px;
    letter-spacing: 24px;
    line-height: 52px;
  }
}

.full-screen-text__heading + .button {
  margin-top: 0;
}

/* JUST TEXT - IMAGELESS */
.full-screen--text .full-screen__text > * {
  color: #00445b;
  max-width: 660px;
  text-align: center;
}
.full-screen--text .full-screen__text .button {
  border: 2px solid #00445b;
}

@media (max-width: 768px) {
  .full-screen--image.full-screen--natural-height .full-screen__text,
  .full-screen--text.full-screen--natural-height .full-screen__text,
  .full-screen--video.full-screen--natural-height .full-screen__text {
    height: auto;
    padding-bottom: 40px;
    padding-top: 40px;
    position: static;
    width: auto;
  }
  .full-screen--image.full-screen--natural-height .full-screen__text p, .full-screen--image.full-screen--natural-height .full-screen__text h1, .full-screen--image.full-screen--natural-height .full-screen__text h2,
  .full-screen--text.full-screen--natural-height .full-screen__text p,
  .full-screen--text.full-screen--natural-height .full-screen__text h1,
  .full-screen--text.full-screen--natural-height .full-screen__text h2,
  .full-screen--video.full-screen--natural-height .full-screen__text p,
  .full-screen--video.full-screen--natural-height .full-screen__text h1,
  .full-screen--video.full-screen--natural-height .full-screen__text h2 {
    color: #00445b;
  }
  .full-screen--image.full-screen--natural-height .full-screen__text .button,
  .full-screen--text.full-screen--natural-height .full-screen__text .button,
  .full-screen--video.full-screen--natural-height .full-screen__text .button {
    border: 2px solid #00445b;
    color: #00445b;
  }
  .full-screen--image.full-screen--natural-height .full-screen__text .button:hover,
  .full-screen--text.full-screen--natural-height .full-screen__text .button:hover,
  .full-screen--video.full-screen--natural-height .full-screen__text .button:hover {
    border: 2px solid #70cacb;
    color: #70cacb;
  }
  .full-screen--image.full-screen--natural-height .g-overlay,
  .full-screen--text.full-screen--natural-height .g-overlay,
  .full-screen--video.full-screen--natural-height .g-overlay {
    display: none;
  }
}
/* H1 FONT SIZES */
.home h1 {
  font-size: 40px;
  letter-spacing: 8px;
  line-height: 50px;
}
@media (min-width: 768px) {
  .home h1 {
    font-size: 175px;
    letter-spacing: 35px;
    line-height: 85px;
  }
}

/* GSAP ANIMATION CODE */
.g-pin-parallax .full-screen--container {
  height: 100%;
  overflow: hidden;
  position: relative;
  width: 100%;
}
.g-pin-parallax .full-screen__image,
.g-pin-parallax .g-overlay,
.g-pin-parallax .full-screen__text {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
.g-pin-parallax .g-overlay {
  background: rgba(0, 0, 0, 0.3);
  z-index: 5;
}
.g-pin-parallax .full-screen__text {
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 0 20px;
  text-align: center;
  z-index: 10;
}
.g-pin-parallax .full-screen__image {
  height: 120%;
  object-fit: cover;
  object-position: center center;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

/* NEW SETTING TO SWITCH FULL SCREEN TO NATURAL HEIGHT ON MOBILE */
@media (max-width: 768px) {
  .full-screen--natural-height {
    height: auto;
    width: auto;
  }
}

@media (max-width: 768px) {
  .full-screen--image.full-screen--natural-height .full-screen__image {
    height: auto;
    object-fit: fill !important;
    width: auto;
  }
}

.gallery {
  position: relative;
}

.gallery--container {
  padding: 40px;
}
@media (min-width: 768px) {
  .gallery--container {
    padding: 100px;
  }
}

.gallery--container-one .gallery__item-1 {
  margin-bottom: 40px;
}
.gallery--container-one .gallery__item-1 p {
  margin-top: 40px;
}
.gallery--container-one .gallery__item-2 {
  margin-bottom: 40px;
}
@media (min-width: 768px) {
  .gallery--container-one {
    align-items: self-start;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 0.48fr);
    gap: 50px;
    margin: 0 auto;
    max-width: 1720px;
  }
  .gallery--container-one .gallery__item-1 {
    margin-bottom: 0;
  }
  .gallery--container-one .gallery__right-column {
    display: flex;
    flex-direction: column;
    gap: 50px;
  }
  .gallery--container-one .gallery__right-column .gallery__item {
    width: 100%;
    flex: 1; /* make stacked images equal height */
  }
  .gallery--container-one .gallery__right-column .gallery__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .gallery--container-one .gallery__item-1 img {
    width: auto;
    height: auto; /* natural height */
    max-width: 100%;
    display: block;
  }
  .gallery--container-one .gallery__item-1 p {
    float: right;
    margin-bottom: 0;
    margin-top: 40px;
    max-width: 90%;
  }
  .gallery--container-one .gallery__item-2 {
    margin-bottom: 0;
  }
}

@media (max-width: 768px) {
  .gallery--container-two .gallery__column:first-of-type {
    margin-bottom: 40px;
  }
  .gallery--container-two .gallery__item:not(:last-child) {
    margin-bottom: 40px;
  }
}
@media (min-width: 768px) {
  .gallery--container-two .gallery {
    align-items: end;
    display: flex;
    flex: 1;
    gap: 50px;
    margin: 0 auto;
    max-width: 1200px;
    width: 100%;
  }
  .gallery--container-two .gallery__column:first-of-type {
    width: calc(41.6666% - 25px);
  }
  .gallery--container-two .gallery__column:last-of-type {
    width: calc(58.3333% - 25px);
  }
  .gallery--container-two .gallery__item {
    margin-bottom: 50px;
  }
}

.gallery--container-three {
  margin: 0 auto;
  max-width: 1518px;
  width: 100%;
}
.gallery--container-three .gallery__item:not(:last-child) {
  margin-bottom: 40px;
}
.gallery--container-three .gallery__image {
  margin-bottom: 30px;
  width: 100%;
}
.gallery--container-three .gallery__text {
  margin: 0 auto;
  max-width: 70%;
  text-align: center;
}
.gallery--container-three .gallery__text p {
  font-size: 19px;
  line-height: 27px;
  margin-top: 5px;
}
@media (min-width: 768px) {
  .gallery--container-three {
    display: flex;
    flex-wrap: wrap;
    gap: 50px;
    justify-content: center;
  }
  .gallery--container-three .gallery__item {
    margin-bottom: 0;
    width: calc(33.333333% - 50px);
  }
}
.gallery--container-three.gallery--container__wide {
  max-width: 1920px;
}

@media (max-width: 768px) {
  .gallery__image {
    width: 100%;
  }
}
.image--container {
  max-width: 1920px;
  padding: 40px;
  width: 100%;
}
@media (min-width: 768px) {
  .image--container {
    padding: 100px;
  }
}

.image__image {
  margin: 0 auto;
}

.g-links {
  display: flex;
  flex-direction: column;
}
@media (max-width: 768px) {
  .g-links {
    margin-top: 27px;
  }
}
.g-links li {
  margin-bottom: 17px;
}
.g-links li:last-of-type {
  margin-bottom: 0;
}
.g-links li, .g-links p, .g-links a {
  color: #fff;
  font-family: "hypatia-sans-pro", sans-serif;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 2px;
  line-height: 27px;
  text-transform: uppercase;
}

.g-social {
  align-self: flex-start;
  display: flex;
  flex-wrap: wrap;
  margin: 0 0 50px 0;
}
@media (min-width: 768px) {
  .g-social {
    margin: 0;
  }
}

.g-social__heading {
  color: #fff !important;
  font-size: 14px !important;
  margin-bottom: 15px !important;
  margin-top: 16px !important;
  width: 100% !important;
}

.g-social__square {
  align-items: center;
  background: #fff;
  display: flex;
  height: 30px;
  justify-content: center;
  margin-right: 10px;
  padding: 2px;
  width: 30px;
}

.g-social__square svg path {
  transition: fill 0.3s;
}

.g-social__square:hover svg path:not(.g-social__square-arrow) {
  fill: #70cacb;
}

.split-content {
  background: #fff;
  position: relative;
}

.split_content__background-image {
  height: 100%;
  left: 0;
  object-fit: cover;
  position: absolute;
  top: 0;
  width: 100%;
}

.split-content--container {
  margin: 0 auto;
  max-width: 1470px;
  padding: 40px;
  position: relative;
}
@media (min-width: 768px) {
  .split-content--container {
    padding: 80px 100px 150px 100px;
  }
}

.split-content__flex {
  display: block;
}
@media (max-width: 768px) {
  .split-content__flex .split-content__left {
    margin-bottom: 40px;
  }
}
@media (min-width: 768px) {
  .split-content__flex {
    display: flex;
    flex-direction: row;
    gap: 50px;
  }
}

.split-content .split-content__main-heading {
  color: #fff;
  font-size: 29px;
  letter-spacing: 6px;
  line-height: 35px;
  margin: 0 auto 125px auto;
  max-width: 850px;
  width: 100%;
}

.split-content__left,
.split-content__right {
  align-items: center;
  display: flex;
  flex: 1;
  justify-content: center;
  position: relative;
}

@media (min-width: 768px) {
  .split-content__text-wrapper {
    max-width: 80%;
  }
}

.split-content h2 {
  color: #00445b;
  font-size: 18px;
  letter-spacing: 4px;
  line-height: 22px;
  text-align: center;
}
@media (min-width: 768px) {
  .split-content h2 {
    font-size: 36px;
    letter-spacing: 7px;
    line-height: 44px;
  }
}

/* GSAP ANIMATION CODE */
.g-image-wrapper {
  /*aspect-ratio: 1 / 1;*/
  overflow: hidden;
  position: relative;
  width: 100%;
}

.jarallax-img {
  height: 100%;
  left: 0;
  object-fit: cover;
  object-position: center;
  position: absolute;
  top: 0;
  width: 100%;
  transform: scale(1.2);
  transform-origin: center center;
}

.text {
  position: relative;
}

@media (min-width: 768px) {
  .gallery + .text .text--container {
    /*padding-top: 105px;*/
    padding-top: 0;
  }
}

.gallery--three + .text {
  margin-top: -40px;
}

.video {
  height: 100vh;
  position: relative;
  width: 100%;
}

.video__video {
  height: 100vh;
  left: 0;
  position: absolute;
  top: 0;
  object-fit: cover;
  width: 100%;
}

@media (max-width: 768px) {
  .full-screen--video.full-screen--natural-height .video {
    height: auto;
    width: auto;
  }
  .full-screen--video.full-screen--natural-height .video__video {
    display: block;
    height: auto;
    object-fit: fill;
    position: static;
    width: 100%;
  }
}