/*! HTML5 Boilerplate v9.0.1 | MIT License | https://html5boilerplate.com/ */
/* main.css 3.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.
 */
/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */
@font-face {
  font-family: "Canto Pen Custom";
  src: url("../fonts/CantoPen-Light.woff2") format("woff2"),
    url("../fonts/CantoPen-Light.woff") format("woff");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

* {
  box-sizing: border-box;
}


html {
  color: #222;
  font-size: 1em;
  line-height: 1.4;
}

body {
  margin: 0;
  padding: 0;
  overflow-x: hidden !important;
  max-width: 100vw !important;
  position: relative;
  border-top: 100px solid transparent;
  z-index:1;
}

body#home-page {
  border-top: none;
  overflow: hidden;
  max-height: 100vh;
}

body#home-page.loaded {
  overflow-y: visible;
  max-height: 100000vh;
}

img {
  width: 100%;
}

body.locked {
  overflow: hidden !important;
  width: 100vw !important;
  height: 100vh !important;
}

/*
 * Remove text-shadow in selection highlight:
 * https://twitter.com/miketaylr/status/12228805301
 *
 * 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;
}

/* Custom Scroll Bar
---------------------------*/

::-webkit-scrollbar {
  width: 3px;
  height: 3px;
}

/* Track */
::-webkit-scrollbar-track {
  background: #fff;
}

/* Handle */
::-webkit-scrollbar-thumb {
  background: #0e3e35;
}

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
  background: #0e3e35;
}

.section-stack {
  coloumn-gap: 0.5em;
}

/*
 * 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;
}

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

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

/* ==========================================================================
   Author's custom styles
   ========================================================================== */

/* Global Styles 
   --------------------------------------------------------------------------*/

#background-video {
  width: auto;
  min-height: 100vh;
  height: 100vh;
  position: fixed;
  top: 0;
  z-index: -1;
}

.one-half {
  width: 50%;
}

.one-third {
  width: 33%;
}

.one-fourth {
  width: 25%;
}

.three-fourths {
  width: 75%;
}

.two-thirds {
  width: 66%;
}

.left {
  float: left;
}

.right {
  float: right;
}

.text-center {
  text-align: center;
}

.one-fifth {
  width: 20%;
}

.two-fifths {
  width: 40%;
}

.three-fifths {
  width: 60%;
}

.four-fifths {
  width: 80%;
}

.box-centered {
  margin-right: auto;
  margin-left: auto;
}

hr.clear-pretty {
  width: 100%;
  max-width: 210px;
  height: 4px;
  background: #2c5033;
  padding: 0;
  margin: 30px auto;
  text-align: center;
  display: block;
}

hr.clear-pretty.white {
  background: #fff;
}

.inline-fonts {
  display: inline;
}

.italics {
  font-style: italic !important;
}

.text-white {
  color: #fff !important;
}

.button-white {
  background: #fff !important;
  color: #2c5033 !important;
  -webkit-transition: all 250ms ease-in-out;
  -moz-transition: all 250ms ease-in-out;
  -ms-transition: all 250ms ease-in-out;
  -o-transition: all 250ms ease-in-out;
  transition: all 250ms ease-in-out;
}

.button-white:hover {
  background: #be9a52 !important;
  color: #fff !important;
}

.full-bg {
  background-size: cover !important;
  background-position: center center;
}

ol,
ul {
  margin-bottom: 30px;
  margin-top: 30px;
}

ul li,
ol li {
  margin-bottom: 15px;
}

.inner-wrapper.flex {
  display: flex;
}

#fp-nav {
  display: none !important;
}

a.link-arrow {
  font-weight: 600;
  padding-right: 60px;
  color: #fff;
  text-transform: uppercase;
  position: relative;
}

a.link-arrow:after {
  position: absolute;
  content: "";
  width: 30px;
  height: 30px;
  background-image: url(../img/nav-arrow-right.png);
  background-size: 100% auto;
  top: 50%;
  right: 0;
  display: block;
  transform: translateY(-50%);
}

.inner-wrapper {
  width: 100%;
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
}

.max-wrap {
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
  display: block;
}

/* Fonts Styles 
   --------------------------------------------------------------------------*/
h1,
h2 {
  font-family: "Canto Pen Custom", serif;
  margin-top: 0;
  margin-bottom: 20px;
  letter-spacing: 0.08em;
  color: #2c5033;
  font-weight: 300;
  line-height: 1.1em;
  letter-spacing: 0em;
}

h3,
h4,
h5,
button {
  font-family: "Poppins";
}

p,
a,
span,
ul,
ul li {
  font-family: "Poppins", sans-serif;
  font-weight: 300;
}

p {
  line-height: 1.4em;
  color: #111;
  font-size: 1.1rem;
  margin-top: 0;
}

a {
  text-decoration: none;
  color: #2c5033;
}

ul {
  margin-left: 0;
  padding-left: 20px;
}

button {
  text-transform: uppercase;
}

.page-title {
  text-align: center;
  text-transform: uppercase;
  color: #f05a4a;
  font-size: 2.4rem;
  margin: 0 auto 30px;
}

a.sub-nav-item {
  text-transform: uppercase;
  font-weight: 600;
  color: #1351aa;
  font-family: "Araboto", serif;
}

.book-button {
  font-weight: 600;
  padding: 10px 15px;
  border-radius: 3px;
  background: #2c5033;
  color: #fff;
  -webkit-box-shadow: 0 1px 2px 0 rgb(0 0 0 / 20%);
  box-shadow: 0 1px 2px 0 rgb(0 0 0 / 20%);
  -webkit-transition: all 250ms ease-in-out;
  -moz-transition: all 250ms ease-in-out;
  -ms-transition: all 250ms ease-in-out;
  -o-transition: all 250ms ease-in-out;
  transition: all 250ms ease-in-out;
  background: #fff;
  color: #2c5033;
}

.book-button:hover {
  background: #aa8e69;
}

