/*! HTML5 Boilerplate v7.3.0 | MIT License | https://html5boilerplate.com/ */
/* main.css 2.0.0 | MIT License | https://github.com/h5bp/main.css#readme */
/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */
/* ==========================================================================
    Imports
    ========================================================================== */
@import url("https://use.t4pekit.net/bys7ozi.css");
#navigation {
  background: #003422;
  position: fixed;
  width: 100%;
  z-index: 1000; }
  #navigation .nav-container {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    -ms-justify-content: space-between;
    justify-content: space-between;
    -ms-flex-pack: space-between;
    position: relative;
    max-width: 1600px;
    margin: 0 auto;
    width: 100%; }
  #navigation nav {
    font-family: forma-djr-display, sans-serif;
    font-weight: 400;
    font-style: normal;
    letter-spacing: 0.08rem;
    font-size: 0.9rem;
    height: 50px;
    width: 50%;
    transition: background 0.5s linear; }
    @media screen and (max-width: 970px) {
      #navigation nav {
        display: none; } }
    #navigation nav ul {
      list-style: none; }
      #navigation nav ul li {
        display: inline-block;
        padding-right: 15px; }
        #navigation nav ul li a {
          color: #f3efed;
          display: inline;
          letter-spacing: 0.08rem;
          line-height: 1.8rem;
          text-decoration: none;
          text-transform: capitalize; }
          #navigation nav ul li a:after {
            -webkit-transform: scaleX(0);
            -moz-transform: scaleX(0);
            -ms-transform: scaleX(0);
            transform: scaleX(0);
            -webkit-transition: transform 250ms ease-in-out;
            -moz-transition: transform 250ms ease-in-out;
            -ms-transition: transform 250ms ease-in-out;
            -o-transition: transform 250ms ease-in-out;
            transition: transform 250ms ease-in-out;
            border-color: #f3efed;
            display: block;
            transform-origin: 100% 50%;
            -webkit-transform-origin: 100% 50%;
            padding-top: 0; }
          #navigation nav ul li a:hover:after {
            -webkit-transform: scaleX(1);
            -moz-transform: scaleX(1);
            -ms-transform: scaleX(1);
            transform: scaleX(1);
            transform-origin: 0% 50%;
            -webkit-transform-origin: 0% 50%; }
          #navigation nav ul li a.active:after {
            -webkit-transform: scaleX(1);
            -moz-transform: scaleX(1);
            -ms-transform: scaleX(1);
            transform: scaleX(1);
            -webkit-transition: transform 250ms ease-in-out;
            -moz-transition: transform 250ms ease-in-out;
            -ms-transition: transform 250ms ease-in-out;
            -o-transition: transform 250ms ease-in-out;
            transition: transform 250ms ease-in-out;
            transform-origin: 0% 50%; }
          #navigation nav ul li a.active:hover:after {
            -webkit-transform: scaleX(0);
            -moz-transform: scaleX(0);
            -ms-transform: scaleX(0);
            transform: scaleX(0);
            transform-origin: 100% 50%; }
  #navigation .apply-now-button {
    font-size: 1rem;
    width: 200px; }
    #navigation .apply-now-button:hover {
      cursor: pointer; }
    @media screen and (max-width: 970px) {
      #navigation .apply-now-button {
        display: none; } }

#logo-container {
  background: #003422;
  height: auto;
  left: calc(50% - 60px);
  margin: 0 auto;
  position: absolute;
  width: 120px;
  z-index: 10000; }
  #logo-container.transition {
    transition: all 0.25s linear; }
  #logo-container.fixed-logo {
    left: calc(50% - 50px);
    position: fixed;
    top: -55.82px;
    width: 90px; }
  #logo-container svg path,
  #logo-container svg rect,
  #logo-container svg polygon {
    fill: #f3efed; }

#mobile-navigation {
  background: #003422;
  display: none;
  padding: 15px;
  position: fixed;
  width: calc(100% - 30px);
  z-index: 1000; }
  @media screen and (max-width: 970px) {
    #mobile-navigation {
      display: -webkit-box;
      display: -moz-box;
      display: -ms-flexbox;
      display: -webkit-flex;
      display: flex;
      -webkit-justify-content: flex-end;
      -moz-justify-content: flex-end;
      -ms-justify-content: flex-end;
      justify-content: flex-end;
      -ms-flex-pack: flex-end;
      -webkit-align-items: flex-end;
      -moz-align-items: flex-end;
      -ms-align-items: flex-end;
      align-items: flex-end;
      -webkit-align-content: flex-end;
      -moz-align-content: flex-end;
      -ms-align-content: flex-end;
      align-content: flex-end; } }
  #mobile-navigation .hamburger {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: 0.5s ease-in-out;
    -moz-transition: 0.5s ease-in-out;
    -ms-transition: 0.5s ease-in-out;
    -o-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
    height: 30px;
    position: relative;
    width: 30px;
    z-index: 10001;
    cursor: pointer; }
    #mobile-navigation .hamburger span {
      -webkit-transform: rotate(0deg);
      -moz-transform: rotate(0deg);
      -ms-transform: rotate(0deg);
      transform: rotate(0deg);
      -webkit-transition: 0.5s ease-in-out;
      -moz-transition: 0.5s ease-in-out;
      -ms-transition: 0.5s ease-in-out;
      -o-transition: 0.5s ease-in-out;
      transition: 0.5s ease-in-out;
      display: block;
      position: absolute;
      height: 3px;
      width: 100%;
      background: #f3efed;
      border-radius: 9px;
      opacity: 1;
      left: 0; }
      #mobile-navigation .hamburger span:nth-child(1) {
        top: 0px; }
      #mobile-navigation .hamburger span:nth-child(2), #mobile-navigation .hamburger span:nth-child(3) {
        top: 9px; }
      #mobile-navigation .hamburger span:nth-child(4) {
        top: 18px; }
    #mobile-navigation .hamburger:hover span {
      background-color: #f3efed;
      cursor: pointer; }
    #mobile-navigation .hamburger.open span {
      background: #f3efed; }
      #mobile-navigation .hamburger.open span:nth-child(1) {
        left: 50%;
        top: 18px;
        width: 0%; }
      #mobile-navigation .hamburger.open span:nth-child(2) {
        -webkit-transform: rotate(45deg);
        -moz-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg); }
      #mobile-navigation .hamburger.open span:nth-child(3) {
        -webkit-transform: rotate(-45deg);
        -moz-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-45deg); }
      #mobile-navigation .hamburger.open span:nth-child(4) {
        left: 50%;
        top: 18px;
        width: 0%; }
  #mobile-navigation #mobile-nav {
    background: #003422;
    bottom: 0;
    color: #f3efed;
    display: none;
    left: 0;
    opacity: 0;
    overflow-x: scroll;
    padding: 150px 30px 90px 30px;
    position: fixed;
    right: 0;
    top: 0;
    transition: opacity 0.5s linear; }
    @media screen and (max-width: 768px) {
      #mobile-navigation #mobile-nav {
        padding: 210px 30px 90px 30px; } }
    @media screen and (max-width: 640px) {
      #mobile-navigation #mobile-nav {
        padding: 150px 30px 90px 30px; } }
    #mobile-navigation #mobile-nav nav {
      font-size: 0.7rem;
      width: 100%;
      text-align: center;
      transition: background 0.5s linear; }
      #mobile-navigation #mobile-nav nav.footer-info {
        padding-top: 120px; }
        #mobile-navigation #mobile-nav nav.footer-info ul li {
          font-size: 1rem;
          line-height: 3rem;
          padding-top: 0; }
      #mobile-navigation #mobile-nav nav ul {
        list-style: none;
        width: 100%;
        padding-left: 0; }
        #mobile-navigation #mobile-nav nav ul li {
          font-size: 1.5rem;
          padding-right: 5px;
          padding-top: 20px;
          text-align: left; }
          @media screen and (max-width: 768px) {
            #mobile-navigation #mobile-nav nav ul li {
              font-size: 2.5rem;
              line-height: 5rem; } }
          @media screen and (max-width: 640px) {
            #mobile-navigation #mobile-nav nav ul li {
              font-size: 1.5rem; } }
          #mobile-navigation #mobile-nav nav ul li a {
            color: #f3efed;
            line-height: 3rem;
            text-transform: capitalize; }
            #mobile-navigation #mobile-nav nav ul li a:after {
              -webkit-transform: scaleX(0);
              -moz-transform: scaleX(0);
              -ms-transform: scaleX(0);
              transform: scaleX(0);
              -webkit-transition: transform 250ms ease-in-out;
              -moz-transition: transform 250ms ease-in-out;
              -ms-transition: transform 250ms ease-in-out;
              -o-transition: transform 250ms ease-in-out;
              transition: transform 250ms ease-in-out;
              border-color: #f3efed;
              display: block;
              transform-origin: 100% 50%;
              -webkit-transform-origin: 100% 50%; }
            #mobile-navigation #mobile-nav nav ul li a:hover:after {
              -webkit-transform: scaleX(1);
              -moz-transform: scaleX(1);
              -ms-transform: scaleX(1);
              transform: scaleX(1);
              transform-origin: 0% 50%;
              -webkit-transform-origin: 0% 50%; }
            #mobile-navigation #mobile-nav nav ul li a.active:after {
              -webkit-transform: scaleX(1);
              -moz-transform: scaleX(1);
              -ms-transform: scaleX(1);
              transform: scaleX(1);
              -webkit-transition: transform 250ms ease-in-out;
              -moz-transition: transform 250ms ease-in-out;
              -ms-transition: transform 250ms ease-in-out;
              -o-transition: transform 250ms ease-in-out;
              transition: transform 250ms ease-in-out;
              transform-origin: 0% 50%; }
            #mobile-navigation #mobile-nav nav ul li a.active:hover:after {
              -webkit-transform: scaleX(0);
              -moz-transform: scaleX(0);
              -ms-transform: scaleX(0);
              transform: scaleX(0);
              transform-origin: 100% 50%; }
    #mobile-navigation #mobile-nav.open {
      display: block;
      opacity: 1;
      visibility: visible; }

