@charset "UTF-8";
/*
0 - 600px:      Phone
600 - 900px:    Tablet portrait
900 - 1200px:   Tablet landscape
[1200 - 1800] is where our normal styles apply
1800px + :      Big desktop

$breakpoint arguement choices:
- phone
- tab-port
- tab-land
- big-desktop

ORDER: Base + typography > general layout + grid > page layout > components

1em = 16px
*/
@keyframes moveInLeft {
  0% {
    opacity: 0;
    transform: translateX(-10rem);
  }
  80% {
    transform: translateX(1rem);
  }
  100% {
    opacity: 1;
    transform: translate(0);
  }
}
@keyframes moveInRight {
  0% {
    opacity: 0;
    transform: translateX(10rem);
  }
  80% {
    transform: translateX(-1rem);
  }
  100% {
    opacity: 1;
    transform: translate(0);
  }
}
@keyframes moveInBottom {
  0% {
    opacity: 0;
    transform: translateY(3rem);
  }
  100% {
    opacity: 1;
    transform: translate(0);
  }
}
@keyframes bounce-right {
  0%, 20%, 50%, 80%, 100% {
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  40% {
    -moz-transform: translateX(-20px);
    -ms-transform: translateX(-20px);
    -webkit-transform: translateX(-20px);
    transform: translateX(-20px);
  }
  60% {
    -moz-transform: translateX(-10px);
    -ms-transform: translateX(-10px);
    -webkit-transform: translateX(-10px);
    transform: translateX(-10px);
  }
}
.owl-next {
  -moz-animation: bounce-right 2s infinite;
  -webkit-animation: bounce-right 2s infinite;
  animation: bounce-right 2s infinite;
}

@keyframes bounce-left {
  0%, 20%, 50%, 80%, 100% {
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  40% {
    -moz-transform: translateX(20px);
    -ms-transform: translateX(20px);
    -webkit-transform: translateX(20px);
    transform: translateX(20px);
  }
  60% {
    -moz-transform: translateX(10px);
    -ms-transform: translateX(10px);
    -webkit-transform: translateX(10px);
    transform: translateX(10px);
  }
}
.owl-prev {
  -moz-animation: bounce-left 2s infinite;
  -webkit-animation: bounce-left 2s infinite;
  animation: bounce-left 2s infinite;
}

.slide-up {
  transform: translateY(5rem);
  opacity: 0;
  transition: all 1s ease;
}
.slide-up.active {
  transform: translateY(0);
  opacity: 1;
}

.slide-down {
  transform: translateY(-5rem);
  opacity: 0;
  transition: all 1s ease;
}
.slide-down.active {
  transform: translateY(0);
  opacity: 1;
}

.slide-right {
  transform: translate(-100px, 50px);
  opacity: 0;
  transition: all 2s ease;
}
.slide-right.active {
  transform: translate(0, 0);
  opacity: 1;
}

.slow-fade {
  opacity: 0;
  transition: opacity 3s ease;
}
.slow-fade.active {
  opacity: 1;
}

*,
*::after,
*::before {
  margin: 0;
  padding: 0;
  box-sizing: inherit;
}

html {
  font-size: 62.5%;
  scroll-behavior: smooth;
}

body {
  background-color: #1a1c1c;
  box-sizing: border-box;
  overflow-x: hidden;
}
@media only screen and (max-width: 56.25em) {
  body {
    padding: 0;
  }
}

::selection {
  background-color: #b77b2a;
  color: #fff;
}

main {
  z-index: 2;
  position: relative;
  transition: transform 0.7s ease-in-out;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  scroll-snap-type: y mandatory;
  font-family: "lato", sans-serif;
  background-color: #fff;
  color: #353534;
}

#content {
  flex: 1;
}

a {
  color: #e1d7ce;
  font-weight: 400;
  text-decoration: none; /* no underline */
}

@media only screen and (max-width: 75em) {
  .no-mob {
    display: none;
  }
}

.alt-bg {
  background-color: #f1f5f3;
}

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

.heading-5, .heading-4, .heading-3,
h3, .heading-2, .heading-1 {
  font-family: "hardcover-vf", sans-serif;
  color: #e1d7ce;
  font-weight: 600;
  line-height: 1.26;
  letter-spacing: 0;
}

.heading-1 {
  font-size: 4.5rem;
}
@media only screen and (min-width: 54em) {
  .heading-1 {
    font-size: 4.5rem;
  }
}

.heading-2 {
  font-size: 4rem;
}
@media only screen and (min-width: 54em) {
  .heading-2 {
    font-size: 4rem;
  }
}

.heading-3,
h3 {
  font-size: 3rem;
}

.heading-4 {
  font-size: 2.2rem;
}

.heading-5 {
  font-size: 1.6rem;
}

p {
  font-size: 1.6rem;
  font-weight: 100;
  line-height: 1.5;
  text-rendering: optimizelegibility;
  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
}
p:not(:last-of-type) {
  margin-bottom: 2rem;
}

.font-default {
  font-family: "lato", sans-serif;
}

.font-script {
  font-family: "professor", sans-serif;
  color: #b77b2a;
}

.strong {
  font-weight: 700;
}

.font-white {
  color: #fff;
}

.font-black {
  color: #353534;
}

.font-dark {
  color: #3e6561;
}

.u-center-text {
  text-align: center !important;
}

.u-margin-bottom-small {
  margin-bottom: 1.5rem !important;
}

.u-margin-bottom-medium {
  margin-bottom: 4rem !important;
}
@media only screen and (max-width: 56.25em) {
  .u-margin-bottom-medium {
    margin-bottom: 3rem !important;
  }
}

.u-margin-bottom-big {
  margin-bottom: 8rem !important;
}
@media only screen and (max-width: 56.25em) {
  .u-margin-bottom-big {
    margin-bottom: 5rem !important;
  }
}

.u-margin-top-big {
  margin-top: 8rem !important;
}

.u-margin-top-huge {
  margin-top: 10rem !important;
}

.link-arrow {
  display: inline-block;
  width: 15px;
  height: 15px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
}

.arrow-top {
  transform: rotate(-45deg);
}

.arrow-right {
  transform: rotate(45deg);
}

.arrow-bottom {
  transform: rotate(135deg);
}

.arrow-left {
  transform: rotate(-135deg);
}

.equal-pad {
  padding: 2rem 0;
}

.bg-video {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: -1;
  opacity: 0.15;
  overflow: hidden;
}
.bg-video__content {
  height: 100%;
  width: 100%;
  object-fit: cover;
}

.hero-container {
  display: flex;
  flex-direction: column;
}

.hero {
  display: grid;
  grid-template-columns: 1fr 1fr;
}
@media only screen and (max-width: 37.5em) {
  .hero {
    display: flex;
    flex-direction: column-reverse;
  }
}
.hero-text {
  background: #1a1c1c;
  color: #fff;
  display: flex;
  align-items: center;
}
@media only screen and (max-width: 37.5em) {
  .hero-text {
    flex: 1;
    padding: 6rem 0;
  }
}
.hero-text .row {
  grid-column: col-start 2/col-end 5;
}
@media only screen and (max-width: 37.5em) {
  .hero-text .row {
    grid-column: center-start/center-end;
  }
}
.hero-text .heading-1 {
  color: #e1d7ce;
}
.hero-text p {
  color: #e1d7ce;
}
.hero-text p strong {
  font-family: "professor", sans-serif;
  color: #b77b2a;
  font-size: 3rem;
  line-height: 1;
}
.hero-text .cite {
  display: block;
  padding-top: 2rem;
  font-size: 1.2rem;
  text-transform: uppercase;
  font-weight: 100;
}
.hero-text .divider {
  padding: 5rem 0;
}
.hero-image {
  display: flex;
}
.hero-image img {
  height: 100vh;
}
@media only screen and (max-width: 37.5em) {
  .hero-image img {
    height: 50vh;
  }
}

.cover-image {
  position: relative;
}
.cover-image img {
  position: absolute;
  min-width: 100%;
  min-height: 100%;
  object-fit: cover;
}

.button {
  display: block;
  border: 1px solid #b77b2a;
  color: #e1d7ce;
  background: transparent;
  text-align: center;
  padding: 1.5rem 4rem 1.5rem 4rem;
  text-decoration: none;
  text-transform: uppercase;
  font-size: 1.2rem;
  line-height: 1.8rem;
  font-weight: 100;
  letter-spacing: 1.5px;
  margin: 1rem 0;
  position: relative;
  font-family: "lato", sans-serif;
  cursor: pointer;
}
.button svg path {
  fill: #b77b2a;
}
@media only screen and (max-width: 37.5em) {
  .button svg path {
    fill: #b77b2a;
  }
}
@media only screen and (max-width: 37.5em) {
  .button svg {
    display: none;
  }
}
.button:hover {
  background: #b77b2a;
  color: #fff;
  border: 1px solid #b77b2a;
}
@media only screen and (max-width: 37.5em) {
  .button:hover {
    background: transparent;
    color: #e1d7ce;
    border: 1px solid #b77b2a;
  }
}
.button:hover svg path {
  fill: #fff;
}
@media only screen and (max-width: 37.5em) {
  .button:hover svg path {
    fill: #79aaa1;
  }
}
.button svg {
  height: 1rem;
}
.button i {
  padding-right: 2rem;
}
.button--white {
  border: 1px solid #fff;
  color: #fff;
}
.button--white svg {
  margin: 0 0 0 2rem;
}
.button--white svg path {
  fill: #fff;
}

@media only screen and (max-width: 37.5em) {
  .openModalBtn {
    display: none;
  }
}

.mobile-more {
  display: none;
}
@media only screen and (max-width: 37.5em) {
  .mobile-more {
    display: block;
  }
}

.single-image {
  display: flex;
  margin: 0;
}
.single-image img {
  width: 100%;
  height: 100%;
}

.image-scroll-container {
  background-color: #1a1c1c;
  display: grid;
  grid-template-columns: 1fr 1fr;
}
@media only screen and (max-width: 56.25em) {
  .image-scroll-container {
    display: flex;
    flex-direction: column;
  }
}
.image-scroll-container .image-container {
  height: calc(100vh - 8rem);
  position: sticky;
  top: 8rem;
  background-size: cover !important;
  /* !important added as result of rule not working inside display:grid */
  background-position: center center !important;
  background-repeat: no-repeat !important;
}
@media only screen and (max-width: 56.25em) {
  .image-scroll-container .image-container {
    position: relative;
    height: unset;
    aspect-ratio: 1;
    top: 0;
  }
}
.image-scroll-container .scroll-text {
  background-color: #1a1c1c;
  color: #e1d7ce;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 12.8rem 0;
}
.image-scroll-container .scroll-text--block {
  grid-column: col-start 2/col-end 5;
  display: grid;
}
.image-scroll-container .scroll-text--block strong {
  font-family: "professor", sans-serif;
  color: #b77b2a;
  font-size: 2.5rem;
}
.image-scroll-container .scroll-text--block {
  place-content: center;
}
@media only screen and (max-width: 56.25em) {
  .image-scroll-container .scroll-text--block {
    grid-column: center-start/center-end;
  }
}
.image-scroll-container .scroll-text--block .divider {
  padding: 2.5rem 0 3rem;
}
.image-scroll-container .scroll-text--block .divider svg path {
  fill: #b77b2a;
}
.image-scroll-container.imgright .image-container {
  order: 1;
}
@media only screen and (max-width: 56.25em) {
  .image-scroll-container.imgright .image-container {
    order: unset;
  }
}

.accom-focus {
  background-color: #272c2d;
}
.accom-focus--container {
  display: grid;
  grid-template-columns: 1fr 1fr;
  margin-bottom: 4rem;
}
@media only screen and (max-width: 56.25em) {
  .accom-focus--container {
    display: flex;
    flex-direction: column;
  }
}
.accom-focus--container .image-container {
  display: flex;
}
.accom-focus .focus-text {
  background: #4c5652;
  padding: 8rem;
}
@media only screen and (max-width: 56.25em) {
  .accom-focus .focus-text {
    padding: 8rem 4rem;
  }
}
.accom-focus .focus-text--content {
  border-left: 1px solid #79aaa1;
  padding: 0 0 0 2rem;
  margin-top: 3rem;
}
@media only screen and (max-width: 56.25em) {
  .accom-focus .focus-text--content {
    border-left: none;
    padding: 0;
  }
}
.accom-focus .focus-text p {
  margin-bottom: 1rem;
  color: #e1d7ce;
}
.accom-focus .focus-text .button {
  margin: 4rem 0 0 0;
}
@media only screen and (max-width: 56.25em) {
  .accom-focus .focus-text .button {
    margin: 4rem 0 0 0;
  }
}
.accom-focus .heading-2 {
  color: #e1d7ce;
}

.double-facility {
  background: #1a1c1c;
  padding: 8rem 0 12.8rem;
}
@media only screen and (max-width: 37.5em) {
  .double-facility {
    padding: 8rem 0 6.4rem;
  }
}
.double-facility .facility-title {
  padding-bottom: 8rem;
  text-align: center;
}
.double-facility--container {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 1.5rem;
}
@media only screen and (max-width: 37.5em) {
  .double-facility--container {
    display: flex;
    flex-direction: column;
  }
}
.double-facility--container .facility img {
  height: 36rem;
  margin-bottom: 5rem;
}
.double-facility--container .facility-text {
  padding: 0 4rem;
}
.double-facility--container .facility-text .heading-3 {
  font-family: "professor", sans-serif;
  color: #b77b2a;
  font-size: 3rem;
  padding-bottom: 4rem;
}
.double-facility--container .facility-text p {
  color: #e1d7ce;
}
@media only screen and (max-width: 37.5em) {
  .double-facility .facility--one .facility-text {
    padding: 0 4rem 4rem;
  }
}
@media only screen and (max-width: 37.5em) {
  .double-facility .row.col-10 {
    grid-column: full-start/full-end;
  }
}

.facility-slider {
  background-color: #272c2d;
  padding-bottom: 8rem;
}
@media only screen and (max-width: 37.5em) {
  .facility-slider {
    padding-bottom: 6rem;
  }
}
.facility-slider .facility-wrapper {
  align-self: flex-start;
}
.facility-slider .facility {
  display: flex;
  flex-direction: column;
  margin-right: 2rem;
}
@media only screen and (max-width: 37.5em) {
  .facility-slider .facility {
    margin: 0;
  }
}
.facility-slider .facility-image {
  height: 38.4rem;
}
@media only screen and (max-width: 37.5em) {
  .facility-slider .facility-image {
    height: unset;
  }
}
.facility-slider .facility-slider--title {
  padding: 8rem 0;
  text-align: center;
}
@media only screen and (max-width: 37.5em) {
  .facility-slider .facility-slider--title {
    padding: 8rem 0 4rem;
  }
}
.facility-slider .facility-text {
  padding: 0 5rem;
}
@media only screen and (max-width: 37.5em) {
  .facility-slider .facility-text {
    padding: 0 3rem;
  }
}
.facility-slider .facility-text .heading-3 {
  font-family: "professor", sans-serif;
  color: #b77b2a;
  font-size: 3rem;
  padding: 5rem 0 4rem;
}
.facility-slider .facility-text p {
  color: #e1d7ce;
}
.facility-slider .next-fac {
  margin-left: 5rem;
}
.facility-slider .extended-right {
  order: 1;
}
.facility-slider .slider-nav.gallery {
  padding-bottom: 4rem;
}

.image-link {
  position: relative;
  height: 38.4rem;
  display: grid;
  place-content: center;
  text-align: center;
  justify-items: center;
  margin-bottom: 4rem;
}
.image-link .bg-image {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 0;
}
.image-link.darken {
  box-shadow: inset 0 0 0 1000px rgba(53, 53, 52, 0.5);
}
.image-link .button {
  width: fit-content;
  margin-top: 4rem;
}
.image-link .bg-grad {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: hsla(180, 3.7%, 10.59%, 0.3);
}
.image-link .heading-1 {
  z-index: 1;
}

@media only screen and (max-width: 75em) {
  .accom-focus .cols-12 {
    grid-column: full-start/full-end;
  }
}

.section-image-link {
  background-color: #1a1c1c;
}
.slick-disabled {
  opacity: 0.5;
}

.mobile-desc {
  max-height: 0;
  overflow: hidden;
  transition: all 0.7s ease-in-out;
}
.mobile-desc.active {
  max-height: 90rem;
}

.composition {
  position: relative;
}
.composition__photo {
  width: 55%;
  box-shadow: 0 1.5rem 4rem rgba(53, 53, 52, 0.4);
  border-radius: 2px;
  position: absolute;
  z-index: 10;
  transition: all 0.2s;
  outline-offset: 2rem;
}
@media only screen and (max-width: 56.25em) {
  .composition__photo {
    float: left;
    position: relative;
    width: 33.33333333%;
    box-shadow: 0 1.5rem 3rem rgba(53, 53, 52, 0.2);
  }
}
.composition__photo--p1 {
  left: 0;
  top: -2rem;
}
@media only screen and (max-width: 56.25em) {
  .composition__photo--p1 {
    top: 0;
    transform: scale(1.2);
  }
}
.composition__photo--p2 {
  right: 0;
  top: 2rem;
}
@media only screen and (max-width: 56.25em) {
  .composition__photo--p2 {
    top: -1rem;
    transform: scale(1.3);
    z-index: 100;
  }
}
.composition__photo--p3 {
  left: 20%;
  top: 10rem;
}
@media only screen and (max-width: 56.25em) {
  .composition__photo--p3 {
    top: 1rem;
    left: 0;
    transform: scale(1.1);
  }
}
.composition__photo:hover {
  outline: 1.5rem solid #79aaa1;
  transform: scale(1.05) translateY(-0.5rem);
  box-shadow: 0 2.5rem 4rem rgba(53, 53, 52, 0.5);
  z-index: 20;
}
.composition:hover .composition__photo:not(:hover) {
  transform: scale(0.95);
}

.contact-form {
  padding-top: 12rem;
  background: #1a1c1c;
  min-height: 100vh;
}
.contact-form .row {
  align-self: center;
}
@media only screen and (max-width: 37.5em) {
  .contact-form .row {
    align-self: flex-start;
    padding-top: 8rem;
  }
}
.contact-form .form-wrapper {
  text-align: center;
}
.contact-form .form-wrapper .heading-1 {
  padding-bottom: 5rem;
}
.contact-form .form-wrapper p {
  color: #e1d7ce;
  padding-bottom: 3.5rem;
}

.wsf-form .wsf-sections {
  margin-bottom: 4rem;
  text-transform: uppercase;
}
.wsf-form .wsf-sections button.wsf-button.wsf-button-primary {
  text-transform: uppercase;
  padding: 1rem 6rem;
  background-color: #b77b2a;
  border: none;
}
.wsf-form .wsf-sections button.wsf-button.wsf-button-primary:hover {
  background-color: #8c581b !important;
}
.wsf-form .wsf-sections button.wsf-button.wsf-button-primary:focus, .wsf-form .wsf-sections button.wsf-button.wsf-button-primary:active {
  background-color: #8c581b !important;
  box-shadow: 0 0 0 3px #b77b2a;
}
.wsf-form .wsf-sections .submit-button {
  text-align: right;
}
.wsf-form .wsf-sections label.wsf-label {
  color: #e1d7ce;
}
.wsf-form .wsf-sections input[type=text].wsf-field,
.wsf-form .wsf-sections input[type=tel].wsf-field,
.wsf-form .wsf-sections input[type=email].wsf-field,
.wsf-form .wsf-sections select.wsf-field,
.wsf-form .wsf-sections textarea.wsf-field {
  background-color: #272c2d;
  cursor: pointer;
}
.wsf-form .wsf-sections input[type=text].wsf-field:focus,
.wsf-form .wsf-sections input[type=tel].wsf-field:focus,
.wsf-form .wsf-sections input[type=email].wsf-field:focus,
.wsf-form .wsf-sections select.wsf-field:focus,
.wsf-form .wsf-sections textarea.wsf-field:focus {
  box-shadow: 0 0 0 3px #b77b2a;
}
.wsf-form .wsf-sections a:link {
  color: #b77b2a;
}
.wsf-form .wsf-sections .wsf-help.wsf-help-post {
  color: #e1d7ce;
}

@media only screen and (max-width: 37.5em) {
  .post-block {
    height: unset;
  }
  .post-block .row .split-col {
    flex-direction: column;
  }
}
.post-block .controls {
  padding: 5rem 0;
}
.post-block .controls ul {
  list-style: none;
  display: flex;
  justify-content: space-evenly;
  cursor: pointer;
  color: #79aaa1;
  font-weight: 700;
  letter-spacing: 0.1rem;
  text-transform: uppercase;
  font-size: 1.4rem;
}
.post-block .controls ul li:first-of-type {
  font-weight: 200;
  cursor: none;
}
.post-block .post-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 6rem;
}
@media only screen and (max-width: 56.25em) {
  .post-block .post-grid {
    grid-template-columns: 1fr;
  }
}
.post-block .post-grid .mix {
  display: flex;
  flex-direction: column;
}
.post-block .post-grid .mix .test-image {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 15rem;
  background-size: cover !important;
  /* !important added as result of rule not working inside display:grid */
  background-position: center center !important;
  background-repeat: no-repeat !important;
  text-align: center;
}
.post-block .post-grid .mix svg {
  position: absolute;
}
.post-block .post-grid .mix .heading-tertiary {
  padding: 0 3rem 3rem;
  font-weight: 700;
  text-align: center;
  font-size: 1.8rem;
}
.post-block .post-grid .mix .post-excerpt {
  flex: 1;
  padding: 0 3rem 2rem 3rem;
  text-align: center;
  font-weight: 200;
}
.post-block .post-grid .mix .date {
  text-align: center;
  font-weight: 300;
  padding-top: 2rem;
  letter-spacing: 2px;
  font-size: 1.4rem;
}
.post-block video {
  width: 100%;
}
.post-block .popup__content {
  text-align: center;
}
.post-block .popup__content .quote-cite {
  color: #79aaa1;
}
.post-block blockquote p {
  font-size: 2.5rem;
  font-weight: 400;
}
.post-block blockquote {
  padding: 3rem;
}
.post-block .popup__left blockquote p {
  font-size: 2rem;
}