p.note {
  font-size: 0.875rem;
  font-style: italic;
  margin-bottom: 60px;
}

p {
  max-width: 800px !important;
}

p.two-column-text {
  column-count: 2;
  max-width: 1100px;
  padding-left: 10px;
  padding-right: 10px;
  column-gap: 40px;
  margin-bottom: 80px;
  max-width: 1400px !important;
}

h2.breaker-title {
  margin-top: 80px;
  font-size: 2.4rem;
  text-transform: uppercase;
}

p.slider-desc {
  margin-bottom: 80px;
}

a.text-link {
  margin-top: 20px;
  font-weight: 300;
  color: #666;
  border-bottom: 1px solid #999;
  font-weight: 300;
}

/* Header Styles 
   --------------------------------------------------------------------------*/
#home-page #header {
  height: 145px;
  z-index: 100000;
  position: absolute;
  top: 0;
  left: 0;
  background: transparent;
  -webkit-box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0);
  box-shadow: 0 5px 10px 0 rgba(0,0,0,0);
  box-shadow: inset 0 41px 27px 0 rgba(0, 0, 0, .18);
  box-shadow: inset 0 41px 27px 0 rgba(0, 0, 0, .18);

}

#header {
  background: #0e3e35;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100px;
  z-index: 10000;
  -webkit-transition: all 500ms ease-in-out;
  -moz-transition: all 500ms ease-in-out;
  -ms-transition: all 500ms ease-in-out;
  -o-transition: all 500ms ease-in-out;
  transition: all 500ms ease-in-out;
  -webkit-box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.103);
  box-shadow: 0 5px 10px 0 rgba(0,0,0,.18);
  opacity: 1;
}

#header.sucked {
  opacity: 0;
}

#center-logo {
  height: 100%;
  position: absolute;
  left: 50%;
  top: 0;
  width: 340px;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: translateX(-50%);
}

#center-logo img {
  width: 100%;
}

#nav-icon4 {
  width: 40px;
  height: 30px;
  position: relative;
  margin: 50px auto;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: 0.5s ease-in-out;
  -moz-transition: 0.5s ease-in-out;
  -o-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
  cursor: pointer;
  z-index: 10000000;
}

#nav-icon4 span {
  display: block;
  position: absolute;
  height: 2px;
  width: 100%;
  background: #fff;
  border-radius: 2px;
  opacity: 1;
  left: 0;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: 0.25s ease-in-out;
  -moz-transition: 0.25s ease-in-out;
  -o-transition: 0.25s ease-in-out;
  transition: 0.25s ease-in-out;
}

#nav-icon4 {
  position: absolute;
  top: -10px;
  right: 30px;
}

#nav-icon4 span:nth-child(1) {
  top: 0px;
  -webkit-transform-origin: left center;
  -moz-transform-origin: left center;
  -o-transform-origin: left center;
  transform-origin: left center;
}

#nav-icon4 span:nth-child(2) {
  top: 13px;
  -webkit-transform-origin: left center;
  -moz-transform-origin: left center;
  -o-transform-origin: left center;
  transform-origin: left center;
}

#nav-icon4 span:nth-child(3) {
  top: 28px;
  -webkit-transform-origin: left center;
  -moz-transform-origin: left center;
  -o-transform-origin: left center;
  transform-origin: left center;
}

#nav-icon4.open span:nth-child(1) {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
  top: -3px;
  left: 8px;
}

#nav-icon4.open span:nth-child(2) {
  width: 0%;
  opacity: 0;
}

#nav-icon4.open span:nth-child(3) {
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
  top: 39px;
  left: 8px;
  top: 25px;
  left: 7px;
}

.left-nav {
  display: flex;
  justify-content: space-between;
  height: 110px;
  align-items: center;
  position: absolute;
  left: 0;
  width: 33%;
  padding-left: 20px;
  max-width: 400px;
}

.left-nav a {
  text-transform: uppercase;
  font-weight: 300;
  color: #fff;
  line-height: 110px;
  letter-spacing: 0.04em;
  text-shadow: 0 0 3px rgba(0,0,0,.18);
}

#top-phone {
  display: block;
  position: absolute;
  right: 100px;
  top: 30px;
  background: #aa962e;
  color: #fff;
  padding: 4px 10px;
  border-radius: 3px;
  font-weight: 300;
  height: 60px;
  line-height: 60px;
  font-weight: 300;
  height: 50px;
  line-height: 50px;
  font-size: 1.2rem;
  letter-spacing: 0.02em;
  font-family: "Canto Pen Custom";
}

#top-residents {
  font-size: 1rem;
  display: block;
  position: absolute;
  right: 280px;
  top: 30px;
  text-transform: uppercase;
  background: #0e3e35;
  color: #fff;
  padding: 4px 10px;
  border-radius: 3px;
  font-weight: 300;
  height: 60px;
  line-height: 60px;
  font-weight: 300;
  height: 50px;
  line-height: 50px;
  letter-spacing: 0.05em;
  font-family: "Canto Pen Custom";
}

#top-residents a, #top-phone a {
  color: #fff;
  font-size: 1.2rem;
  letter-spacing: 0.02em;
  font-family: "Canto Pen Custom";
}

#top-phone:hover,
#top-residents:hover {
  cursor: pointer;
}

#mega-drop {
  width: 100vw;
  height: 100vh;
  background: #0e3e35;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99999;
  padding: 40px;
  opacity: 0;
  z-index:100000;
  display: none;
}

#mega-drop.active {
  opacity: 0.98;
  z-index: 100000;
  -webkit-transition: all 500ms ease-in-out;
  -moz-transition: all 500ms ease-in-out;
  -ms-transition: all 500ms ease-in-out;
  -o-transition: all 500ms ease-in-out;
  transition: all 500ms ease-in-out;
}

#mega-drop.active.overlayed {
  z-index: 1000000;
  top: 0;
}