#mobile-footer {
  display: none; }
  @media screen and (max-width: 970px) {
    #mobile-footer {
      display: block; } }
  #mobile-footer nav ul li {
    font-size: 1rem; }
  #mobile-footer .apply-now-button {
    bottom: 0;
    left: 0;
    right: 0;
    position: fixed;
    width: 100%;
    z-index: 10001; }

footer {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  -ms-flex-pack: center;
  background: #003422;
  margin: 0 auto;
  padding: 60px;
  position: relative; }
  @media screen and (max-width: 768px) {
    footer {
      padding-bottom: 90px; } }
  footer .half {
    max-width: 800px; }
    footer .half:last-child ul.link-list {
      padding-left: 25%; }
      @media screen and (max-width: 768px) {
        footer .half:last-child ul.link-list {
          padding-left: 0px;
          margin-top: 0; } }
    @media screen and (max-width: 768px) {
      footer .half:first-child ul.link-list {
        margin-bottom: 0; } }
  footer ul.link-list li a,
  footer ul li a {
    color: #f3efed; }
    footer ul.link-list li a:after,
    footer ul li a:after {
      border-color: #f3efed; }
  footer .footer-bug {
    bottom: 60px;
    right: 60px;
    height: auto;
    position: absolute;
    width: 30px; }
    @media screen and (max-width: 640px) {
      footer .footer-bug {
        right: 30px; } }

section.green-background {
  background: #003422;
  color: #f3efed; }
  section.green-background#havenly {
    background: #3e1f09; }
  section.green-background a:after {
    border-color: #f3efed; }
  section.green-background ul.link-list a {
    border-color: #f3efed;
    color: #f3efed; }
  section.green-background ul.amenities-list li {
    border-color: #f3efed; }
  section.green-background:nth-of-type(2n) .half .image-container .image:after {
    background: url(../img/white-grain-3.svg);
    background-repeat: no-repeat; }
  section.green-background:nth-of-type(2) .half .image-container .image:after {
    background: url(../img/white-grain-2.svg);
    background-repeat: no-repeat; }
  section.green-background:nth-of-type(3n) .half .image-container .image:after {
    background: url(../img/white-grain.svg);
    background-repeat: no-repeat; }
  section.green-background.image-right:nth-of-type(2n) .half .image-container .image:after {
    background: url(../img/white-grain-3.svg);
    background-repeat: no-repeat; }
  section.green-background.image-right:nth-of-type(2) .half .image-container .image:after {
    background: url(../img/white-grain-2.svg);
    background-repeat: no-repeat; }
  section.green-background.image-right:nth-of-type(3n) .half .image-container .image:after {
    background: url(../img/white-grain.svg);
    background-repeat: no-repeat; }
  @media screen and (max-width: 768px) {
    section.green-background .half {
      border-left: 2px solid #f3efed; } }
  section.green-background .half:first-child {
    border-color: #f3efed; }
  section.green-background .half:first-child .header-container,
  section.green-background .half h1 .header-container,
  section.green-background .half .text-container .header-container {
    border-color: #f3efed; }
  section.green-background .half:first-child ul li,
  section.green-background .half h1 ul li,
  section.green-background .half .text-container ul li {
    color: #f3efed; }
    section.green-background .half:first-child ul li:before,
    section.green-background .half h1 ul li:before,
    section.green-background .half .text-container ul li:before {
      background-image: url(../img/ul-icon-white.png);
      background-image: url(../img/ul-icon-white.svg); }
  section.green-background .half:first-child p a,
  section.green-background .half h1 p a,
  section.green-background .half .text-container p a {
    color: #f3efed; }
  section.green-background .half h1,
  section.green-background .half h3,
  section.green-background .half p {
    color: #f3efed; }
    section.green-background .half h1 a,
    section.green-background .half h3 a,
    section.green-background .half p a {
      color: #f3efed; }
  section.green-background .half .image-container .image:after {
    background: url(../img/white-grain.svg);
    background-position: 100% 0;
    background-repeat: no-repeat;
    background-size: auto 100%; }
  section.green-background.portrait .half .image-container .branch {
    borer-color: #f3efed; }

section.white-background {
  background: #f3efed; }

section.image-left .half .text-container .header-container h1,
section.image-left .half .text-container .header-container h3 {
  padding-left: calc(60px + 25%); }
  @media screen and (max-width: 768px) {
    section.image-left .half .text-container .header-container h1,
    section.image-left .half .text-container .header-container h3 {
      padding-left: 60px; } }
  @media screen and (max-width: 640px) {
    section.image-left .half .text-container .header-container h1,
    section.image-left .half .text-container .header-container h3 {
      padding-left: 30px; } }
section.image-left .half .text-container .header-container .header-icon {
  padding-left: calc(60px + 25%); }
  @media screen and (max-width: 768px) {
    section.image-left .half .text-container .header-container .header-icon {
      padding-left: 60px; } }
  @media screen and (max-width: 640px) {
    section.image-left .half .text-container .header-container .header-icon {
      padding-left: 30px; } }
section.image-left .half .text-container p,
section.image-left .half .text-container ul.link-list,
section.image-left .half .text-container ul {
  padding-left: calc(60px + 25%); }
  @media screen and (max-width: 768px) {
    section.image-left .half .text-container p,
    section.image-left .half .text-container ul.link-list,
    section.image-left .half .text-container ul {
      padding-left: 60px; } }
  @media screen and (max-width: 640px) {
    section.image-left .half .text-container p,
    section.image-left .half .text-container ul.link-list,
    section.image-left .half .text-container ul {
      padding-left: 30px; } }
section.image-left .half .text-container ul p {
  padding-left: 0; }
section.image-left.portrait .half .text-container .header-container h1,
section.image-left.portrait .half .text-container .header-container h3 {
  padding-left: 90px; }
  @media screen and (max-width: 768px) {
    section.image-left.portrait .half .text-container .header-container h1,
    section.image-left.portrait .half .text-container .header-container h3 {
      padding-left: 60px; } }
  @media screen and (max-width: 640px) {
    section.image-left.portrait .half .text-container .header-container h1,
    section.image-left.portrait .half .text-container .header-container h3 {
      padding-left: 30px; } }
section.image-left.portrait .half .text-container .header-container .header-icon {
  padding-left: 90px; }
  @media screen and (max-width: 768px) {
    section.image-left.portrait .half .text-container .header-container .header-icon {
      padding-left: 60px; } }
  @media screen and (max-width: 640px) {
    section.image-left.portrait .half .text-container .header-container .header-icon {
      padding-left: 30px; } }
section.image-left.portrait .half .text-container p,
section.image-left.portrait .half .text-container ul .link-list {
  padding-left: 90px; }
  @media screen and (max-width: 768px) {
    section.image-left.portrait .half .text-container p,
    section.image-left.portrait .half .text-container ul .link-list {
      padding-left: 60px;
      padding-right: 0; } }
  @media screen and (max-width: 640px) {
    section.image-left.portrait .half .text-container p,
    section.image-left.portrait .half .text-container ul .link-list {
      padding-left: 30px; } }
section.image-left.portrait .half .image-container .image {
  left: auto; }
  @media screen and (max-width: 768px) {
    section.image-left.portrait .half .image-container .image {
      left: 60px; } }
section.design-section .half:last-child {
  position: relative; }
  section.design-section .half:last-child .text-container .header-container h1,
  section.design-section .half:last-child .text-container .header-container h3 {
    padding-left: calc(60px + 25%); }
    @media screen and (max-width: 768px) {
      section.design-section .half:last-child .text-container .header-container h1,
      section.design-section .half:last-child .text-container .header-container h3 {
        padding-left: 60px; } }
    @media screen and (max-width: 640px) {
      section.design-section .half:last-child .text-container .header-container h1,
      section.design-section .half:last-child .text-container .header-container h3 {
        padding-left: 30px; } }
  section.design-section .half:last-child .text-container .header-container .header-icon {
    padding-left: calc(60px + 25%); }
    @media screen and (max-width: 768px) {
      section.design-section .half:last-child .text-container .header-container .header-icon {
        padding-left: 60px; } }
    @media screen and (max-width: 640px) {
      section.design-section .half:last-child .text-container .header-container .header-icon {
        padding-left: 30px; } }
  section.design-section .half:last-child .text-container p,
  section.design-section .half:last-child .text-container ul.link-list,
  section.design-section .half:last-child .text-container ul {
    padding-left: calc(60px + 25%); }
    @media screen and (max-width: 768px) {
      section.design-section .half:last-child .text-container p,
      section.design-section .half:last-child .text-container ul.link-list,
      section.design-section .half:last-child .text-container ul {
        padding-left: 60px; } }
    @media screen and (max-width: 640px) {
      section.design-section .half:last-child .text-container p,
      section.design-section .half:last-child .text-container ul.link-list,
      section.design-section .half:last-child .text-container ul {
        padding-left: 30px; } }
  section.design-section .half:last-child .text-container ul p {
    padding-left: 0; }
  section.design-section .half:last-child .havenly-logo-container {
    bottom: 180px;
    padding-left: calc(60px + 25%);
    position: absolute;
    width: 200px; }
    @media screen and (max-width: 768px) {
      section.design-section .half:last-child .havenly-logo-container {
        bottom: auto;
        padding-top: 60px;
        position: relative; } }
    section.design-section .half:last-child .havenly-logo-container img {
      width: 100%;
      height: auto; }
    @media screen and (max-width: 768px) {
      section.design-section .half:last-child .havenly-logo-container {
        padding-left: 60px; } }
    @media screen and (max-width: 640px) {
      section.design-section .half:last-child .havenly-logo-container {
        padding-left: 30px; } }

section.image-right:nth-of-type(2n) .half .image-container .image:after {
  background: url(../img/brown-grain-3.svg);
  background-repeat: no-repeat;
  background-position: 100% 0;
  left: 30px; }
  @media screen and (max-width: 640px) {
    section.image-right:nth-of-type(2n) .half .image-container .image:after {
      left: 15px; } }
section.image-right:nth-of-type(2) .half .image-container .image:after {
  background: url(../img/brown-grain-2.svg);
  background-repeat: no-repeat;
  background-position: 100% 0;
  left: 30px; }
  @media screen and (max-width: 640px) {
    section.image-right:nth-of-type(2) .half .image-container .image:after {
      left: 15px; } }
section.image-right:nth-of-type(3n) .half .image-container .image:after {
  background: url(../img/brown-grain.svg);
  background-repeat: no-repeat;
  background-position: 100% 0;
  left: 30px; }
  @media screen and (max-width: 640px) {
    section.image-right:nth-of-type(3n) .half .image-container .image:after {
      left: 15px; } }
section.image-right .half .image-container .image {
  right: auto;
  left: -25%; }
  @media screen and (max-width: 768px) {
    section.image-right .half .image-container .image {
      left: 60px; } }
  @media screen and (max-width: 640px) {
    section.image-right .half .image-container .image {
      left: 30px; } }
  section.image-right .half .image-container .image:after {
    background-position: 100% 0;
    left: auto;
    right: -30px; }
    @media screen and (max-width: 640px) {
      section.image-right .half .image-container .image:after {
        right: -15px; } }
section.image-right .half .text-container .header-container h1,
section.image-right .half .text-container .header-container h3 {
  padding-right: calc(60px + 25%); }
  @media screen and (max-width: 640px) {
    section.image-right .half .text-container .header-container h1,
    section.image-right .half .text-container .header-container h3 {
      padding-right: 0; } }
section.image-right .half .text-container .header-container .header-icon {
  padding-right: calc(60px + 25%); }
  @media screen and (max-width: 768px) {
    section.image-right .half .text-container .header-container .header-icon {
      padding-left: 60px;
      padding-right: 0; } }
section.image-right .half .text-container p,
section.image-right .half .text-container ul .link-list,
section.image-right .half .text-container ul {
  padding-right: calc(60px + 25%); }
  @media screen and (max-width: 768px) {
    section.image-right .half .text-container p,
    section.image-right .half .text-container ul .link-list,
    section.image-right .half .text-container ul {
      padding-left: 60px;
      padding-right: 0; } }
  @media screen and (max-width: 640px) {
    section.image-right .half .text-container p,
    section.image-right .half .text-container ul .link-list,
    section.image-right .half .text-container ul {
      padding-left: 30px; } }
section.image-right .half .text-container ul p {
  padding-right: 0; }
  @media screen and (max-width: 768px) {
    section.image-right .half .text-container ul p {
      padding-left: 0; } }
section.image-right.portrait .half .image-container .branch {
  border-color: #f3efed; }
section.image-right.portrait .half .image-container .image {
  left: 60px; }
  @media screen and (max-width: 640px) {
    section.image-right.portrait .half .image-container .image {
      left: 30px; } }
  section.image-right.portrait .half .image-container .image .branch {
    left: 0;
    right: auto; }
section.image-right.portrait .half .text-container .header-container h1,
section.image-right.portrait .half .text-container .header-container h3 {
  padding-right: 90px; }
  @media screen and (max-width: 768px) {
    section.image-right.portrait .half .text-container .header-container h1,
    section.image-right.portrait .half .text-container .header-container h3 {
      padding-right: 60px; } }
  @media screen and (max-width: 640px) {
    section.image-right.portrait .half .text-container .header-container h1,
    section.image-right.portrait .half .text-container .header-container h3 {
      padding-right: 0; } }
section.image-right.portrait .half .text-container .header-container .header-icon {
  padding-right: 90px; }
  @media screen and (max-width: 768px) {
    section.image-right.portrait .half .text-container .header-container .header-icon {
      padding-right: 60px; } }
section.image-right.portrait .half .text-container p,
section.image-right.portrait .half .text-container ul .link-list {
  padding-right: 90px; }
  @media screen and (max-width: 768px) {
    section.image-right.portrait .half .text-container p,
    section.image-right.portrait .half .text-container ul .link-list {
      padding-left: 60px;
      padding-right: 0; } }
  @media screen and (max-width: 640px) {
    section.image-right.portrait .half .text-container p,
    section.image-right.portrait .half .text-container ul .link-list {
      padding-left: 30px; } }

section#landing-screen {
  opacity: 1;
  transition: opacity 2s ease-in-out; }
  section#landing-screen .half {
    min-height: 100vh; }
    @media screen and (max-width: 768px) {
      section#landing-screen .half {
        min-height: 20vh; } }
    section#landing-screen .half:first-child {
      border: none; }
      @media screen and (max-width: 768px) {
        section#landing-screen .half:first-child {
          border-left: 2px solid #f3efed; } }
    @media screen and (max-width: 768px) {
      section#landing-screen .half.order-one {
        padding-top: 180px; } }
    @media screen and (max-width: 768px) {
      section#landing-screen .half:not(.order-one) {
        padding-top: 60px; } }
    section#landing-screen .half .image-container .image {
      width: calc(100% + 25%); }
      @media screen and (max-width: 768px) {
        section#landing-screen .half .image-container .image {
          left: 60px;
          right: 0;
          top: 0;
          width: calc(100% - 120px); } }
      @media screen and (max-width: 640px) {
        section#landing-screen .half .image-container .image {
          left: 30px;
          width: calc(100% - 30px); } }
      section#landing-screen .half .image-container .image:after {
        -webkit-transform: rotate(270deg);
        -moz-transform: rotate(270deg);
        -ms-transform: rotate(270deg);
        transform: rotate(270deg);
        background-position: 0 0;
        background-size: auto 100%;
        bottom: 7vh;
        left: -17%;
        right: auto; }
        @media screen and (min-width: 1500px) {
          section#landing-screen .half .image-container .image:after {
            left: -21%; } }
      section#landing-screen .half .image-container .image #map {
        height: 50vh;
        min-height: 300px;
        width: 100%; }
    section#landing-screen .half .text-container p {
      max-width: 300px; }
  section#landing-screen.image-right .half .image-container .image:after {
    bottom: 11vh;
    left: auto;
    right: -20%; }
    @media screen and (min-width: 1500px) {
      section#landing-screen.image-right .half .image-container .image:after {
        right: -20%; } }
  section#landing-screen.image-left .half .text-container .header-container h1,
  section#landing-screen.image-left .half .text-container .header-container h3 {
    padding-left: calc(60px + 25%); }
    @media screen and (max-width: 768px) {
      section#landing-screen.image-left .half .text-container .header-container h1,
      section#landing-screen.image-left .half .text-container .header-container h3 {
        padding-left: 60px; } }

.image-slide-wrapper {
  display: inline;
  height: 65vh;
  min-height: 300px;
  margin-top: 90px;
  max-height: 600px;
  position: relative;
  width: 100%; }
  @media screen and (max-width: 768px) {
    .image-slide-wrapper {
      height: 50vh; } }
  @media screen and (max-width: 640px) {
    .image-slide-wrapper {
      height: 200px;
      margin-top: 60px;
      min-height: 200px;
      padding-left: 15px; }
      .image-slide-wrapper.full {
        height: 60vh; }
        .image-slide-wrapper.full .slider-container {
          height: 60%; } }
  .image-slide-wrapper.full {
    height: 90vh;
    width: 100%; }
    .image-slide-wrapper.full .images .image {
      width: 100vw; }
      .image-slide-wrapper.full .images .image img {
        max-width: 100%;
        max-height: 100%; }
    .image-slide-wrapper.full .image-nav-wrap {
      left: 7vw; }
  .image-slide-wrapper .slider-container {
    display: inline-block;
    height: 100%;
    overflow: hidden;
    position: absolute;
    width: calc(50vw + 60px);
    z-index: 100; }
    @media screen and (max-width: 768px) {
      .image-slide-wrapper .slider-container {
        padding-left: 60px;
        width: calc(100% - 60px); } }
    @media screen and (max-width: 640px) {
      .image-slide-wrapper .slider-container {
        padding-left: 0;
        width: 100%; } }
  .image-slide-wrapper .arrows {
    -webkit-transition: background-position 0.25s linear;
    -moz-transition: background-position 0.25s linear;
    -ms-transition: background-position 0.25s linear;
    -o-transition: background-position 0.25s linear;
    transition: background-position 0.25s linear;
    height: 100%;
    position: absolute;
    width: 50%;
    z-index: 200; }
    .image-slide-wrapper .arrows.slide-left {
      left: 0;
      background: url("../img/arrow_left.png") no-repeat;
      background-position: center left 15px;
      background-size: auto 40px; }
      .image-slide-wrapper .arrows.slide-left:hover {
        background-position: center left 10px; }
      @media screen and (max-width: 640px) {
        .image-slide-wrapper .arrows.slide-left {
          background-size: auto 20px; } }
    .image-slide-wrapper .arrows.slide-right {
      right: 0;
      background: url("../img/arrow_right.png") no-repeat;
      background-position: center right 15px;
      background-size: auto 40px; }
      .image-slide-wrapper .arrows.slide-right:hover {
        background-position: center right 10px; }
      @media screen and (max-width: 640px) {
        .image-slide-wrapper .arrows.slide-right {
          background-size: auto 20px; } }
    .image-slide-wrapper .arrows.disabled {
      display: none; }
  .image-slide-wrapper .images {
    -webkit-transition: all 0.5s linear;
    -moz-transition: all 0.5s linear;
    -ms-transition: all 0.5s linear;
    -o-transition: all 0.5s linear;
    transition: all 0.5s linear;
    display: inline-block;
    height: 100%;
    left: 0;
    position: absolute;
    width: 10000000px; }
    .image-slide-wrapper .images .image {
      display: inline-block;
      float: left;
      height: 100%;
      margin-right: 15px;
      position: relative; }
      .image-slide-wrapper .images .image:last-child {
        margin-right: 0; }
      .image-slide-wrapper .images .image .image-overlay {
        background: #003422;
        height: 100%;
        opacity: 0.7;
        position: absolute;
        width: 100%;
        z-index: 1; }
      .image-slide-wrapper .images .image img {
        max-height: 100%;
        max-width: 100%; }
      .image-slide-wrapper .images .image.active .image-overlay {
        background: transparent; }
  .image-slide-wrapper .image-nav-wrap {
    bottom: -10px;
    left: 15px;
    position: absolute;
    z-index: 300; }
    @media screen and (max-width: 768px) {
      .image-slide-wrapper .image-nav-wrap {
        left: 75px; } }
    @media screen and (max-width: 640px) {
      .image-slide-wrapper .image-nav-wrap {
        border: -5px;
        left: 25px; } }
    .image-slide-wrapper .image-nav-wrap .navdot {
      border-radius: 50%;
      background: #003422;
      float: left;
      height: 20px;
      margin-right: 10px;
      width: 20px; }
      @media screen and (max-width: 640px) {
        .image-slide-wrapper .image-nav-wrap .navdot {
          height: 15px;
          width: 15px; } }
      .image-slide-wrapper .image-nav-wrap .navdot:hover {
        cursor: pointer; }
      .image-slide-wrapper .image-nav-wrap .navdot.active {
        background: #c54312; }
        .image-slide-wrapper .image-nav-wrap .navdot.active:hover {
          cursor: disabled; }

.popup-window {
  -webkit-transition: left 400ms ease-in-out;
  -moz-transition: left 400ms ease-in-out;
  -ms-transition: left 400ms ease-in-out;
  -o-transition: left 400ms ease-in-out;
  transition: left 400ms ease-in-out;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  -ms-flex-pack: center;
  background: rgba(0, 0, 0, 0.6);
  bottom: 0;
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
  width: 100vw;
  z-index: 10002; }
  .popup-window.closed {
    opacity: 0; }
  .popup-window .popup {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    -ms-justify-content: center;
    justify-content: center;
    -ms-flex-pack: center;
    background: #f3efed;
    box-shadow: 2px 5px 6px rgba(79, 74, 74, 0.5);
    height: auto;
    max-width: 700px;
    padding: 90px;
    position: relative;
    width: auto;
    z-index: 100000; }
    @media screen and (max-width: 640px) {
      .popup-window .popup {
        padding: 30px;
        width: calc(90vw - 60px); } }
    .popup-window .popup .text-container {
      -webkit-align-items: center;
      -moz-align-items: center;
      -ms-align-items: center;
      align-items: center;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -webkit-flex-flow: column;
      -moz-flex-flow: column;
      -ms-flex-flow: column;
      flex-flow: column;
      display: -webkit-box;
      display: -moz-box;
      display: -ms-flexbox;
      display: -webkit-flex;
      display: flex;
      -webkit-justify-content: center;
      -moz-justify-content: center;
      -ms-justify-content: center;
      justify-content: center;
      -ms-flex-pack: center; }
      .popup-window .popup .text-container .header-container {
        border-bottom: 2px solid #003422; }
        .popup-window .popup .text-container .header-container h1,
        .popup-window .popup .text-container .header-container h3 {
          max-width: 480px; }
          @media screen and (max-width: 640px) {
            .popup-window .popup .text-container .header-container h1,
            .popup-window .popup .text-container .header-container h3 {
              max-width: 220px; } }
      .popup-window .popup .text-container .popup-button {
        margin-top: 30px; }
        .popup-window .popup .text-container .popup-button button {
          font-size: 1rem;
          padding: 15px 30px; }
      .popup-window .popup .text-container p {
        max-width: 400px; }
        @media screen and (max-width: 768px) {
          .popup-window .popup .text-container p {
            max-width: 250px; } }
  .popup-window .popup-close-container {
    position: absolute;
    top: 15px;
    right: 10px; }
    .popup-window .popup-close-container .close-button {
      height: 30px;
      width: 30px; }
      .popup-window .popup-close-container .close-button span {
        background: #003422;
        border-radius: 9px;
        display: block;
        height: 2px;
        left: 0;
        position: absolute;
        width: 100%; }
        .popup-window .popup-close-container .close-button span:nth-child(1) {
          -webkit-transform: rotate(45deg);
          -moz-transform: rotate(45deg);
          -ms-transform: rotate(45deg);
          transform: rotate(45deg);
          top: 9px; }
        .popup-window .popup-close-container .close-button span:nth-child(2) {
          -webkit-transform: rotate(-45deg);
          -moz-transform: rotate(-45deg);
          -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
          top: 9px; }
      .popup-window .popup-close-container .close-button:hover {
        cursor: pointer; }
        .popup-window .popup-close-container .close-button:hover span {
          background: #c54312; }

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */
html {
  color: #222;
  font-size: 1em;
  line-height: 1.4; }

body {
  width: 100vw;
  max-width: 100vw;
  overflow-x: hidden; }
  body.nav-open {
    overflow: hidden; }

/*
 * Remove text-shadow in selection highlight:
 * https://twitter.com/miketaylr/status/12228805301
 *
 * Vendor-prefixed and regular ::selection selectors cannot be combined:
 * https://stackoverflow.com/a/16982510/7133471
 *
 * Customize the background color to match your design.
 */
::-moz-selection {
  background: #b3d4fc;
  text-shadow: none; }

::selection {
  background: #b3d4fc;
  text-shadow: none; }

/*
 * A better looking default horizontal rule
 */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0; }

/*
 * Remove the gap between audio, canvas, iframes,
 * images, videos and the bottom of their containers:
 * https://github.com/h5bp/html5-boilerplate/issues/440
 */
audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle; }
  audio:focus,
  canvas:focus,
  iframe:focus,
  img:focus,
  svg:focus,
  video:focus {
    outline: none; }

/*
 * Remove default fieldset styles.
 */
fieldset {
  border: 0;
  margin: 0;
  padding: 0; }

/*
 * Allow only vertical resizing of textareas.
 */
textarea {
  resize: vertical; }

/* ==========================================================================
   Browser Upgrade Prompt
   ========================================================================== */
.browserupgrade {
  margin: 0.2em 0;
  background: #ccc;
  color: #000;
  padding: 0.2em 0; }

/* ==========================================================================
   Author's custom styles
   ========================================================================== */
body {
  font-family: urbane, sans-serif;
  font-weight: 200;
  font-style: normal;
  color: #000000;
  font-family: urbane, sans-serif;
  font-weight: 200;
  font-style: normal;
  font-size: 1 2px; }

h1,
h2,
h3,
h4 {
  font-family: forma-djr-display, sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.08rem;
  color: #003422; }

h1 {
  font-size: 2.7rem;
  line-height: 3rem;
  margin-bottom: 0; }
  @media screen and (max-width: 768px) {
    h1 {
      font-size: 2rem;
      line-height: 2.5rem; } }
  @media screen and (max-width: 640px) {
    h1 {
      font-size: 1.7rem;
      line-height: 2rem; } }

h3 {
  font-size: 0.8rem;
  text-transform: uppercase; }

p {
  font-size: 1.1rem;
  line-height: 1.5rem;
  max-width: 600px; }
  @media screen and (max-width: 640px) {
    p {
      font-size: 1rem;
      line-height: 1.6rem; } }
  p:empty {
    display: none; }

a {
  display: inline-block;
  max-width: 250px;
  text-transform: uppercase;
  text-decoration: none;
  width: 100%; }
  a:after {
    -webkit-transform: scaleX(1);
    -moz-transform: scaleX(1);
    -ms-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transition: transform 250ms ease-in-out;
    -moz-transition: transform 250ms ease-in-out;
    -ms-transition: transform 250ms ease-in-out;
    -o-transition: transform 250ms ease-in-out;
    transition: transform 250ms ease-in-out;
    border-bottom: solid 2px #003422;
    content: "";
    display: block;
    margin-bottom: -2px;
    padding-top: 5px;
    transform-origin: 0% 50%; }
  a:hover:after {
    -webkit-transform: scaleX(0);
    -moz-transform: scaleX(0);
    -ms-transform: scaleX(0);
    transform: scaleX(0);
    transform-origin: 100% 50%; }
  a.button-link:after {
    display: none; }

button {
  font-family: forma-djr-display, sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.08rem;
  -webkit-transform: translateZ(0);
  -moz-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transition: background 400ms ease-in-out, color 400ms ease-out;
  -moz-transition: background 400ms ease-in-out, color 400ms ease-out;
  -ms-transition: background 400ms ease-in-out, color 400ms ease-out;
  -o-transition: background 400ms ease-in-out, color 400ms ease-out;
  transition: background 400ms ease-in-out, color 400ms ease-out;
  background: #c54312;
  border: 2px solid #c54312;
  color: #f3efed;
  font-size: 0.8rem;
  height: 60px;
  letter-spacing: 0.05rem;
  line-height: 1.5rem;
  padding: 15px;
  text-transform: capitalize; }
  @media screen and (max-width: 768px) {
    button {
      font-size: 1rem; } }
  button:hover, button:focus, button:visited, button:active {
    outline: none; }
  button:before {
    -webkit-transform: scaleX(0);
    -moz-transform: scaleX(0);
    -ms-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transition: 400ms ease-in-out;
    -moz-transition: 400ms ease-in-out;
    -ms-transition: 400ms ease-in-out;
    -o-transition: 400ms ease-in-out;
    transition: 400ms ease-in-out;
    background: #f3efed;
    bottom: 0;
    color: #c54312;
    content: "";
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    -webkit-transform-origin: 0 50%;
    transform-origin: 0 50%;
    -webkit-transition-property: transform;
    transition-property: transform;
    z-index: -1; }
  button:hover {
    color: #c54312;
    cursor: pointer; }
    button:hover:before {
      -webkit-transform: scaleX(1);
      -moz-transform: scaleX(1);
      -ms-transform: scaleX(1);
      transform: scaleX(1);
      transform-origin: 100% 0;
      -webkit-transform-origin: 100% 0; }

ul.link-list, ul.amenities-list {
  width: 100%; }
  ul.link-list li, ul.amenities-list li {
    padding-top: 20px; }
    ul.link-list li a, ul.amenities-list li a {
      color: #003422; }
ul.link-list {
  font-family: forma-djr-display, sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.08rem;
  font-size: 0.8rem;
  list-style: none;
  padding-left: 0; }
  @media screen and (max-width: 640px) {
    ul.link-list {
      font-size: 0.7rem; } }
ul.amenities-list {
  list-style: none; }
  ul.amenities-list li {
    border-bottom: 2px solid #003422;
    text-transform: capitalize; }
    ul.amenities-list li a {
      color: #c54312;
      display: inline;
      text-transform: capitalize; }

#loading {
  -webkit-transition: opacity 2s ease-in-out;
  -moz-transition: opacity 2s ease-in-out;
  -ms-transition: opacity 2s ease-in-out;
  -o-transition: opacity 2s ease-in-out;
  transition: opacity 2s ease-in-out;
  background: #003422;
  bottom: 0;
  opacity: 1;
  left: 0;
  right: 0;
  position: fixed;
  top: 0;
  z-index: 100; }
  #loading.hide {
    opacity: 0; }

.half {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  align-items: center;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  min-width: 200px;
  width: calc(50% - 60px); }
  @media screen and (max-width: 768px) {
    .half {
      width: calc(100vw - 30px); } }

section {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  -ms-flex-pack: center;
  width: 100%; }
  section:nth-of-type(2n) .half .image-container .image:after {
    background: url(../img/brown-grain-3.svg);
    background-repeat: no-repeat; }
    @media screen and (max-width: 640px) {
      section:nth-of-type(2n) .half .image-container .image:after {
        left: 15px; } }
  section:nth-of-type(2) .half .image-container .image:after {
    background: url(../img/brown-grain-2.svg);
    background-repeat: no-repeat; }
    @media screen and (max-width: 640px) {
      section:nth-of-type(2) .half .image-container .image:after {
        background-position: 100% 0;
        left: 15px; } }
  section:nth-of-type(3n) .half .image-container .image:after {
    background: url(../img/brown-grain.svg);
    background-repeat: no-repeat; }
    @media screen and (max-width: 640px) {
      section:nth-of-type(3n) .half .image-container .image:after {
        background-position: 100% 0;
        left: 15px; } }
  section:last-of-type .half,
  section:last-of-type .half:first-child {
    padding-bottom: 180px; }
    @media screen and (max-width: 768px) {
      section:last-of-type .half,
      section:last-of-type .half:first-child {
        padding-bottom: 0; } }
  section#amenities .half {
    padding-bottom: 210px; }
    @media screen and (max-width: 768px) {
      section#amenities .half {
        padding-bottom: 60px; } }
  section.portrait .half .text-container p, section.amenities-section .half .text-container p {
    padding-bottom: 60px; }
    @media screen and (max-width: 768px) {
      section.portrait .half .text-container p, section.amenities-section .half .text-container p {
        padding-bottom: 30px; } }
  section.portrait .half .amenities-images-container, section.amenities-section .half .amenities-images-container {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    -ms-justify-content: center;
    justify-content: center;
    -ms-flex-pack: center;
    -webkit-align-items: center;
    -moz-align-items: center;
    -ms-align-items: center;
    align-items: center;
    -webkit-transition: opacity 400m s ease-in-out;
    -moz-transition: opacity 400m s ease-in-out;
    -ms-transition: opacity 400m s ease-in-out;
    -o-transition: opacity 400m s ease-in-out;
    transition: opacity 400m s ease-in-out;
    opacity: 0; }
    @media screen and (max-width: 768px) {
      section.portrait .half .amenities-images-container, section.amenities-section .half .amenities-images-container {
        opacity: 1; } }
    section.portrait .half .amenities-images-container.visible, section.amenities-section .half .amenities-images-container.visible {
      opacity: 1; }
    section.portrait .half .amenities-images-container.fixed, section.amenities-section .half .amenities-images-container.fixed {
      bottom: 0;
      height: 100vh;
      left: 50vw;
      position: fixed;
      right: 0;
      top: 0;
      width: calc(50vw - 30px);
      z-index: 0; }
      @media screen and (max-width: 768px) {
        section.portrait .half .amenities-images-container.fixed, section.amenities-section .half .amenities-images-container.fixed {
          height: auto;
          left: 0px;
          position: relative;
          width: calc(100% - 30px); } }
  section.portrait .half .image-container .image, section.amenities-section .half .image-container .image {
    left: 60px;
    width: calc(100% - 60px); }
    @media screen and (max-width: 640px) {
      section.portrait .half .image-container .image, section.amenities-section .half .image-container .image {
        left: 30px;
        width: calc(100% - 30px); } }
  @media screen and (max-width: 640px) {
    section.portrait .half .image-container, section.amenities-section .half .image-container {
      width: 100%; } }
  section.portrait .half .image-container .branch, section.amenities-section .half .image-container .branch {
    border-bottom: 2px solid #003422;
    position: absolute;
    right: 0;
    top: 50%;
    width: 100%; }
    @media screen and (max-width: 768px) {
      section.portrait .half .image-container .branch, section.amenities-section .half .image-container .branch {
        width: calc(100% - 60px);
        left: 0;
        right: auto; } }
  section.portrait .half ul.link-list, section.amenities-section .half ul.link-list {
    padding-left: 0; }
    @media screen and (max-width: 768px) {
      section.portrait .half ul.link-list, section.amenities-section .half ul.link-list {
        padding-left: 60px; } }
    @media screen and (max-width: 640px) {
      section.portrait .half ul.link-list, section.amenities-section .half ul.link-list {
        padding-left: 30px; } }
  section.portrait .half .amenities-list-container, section.amenities-section .half .amenities-list-container {
    width: 100%; }
    section.portrait .half .amenities-list-container h3, section.amenities-section .half .amenities-list-container h3 {
      margin-bottom: 0; }
      @media screen and (max-width: 768px) {
        section.portrait .half .amenities-list-container h3, section.amenities-section .half .amenities-list-container h3 {
          display: none; } }
    section.portrait .half .amenities-list-container ul.amenities-list, section.amenities-section .half .amenities-list-container ul.amenities-list {
      margin-top: 0;
      padding-left: 0; }
      @media screen and (max-width: 768px) {
        section.portrait .half .amenities-list-container ul.amenities-list li, section.amenities-section .half .amenities-list-container ul.amenities-list li {
          padding-left: 60px; } }
      @media screen and (max-width: 640px) {
        section.portrait .half .amenities-list-container ul.amenities-list li, section.amenities-section .half .amenities-list-container ul.amenities-list li {
          padding-left: 30px; } }
  section.design-section .image-container {
    margin-top: 90px; }
    @media screen and (max-width: 640px) {
      section.design-section .image-container {
        margin-top: 60px; } }
  section .full-width {
    padding: 0 60px;
    width: calc(100% - 120px); }
    section .full-width .image-full-width-container {
      width: 100%; }
      section .full-width .image-full-width-container img {
        width: 100%;
        height: auto; }
  section.portrait .half .image-container .image {
    width: calc(100% - 60px); }
  @media screen and (max-width: 768px) {
    section {
      -webkit-flex-direction: column;
      -moz-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column; } }
  section .half {
    max-width: 800px;
    min-height: 75vh;
    padding: 120px 60px 120px 0; }
    section .half:first-child {
      -webkit-justify-content: flex-end;
      -moz-justify-content: flex-end;
      -ms-justify-content: flex-end;
      justify-content: flex-end;
      -ms-flex-pack: flex-end;
      border-right: 2px solid #003422;
      padding: 120px 0 120px 60px;
      width: calc(50% - 62px); }
      @media screen and (max-width: 768px) {
        section .half:first-child {
          border-right: none;
          width: calc(100vw - 47px); } }
    @media screen and (max-width: 768px) {
      section .half {
        border-left: 2px solid #003422;
        margin-left: 15px;
        min-height: 20vh;
        padding: 60px 30px 60px 0px;
        width: calc(100vw - 47px); }
        section .half.order-one {
          order: 1;
          padding: 120px 0px 0px 0px; }
        section .half:not(.order-one) {
          order: 2;
          padding: 60px 0px 60px 0px; } }
    @media screen and (max-width: 640px) {
      section .half.order-one {
        padding: 90px 0 0 0; } }
    section .half.order-two ul.link-list {
      padding-left: calc(60px + 25%); }
      @media screen and (max-width: 768px) {
        section .half.order-two ul.link-list {
          padding-left: 60px;
          padding-right: 0; } }
    section .half h1,
    section .half h3,
    section .half p {
      color: #003422; }
    section .half h1 {
      max-width: 400px; }
    section .half p {
      max-width: 400px; }
    section .half .header-container,
    section .half .image-container,
    section .half .text-container {
      width: 100%; }
    section .half .text-container {
      -webkit-transform: translateY(50px);
      -moz-transform: translateY(50px);
      -ms-transform: translateY(50px);
      transform: translateY(50px);
      opacity: 0;
      transition: all 0.5s linear;
      transition-delay: 21.7585ms; }
      section .half .text-container.in-view {
        -webkit-transform: translateY(0px);
        -moz-transform: translateY(0px);
        -ms-transform: translateY(0px);
        transform: translateY(0px);
        opacity: 1; }
      section .half .text-container.align-right {
        text-align: right; }
      section .half .text-container .header-container {
        border-bottom: 2px solid #003422; }
        section .half .text-container .header-container h1,
        section .half .text-container .header-container h3 {
          max-width: 320px; }
          @media screen and (max-width: 768px) {
            section .half .text-container .header-container h1,
            section .half .text-container .header-container h3 {
              padding-left: 60px;
              padding-right: 0; } }
          @media screen and (max-width: 640px) {
            section .half .text-container .header-container h1,
            section .half .text-container .header-container h3 {
              padding-left: 30px; } }
        section .half .text-container .header-container h3 {
          margin-bottom: 10px; }
        section .half .text-container .header-container .header-icon {
          height: 30px;
          padding-bottom: 10px;
          width: 30px; }
      section .half .text-container blockquote {
        margin: 0; }
        section .half .text-container blockquote p {
          font-size: 1.5rem;
          font-style: italic;
          line-height: 2rem; }
          @media screen and (max-width: 640px) {
            section .half .text-container blockquote p {
              font-size: 1.25rem;
              line-height: 1.75rem; } }
      section .half .text-container p,
      section .half .text-container ul.link-list {
        max-width: 350px; }
        @media screen and (max-width: 768px) {
          section .half .text-container p,
          section .half .text-container ul.link-list {
            padding-left: 60px;
            padding-right: 0; } }
        @media screen and (max-width: 640px) {
          section .half .text-container p,
          section .half .text-container ul.link-list {
            padding-left: 30px; } }
      section .half .text-container ul li p {
        padding-left: 0; }
      section .half .text-container ul {
        list-style: none;
        padding-left: 0em; }
        section .half .text-container ul li:before {
          content: "";
          display: inline-block;
          height: 0.5em;
          width: 0.5em;
          background-image: url(../img/ul-icon.png);
          background-image: url(../img/ul-icon.svg);
          background-size: contain;
          background-repeat: no-repeat;
          margin-right: 0.5em; }
        section .half .text-container ul li p {
          display: inline;
          font-size: 1rem;
          line-height: 2rem; }
        section .half .text-container ul.link-list li:before, section .half .text-container ul.amenities-list li:before {
          display: none; }
      section .half .text-container p.quote-source {
        text-transform: uppercase;
        font-size: 1rem; }
        @media screen and (max-width: 640px) {
          section .half .text-container p.quote-source {
            font-size: 0.75rem;
            line-height: 1.2rem; } }
      section .half .text-container p a {
        color: #003422;
        text-decoration: none;
        text-transform: none;
        width: auto; }
        section .half .text-container p a u {
          text-decoration: none; }
        section .half .text-container p a:after {
          padding-top: 0; }
      section .half .text-container .hours h3,
      section .half .text-container .location h3 {
        max-width: 350px;
        padding-left: calc(60px + 25%);
        padding-top: 30px; }
        @media screen and (max-width: 768px) {
          section .half .text-container .hours h3,
          section .half .text-container .location h3 {
            padding-left: 60px;
            padding-right: 0; } }
        @media screen and (max-width: 640px) {
          section .half .text-container .hours h3,
          section .half .text-container .location h3 {
            padding-left: 30px; } }
      section .half .text-container .hours p,
      section .half .text-container .location p {
        margin: 0; }
    section .half .image-container {
      display: inline-block;
      position: relative; }
      @media screen and (max-width: 768px) {
        section .half .image-container {
          height: auto; } }
      section .half .image-container .image {
        position: relative;
        width: calc(100% + 25%);
        z-index: 1; }
        @media screen and (max-width: 768px) {
          section .half .image-container .image {
            position: relative;
            left: 60px;
            right: 0;
            top: 0;
            width: calc(100% - 120px); } }
        @media screen and (max-width: 640px) {
          section .half .image-container .image {
            left: 30px;
            width: calc(100% - 30px); } }
        section .half .image-container .image:after {
          background: url(../img/brown-grain-2.svg);
          background-position: 0 100%;
          background-repeat: no-repeat;
          background-size: auto 100%;
          content: "";
          height: calc(100% + 100px);
          left: -30px;
          position: absolute;
          bottom: -30px;
          width: 100%;
          z-index: -1; }
          @media screen and (max-width: 768px) {
            section .half .image-container .image:after {
              height: calc(100% + 60px); } }
        section .half .image-container .image.no-woodgrain:after {
          display: none; }
        section .half .image-container .image img {
          width: 100%;
          height: auto; }
  @media screen and (max-width: 768px) {
    section.portrait .half .image-container .image {
      float: left;
      left: auto;
      width: calc(70% - 60px); } }
  @media screen and (max-width: 640px) {
    section.portrait .half .image-container .image {
      width: calc(90% - 30px); } }
  section#leasing ul.link-list {
    margin-top: 60px; }

.kabin {
  transition: background 0.5s linear; }

/* ==========================================================================
   Helper classes
   ========================================================================== */
/*
 * Hide visually and from screen readers
 */
.hidden {
  display: none !important; }

/*
* Hide only visually, but have it available for screen readers:
* https://snook.ca/archives/html_and_css/hiding-content-for-accessibility
*
* 1. For long content, line feeds are not interpreted as spaces and small width
*    causes content to wrap 1 word per line:
*    https://medium.com/@jessebeach/beware-smushed-off-screen-accessible-text-5952a4c2cbfe
*/
.sr-only {
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
  /* 1 */ }

/*
* Extends the .sr-only class to allow the element
* to be focusable when navigated to via the keyboard:
* https://www.drupal.org/node/897638
*/
.sr-only.focusable:active,
.sr-only.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  white-space: inherit;
  width: auto; }