.post-image {
  background-size: cover !important;
  /* !important added as result of rule not working inside display:grid */
  background-position: center center !important;
  background-repeat: no-repeat !important;
  height: 100vh;
  position: sticky;
  top: 0;
}
@media only screen and (max-width: 37.5em) {
  .post-image {
    position: unset;
  }
}

.post-items {
  padding: 6rem 15%;
}
@media only screen and (max-width: 75em) {
  .post-items {
    padding: 6rem;
  }
}
.post-items .arrow-holder {
  padding-top: 5rem;
}
.post-items h4 {
  padding: 6rem 0 0;
}

.news-item {
  display: flex;
  flex-direction: column;
}

.news-meta {
  flex: 1;
  text-align: center;
  padding: 2rem 0 0;
}

.news-link .button {
  padding: 1rem;
}

.standard-text {
  background-color: #272c2d;
}
.standard-text .row {
  grid-column: col-end 1/col-end 7;
}
@media only screen and (max-width: 37.5em) {
  .standard-text .row {
    grid-column: center-start/center-end;
  }
}
.standard-text .text-container {
  padding: 12.8rem 0;
}
@media only screen and (max-width: 37.5em) {
  .standard-text .text-container {
    padding: 6.4rem 0 12.8rem;
  }
}
.standard-text .text-container .heading-2 {
  padding-bottom: 4.8rem;
  color: #e1d7ce;
  text-transform: none;
}
.standard-text .text-container strong {
  color: #79aaa1;
}
.standard-text .text-container p {
  color: #e1d7ce;
}