.mega-footer {
  position: absolute;
  bottom: 0;
  width: 100%;
  text-align: center;
  color: #fff;
  left: 0;
  padding-bottom: 5px;
}

.mega-footer a,
.mega-footer span {
  color: #fff;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  margin-right: 10px;
  margin-left: 10px;
  font-weight: 300;
}

#mega-drop .mega-drop-logo {
  width: 280px;
  position: absolute;
  top: 40px;
  left: 40px;
}

#mega-drop .mega-nav-links {
  margin-top: 180px;
  width: 80%;
  display: flex;
  flex-wrap: wrap;
}

#mega-drop .mega-nav-links a {
  width: 45%;
  margin-right: 5%;
  color: #fff;
  font-size: 3.1rem;
  font-family: "Canto Pen Custom";
  display: block;
  opacity: 0;
  transform: translateY(60px);
  -webkit-transition: all 700ms ease-in-out;
  -moz-transition: all 700ms ease-in-out;
  -ms-transition: all 700ms ease-in-out;
  -o-transition: all 700ms ease-in-out;
  transition: all 700ms ease-in-out;
}

#mega-drop .mega-nav-links a.active {
  opacity: 1;
  transform: translateY(0);
}

/* Home Page Styles 
  --------------------------------------------------------------------------*/

#full-screen-loader {
  display: flex;
  align-items: center;
  justify-content: center;
  position: fixed;
  top: 0;
  left: 0;
  height: 100vh;
  width: 100vw;
  z-index: 1000000;
  background: #fff;
  -webkit-transition: all 600ms ease-in-out;
  -moz-transition: all 600ms ease-in-out;
  -ms-transition: all 600ms ease-in-out;
  -o-transition: all 600ms ease-in-out;
  transition: all 600ms ease-in-out;
  opacity: 1;
}

body.loaded #full-screen-loader {
  opacity: 0;
}

body.loaded.removed #full-screen-loader {
  z-index: -1;
  top: -10000vh;
}

#full-screen-loader img {
  width: 500px;
}

#hero img.hero-logo {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  width: 100%;
  max-width: 600px;
  z-index: 1000;
  opacity: 0 !important;
  -webkit-transition: all 250ms ease-in-out;
  -moz-transition: all 250ms ease-in-out;
  -ms-transition: all 250ms ease-in-out;
  -o-transition: all 250ms ease-in-out;
  transition: all 250ms ease-in-out;
}

#hero img.hero-logo.active {
  opacity: 1 !important;
  -webkit-transition: all 250s ease-in-out;
  -moz-transition: all 250s ease-in-out;
  -ms-transition: all 250s ease-in-out;
  -o-transition: all 250s ease-in-out;
  transition: all 250s ease-in-out;
}

.video-bg {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
  min-height: 110vh;
  min-width: 100vw;
  height: 100%;
}

.slide {
  position: relative;
  overflow: hidden;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  background: #000 !important;
}

.slide img.full-screen {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
  width: 110vw;
  min-height: 110vh;
  z-index: 100;
  opacity: 0.8;
}

.slide .video-bg {
  /*display: none !important;*/
}

.slide-content {
  position: absolute;
  width: 68%;
  left: 0%;
  padding-left: 40px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10000;
  background-color: rgba(14, 62, 53, .65);
  padding: 40px;
  padding-left: 80px;
  padding-right: 60px;
  max-width: 1200px;
}

.slide-content h3 {
  text-transform: uppercase;
  color: #fff;
  margin-bottom: 20px;
  font-weight: 400;

}

.slide-content h2 {
  color: #fff;
  font-size: 5.5rem;
  margin-bottom: 15px;
  line-height: 0.8em;

}

.slide-content p {
  color: #fff;
  font-size: 1.4rem;
  margin-top: 0;
  margin-bottom: 30px;
  max-width: 100% !important;
}

.fp-slidesNav.fp-bottom {
  left: 25px !important;
}

#fp-nav ul li a span,
.fp-slidesNav ul li a span {
  background: #fff;
  -webkit-box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.15);
  box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.15);
}

#fp-nav ul li a span,
.fp-slidesNav ul li a span {
  height: 5px;
  width: 5px;
}

#home-intro {
  background: #f5f5f5;
  overflow: hidden;
}

#home-intro .intro-content {
  width: 100%;
  max-width: 1000px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
}

#home-intro .intro-content p {
  font-size: 1.4rem;
  font-weight: 300;
}

#home-intro .intro-content h2 {
  color: #0e3e35;
  font-size: 7rem;
}

.water-mark {
  position: absolute;
  right: -105px;
  bottom: -23%;
  width: 60%;
  z-index: 1;
  opacity: 0.08;
}

#fullpage #discovery-green {
  background: #000;
}

#fullpage #amenities {
  background: #000;
}

#fullpage #grocery-store {
  background: #000;
}

#fullpage #floor-plans {
  background: #000;
}

#reviews {
  background: #f5f5f5;
  padding-top: 20vh;
  padding-bottom: 20vh;
  overflow: hidden;
  height: 80vh;
}

#reviews blockquote h2 {
  color: #0e3e35;
  font-size: 6rem;
}

#reviews blockquote p {
  font-size: 1.2rem;
  line-height: 1.8em;
}

#reviews blockquote .author {
  display: block;
  font-weight: 600;
  margin-top: 15px;
}

#instagram {
  padding-top: 60px;
  padding-bottom: 60px;
  padding-left: 60px;
  padding-right: 60px;
}

.instagram-header {
  width: 95%;
  text-align: center;
  position: relative;
  margin-left: auto;
  margin-right: auto;
}

.instagram-header i {
  display: block;
  font-size: 4rem;
  color: #0e3e35;
  width: 15%;
  position: relative;
  margin-right: auto;
  margin-left: auto;
}

.instagram-header:before {
  content: "";
  width: 45.5%;
  background: #aa962e;
  height: 2px;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}