/*
* Hide visually and from screen readers, but maintain layout
*/
.invisible {
  visibility: hidden; }

/*
* Clearfix: contain floats
*
* For modern browsers
* 1. The space content is one way to avoid an Opera bug when the
*    `contenteditable` attribute is included anywhere else in the document.
*    Otherwise it causes space to appear at the top and bottom of elements
*    that receive the `clearfix` class.
* 2. The use of `table` rather than `block` is only necessary if using
*    `:before` to contain the top-margins of child elements.
*/
.clearfix:before,
.clearfix:after {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */ }

.clearfix:after {
  clear: both; }

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   These examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */
@media only screen and (min-width: 35em) {
  /* Style adjustments for viewports that meet the condition */ }
@media print, (-webkit-min-device-pixel-ratio: 1.25), (min-resolution: 1.25dppx), (min-resolution: 120dpi) {
  /* Style adjustments for high resolution devices */ }
/* ==========================================================================
   Print styles.
   Inlined to avoid the additional HTTP request:
   https://www.phpied.com/delay-loading-your-print-css/
   ========================================================================== */
@media print {
  *,
  *:before,
  *:after {
    background: transparent !important;
    color: #000 !important;
    /* Black prints faster */
    box-shadow: none !important;
    text-shadow: none !important; }

  a,
  a:visited {
    text-decoration: underline; }

  a[href]:after {
    content: " (" attr(href) ")"; }

  abbr[title]:after {
    content: " (" attr(title) ")"; }

  /*
     * Don't show links that are fragment identifiers,
     * or use the `javascript:` pseudo protocol
     */
  a[href^="#"]:after,
  a[href^="javascript:"]:after {
    content: ""; }

  pre {
    white-space: pre-wrap !important; }

  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid; }

  /*
     * Printing Tables:
     * https://web.archive.org/web/20180815150934/http://css-discuss.incutio.com/wiki/Printing_Tables
     */
  thead {
    display: table-header-group; }

  tr,
  img {
    page-break-inside: avoid; }

  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }

  h2,
  h3 {
    page-break-after: avoid; } }

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