.testimonial-slider {
  text-align: center;
  padding: 15rem 0 5rem;
}
.testimonial-slider .quote {
  padding: 0 20%;
}
@media only screen and (max-width: 37.5em) {
  .testimonial-slider .quote {
    padding: 0;
  }
}
.testimonial-slider .quote .centre-line {
  display: flex;
}
.testimonial-slider .quote .centre-line div {
  flex: 1;
}
.testimonial-slider .quote .line {
  border-right: 1px solid #fff;
  height: 2rem;
  margin: 2rem 0;
}
.testimonial-slider .owl-carousel .owl-item img {
  width: unset;
  height: 3rem;
  margin: 0 auto;
}
.testimonial-slider .heading-primary--main::before {
  position: unset;
}
.testimonial-slider .copy {
  display: -webkit-box;
  -webkit-line-clamp: 10;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin: 2rem 0;
  padding: 0 8rem;
}
.testimonial-slider .copy p {
  font-size: 1.7rem;
  color: #79aaa1;
  letter-spacing: 0.1rem;
}
@media only screen and (max-width: 37.5em) {
  .testimonial-slider .copy {
    -webkit-line-clamp: 25;
    padding: 0 2rem;
  }
}
.testimonial-slider .quote-cite {
  text-transform: uppercase;
  font-weight: 700;
}
.testimonial-slider .button {
  border: 1px solid #79aaa1;
  color: #79aaa1;
  text-align: center;
  padding: 1rem 2rem;
  border-radius: 0.5rem;
  text-decoration: none;
  text-transform: uppercase;
  font-size: 1.7rem;
  font-weight: 700;
  margin: 5rem 0;
  display: unset;
  background: none;
}
.testimonial-slider .button:hover:after {
  content: "→";
  transition: all ease 0.5s;
  opacity: 1;
  left: 8px;
}
.testimonial-slider .button:after {
  content: "→";
  transition: all ease 0.5s;
  position: relative;
  opacity: 0;
  left: -12px;
}
.testimonial-slider .owl-prev,
.testimonial-slider .owl-next {
  top: 25%;
}
.testimonial-slider .owl-prev {
  left: 1rem;
}
.testimonial-slider .owl-next {
  right: 1rem;
}