.instagram-header:after {
  content: "";
  width: 45.5%;
  background: #aa962e;
  height: 2px;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}

#instagram-feed a {
  font-family: "Leifa", sans-serif;
}

.instagram-container {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}

.instagram-container .instagram-item {
  width: 25%;
  padding-top: 25%;
  background-size: cover;
  position: relative;
  background-size: cover;
  background-position: center center;
}

.instagram-container .instagram-item img {
  -webkit-transition: all 150ms ease-in-out;
  -moz-transition: all 150ms ease-in-out;
  -ms-transition: all 150ms ease-in-out;
  -o-transition: all 150ms ease-in-out;
  transition: all 150ms ease-in-out;
  position: absolute;
  left: 50%;
  top: 50%;
  width: 40px;
  opacity: 0;
  transform: translateX(-50%) translateY(-30%);
}

.instagram-container .instagram-item:hover img {
  opacity: 1;
  transform: translateX(-50%) translateY(-50%);
}

/* Inner Page Styles 
  --------------------------------------------------------------------------*/

.page-container {
  padding-top: 60px;
}

.page-container h1 {
  font-size: 3rem;
  padding-top: 0px;
  padding-bottom: 10px;
  margin-bottom: 40px;
  text-transform: uppercase;
  text-align: center;
  position: relative;
  z-index: 10;
}

.page-container h1:after {
  content: "";
  height: 110%;
  position: absolute;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
  opacity: 0.3;
  background-image: url(../img/grid-center.png);
}

.page-container h1:before {
  width: 100%;
  max-width: 210px;
  height: 4px;
  background: #aa962e;
  position: absolute;
  bottom: -10px;
  display: block;
  content: "";
  left: 50%;
  transform: translateX(-50%);
}

.page-container .intro-text {
  margin-bottom: 60px;
}

/* Amenities PAge
  --------------------------------------------------------------------------*/

.amenities-grid {
  display: flex;
  flex-wrap: wrap;
  max-width: 1290px;
  margin-left: auto;
  margin-right: auto;
}

.amenities-grid .amenities-block {
  width: 50%;
  padding-left: 8%;
  padding-right: 4%;
  padding-top: 4%;
  padding-bottom: 20px;
  margin-bottom: 60px;
  position: relative;
}

.amenities-block h2 {
  color: #aa962e;
  font-size: 2.4rem;
  text-transform: uppercase;
}

.amenities-grid .amenities-block ul {
  list-style-type: none;
  padding-left: 0;
}

.amenities-block.block-1:after,
.amenities-block.block-3:after {
  width: 2px;
  height: 90%;
  position: absolute;
  right: 0;
  content: "";
  display: block;
  top: 0;
  background: #999;
}

.amenities-block.block-1:before,
.amenities-block.block-2:before {
  height: 2px;
  width: 90%;
  position: absolute;
  bottom: 0;
  content: "";
  display: block;
  left: 0;
  background: #999;
}

.amenities-block.block-2:before {
  left: initial;
  right: 0;
}

.amenities-block.block-1:after:after {
  display: block;
  width: 50px;
  height: 50px;
  background-image: url(../img/gold-watermark.png);
  background-size: 100% 100%;
  background-position: center center;
}

.amenities-grid .amenities-block.block-4:before {
  height: 50px;
  width: 50px;
  position: absolute;
  left: -25px;
  top: -80px;
  content: "";
  background-image: url(../img/grid-center.png);
  background-size: 100% auto;
  background-position: center center;
  background-repeat: no-repeat;
}

/* Neighborhood Page
  --------------------------------------------------------------------------*/

.neighborhood-hero {
  height: 60vh;
  width: 100%;
  display: flex;
  align-items: center;
  position: relative;
  justify-content: center;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  overflow: hidden;
}

.neighborhood-hero h2 {
  font-size: 3rem;
  color: #fff;
  text-transform: uppercase;
  position: relative;
  z-index: 100;
}

hr.pretty-clear {
  width: 10%;
  display: block;
  clear: both;
  margin: 30px auto;
  padding: 0;
  height: 5px;
  background: #fff;
  border: none;
}

#neighborhood .section-header {
  height: 80vh;
}


#neighborhood-highlights {
  background: #000;
}


#walkscore {
  position: relative;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  padding-top: 40px;
  padding-bottom: 40px;
}

#neighborhood-map-container {
  width: 100%;
  padding-top: 0px;
  padding-bottom: 0px;
  z-index: 10000;
  height: 80vh;
  margin: 0px auto 0;
  position: relative;
  overflow: hidden;
}

#neighborhood-map {
  height: 100%;
  width: 100%;
  margin: 0 auto;
  position: absolute;
  top: 0;
  left: 0;
}

#category-container {
  width: 20%;
  height: 80vh;
  float: left;
  background: #333;
}

#neighborhood .location {
  position: relative;
  max-width: 280px;
  width: 100%;
}

#neighborhood .location img {
  width: 100%;
  height: auto;
  display: none !important;
}

#neighborhood .location .text-box {
  padding: 20px 0 20px 20px;
  position: relative;
}

#neighborhood .location .text-box h2 {
  margin: 0 auto;
  padding: 10px 0;
  color: #444;
  font-size: 1.8rem;
  text-align: center;
  padding-bottom: 0;
  margin-bottom: 5px;
}

#neighborhood .location .text-box h4.block-report {
  color: #444;
  padding-bottom: 5px;
  font-size: 1rem;
  margin-bottom: 0;
  margin-top: 5px;
}

#neighborhood .location .text-box a {
  color: #444;
}

.map-intro {
  background: #613259;
  width: 100%;
  padding-top: 20px;
  padding-bottom: 20px;
  text-align: center;
  margin: 0 auto;
  position: relative;
}

.map-intro p {
  color: #fff;
  font-weight: 300;
  font-size: 1.4rem;
  text-align: center;
  padding: 0;
  margin: 0 auto;
}

