:root {
--body-darkest: #131313;
--body-darker: #1c1c1c;
--body-opacity-25: rgba(38,38,38,0.25);
--body-opacity-50: rgba(38,38,38,0.5);
--body-opacity-90: rgba(38,38,38,0.9);
--body: #262626;
--body-light: #939393;
--body-lighter: #c9c9c9;
--body-lightest: #f4f4f4;
--primary-darkest: #69142b;
--primary-darker: #9d1f40;
--primary-opacity-25: rgba(210,41,86,0.25);
--primary-opacity-50: rgba(210,41,86,0.5);
--primary-opacity-90: rgba(210,41,86,0.9);
--primary: #d22956;
--primary-light: #e994ab;
--primary-lighter: #f4c9d5;
--primary-lightest: #fdf4f6;
--secondary-darkest: #364b4e;
--secondary-darker: #517076;
--secondary-opacity-25: rgba(108,150,157,0.25);
--secondary-opacity-50: rgba(108,150,157,0.5);
--secondary-opacity-90: rgba(108,150,157,0.9);
--secondary: #6c969d;
--secondary-light: #b6cbce;
--secondary-lighter: #dae5e6;
--secondary-lightest: #f8fafa;
--info-darkest: #1f4462;
--info-darker: #2f6694;
--info-opacity-25: rgba(63,136,197,0.25);
--info-opacity-50: rgba(63,136,197,0.5);
--info-opacity-90: rgba(63,136,197,0.9);
--info: #3f88c5;
--info-light: #9fc4e2;
--info-lighter: #cfe1f0;
--info-lightest: #f5f9fc;
--highlight-darkest: #7e401c;
--highlight-darker: #be612b;
--highlight-opacity-25: rgba(253,129,57,0.25);
--highlight-opacity-50: rgba(253,129,57,0.5);
--highlight-opacity-90: rgba(253,129,57,0.9);
--highlight: #fd8139;
--highlight-light: #fec09c;
--highlight-lighter: #fedfcd;
--highlight-lightest: #fff9f5;
--font-family-sans-serif: Montserrat, sans-serif
}

.cms-canvas {
  overflow: hidden;
}

.cms-canvas h1, 
.cms-canvas h2, 
.cms-canvas h3, 
.cms-canvas h4,
.cms-canvas h5 {
  font-weight: 800;
  letter-spacing: -1.8px;
}

.cms-canvas h1 i,
.cms-canvas h1 em,
.cms-canvas h2 i,
.cms-canvas h2 em,
.cms-canvas h3 i,
.cms-canvas h3 em,
.cms-canvas h4 i,
.cms-canvas h4 em,
.cms-canvas h5 i,
.cms-canvas h5 em {
  font-family: "Playfair Display", serif;
  font-weight: 400;
}

.cms-canvas h1 {
  font-size: 8rem;
}

.cms-canvas h2 {
  font-size: 6rem;
}

.cms-canvas h3 {
  font-size: 4rem;
  font-weight: 700;
}

@media (max-width: 991.98px) {
  .cms-canvas h1 {
    font-size: 5rem;
  }

  .cms-canvas h2 {
    font-size: 4rem;
  }

  .cms-canvas h3 {
    font-size: 3rem;
  }
}

@media (max-width: 567px) {
  html {
    font-size: 12px;
  }

  .cms-canvas h1 {
    font-size: 3rem;
  }

  .cms-canvas h2 {
    font-size: 2.5rem;
  }

  .cms-canvas h3 {
    font-size: 2rem;
  }
}

.cms-canvas ul {
  padding-left: 1rem;
}

.cms-canvas ul li {
  padding-bottom: 0.4rem;
}

.navbar {
  padding-top: 0;
  padding-bottom: 0;
}

.navbar-brand {
  padding-top: 2px;
  padding-bottom: 2px;
}

.brand-caption {
  color: var(--primary);
  background-color: var(--body);
}

.brand-caption a {
  color: white;
  transition: color 0.4s ease;
}