.testimonial-block .controls {
  padding: 5rem 0;
}
.testimonial-block .controls ul {
  list-style: none;
  display: flex;
  justify-content: space-evenly;
  cursor: pointer;
  color: #79aaa1;
  font-weight: 700;
  letter-spacing: 0.1rem;
  text-transform: uppercase;
  font-size: 1.4rem;
}
.testimonial-block .controls ul li:first-of-type {
  font-weight: 200;
  cursor: none;
}
.testimonial-block .testimonial-grid .mix .test-image {
  border: 1px solid #79aaa1;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 25rem;
  background-size: cover !important;
  /* !important added as result of rule not working inside display:grid */
  background-position: center center !important;
  background-repeat: no-repeat !important;
}
.testimonial-block .testimonial-grid .mix svg {
  position: absolute;
}
.testimonial-block .testimonial-grid .mix svg path {
  fill: #fff;
}
.testimonial-block .testimonial-grid .mix i {
  font-size: 4rem;
  color: #fff;
}
.testimonial-block .testimonial-grid .mix .heading-highlight {
  padding: 2rem 0 0;
}
.testimonial-block .testimonial-grid .mix .quote-position {
  text-align: center;
  margin: 0;
  font-size: 1.4rem;
  padding-bottom: 1rem;
}
.testimonial-block video {
  width: 100%;
}
.testimonial-block .popup__content .quote-cite,
.testimonial-block .popup__content .heading-secondary {
  color: #79aaa1;
  text-align: center;
  display: block;
}
.testimonial-block blockquote p {
  font-size: 2.5rem;
}
.testimonial-block blockquote {
  padding: 3rem;
}
.testimonial-block .popup__left blockquote p {
  font-size: 2rem;
}

.single-testimonial .centre-line {
  display: flex;
}
.single-testimonial .centre-line div {
  flex: 1;
}
.single-testimonial .line {
  border-right: 1px solid #fff;
  height: 2rem;
  margin: 2rem 0;
}
.single-testimonial .internal-video {
  text-align: center;
  position: relative;
}
.single-testimonial .internal-video video {
  width: 100%;
}
.single-testimonial .internal-video span {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 2rem;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: 0.3rem;
  width: 100%;
}
.single-testimonial .internal-video span.visible {
  animation: quote-fade 3s 1;
  animation-fill-mode: forwards;
  animation-delay: 4s;
}
.single-testimonial .internal-video span cite {
  display: block;
  color: #79aaa1;
}
.single-testimonial .quote {
  text-align: center;
}
.single-testimonial .quote .copy {
  color: #79aaa1;
  font-size: 2.5rem;
  line-height: 3.5rem;
  margin-bottom: 1.5rem;
}
.single-testimonial .quote .quote-cite {
  font-weight: 700;
  text-transform: uppercase;
  font-size: 1.4rem;
  letter-spacing: 0.3rem;
}
.single-testimonial .quote .quote-position {
  text-align: center;
  margin: 0;
}

.test-with-image .testimonial-container {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  padding: 6rem 15%;
}
@media only screen and (max-width: 37.5em) {
  .test-with-image .testimonial-container {
    align-items: center;
  }
}
.test-with-image .testimonial-container .heading-primary {
  margin-bottom: 2rem;
}
.test-with-image .testimonial-container img {
  max-height: 3rem;
  object-fit: contain;
}
.test-with-image .testimonial-container .down_arrow {
  padding-top: 50%;
}
.test-with-image .testimonial-image {
  background-size: cover !important;
  /* !important added as result of rule not working inside display:grid */
  background-position: center center !important;
  background-repeat: no-repeat !important;
  min-height: 100vh;
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: flex;
  margin-left: auto;
  margin-right: auto;
  align-items: center;
}
.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
}
[dir=rtl] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

.slide {
  height: 100%;
}

.slick-dots li {
  position: relative;
  display: inline-block;
  width: 20px;
  height: 20px;
  margin: 0 2rem;
  padding: 0;
  cursor: pointer;
}

.slick-dots li button {
  font-size: 0;
  line-height: 0;
  display: block;
  width: 20px;
  height: 20px;
  padding: 5px;
  cursor: pointer;
  color: transparent;
  border: 0;
  outline: none;
  background: transparent;
}

.slick-dots li button:before {
  content: "•";
  font-size: 22px;
  line-height: 20px;
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
  height: 20px;
  text-align: center;
  opacity: 1;
  color: #353534;
}

.slick-dots .slick-active button:before {
  color: #79aaa1;
}