#map-list {
  width: 250px;
  position: absolute;
  top: 0;
  overflow: hidden;
  left: 0;
  z-index: 10000000;
  background: #0e3e35;
  height: 100%;
  -webkit-transition: all 150ms ease-in-out;
  -moz-transition: all 150ms ease-in-out;
  -ms-transition: all 150ms ease-in-out;
  -o-transition: all 150ms ease-in-out;
  transition: all 150ms ease-in-out;
}

#neighborhood-map-container.closed #map-list {
  transform: translateX(-100%);
}

#map-list img.map-logo {
  margin: 0 auto;
  width: 50%;
  height: auto;
  display: block;
  margin-bottom: 0;
}

#category-list {
  width: 100%;
  height: 100%;
  overflow-y: auto;
  opacity: 1;
  -webkit-transition: all 150ms ease-in-out;
  -moz-transition: all 150ms ease-in-out;
  -ms-transition: all 150ms ease-in-out;
  -o-transition: all 150ms ease-in-out;
  transition: all 150ms ease-in-out;
  padding-top: 20px;
}

#category-list.hide {
  opacity: 0;
  -webkit-transition: all 150ms ease-in-out;
  -moz-transition: all 150ms ease-in-out;
  -ms-transition: all 150ms ease-in-out;
  -o-transition: all 150ms ease-in-out;
  transition: all 150ms ease-in-out;
}

#category-list h4 {
  padding: 15px 0;
  font-size: 1.3rem;
  color: #fff;
  text-align: left;
  padding-left: 30px;
  display: block;
  margin-top: 5px;
  margin-bottom: 5px;
  -webkit-transition: all 150ms ease-in-out;
  -moz-transition: all 150ms ease-in-out;
  -ms-transition: all 150ms ease-in-out;
  -o-transition: all 150ms ease-in-out;
  transition: all 150ms ease-in-out;
  width: 95%;
  margin-right: auto;
  margin-left: auto;
  font-family: "Canto Pen Custom", serif;
  font-weight: 300;
  text-transform: uppercase;
  border-bottom: 1px solid #fff;
}

#category-list h3:hover,
#category-list h4:hover {
  cursor: pointer;
}

#list-container {
  padding-top: 10px;
  width: 100%;
  height: 100%;
  background: #0e3e35;
  position: relative;
}

#list-container .list-items {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  transform: translateX(100%);
  -webkit-transition: all 150ms ease-in-out;
  -moz-transition: all 150ms ease-in-out;
  -ms-transition: all 150ms ease-in-out;
  -o-transition: all 150ms ease-in-out;
  transition: all 150ms ease-in-out;
  z-index: 100000000;
  overflow-y: auto;
}

#list-container .list-items.active {
  transform: translateX(0);
  -webkit-transition: all 150ms ease-in-out;
  -moz-transition: all 150ms ease-in-out;
  -ms-transition: all 150ms ease-in-out;
  -o-transition: all 150ms ease-in-out;
  transition: all 150ms ease-in-out;
  padding-top: 20px;
}

#list-container .list-items h3.all-categories {
  width: 90%;
  padding-top: 10px;
  padding-bottom: 10px;
  margin: 0 auto;
  margin-bottom: 20px;
  text-align: center;
  font-size: 1.4rem;
  color: #fff;
  letter-spacing: 0.02em;
  text-transform: capitalize;
  text-align: center;
  -webkit-transition: all 150ms ease-in-out;
  -moz-transition: all 150ms ease-in-out;
  -ms-transition: all 150ms ease-in-out;
  -o-transition: all 150ms ease-in-out;
  transition: all 150ms ease-in-out;
  font-family: "Canto Pen Custom", serif;
  font-weight: 300;
}

#list-container .list-items h3.all-categories:hover {
  cursor: pointer;
}

#list-container .list-items h4 {
  color: #fff;
  padding: 15px 0;
  font-size: 1.3rem;
  text-align: left;
  padding-left: 30px;
  display: block;
  margin-top: 5px;
  font-weight: 300;
  text-transform: uppercase;
  margin-bottom: 5px;
  font-family: "Canto Pen Custom", serif;
  -webkit-transition: all 150ms ease-in-out;
  -moz-transition: all 150ms ease-in-out;
  -ms-transition: all 150ms ease-in-out;
  -o-transition: all 150ms ease-in-out;
  transition: all 150ms ease-in-out;
}

#list-container .list-items ul {
  list-style-type: none;
  padding: 0;
  margin: 0;
  position: relative;
}

#list-container .list-items ul li {
  color: #fff;
  width: 100%;
  border-bottom: 1px solid #fff;
  padding-top: 10px;
  padding-bottom: 10px;
  text-align: left;
  padding-left: 40px;
  padding-right: 15px;
  display: block;
  font-size: 0.875rem;
  -webkit-transition: all 150ms ease-in-out;
  -moz-transition: all 150ms ease-in-out;
  -ms-transition: all 150ms ease-in-out;
  -o-transition: all 150ms ease-in-out;
  transition: all 150ms ease-in-out;
}

#list-container .list-items ul li:hover {
  background: #fff;
  cursor: pointer;
  color: #333;
}

#map-toggle {
  position: absolute;
  top: 8px;
  height: 40px;
  width: 40px;
  font-size: 1.8rem;
  font-family: "DINWebPro", arial, sans-serif;
  padding: 0;
  color: #f5f5f5;
  line-height: 35px;
  text-align: center;
  z-index: 1000000000;
  left: 210px;
  text-transform: uppercase;
  -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0);
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0);
  -webkit-transition: all 150ms ease-in-out;
  -moz-transition: all 150ms ease-in-out;
  -ms-transition: all 150ms ease-in-out;
  -o-transition: all 150ms ease-in-out;
  transition: all 150ms ease-in-out;
}

#map-toggle i {
  line-height: 45px;
}

#map-toggle:hover {
  color: #fff;
  cursor: pointer;
}