.brand-caption a:hover {
  color: var(--primary);
  text-decoration: none;
}

@media (max-width: 567px) {
  .brand-caption {
    font-size: 10px;
  }
}

@media (max-width: 320px) {
  .brand-caption {
    font-size: 8px;
  }
}

header {
  background-color: unset;
}

.sticky-header {
  background-color: var(--light);
}

.behind-header {
  margin-top: -84px;
}

@media (max-width: 567px) {
  .behind-header {
    margin-top: -44px;
  }
}

.nav-open .behind-header {
  margin-top: 0;
}

@media (max-width: 767.98px) {
  .navbar-break {
    height: 50px !important;
  }
}

.navbar-collapse {
  justify-content: flex-end;
  z-index: 10;
  font-weight: bold;
  background-color: white;
}

.nav-link.btn {
  font-weight: bold;
  border-radius: 0;
  line-height: 20px;
}

.navbar:not(:has(input.navbar-toggle[type="checkbox"]:checked)) .navbar-collapse {
  background-color: unset;
}

.nav-link {
  border-bottom: 4px solid transparent;
  color: var(--body) !important;
}

.nav-link:hover {
  border-bottom: 4px solid var(--highlight);
}

.nav-item .active {
  border-bottom: 4px solid var(--primary);
}

footer {
  background: linear-gradient(to right, #d22956 0%,#fd8157 100%);
}

.footer-links {
  justify-content: center;
}

.btn {
  border-radius: 1.5rem;
}

.btn-gradient {
  background-color: var(--body);
  background-image: linear-gradient(to right, #d22956 0%,#fd8157 100%);
  color: white;
  transition: background-image 0.4s ease;
}

.btn-gradient:hover {
  background-image: none;
  color: white;
}

.cms-canvas .btn {
  width: 180px;
}

img {
  max-width: 100%;
}

.spacing {
  padding: 4rem 6rem;
  line-height: 1.4rem;
  overflow: hidden;
}

.spacing-y {
  padding: 4rem 2rem;
  line-height: 1.4rem;
  overflow: hidden;
}

@media (max-width: 567px) {
  .spacing {
    padding: 1rem 2rem 1rem 2rem;
  }

  .spacing-y {
    padding: 1rem;
  }
}

.feature-block {
  display: flex;
  min-height: 200px;
}

.feature-image {
  width: 30%;
}

.feature-copy {
  width: 70%;
}

.feature-copy h3,
.feature-copy p {
  padding: 0 2rem;
}

.feature-copy h3 {
  padding-top: 1rem;
}

.feature-copy p {
  line-height: 1.4rem;
}

.address-info {
  font-size: 1.1rem;
}

@media (max-width: 567px) {
  .address-info {
    margin-top: 0;
  }
}

.animate-up-hide {
  opacity: 0;
  transition: transform .8s ease, opacity .8s ease;
  transform: translateY(50px);
}

.animate-hide {
  opacity: 0;
  transition: transform .8s ease, opacity .8s ease;
  transform: translateX(50px);
}

.animate-fade {
  opacity: 1;
  transform: translateY(0) translateX(0);
}

.animate-left {
  animation: slideInLeft 1s;
  opacity: 1;
}
    
.animate-right {
  animation: slideInRight 1s;
  opacity: 1;
}

@keyframes slideInLeft {
    from {
        -webkit-transform:translate3d(-100%,0,0);
        transform:translate3d(-100%,0,0);
        visibility:visible
    }
    to {
        -webkit-transform:translate3d(0,0,0);
        transform:translate3d(0,0,0)
    }
}

@keyframes slideInRight {
    from {
        -webkit-transform:translate3d(100%,0,0);
        transform:translate3d(100%,0,0);
        visibility:visible
    }
    to {
        -webkit-transform:translate3d(0,0,0);
        transform:translate3d(0,0,0)
    }
}

.action-banner {
  padding: 2rem 0;
}

.services-layer {
  background-color: var(--body-lightest);
  overflow: hidden;
}

.suite-layer {
  overflow: hidden;
}