.slider-nav {
  display: flex;
  justify-content: flex-end;
  padding: 4rem 2rem;
}
.slider-nav.gallery, .slider-nav.icons {
  justify-content: center;
  padding-bottom: 8rem;
}
.slider-nav.icons {
  display: flex;
}
@media only screen and (min-width: 62.5em) {
  .slider-nav.icons {
    display: none;
  }
}
.slider-nav.gallery {
  justify-content: flex-end;
}
@media only screen and (max-width: 37.5em) {
  .slider-nav.gallery {
    justify-content: center;
  }
}
.slider-nav.gallery .slick-arrow svg path {
  fill: #b77b2a;
}
.slider-nav .next-gall {
  margin-left: 5rem;
}

.js-on .fm-above.visible,
.js-on .fm-below.visible,
.js-on .fm-left.visible,
.js-on .fm-right.visible {
  opacity: 1;
  transform: translate(0);
}
@media only screen and (min-width: 62.5em) {
  .js-on .fm-above,
  .js-on .fm-below,
  .js-on .fm-left,
  .js-on .fm-right {
    opacity: 0;
    transition: all 0.6s ease-in-out;
  }
}
@media only screen and (min-width: 62.5em) {
  .js-on .fm-above {
    transform: translateY(-3rem);
  }
}
@media only screen and (min-width: 62.5em) {
  .js-on .fm-below {
    transform: translateY(3rem);
  }
}
@media only screen and (min-width: 62.5em) {
  .js-on .fm-left {
    transform: translateX(-3rem);
  }
}
@media only screen and (min-width: 62.5em) {
  .js-on .fm-right {
    transform: translateX(3rem);
  }
}

.itinerary-slider {
  padding: 5rem 0;
}
.itinerary-slider .slick-list {
  grid-column: center-start/center-end;
}
@media only screen and (min-width: 62.5em) {
  .itinerary-slider .slick-list {
    grid-column: center-start/full-end;
    margin: 0;
  }
}
.itinerary-slider .slick-dots {
  grid-column: center-start/center-end;
}
@media only screen and (min-width: 62.5em) {
  .itinerary-slider .slick-dots {
    margin: 0;
  }
}
.itinerary-slider .itinerary:not(.slick-active) {
  opacity: 0.5;
}
.itinerary-slider .itinerary:not(.slick-slide) {
  grid-column: center-start/col-end 6;
  opacity: 1;
  margin: 0 2rem;
}
.itinerary-slider .itinerary:not(.slick-slide):nth-of-type(2) {
  grid-column: col-end 6/center-end;
}
.itinerary-slider .itinerary a {
  color: #353534;
}
.itinerary-slider .itinerary--text {
  padding: 3rem 0;
}
.itinerary-slider .itinerary--text h3 {
  padding: 0 0 1rem;
}
.itinerary-slider .itinerary--text p {
  padding-right: 7rem;
  min-height: 5rem;
}
.itinerary-slider .itinerary--image {
  height: 45rem;
}
.itinerary-slider .itinerary--image img {
  height: 100%;
  object-fit: cover;
}
.itinerary-slider .itinerary--details {
  border-top: 1px solid #79aaa1;
  border-bottom: 1px solid #79aaa1;
  padding: 3rem 0;
}
.itinerary-slider .itinerary--details .nights,
.itinerary-slider .itinerary--details .locations {
  display: flex;
  align-items: center;
}
.itinerary-slider .itinerary--details .nights svg,
.itinerary-slider .itinerary--details .locations svg {
  margin: 0 2rem 0 0;
  width: 2.5rem;
}
.itinerary-slider .itinerary--details .nights {
  padding: 0 0 3rem;
}
@media only screen and (min-width: 62.5em) {
  .itinerary-slider .slick-slide {
    margin: 0 4rem 0 0;
  }
}
.itinerary-slider .slick-dots {
  margin-top: 10rem;
  height: 3rem;
  overflow: hidden;
  display: flex;
  align-items: center;
}
.itinerary-slider .slick-dots li {
  font-size: 0;
  text-indent: -9999px;
  flex: 1;
  background: linear-gradient(to left, #fff, #aaa) no-repeat, linear-gradient(to right, #fff, #fff) no-repeat;
  background-size: 51% 100%, 51% 100%;
  background-color: #888;
  background-position: -105% 0, 205% 0;
  transition: background-position 0.2s, background-color 0.01s 0.2s;
  cursor: pointer;
  height: 0.2rem;
}
.itinerary-slider .slick-dots li:hover {
  background-position: -100% 0, 200% 0;
}
.itinerary-slider .slick-dots .slick-active {
  background-color: #666;
  height: 1rem;
}
.itinerary-slider .slick-dots button {
  width: 100%;
  height: 3rem;
  border: none;
  outline: none;
}
.itinerary-slider .slick-dots .slick-active,
.itinerary-slider .slick-dots .slick-active:hover {
  background-color: #666;
}

.button-holder {
  padding: 5rem 0;
}
.button-holder .row {
  display: flex;
  justify-content: center;
}

.gallery-container {
  background-color: #1a1c1c;
  align-content: center;
  padding: 12.8rem 0 4.8rem;
}

.gallery-slider {
  overflow: hidden;
}
.gallery-slider .slider-image {
  height: 38.4rem;
}
.gallery-slider .slider-image img {
  height: 100%;
  width: 100%;
  background-size: cover !important;
  /* !important added as result of rule not working inside display:grid */
  background-position: center center !important;
  background-repeat: no-repeat !important;
  object-fit: cover;
}
.gallery-slider .slider-image {
  margin: 0 0 0 2rem;
}
@media only screen and (max-width: 37.5em) {
  .gallery-slider .slider-image {
    margin: 0;
  }
}

/* The Modal (background) */
.modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  backdrop-filter: blur(20px);
  z-index: 99;
  align-items: center;
  justify-content: center;
}

/* Modal Content */
.modal-content {
  background-color: #e1d7ce;
  border: 1px solid #888;
  width: calc(100vw - 5rem);
  display: grid;
  grid-template-columns: 1fr 1fr;
  max-height: 60vh;
  overflow: hidden;
}
@media only screen and (max-width: 56.25em) {
  .modal-content {
    display: flex;
    flex-direction: column;
    max-height: 80vh;
  }
}
.modal-content .focus-text {
  background-color: #e1d7ce;
  color: #1a1c1c;
  padding: 8rem;
  position: relative;
  overflow-y: auto;
  font-size: 1.4rem;
}
.modal-content .focus-text--block p {
  font-size: 1.4rem;
}
.modal-content .focus-text svg path {
  fill: #b77b2a;
}
.modal-content .focus-text .modal-desc {
  padding: 4rem 0 0 0;
}
.modal-content .focus-text--content {
  border-left: 1px solid #79aaa1;
  padding: 0 0 0 2rem;
  margin-top: 3rem;
}
.modal-content .focus-text--content p {
  font-size: 1.6rem;
}
.modal-content .focus-text p {
  margin-bottom: 1rem;
}

/* Close Button */
.close {
  color: #aaa;
  font-size: 28px;
  font-weight: bold;
  cursor: pointer;
  position: absolute;
  top: 1rem;
  right: 2rem;
}

.close:hover,
.close:focus {
  color: black;
}