#neighborhood-map-container.closed #map-toggle {
  left: 0;
  top: 60px;
  background: #183d4e;
  -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.3);
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.3);
}

.map-logo {
  width: 120px;
  margin-bottom: 30px;
}

@media screen and (max-width: 721px) {
  .map-intro p {
    font-size: 13px;
    padding-left: 15%;
    padding-right: 15%;
  }

  #neighborhood-map-container {
    overflow: visible;
    margin-bottom: 30px;
  }

  #neighborhood-map-container {
    height: auto;
  }

  #map-list {
    display: block;
    width: 100%;
    padding-top: 15px;
    padding-left: 15px;
    padding-right: 15px;
    margin: 0 auto 15px;
    position: relative;
    top: 0;
    left: 0;
    height: 60vh;
  }

  #list-container .list-items {
    transform: translateX(-130%);
    padding-left: 30px;
    padding-right: 30px;
  }

  #list-container .list-items ul {
    padding-bottom: 15px;
  }

  #neighborhood-map {
    position: relative;
    top: 0;
    left: 0;
    margin-bottom: 0;
    height: 60vh;
  }
}

#location-box {
  background: #fff;
  padding: 60px;
  position: relative;
  box-shadow: 0 2px 3px 0 rgba(0, 0, 0, 0.18);
}

.full-bg:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  filter: blur(5px);
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  -webkit-transition: all 600ms ease-in-out;
  -moz-transition: all 600ms ease-in-out;
  -ms-transition: all 600ms ease-in-out;
  -o-transition: all 600ms ease-in-out;
  transition: all 600ms ease-in-out;
  opacity: 1;
}

.active.full-bg:before {
  filter: blur(0px);
}

/* Feature Sections
  --------------------------------------------------------------------------*/

#feature-highlights {
  background: #eee;
}

#feature-highlights .inner-wrapper {
  padding-top: 60px;
  padding-bottom: 60px;
}

#feature-highlights .row {
  width: 100%;
  padding-top: 5vh;
  padding-bottom: 5vh;
  margin: 0 auto;
  height: 90vh;
  position: relative;
}

#feature-highlights .highlight-text-box {
  width: 50%;
  display: flex;
  height: 100%;
  position: relative;
  align-items: center;
  justify-content: center;
}

#feature-highlights .highlight-text-box h2 {
  font-size: 2.8rem;
  transform: translateY(60px);
  opacity: 0;
  position: relative;
  -webkit-transition: all 750ms ease-in-out;
  -moz-transition: all 750ms ease-in-out;
  -ms-transition: all 750ms ease-in-out;
  -o-transition: all 750ms ease-in-out;
  transition: all 750ms ease-in-out;
}

#feature-highlights .highlight-text-box h2.active {
  opacity: 1;
  transform: translateY(0);
} 

#feature-highlights .highlight-image {
  height: 80vh;
  width: 50%;
  overflow: hidden;
  position: absolute;
  right: 0;
  top: 5vh;
  -webkit-transition: all 750ms ease-in-out;
  -moz-transition: all 750ms ease-in-out;
  -ms-transition: all 750ms ease-in-out;
  -o-transition: all 750ms ease-in-out;
  transition: all 750ms ease-in-out;
  background-size: cover;
  background-position: center center;
}

#feature-highlights .active .highlight-image {
  width: 100%;
}

#feature-highlights .highlight-image img {
  position: absolute;
  right: 0;
  top: 0;
  height: 100%;
  width: auto;
}

#feature-highlights .highlight-image .content {
  position: absolute;
  bottom: 0;
  left: 0;
  background: rgba(14, 62, 53, 0.8);
  padding: 20px;
  max-width: 600px;
  opacity: 0;
  -webkit-transition: all 1250ms ease-in-out;
  -moz-transition: all 1250ms ease-in-out;
  -ms-transition: all 1250ms ease-in-out;
  -o-transition: all 1250ms ease-in-out;
  transition: all 1250ms ease-in-out;
}

#feature-highlights .active .highlight-image .content {
  opacity: 1;
}

#feature-highlights .highlight-image h2 {
  color: #fff;
  font-size: 3.4rem;
}

#feature-highlights .highlight-image p {
  color: #fff;
}

/* Floor Plans Page
  --------------------------------------------------------------------------*/


#floor-plans {
  background: #f5f5f5;
}

#floor-plan-frame {
  width: 90%;
  height: 90vh;
  border: none;
  margin: 0 auto;
  display: block;
  margin-bottom: 20px;
}

.floor-plan-wrapper {
  padding-top: 60px;
  padding-bottom: 30px;
  background: #0e3e35;
}

/* Gallery Page
  --------------------------------------------------------------------------*/

#gallery {
  padding-top: 0;
  background: #f5f5f5;
}

.gallery-hero {
  height: 50vh;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}

.gallery-hero h2 {
  font-size: 3rem;
  color: #fff;
  text-transform: uppercase;
  position: relative;
  text-shadow: 0 0 3px rgba(0,0,0,.18);
}

.gallery-slider {
  width: 100vw;
  position: relative;
  max-height: 110vh;
  overflow: hidden;
}

.gallery-slider img {
  max-width: 80vw;
}

#gallery h2 {
  text-align: center;
}

#gallery p.breaker-text {
  padding-top: 60px;
  padding-bottom: 60px;
}

#gallery .gallery-video {
  width: 100%;
}

/* Virtual Tours
  --------------------------------------------------------------------------*/

.virtual-tour-grid {
  background: #0e3e35;
  padding-top: 80px;
  padding-bottom: 80px;
  padding-left: 20px;
  padding-right: 20px;
}

.virtual-tour-grid .inner-wrapper {
  display: flex;
  flex-wrap: wrap;
}

.virtual-tour-grid iframe {
  width: 48%;
  margin-left: 1%;
  margin-right: 1%;
  margin-bottom: 2%;
  max-height: 52vw;
  -webkit-box-shadow: 0 0 10px 0px rgba(0, 0, 0, 0.18);
  box-shadow: 0 0 10px 0px rgba(0, 0, 0, 0.18);
  border: 2px solid #333;
}

/* The Building
  --------------------------------------------------------------------------*/

.building-hero {
  height: 95vh;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  position: relative;
}

.building-hero .hero-content {
  position: absolute;
  bottom: 0;
  left: 0;
  padding: 30px 40px;
  background-color: rgba(14, 62, 53, 0.8);
  width: 100%;
}

.building-hero .hero-content h2 {
  color: #fff;
  font-size: 2.4rem;
  max-width: 60%;
  text-transform: uppercase;
}

.building-hero .hero-content p {
  max-width: 60%;
  color: #fff;
  margin-bottom: 0;
}

h2.intro-title {
  font-weight: 300;
  font-size: 2.6rem;
  margin-top: 60px;
  margin-bottom: 60px;
  text-transform: uppercase;
}

#the-building .intro-image {
  margin-bottom: 100px;
}

#the-building .two-column {
  display: flex;
  margin-bottom: 60px;
}

#the-building .text-box {
  padding-top: 0px;
  padding-left: 40px;
}

#the-building .text-callout {
  background-image: url(../img/pattern-background.jpg);
  background-size: cover;
  background-position: center center;
  margin-top: 40px;
  padding: 60px;
  display: flex;
  align-items: flex-start;
  justify-content: center;
}

#the-building .text-callout h2 {
  font-size: 4.2rem;
  color: #0e3e35;
  padding-top: 60px;
  padding-bottom: 60px;
}

.building-features {
  padding-top: 60px;
  padding-bottom: 0px;
  background: #f5f5f5;
}

.building-features .amenities-grid {
  margin-top: 60px;
}

.building-features .amenities-grid .amenities-block {
  width: 50%;
  padding-left: 5%;
  padding-right: 4%;
  padding-top: 2%;
  padding-bottom: 60px;
  margin-bottom: 60px;
  position: relative;
}

.building-features .amenities-grid p {
  margin-bottom: 40px;
}

.building-features h1:before {
  display: none !important;
}

/* Resident Portal
  --------------------------------------------------------------------------*/

.portal-container {
  background: #f5f5f5;
  display: flex;
  min-height: 20vw;
  height: 20vw;
}

.portal-box {
  min-height: 20vw;
  max-height: 20vw;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.portal-box a {
  display: block;
  text-align: center;
}

.portal-box img {
  width: 140px;
}

/* Contact Us
  --------------------------------------------------------------------------*/

.office-contact {
  background: #f5f5f5;
  display: flex;
  min-height: 35vw;
}

.office-contact #map-container {
  position: relative;
}

.office-contact #contact-map {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
  display: block;
}

.contact-details h2 {
  font-size: 3.4rem;
}

.contact-details {
  padding: 60px;
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: flex-start;
}

/* Layout Styles
  --------------------------------------------------------------------------*/

.breaker-image {
  width: 100%;
  height: 60vh;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  margin-bottom: 60px;
}

.branded-icon {
  max-width: 90px;
  margin: 0 auto 20px;
  display: block;
  text-align: center;
}

.wayfinder-title {
  font-size: 3rem;
  margin-top: 60px;
}

#wayfinding {
  width: 100%;
  height: 60vh;
  position: relative;
  display: flex;
  background: #000;
}

#wayfinding .one-half {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  padding: 60px;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  background-image: url(../img/wayfinding/1.jpg);
  position: relative;
  -webkit-transition: all 600ms ease-in-out;
  -moz-transition: all 600ms ease-in-out;
  -ms-transition: all 600ms ease-in-out;
  -o-transition: all 600ms ease-in-out;
  transition: all 600ms ease-in-out;
}

#wayfinding.active .one-half {
  filter: blur(0px);
}

#wayfinding .one-half h2 {
  color: #fff;
  font-size: 2.8rem;
  margin-bottom: 30px;
  text-transform: uppercase;

  -webkit-transition: all 600ms ease-in-out;
  -moz-transition: all 600ms ease-in-out;
  -ms-transition: all 600ms ease-in-out;
  -o-transition: all 600ms ease-in-out;
  transition: all 600ms ease-in-out;
}

#wayfinding .one-half p {
  color: #fff;
  margin-bottom: 30px;

  -webkit-transition: all 600ms ease-in-out;
  -moz-transition: all 600ms ease-in-out;
  -ms-transition: all 600ms ease-in-out;
  -o-transition: all 600ms ease-in-out;
  transition: all 600ms ease-in-out;
  }

#wayfinding .one-half a {
  color: #fff;
  border-bottom: 2px solid #fff;
  padding-bottom: 2px;
  font-size: 1rem;
  display: inline-block;
  -webkit-transition: all 400ms ease-in-out;
  -moz-transition: all 400ms ease-in-out;
  -ms-transition: all 400ms ease-in-out;
  -o-transition: all 400ms ease-in-out;
  transition: all 400ms ease-in-out;
}

.hightlight-row {
  display: flex;
}

.hightlight-row h2 {
  -webkit-transition: all 600ms ease-in-out;
  -moz-transition: all 600ms ease-in-out;
  -ms-transition: all 600ms ease-in-out;
  -o-transition: all 600ms ease-in-out;
  transition: all 600ms ease-in-out;

}

.hightlight-row h2.active {
  opacity: 1;
  transform: translateY(0%);
}

.hightlight-row div {
  min-height: 35vw;
}

.hightlight-row .text-box {
  padding: 60px;
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  justify-content: center;
  position: relative;
}

.hightlight-row .text-box.green-bg {
  background: #0e3e35;
}

.hightlight-row .text-box.green-bg h2,
.hightlight-row .text-box.green-bg p {
  color: #fff;
}

.hightlight-row .text-box h2 {
  font-size: 3.4rem;
  text-transform: uppercase;
}