/* Responsive Modal */
@media screen and (max-width: 600px) {
  .modal-content {
    width: 100%;
  }
}
.footer {
  font-size: 1.4rem;
  color: #fff;
  background: #272c2d;
  position: relative;
  z-index: 9;
}
.footer .footer-hero {
  height: calc(100vh - 70px);
  padding-top: 5rem;
  background-size: cover !important;
  /* !important added as result of rule not working inside display:grid */
  background-position: center center !important;
  background-repeat: no-repeat !important;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
@media only screen and (max-width: 37.5em) {
  .footer .footer-hero {
    height: unset;
    min-height: 50rem;
  }
}
.footer .footer-hero .footer_text {
  text-align: center;
}
.footer .footer-hero .footer_text .heading-secondary {
  color: #fff;
  font-size: 2.1rem;
}
.footer .footer-hero .footer-contact .contact-block {
  display: grid;
  grid-template-columns: 1fr 1fr 2fr 1fr;
  grid-template-rows: 1fr 3fr;
}
@media only screen and (max-width: 37.5em) {
  .footer .footer-hero .footer-contact .contact-block {
    display: flex;
    flex-direction: column;
    text-align: center;
  }
}
.footer .footer-hero .footer-contact .contact-block .contact-title {
  grid-column: 3/4;
  padding: 5rem 0 0;
}
.footer .footer-hero .footer-contact .contact-block .contact-address {
  grid-row: 2;
  grid-column: 2/4;
  display: grid;
  grid-template-columns: 1fr 2fr;
}
@media only screen and (max-width: 37.5em) {
  .footer .footer-hero .footer-contact .contact-block .contact-address {
    display: flex;
    flex-direction: column;
    text-align: center;
  }
}
@media only screen and (max-width: 37.5em) {
  .footer .footer-hero .footer-contact .contact-block .contact-address .address-block p {
    padding: 2rem 0;
  }
}
.footer .footer-hero .footer-contact .contact-block .heading-primary {
  display: inline-block;
}
.footer .footer-hero .footer-contact .contact-block .slash {
  color: #fff;
}
.footer .footer-hero .footer-contact .contact-block div.wpforms-container-full .wpforms-form textarea.wpforms-field-medium {
  height: 25rem;
}
.footer .footer-hero .footer-contact .logo {
  flex-basis: 20%;
  margin-left: 20%;
}
@media only screen and (max-width: 37.5em) {
  .footer .footer-hero .footer-contact .logo {
    margin: 0;
  }
}
.footer .footer-hero .footer-contact .logo svg {
  margin-bottom: 3rem;
}
@media only screen and (max-width: 37.5em) {
  .footer .footer-hero .footer-contact .footer-newsletter {
    display: none;
  }
}
.footer .footer-hero .footer-contact .footer-newsletter .heading-primary {
  margin-bottom: 0rem;
}
.footer .footer-hero .footer-contact .footer-newsletter .slash {
  color: #fff;
  padding-bottom: 5rem;
}
.footer .footer-hero .footer-contact .footer-newsletter p {
  font-size: 1.2rem;
  width: 60%;
}
@media only screen and (max-width: 37.5em) {
  .footer .footer-hero .footer-contact .footer-newsletter p {
    width: unset;
    margin: 0;
  }
}
.footer .footer-hero .footer-contact .footer-newsletter p:last-of-type {
  margin-top: -4rem;
}
@media only screen and (max-width: 37.5em) {
  .footer .footer-hero .footer-contact .footer-newsletter .mc4wp-form-fields {
    display: flex;
    flex-direction: column;
    grid-gap: 1rem;
  }
  .footer .footer-hero .footer-contact .footer-newsletter .mc4wp-form-fields input {
    width: 100%;
  }
}
.footer .footer-hero .footer_link {
  border: 1px solid #fff;
  border-radius: 0.5rem;
  padding: 1.5rem 3rem;
  margin-bottom: 2rem;
}
.footer .footer-hero .footer_link .footer_button {
  display: block;
  color: #fff;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  font-size: 1.5rem;
  letter-spacing: 0.1rem;
  font-weight: 400;
}
.footer .footer-hero .footer_link a {
  color: #fff;
  text-decoration: none;
  text-transform: uppercase;
  font-weight: 400;
  font-size: 2.1rem;
  position: relative;
}
.footer .footer-hero .footer_link .link-arrow {
  margin-left: 5rem;
}
.footer .footer-navbar {
  padding: 6rem 0;
}
.footer .footer-navbar .nav {
  padding: 3rem 0;
}
@media only screen and (max-width: 37.5em) {
  .footer .footer-navbar .nav {
    align-self: flex-start;
  }
}
.footer .footer-navbar .logo {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 2rem 0;
}
.footer .footer-navbar .logo svg {
  height: 6rem;
}
.footer .footer-navbar .logo svg .cls-1 {
  fill: #e1d7ce;
}
.footer .footer-navbar .footer-social {
  flex-basis: 15%;
  padding: 0 2rem;
}
.footer .footer-navbar .footer-social i {
  color: #fff;
}
@media only screen and (max-width: 37.5em) {
  .footer .footer-navbar .footer-social i {
    padding: 1rem 3rem;
    font-size: 3rem;
  }
}
.footer .footer-navbar .nav-area .menu li {
  padding: 0 3rem;
}
@media only screen and (max-width: 37.5em) {
  .footer .footer-navbar .nav-area .menu li {
    padding: 0 1rem;
  }
}
.footer .footer-navbar .nav-area .menu li a {
  color: #fff;
  font-weight: 200;
  text-transform: uppercase;
  font-size: 1.2rem;
}
.footer .footer-navbar ul li {
  padding-right: 2rem;
}
.footer .footer-navbar .privacy {
  padding: 3rem 0;
}
@media only screen and (max-width: 37.5em) {
  .footer .footer-navbar .privacy {
    align-self: flex-start;
  }
}
.footer .footer-navbar .privacy ul {
  list-style: none;
}
.footer .footer-navbar .privacy ul li {
  border-left: 1px solid #79aaa1;
}
.footer .footer-navbar .privacy ul li a {
  color: #fff;
  text-decoration: none;
  padding: 2rem;
}
.footer .footer-navbar .privacy ul li span {
  padding: 2rem;
}
@media only screen and (max-width: 56.25em) {
  .footer .footer-navbar {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .footer .footer-navbar .nav ul {
    column-count: 2;
  }
}
.footer .footer-menu ul {
  list-style: none;
  display: flex;
  justify-content: space-between;
  border-top: 1px solid #fff;
  padding: 4rem 0;
}
@media only screen and (max-width: 37.5em) {
  .footer .footer-menu ul {
    flex-direction: column;
    align-items: center;
    margin: 4rem 0;
    border-bottom: 1px solid #fff;
  }
}
@media only screen and (max-width: 37.5em) {
  .footer .footer-menu ul li {
    padding-bottom: 3rem;
  }
}
.footer .footer-menu ul li a {
  color: #fff;
  text-transform: uppercase;
  text-decoration: none;
  font-size: 1.4rem;
  font-weight: 400;
}

.footer-privacy {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  padding: 3.5rem 0;
  align-items: center;
  font-family: "montserrat";
  font-size: 1.2rem;
}
@media only screen and (max-width: 37.5em) {
  .footer-privacy {
    display: flex;
    flex-direction: column;
    align-items: center;
    grid-gap: 3rem;
    margin: 3rem 0;
    padding: 0 3rem;
  }
}
.footer-privacy .copyright {
  display: flex;
  align-items: center;
  font-size: 1rem;
}
@media only screen and (max-width: 37.5em) {
  .footer-privacy .copyright {
    order: 3;
  }
}
.footer-privacy .copyright a {
  color: #fff;
  padding: 0 0 0 2rem;
  margin: 0 0 0 2rem;
  border-left: 1px solid #fff;
  text-transform: uppercase;
}
.footer-privacy .footer-logo {
  text-align: center;
}
.footer-privacy .footer-logo svg {
  width: 21.5rem;
}
.footer-privacy .footer-logo svg path {
  fill: #e1d7ce;
}
.footer-privacy .silverless svg {
  fill: #fff;
}
.footer-privacy .silverless #logo {
  width: 10rem;
}
.footer-privacy .silverless #silverless {
  opacity: 0.6;
  transition: opacity 0.5s ease-in-out;
}
.footer-privacy .silverless #created {
  opacity: 0;
  transform: translateY(50px);
  transition: 1s transform ease, 2s opacity ease;
}
.footer-privacy .silverless.centered {
  text-align: center;
}
@media only screen and (max-width: 37.5em) {
  .footer-privacy .silverless.centered {
    order: 1;
    padding-top: 3rem;
  }
}
.footer-privacy .silverless.right {
  text-align: right;
}
@media only screen and (max-width: 37.5em) {
  .footer-privacy .silverless.right {
    order: 1;
    padding-bottom: 1rem;
  }
}
.footer-privacy .silverless:hover {
  cursor: pointer;
}
.footer-privacy .silverless:hover #silverless {
  opacity: 0.8;
}
.footer-privacy .silverless:hover #created {
  opacity: 0.8;
  transform: translateY(0);
}

.form-holder div.wpforms-container-full {
  margin-bottom: 0;
}

.footer-link-container {
  padding: 0 3rem;
}

/*=====MASTER GRID RULES=====*/
.container {
  display: grid;
  grid-template-columns: [full-start] minmax(6rem, 1fr) [center-start] repeat(12, [col-start] minmax(0.1rem, 10rem) [col-end]) [center-end] minmax(6rem, 1fr) [full-end];
}
@media only screen and (max-width: 62.5em) {
  .container {
    grid-template-columns: [full-start] minmax(3rem, 1fr) [center-start] repeat(12, [col-start] minmax(0.1rem, 11rem) [col-end]) [center-end] minmax(3rem, 1fr) [full-end];
  }
}

.container-left,
.imgright .scroll-text {
  display: grid;
  grid-template-columns: [full-start] minmax(6rem, 1fr) [center-start] repeat(6, [col-start] minmax(0.1rem, 10rem) [col-end]) [center-end];
}
@media only screen and (max-width: 56.25em) {
  .container-left,
  .imgright .scroll-text {
    grid-template-columns: [full-start] minmax(3rem, 1fr) [center-start] repeat(12, [col-start] minmax(0.1rem, 10rem) [col-end]) [center-end] minmax(3rem, 1fr) [full-end];
  }
}

.container-right,
.imgleft .scroll-text {
  display: grid;
  grid-template-columns: [center-start] repeat(6, [col-start] minmax(0.1rem, 10rem) [col-end]) [center-end] minmax(6rem, 1fr) [full-end];
}
@media only screen and (max-width: 56.25em) {
  .container-right,
  .imgleft .scroll-text {
    grid-template-columns: [full-start] minmax(3rem, 1fr) [center-start] repeat(12, [col-start] minmax(0.1rem, 10rem) [col-end]) [center-end] minmax(3rem, 1fr) [full-end];
  }
}

.row {
  grid-column: center-start/center-end;
}
.row--extended {
  grid-column: full-start/full-end;
}
.row.col-2 {
  grid-column: col-start 6/col-end 7;
}
@media only screen and (max-width: 37.5em) {
  .row.col-2 {
    grid-column: center-start/center-end !important;
  }
}
.row.col-4 {
  grid-column: col-start 5/col-end 8;
}
@media only screen and (max-width: 37.5em) {
  .row.col-4 {
    grid-column: center-start/center-end !important;
  }
}
.row.col-6 {
  grid-column: col-start 4/col-end 9;
}
@media only screen and (max-width: 37.5em) {
  .row.col-6 {
    grid-column: center-start/center-end !important;
  }
}
.row.col-8 {
  grid-column: col-start 3/col-end 10;
}
@media only screen and (max-width: 37.5em) {
  .row.col-8 {
    grid-column: center-start/center-end !important;
  }
}
.row.col-10 {
  grid-column: col-start 2/col-end 11;
}
@media only screen and (max-width: 37.5em) {
  .row.col-10 {
    grid-column: center-start/center-end;
  }
}
.row.extended {
  grid-column: full-start/full-end;
}
.row.extended-right {
  grid-column: col-start 2/full-end;
}
@media only screen and (max-width: 37.5em) {
  .row.extended-right {
    grid-column: full-start/full-end;
  }
}
.row.bleed-right {
  grid-column: center-start/full-end;
}
@media only screen and (max-width: 37.5em) {
  .row.fullwidth-mobile {
    grid-column: full-start/full-end;
  }
}
.row .spacer.small {
  padding: 3rem;
}
.row .spacer.medium {
  padding: 5rem;
}
.row .spacer.large {
  padding: 8rem;
}
.row .spacer.massive {
  padding: 12rem;
}

.logo-mobile {
  padding: 1.8rem 0;
  display: none;
}
@media only screen and (max-width: 56.25em) {
  .logo-mobile {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 99;
  }
}
.logo-mobile a {
  color: #fff;
  font-size: 2.5rem;
  padding: 0.5rem 3rem;
  letter-spacing: 0.3rem;
  text-decoration: none;
  text-transform: uppercase;
}
.logo-mobile svg {
  width: 20rem;
}
.logo-mobile svg path {
  fill: #e1d7ce;
}

header {
  position: fixed;
  transition: transform 0.7s ease-in-out;
  background: #272c2d;
  height: 8rem;
  width: 100%;
  z-index: 999;
}

.footer-navbar {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  justify-content: space-between;
  overflow-x: hidden;
}

.footer-navbar {
  display: inline-flex;
  position: relative;
}
.footer-navbar ul {
  list-style: none;
  display: flex;
}
.footer-navbar .nav-area {
  display: flex;
}

.top-navbar {
  width: 100%;
}
.top-navbar .row {
  display: flex;
}
.top-navbar .row .logo {
  display: flex;
  align-items: center;
}
.top-navbar ul {
  list-style: none;
  display: flex;
}

.top-navbar::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 10px;
  border-radius: 100%;
  bottom: 0px;
  transform: scaleX(1.05);
}

.top-navbar {
  position: fixed;
  background: #272c2d;
  box-shadow: 0 10px 10px rgba(0, 0, 0, 0), 0 6px 6px rgba(0, 0, 0, 0.1);
  height: 8.8rem;
  top: 0;
}
.top-navbar .logo svg {
  height: 4.8rem;
}
.top-navbar .logo svg path {
  fill: #e1d7ce;
}
.top-navbar .logo a {
  display: flex;
}
.top-navbar .nav-area {
  justify-content: flex-end;
}
.top-navbar .slash {
  padding: 0 3rem;
}
.top-navbar .cust-switch li {
  padding: 0 3rem;
  text-transform: uppercase;
  font-weight: 400;
}
.top-navbar .cust-switch a {
  color: #f1f5f3;
}
.top-navbar .menu li {
  padding: 0 2rem;
}
.top-navbar .menu li a {
  font-weight: 400;
  font-size: 1.6rem;
  letter-spacing: 1.25px;
  font-family: "hardcover-vf", sans-serif;
  position: relative;
}
.top-navbar .menu li a::after {
  content: "";
  background: #b77b2a;
  background-repeat: no-repeat;
  position: absolute;
  height: 1px;
  width: 0%;
  left: 50%;
  transform: translate(-50%, 1rem);
  transition: all 0.3s ease-in-out;
  display: flex;
  justify-content: center;
}
.top-navbar .menu li a:hover::after {
  width: 6rem;
}
.top-navbar .header-menu {
  padding: 0;
  text-align: center;
}
.top-navbar .header-menu ul {
  display: flex;
  justify-content: space-evenly;
  align-items: center;
  padding: 1rem;
}
.top-navbar .header-menu ul li {
  display: inline-block;
}
.top-navbar .header-menu ul li.menu-logo a {
  padding: 0rem 4rem;
  font-size: 2.5rem;
  letter-spacing: 0.3rem;
}
.top-navbar .header-menu ul li a {
  text-decoration: none;
  color: #fff;
  display: block;
  transition: ease-out 0.25s;
  text-transform: uppercase;
  font-size: 1.5rem;
  letter-spacing: 0.15rem;
  font-weight: 200;
}
.top-navbar .header-menu ul li a::after {
  content: "";
  display: block;
  height: 2px;
  background: #79aaa1;
  width: 0;
  transition: all 0.3s ease-in-out;
}
.top-navbar .header-menu ul li a:hover::after {
  width: 100%;
}
.top-navbar .header-menu ul li.current-menu-item a:after {
  content: "";
  display: block;
  height: 2px;
  background: #79aaa1;
  width: 100%;
}
.top-navbar .header-menu ul li.menu-logo.current-menu-item a::after, .top-navbar .header-menu ul li.menu-logo a::after {
  content: none;
}
@media only screen and (max-width: 56.25em) {
  .top-navbar {
    display: none;
  }
}