.hightlight-row .one-third {
  width: 33.33333333%;
}

div.slick-slide {
  opacity: 0.3;
  -webkit-transition: all 600ms ease-in-out;
  -moz-transition: all 600ms ease-in-out;
  -ms-transition: all 600ms ease-in-out;
  -o-transition: all 600ms ease-in-out;
  transition: all 600ms ease-in-out;
  padding-left: 5px;
  padding-right: 5px;
}

div.slick-slide.slick-active {
  opacity: 1;
}

/* Footer Styles 
  --------------------------------------------------------------------------*/
#footer {
  width: 100%;
  background: #0e3e35;
  position: relative;
  padding-top: 30px;
  padding-bottom: 0px;
}

h2.foot-established {
  color: #fff;
  text-transform: uppercase;
  font-size: 2.4rem;
}

#footer hr.clear-one-third.white {
  width: 33%;
  margin: 0 auto;
  float: left;
  clear: both;
  height: 3px;
  background: #fff;
  margin-top: 15px;
  margin-bottom: 15px;
}

#footer .inner-wrapper {
  display: flex;
  padding: 30px 0;
}

#footer p {
  color: #fff;
  margin: 0;
}

#footer .about-us-foot-nav a,
#footer .services-foot-nav a {
  display: block;
  color: #fff;
  font-size: 0.875rem;
  padding-top: 4px;
  padding-bottom: 4px;
  font-weight: 300;
  width: 100%;
  clear: both;
  padding-right: 40px;
}

#footer .about-us-foot-nav h3,
#footer .services-foot-nav h3,
#footer .newsletter h3 {
  text-transform: uppercase;
  color: #fff;
  margin-bottom: 0;
  font-weight: 300;
}

#footer .newsletter form {
  max-width: 500px;
}

#footer .foot-logo {
  padding-right: 30px;
  position: relative;
}

#footer .foot-logo img {
  width: 100%;
}

#footer .social-icons i {
  color: #fff;
  font-size: 21px;
  margin-right: 10px;
}

#footer .newsletter {
}

#footer h3 {
  color: #fff;
  margin-bottom: 15px;
  font-family: "Canto Pen Custom";
}

#footer .newsletter form {
  width: 100%;
  display: flex;
}

#footer .newsletter input[type="email"] {
  width: 70%;
  border-radius: 5px;
  height: 40px;
  line-height: 40px;
  border: none;
  padding: 10px;
  -webkit-border-radius: 5px 0 0 5px;
  border-radius: 5px 0 0 5px;
  font-family: "Open Sans", serif;
}

#footer .newsletter input[type="submit"] {
  background: #2c5033;
  color: #fff;
  height: 40px;
  line-height: 40px;
  text-transform: uppercase;
  width: 30%;
  font-family: "Open Sans", serif;
  text-align: center;
  padding-left: 10px;
  padding-right: 10px;
  border: none;
  border-radius: 5px;
  -webkit-border-radius: 0 5px 5px 0;
  border-radius: 0 5px 5px 0;
}

#footer .newsletter .address {
  padding-top: 15px;
}

#footer .newsletter .address a {
  display: block;
  color: #fff;
  padding-bottom: 5px;
}

#footer .newsletter .foot-social {
  padding-top: 0;
  width: 100%;
  text-align: right;
}

#footer #sub-footer {
  width: 100%;
  height: 50px;
  padding-left: 0px;
  padding-right: 0px;
  border-top: 1px solid #ccc;
  max-width: 95%;
  margin-right: auto;
  margin-left: auto;
}

#footer #sub-footer p {
  line-height: 50px;
  padding: 0;
  margin: 0;
  display: inline-block;
}

#footer .inner-wrapper {
  max-width: 1400px;
  margin-right: auto;
  margin-left: auto;
}

/* ** Wide Screen
  --------------------------------------------------------------------------*/

@media screen and (max-width: 800px) {
    body {
      
    }
  }
  
@media only screen and (min-width: 1505px) {
  .video-bg {
    height: auto;
    min-width: 110vw;
    width: 100vw;
  }
}

@media only screen and (max-width: 960px) {
  body {
   
  }
}

/* ** Styles 
  --------------------------------------------------------------------------*/
/* ==========================================================================
   Helper classes
   ========================================================================== */
/* Layout Styles 
   --------------------------------------------------------------------------*/
ul#menu {
  position: fixed;
  top: 0;
  left: 0;
  display: flex;
  justify-content: space-around;
  z-index: 100000;
  list-style-type: none;
  top: 40px;
  margin-top: 0;
  -webkit-transition: all 250ms ease-in-out;
  -moz-transition: all 250ms ease-in-out;
  -ms-transition: all 250ms ease-in-out;
  -o-transition: all 250ms ease-in-out;
  transition: all 250ms ease-in-out;
}

ul#menu.hidden,
ul#menu.in-viewport {
  top: -140px;
  -webkit-transition: all 250ms ease-in-out;
  -moz-transition: all 250ms ease-in-out;
  -ms-transition: all 250ms ease-in-out;
  -o-transition: all 250ms ease-in-out;
  transition: all 250ms ease-in-out;
}

ul#menu li {
  margin-right: 20px;
}

ul#menu li.active {
  border-bottom: 2px solid #fff;
}

ul#menu li a {
  color: #fff;
  font-size: 1.2em;
}

.full-width-section {
  width: 100%;
  margin: 0 auto;
  position: relative;
  padding: 0;
  min-height: 50vh;
}

.one-page-slide {
  height: 100vh;
}

/*
 * Hide visually and from screen readers
 */
.hidden,
[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
 */
.visually-hidden {
  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 .visually-hidden class to allow the element
 * to be focusable when navigated to via the keyboard:
 * https://www.drupal.org/node/897638
 */
.visually-hidden.focusable:active,
.visually-hidden.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
 *
 * 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: "";
  display: table;
}

.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: #fff !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;
  }

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

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

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