.top-navbar {
  z-index: 99;
  transition: all 1.5s ease 0s;
}
.top-navbar .main-nav {
  flex: 1;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
.top-navbar .logo svg path {
  fill: #e1d7ce;
}
.top-navbar ul {
  justify-content: end;
}

.top-navbar.visible-scroll-up {
  transform: translate3d(0px, 100%, 0px);
  -webkit-transform: translate3d(0px, 100%, 0px);
  -moz-transform: translate3d(0px, 100%, 0px);
  -ms-transform: translate3d(0px, 100%, 0px);
  -o-transform: translate3d(0px, 100%, 0px);
}

.top-navbar.fixed-menu {
  top: -70px;
  transition: transform 1.5s ease 0s;
  -webkit-transition: transform 0.3s ease 0s;
  -moz-transition: transform 0.3s ease 0s;
  -ms-transition: transform 0.3s ease 0s;
  -o-transition: transform 0.3s ease 0s;
}

.sidebar {
  height: 100vh;
  width: 100vw;
  position: fixed;
  padding-top: 10rem;
  top: 0;
  z-index: 5;
  right: 0;
  background-color: #f1f5f3, 0.3;
  backdrop-filter: blur(20px);
  transform: translateX(100vw);
  transition: transform 0.7s ease-in-out;
}
.sidebar .logo-sidebar {
  padding: 1.8rem 4rem;
  display: none;
}
@media only screen and (max-width: 56.25em) {
  .sidebar .logo-sidebar {
    display: block;
  }
}
.sidebar .logo-sidebar svg {
  width: 12rem;
}
.sidebar .logo-sidebar svg path {
  fill: #3e6561;
}
.sidebar .divider {
  text-align: center;
}
.sidebar .divider svg path {
  fill: #b77b2a;
}

.bar {
  display: block;
  height: 0.2rem;
  width: 4rem;
  background-color: #e1d7ce;
  margin: 0.7rem auto;
}

.navbutton {
  cursor: pointer;
  display: inline-block;
  width: auto;
  margin: 0 auto;
  -webkit-transition: all 0.7s ease;
  -moz-transition: all 0.7s ease;
  -ms-transition: all 0.7s ease;
  -o-transition: all 0.7s ease;
  transition: all 0.7s ease;
}

.nav-right {
  position: absolute;
  right: 3rem;
  top: 2rem;
  display: none;
  z-index: 99;
}
@media only screen and (max-width: 56.25em) {
  .nav-right {
    display: block;
  }
}

.nav-right.visible-xs {
  z-index: 3;
}

.middle {
  margin: 0 auto;
}

.bar {
  transition: all 0.7s ease;
}

.nav-right .active .bar {
  background-color: #b77b2a;
  transition: all 0.7s ease;
}

.navbutton.active .top {
  transform: translateY(8px) rotateZ(45deg);
}

.navbutton.active .bottom {
  transform: translateY(-10px) rotateZ(-45deg);
}

.navbutton.active .middle {
  width: 0;
}

.move-to-left {
  transform: translateX(0);
}

.sidebar-list {
  padding: 0;
  margin: 0;
  list-style: none;
  position: relative;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.sidebar-item {
  margin: 4rem 0;
  opacity: 0;
  transform: translateY(-20px);
}

.sidebar-item:first-child {
  transition: all 0.7s 0.2s ease-in-out;
}

.sidebar-item:nth-child(2) {
  transition: all 0.7s 0.4s ease-in-out;
}

.sidebar-item:nth-child(3) {
  transition: all 0.7s 0.6s ease-in-out;
}

.sidebar-item:nth-child(4) {
  transition: all 0.7s 0.8s ease-in-out;
}

.sidebar-item:nth-child(5) {
  transition: all 0.7s 1s ease-in-out;
}

.sidebar-item:nth-child(6) {
  transition: all 0.7s 1.2s ease-in-out;
}

.sidebar-item.active {
  opacity: 1;
  transform: translateY(0px);
}

.sidebar-anchor {
  color: #e1d7ce;
  text-decoration: none;
  font-size: 3em;
  position: relative;
  padding-bottom: 7px;
  font-weight: 400;
  font-family: "hardcover-vf", sans-serif;
}

.sidebar-anchor:before {
  content: "";
  width: 0;
  height: 2px;
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: #fff;
  transition: all 0.7s ease-in-out;
}

.sidebar-anchor:hover:before {
  width: 100%;
}

.error-404 {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  flex: 1;
}
.error-404 h1 span {
  font-weight: 400;
  color: #79aaa1;
}

.loader {
  width: 150px;
  height: 150px;
  background-color: #79aaa1;
  border-radius: 50%;
  position: relative;
  box-shadow: 0 0 30px 4px rgba(0, 0, 0, 0.5) inset, 0 5px 12px rgba(0, 0, 0, 0.15);
  overflow: hidden;
}

.loader:before,
.loader:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 45%;
  top: -40%;
  background-color: #fff;
  animation: wave 5s linear infinite;
}

.loader:before {
  border-radius: 30%;
  background: rgba(255, 255, 255, 0.4);
  animation: wave 5s linear infinite;
}

@keyframes wave {
  0% {
    transform: rotate(0);
  }
  100% {
    transform: rotate(360deg);
  }
}
.single .header {
  min-height: unset;
  height: 75vh;
}
.single .header .heading-primary {
  color: #fff;
}
.single .header .heading-primary--main::before {
  position: unset;
}
.single .header .hero {
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.single .header .down_arrow a {
  color: #fff;
}
.single .news-header {
  text-align: center;
  padding-bottom: 2rem;
}
.single .section-text .button {
  margin: 1rem 0;
}
.single .section-text .heading-tertiary {
  padding: 2rem 0;
}
.single .flex-container {
  padding: 3rem 0;
}

.page-template-holding main {
  background-color: #fff;
  height: 100vh;
  min-height: unset;
}

.holding-page {
  background-size: cover !important;
  /* !important added as result of rule not working inside display:grid */
  background-position: center center !important;
  background-repeat: no-repeat !important;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-around;
  align-items: center;
  text-align: center;
  margin: 1.5rem;
}
.holding-page .heading-secondary--main span {
  text-transform: lowercase;
  vertical-align: text-top;
}
.holding-page .heading-primary {
  color: #fff;
}
.holding-page .heading-primary--main::before, .holding-page .heading-primary--main::after {
  content: none;
}
.holding-page .holding-links {
  text-align: center;
}
.holding-page .holding-links .links {
  list-style: none;
  display: flex;
}
@media only screen and (max-width: 37.5em) {
  .holding-page .holding-links .links {
    flex-direction: column;
  }
  .holding-page .holding-links .links li {
    border-right: none;
    padding-top: 2rem;
  }
}
.holding-page .holding-links .links a {
  color: #fff;
}
.holding-page .holding-links .links li:last-of-type {
  border-right: none;
}
.holding-page .holding-links li {
  padding: 0 3rem;
  border-right: 1px solid #fff;
}
.holding-page .company-info img {
  height: 6rem;
}

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