/*
Theme Name: Alexa
Theme URI: https://beswifty.com/
Author: Team Swifty
Author URI: https://beswifty.com/
Version: 3.0.0
Tags: community
License: GNU General Public License v2 or later
 ______________________________________________________
|                                                      |
|    ███████╗██╗    ██╗██╗███████╗████████╗██╗   ██╗   |
|    ██╔════╝██║    ██║██║██╔════╝╚══██╔══╝╚██╗ ██╔╝   |
|    ███████╗██║ █╗ ██║██║█████╗     ██║    ╚████╔╝    |
|    ╚════██║██║███╗██║██║██╔══╝     ██║     ╚██╔╝     |
|    ███████║╚███╔███╔╝██║██║        ██║      ██║      |  
|    ╚══════╝ ╚══╝╚══╝ ╚═╝╚═╝        ╚═╝      ╚═╝      |
|______________________________________________________|

*/


/*===== Global Styles =====*/

/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/
/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}

/*
*,
*:before,
*:after {
    font-family: Helvetica, Arial, "sans-serif";
}
*/
html {
    scroll-behavior: smooth;
}
*,
*:before,
*:after {
	box-sizing: border-box;
}
a, a:visited {
    text-decoration: none;
}
a.resident-section-link {
    text-decoration: inherit;
}
body {
    margin: 0;
    -webkit-font-smoothing: antialiased;
    background: #fff;
    font-size: 18px;
}
body.sticky-header { 
    padding-left: 80px;
}
ul, ol {
    padding: 0;
    list-style-type: none;
}
p {
    margin: 0 0 20px;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.9;
    letter-spacing: 0;
}
.gallery-tabs-header p{
    margin: 0 0 45px;
}
.container {
    width: 100%;
    max-width: 1560px;
    display: block;
    margin: 0 auto;
    z-index: 9;
    position: relative;
    padding: 0 15px;
}
.container-full {
    width: 100%;
    display: block;
    margin: 0 auto;
    position: relative;
    z-index: 9;
}
.flex-container {
    display: flex;
    flex-flow: wrap;
}

.container:after, .flex-box:after, .container-full:after {
    display: table;
    content: "";
    clear: both;
}

.col-1 {float:left;width: 8.33%;padding: 0 15px;}
.col-2 {float:left;width: 16.66%;padding: 0 15px;}
.col-3 {float:left;width: 25%;padding: 0 15px;}
.col-4 {float:left;width: 33.33%;padding: 0 15px;}
.col-5 {float:left;width: 41.66%;padding: 0 15px;}
.col-6 {float:left;width: 50%;padding: 0 15px;}
.col-7 {float:left;width: 58.33%;padding: 0 15px;}
.col-8 {float:left;width: 66.66%;padding: 0 15px;}
.col-9 {float:left;width: 75%;padding: 0 15px;}
.col-10 {float:left;width: 83.33%;padding: 0 15px;}
.col-11 {float:left;width: 91.66%;padding: 0 15px;}
.col-12 {float:left;width: 100%;padding: 0 15px;}

a.cb-btn {
    display: inline-block;
    margin-right: 15px;
    transition: all 0.1s ease-in 0s;
        min-width: 150px;
    text-align: center;
    margin-bottom: 10px;
    box-shadow: none;    
    padding: 13px 40px;
    font-weight: 700;
    border-radius: 25px;
    font-size: 16px;
    line-height: 1.25;
}

a.cb-btn.type-11, a.cb-btn.type-12, a.cb-btn.type-13 {
    border: 2px solid;
    padding: 11px 25px;
}
ul.flex-direction-nav {
    display: none;
}
div#property-slider .flex-control-nav {
    bottom: 0;
}
.flexslider {
    margin: 0 !important;
    border: none !important;
    background: transparent;
}

section {
    position: relative;
}
.bg-pattern {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    opacity: 0.1;
}
.col-bg {
    width: 100%;
    height: 100%;
    background-position: center center;
    background-size: cover;
}
.clearfix:after {
    display: table;
    content: " ";
    clear: both;
}
.container.same-height, .container-full.same-height {
    display: flex;
    flex-flow: wrap;
}
.form-section .bg-pattern {
    width: calc(50% - 20px);
}
.main-menu-panel {
    display: block;
    position: fixed;
    width: 100%;
    height: 100%;
    padding: 15px;
    z-index: 9999;
    transition: all 0.5s ease 0s;
    transform: translateX(100%);
    background: #fff;
    max-width: 500px;
    right: 0;
    top: 0;
    overflow: auto;
}

.menu-close {
    position: absolute;
    width: 40px;
    height: 40px;
    font-size: 30px;
    line-height: 30px;
    top: 10px;
    right: 10px;
    text-align: center;
    transform: rotate(
45deg
);
    font-weight: 700;
    cursor: pointer;
    padding: 5px;
}
.main-menu-panel .header-cta, .main-menu-panel .social-bar {
    display: block;
    width: 100%;
    padding: 20px 0;
}
.main-menu-panel li.main-menu-item a.menu-item-link {
    display: block;
    font-size: 34px;
    padding: 0;
    font-weight: 400;
    line-height: 2;
    text-align: center;
}
.main-menu-panel li.main-menu-item {
    display: block;
}
.main-menu-panel.open {
    transform: translateX(0);
}
.main-menu-panel ul.menu-main-menu {
    display: block;
    height: auto;
}
.main-menu-panel ul.menu-main-menu li.main-menu-item {
    display: block;
    height: auto;
    max-width: 100%;
}
.screen-reader-shortcut {
    position: absolute;
    top: -1000em;
}
.screen-reader-shortcut:focus {
    left: 6px;
    top: 0;
    height: auto;
    width: auto;
    display: block;
    font-size: 14px;
    font-weight: 600;
    padding: 15px 23px 14px;
    background: #f1f1f1;
    color: #0073aa;
    z-index: 100000;
    line-height: normal;
    box-shadow: 0 0 2px 2px rgba(0,0,0,.6);
    text-decoration: none;
    outline: 2px solid transparent;
    outline-offset: -2px;
}
header .container {
    max-width: 100%;
    padding: 0 40px;
}
header.header {
    width: 100%;
    position: fixed;
    z-index: 9999;
    left: 0;
    transition: all 0.5s ease 0s;
}
header.header.fixed {
    box-shadow: 0px 3px 13px #00000029;
}
header .top-bar {
    text-align: right;
}
header .top-bar a.top-contact-no {
    font-size: 22px;
    line-height: 1.5;
    display: inline-block;
    padding: 5px 0;
    font-weight: 700;
}
header .top-bar a.top-contact-no span {
    font-weight: 400;
    margin-right: 25px;
}
header a.top-contact-no span{
    padding-right: 15px;
    margin-right: 15px;
    position: relative;
    border-right: 2px solid;
}
header a.top-contact-no span:after{
    content: "";
    width: 1px;
    height: 18px;
    position: absolute;
    top: 3px;
    right: 0;
    
}
a.sticky-logo {
    display: none;
}

body.home header:not(.fixed) {
    background: transparent !important;
}
body.home header:not(.fixed) li.main-menu-item a.menu-item-link,
body.home header:not(.fixed) a.top-contact-no,
body.home header:not(.fixed) a.top-contact-no span {
    color: #fff;
}
.header.fixed .logo-section a.big-logo {
    display: none;
}
.header.fixed .logo-section a.sticky-logo {
    display: block;
    height: 100%;
}
.header.fixed .logo-section {
    height: 100px;
}

.logo-section img {
    width: 200px;
    height: 100%;
    object-fit: contain;
    object-position: left center;
    display: block;
}
.logo-section {
    padding: 16px 0;
    padding-right: 75px;
    height: 130px;
    float: left;
        transition: all 0.5s ease 0s;
}
.header-menu {
    width: auto;
    padding: 35px 0;
    display: inline-block;
    vertical-align: middle;
    float: left;
        transition: all 0.5s ease 0s;
}
.header-cta {
    padding: 24px 0 24px 50px;
    height: 100%;
    position: relative;
    display: inline-block;
    vertical-align: middle;
}
.header-inner {
    text-align: right;
    font-size: 0;
}
a.top-contact-no {
    text-align: right;
    font-size: 16px;
    font-weight: 600;
    padding: 0 18px;
    line-height: 1;
    position: relative;
    display: block;
    margin-bottom: 15px;
        transition: all 0.5s ease 0s;
}
header.fixed a.top-contact-no {
    height: 0;
    margin: 0;
    overflow: hidden;
}
header.fixed nav.header-menu {
    padding: 20px 0;
}
ul.menu-main-menu {
    margin: 0;
    font-size: 0;
    padding: 13px 0;
    text-align: center;
}
li.main-menu-item {
    display: inline-block;
    vertical-align: middle;
    padding: 0 18px;
}
li.main-menu-item a.menu-item-link {
    font-size: 16px;
    font-weight: 600;
    line-height: 2;
    display: block;
    position: relative;
}
.header-menu li.main-menu-item a.menu-item-link:after {
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    bottom: -5px;
    border-bottom: 3px solid;
    left: 0;
    opacity: 0;
    transition: all 0.5s ease 0s;
}
.header-menu li.main-menu-item a.menu-item-link:hover::after {
        opacity: 1;
    width: 100%;
}
.menu-section {
    height: auto;
    text-align: left;
    position: absolute;
    top: 50%;
    left: 0;
    width: auto;
    float: right;
    padding: 0;
    margin-top: -5px;
}
.menu-section .menu-trigger {
    width: 40px;
    height: 30px;
    border-top: 3px solid;
    border-bottom: 3px solid;
    transform: translateY(-5px);
    display: inline-block;
    cursor: pointer;
}
.menu-section .menu-trigger span.burger {
    width: 100%;
    height: 3px;
    display: block;
    margin-top: 10px;
    border-top: 3px solid;
}

.header-menu.hide {
    width: 0;
    height: 0;
    overflow: hidden;
    padding: 0;
}
.header-cta a.cb-btn {
       margin-bottom: 0;
}
.menu-section.hide {
    display: none;
}
.header-cta a.cb-btn:last-child {
    margin-right: 0;
}
.page-content {
    overflow: hidden;
}
.col {
    position: relative;
}

.slide-outer {
    display: flex;
    flex-flow: wrap;
}
.slide-outer .slide-wrapper {
    height: auto;
    min-height: 100vh;
    display: flex;
    flex-flow: column;
    justify-content: flex-end;
    padding-top: 130px;
    padding-bottom: 15vw;
}
.slide-image {
    width: 100%;
    background-size: cover;
    background-position: center center;
    z-index: 0;
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
}
.slide-image:before {
    position: absolute;
    content: "";
    background: #000;
    right: 0;
/*    width: calc(35.5% + 41vh);*/
    width: 100%;
    height: 100%;
/*    clip-path: polygon(calc(100% - 35.3vw) 0, 0 100%, 100% 100%, 100% 0);*/
    opacity: 0.15;
    top: 0;
}
.slide-image > img {
    opacity: 0.2;
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: left top;
    transform: translateX(12.5%);
}
.slide-overlay {
    position: absolute;
    width: 64.5%;
    top: 0;
    left: 0;
    height: 100%;
    mix-blend-mode: multiply;
    clip-path: polygon(0 0, 0 100%, calc(100% - 41vh) 100%, 100% 0);
}

h1.slide-title, h1.video-title {
    font-size: 65px;
    line-height: 1.3;
    margin: 0 0 25px;
    font-weight: 400;
}
h2.slide-subtitle,
h2.video-subtitle {
    font-size: 36px;
    margin: 0 0 25px;
    line-height: 1.3;
}
.slick-home-slider ul.slick-dots {
    text-align: left;
    padding: 0 10px;
    bottom: 10vw;
    transform: translateX(-50%);
    width: 100%;
    max-width: 1560px;
    z-index: 9;
    left: 50%;
}
.slick-home-slider .slide-content {
    position: relative;
    max-width: 640px;
}
svg.home-hero-bottom {
    width: 100%;
    position: absolute;
    bottom: 0;
    height: 13vw;
    object-fit: cover;
}


section.page-section.hero-section {
    overflow: hidden;
        z-index: 99;
    background: #fff;
        opacity: 0;
    transition: all 0.5s ease 0s;
}
body.loading-complete section.page-section.hero-section {
    opacity: 1;
}
.slides.slick-home-slider {
    margin: 0;
}
.slide-content .slide-text {
    font-size: 18px;
    line-height: 1.8;
}

.slides.slick-home-slider .slick-dots li {
    border-radius: 50%;
    overflow: hidden;
    margin: 10px;
    width: 20px;
    height: 20px;
    display: inline-block;
    background: #fff;
}


.slides.slick-home-slider .slick-dots li button::before {
    opacity: 0;
}
.slides.slick-home-slider .slick-dots li button {
    font-size: 0;
    line-height: 20px;
    width: 20px;
    height: 20px;
    opacity: 1;
    color: #000;
    display: block;
    text-align: center;
}
.slides.slick-home-slider .slick-dots li.slick-active button{
    opacity: 1;
    color: #fff;
}
section.page-section.intro-type-1 {
    padding-top: 75px;
    padding-bottom: 100px;
    background: #FAFAFA;
}
body.page-template-page-home section.page-section.intro-type-1 {
    padding-bottom: 0;
}

.col.no-padding {
    padding-left: 0;
    padding-right: 0;
}
.home-intro-slider-wrapper {
    position: relative;
    width: 120%;
    margin-left: -20%;
    padding-bottom: 120%;
    height: 0;
    margin-bottom: -100px;
}

.subcol.to-right {
    padding-left: 40px;
    width: 100%;
    max-width: 780px;
    padding-right: 45px;
}
section.page-section.intro-type-1 .col.col-7 .subcol {
    height: auto;
    display: flex;
    flex-flow: column;
    justify-content: center;
    padding-top: 150px;
    padding-bottom: 100px;
    padding-left: 120px;
}
h2.section-title {
    font-size: 50px;
    line-height: 1.4;
    margin: 0 0 15px;
    font-weight: 400;
    position: relative;
}

h3.section-subtitle {
    font-size: 32px;
    margin: 0 0 25px;
    font-weight: 700;
}
p {
    font-size: 18px;
    line-height: 2;
    font-weight: 400;
}
div#home-intro-slider, div#home-intro-slider .slides, div#home-intro-slider .intro-slide, div#home-intro-slider .intro-slide img {
    height: 100%;
    object-fit: cover;
    object-position: center center;
}
.home-intro-slider-wrapper div#home-intro-slider {
    width: 100%;
    position: absolute;
    border-radius: 50%;
    overflow: hidden;
}
a.cb-btn.flp-slider-trigger {
    border: 2px solid;
}
.flp-slider-outer {
    padding: 110px 25px 25px;
    background: #fafafa;
    overflow: hidden;
}  

section#home-floorplans {
    padding: 60px 0;
}
body .home-flp-slider .flp-slider-wrapper .floorplans-slick {
    margin: 0 !important;
    max-width: 800px !important;
    padding: 0 !important;
    overflow: visible;
}

.popup-content h2{
    line-height: 1.5;
}

.floorplan-slide-details {
    margin: 30px auto;
    width: 90%;
    text-align: center;
}

.floorplans-slick .floorplan-slide .floorplan-slide-details h2 {
    font-size: 32px;
    width: 100%;
    max-width: 100%;
    padding: 0;
    text-align: center;
    margin-bottom: 10px;
    line-height: 1.3;
}
body .floorplan-slide-details .bed-bath {
    width: 100%;
    max-width: 100%;
    border: none;
    padding: 0;
    font-size: 0;
    margin-bottom: 30px;
    margin-top: 10px;
}

.floorplan-slide-details .bed-bath span {
    font-size: 18px;
    font-weight: 400;
    display: inline-block;
    padding: 0 10px;
    border-right: 1px solid;
}
.floorplan-slide {
    font-size: 0;
    transition: all 0.5s ease 0s !important;
    transform: scale(1);
    transform-origin: center bottom;
}
a.flp-slider-trigger {
    display: inline-block;
    width: 50px;
    height: 50px;
    color: #565656;
    line-height: 50px;
    text-align: center;
    font-size: 30px;
    border-radius: 50%;
    vertical-align: middle;
}
span.bedrooms {
    display: inline-block;
    vertical-align: middle;
    font-size: 30px;
    margin-left: 10px;
}
a.flp-slider-trigger.active {
    color: #fff;
}
#home-intro .col-7 .section-btns {
    margin-top: 20px;
}
#home-floorplans .property-btn {
    width: 100%;
    position: absolute;
    top: 30px;
    left: 0;
    text-align: center;
    z-index: 9;
}
.flp-btns-outer {
    display: inline-block;
    vertical-align: revert;
    background: #ddd;
    border-radius: 30px;
    padding: 4px;
}


a.flp-details-btn.cb-btn {
    margin: 0;
    box-shadow: 0px 3px 7px #00000022;
}
.home-flp-slider .flp-slider-wrapper .floorplans-slick .slides .slick-list {
    overflow: visible;
}
#home-floorplans .col.col-7 {
    display: flex;
    flex-flow: column;
    justify-content: center;
}

.floorplans-slick .floorplan-slide .floorplan-slide-img {
    padding: 20px;
    height: 325px;
    object-fit: contain;
}
.floorplans-slick .floorplan-slide .floorplan-slide-img img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center center;
}

.floorplans-slick .floorplan-slide{
    opacity: 0.5;
}
.floorplan-slide.slick-slide.slick-current.slick-active {
    opacity: 1;
}
.floorplans-slick .slick-slider button.slide-arrow {
    width: 20px;
    height: 20px;
    bottom: 0;
    right: auto;
    left: 25px;
    z-index: 99;
    top: auto;
}

.slick-slider button.slide-arrow.slick-next {
    left: auto;
    right: 25px;
}
 
#home-floorplans .col.col-7 .subcol {
    padding-top: 80px;
    padding-bottom: 50px;
}

.slick-slider button.slide-arrow::before {
    content: "";
    width: 100%;
    background: #000;
    left: 0;
    top: 9px;
    height: 2px;
    position: absolute;
    display: none;
}
.slick-slider button.slide-arrow::after {
    content: "";
    position: absolute;
    width: 20px;
    height: 20px;
    right: 0;
    top: 4.5px;
    border-top: 5px solid;
    border-right: 5px solid;
    transform: rotate(45deg);
    z-index: 1;
    border-radius: 3px;
}
.slick-slider button.slide-arrow.prev-arrow::after {
    right: auto;
    left: 0;
    transform: rotate(-135deg);
}
.slick-slider button.slide-arrow.slick-disabled {
    pointer-events: none;
}
.slick-slider button.slick-disabled:after {
    opacity: 0.4;
}

.slide-outer .slide-wrapper:before{
    bottom: 306px;
    right: 0; 
}
.slide-outer .slide-wrapper:after{
    bottom: 178px;
    right: -100px;
    z-index: 1;
}

.home-floorplans:before{
    top: -100px;
    right: 10%;
}
.home-floorplans:after{
    top: -250px;
    right: 0;
}
section.home-floorplans {
    padding: 70px 0;
}
.col-6.amnety-image {
    position: relative;
    padding: 0;
}
.col-bg {
    position: absolute;
    width: 100%;
    left: 0;
    top: 0;
    height: 100%;
    background-size: cover;
    background-position: center center;
}


ul.ct-tabs {
    display: inline-block;
    padding: 3px;
    border-radius: 50px;
    margin-top: 15px;
    margin-bottom: 50px;
}
body ul.ct-tabs > li {
    width: auto;
    padding: 10px 25px;
    display: inline-block;
    border-radius: 50px;
    font-weight: 600;
    font-size: 18px;
}


ul.ct-tabs.amney-tags {
    display: block;
    padding: 0;
    margin: 0;
    font-size: 0;
}
ul.ct-tabs.amney-tags li {
    width: calc(50% - 15px);
    height: 30vw;
    padding: 0;
    display: inline-block;
    transition: all 0.5s ease 0s;
    cursor: pointer;
    vertical-align: bottom;
    position: relative;
    overflow: hidden;
    border-radius: 0;
}
ul.ct-tabs.amney-tags li .col-bg{
    border-radius: 0;
}
svg.amnety-tab-svg {
    position: absolute;
    z-index: 9;
    margin-top: -10%;
    transform: rotate(186deg) scale(-1,1);
    width: 110%;
    top: 120px;
        transition: all 0.5s ease 0s;
}
.tab-link.current svg.amnety-tab-svg {
    top: 0;
}

ul.ct-tabs.amney-tags li:last-child {
    margin-left: 30px;
}

ul.ct-tabs.amney-tags li:after {
    width: 100%;
    content: "";
    position: absolute;
    height: 0;
    border-bottom: 8px solid;
    bottom: 45px;
    left: 0;
    transition: all 0.5s ease 0s;
}
ul.ct-tabs.amney-tags li.current:after {
    width: 100%;    
}
ul.ct-tabs.amney-tags li .col-bg img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.tab-content {
    display: none;
    position: relative;
    padding: 50px 0;
}
.tab-content.current {
    display: inherit;
}
span.home-amnety-tab-name {
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 99;
    font-size: 18px;
    font-weight: 400;
}
.tab-link.current span.home-amnety-tab-name {
    font-size: 27px;
    font-weight: 700;
}
body .mfp-title {
    display: none;
}
li.second-tab span.home-amnety-tab-name {
    right: auto;
    left: 0;
}

.home-amne-desc p, ul.amenities-grid > li {
    font-size: 15px;
    font-weight: 500;
        padding: 0;
}
body.home ul.amenities-grid {
    padding-left: calc(50vw - 780px);
    padding-top: 0;
    padding-bottom: 0;
    min-height: 50px;
}
ul.amenities-grid > li {
    padding: 0 10px;
}
ul.amenities-grid > li:after {
    left: 0;
    height: 0;
    border-bottom: 5px solid;
}

ul.ct-tabs.amney-tags li .col-bg {
    margin-top: 120px;
    transition: all 0.5s ease 0s;
    opacity: 0.5;
    height: calc(100% - 180px)
}
ul.ct-tabs.amney-tags li.current .col-bg {
    margin-top: 0;
    opacity: 1;
    height: calc(100% - 60px);
}
.amenities-outer-wrapper .intro-heading {
    width: 40%;
    display: flex;
    flex-flow: column;
    justify-content: center;
}
.amenities-outer-wrapper .intro-content {
    width: 60%;
    display: flex;
    flex-flow: column;
    justify-content: center;
}

svg.home-gallery-svg {
    width: 100%;
    transform: rotate(180deg) scale(-1,1);
    position: absolute;
    height: 14vw;
    top: 0;
}
section.home-gallery.page-section {
    padding-top: 14vw;
}
.text-center {
    text-align: center;
}
section.home-gallery .container {
    max-width: 800px;
}
section.home-gallery .container .section-content {
    margin-bottom: 100px;
}

div#gallery-grid-slider .slick-home-gallery {
    width: 50%;
    overflow: visible;
    margin: 0 auto;
}
div#gallery-grid-slider .slick-home-gallery .slick-list.draggable {
    overflow: visible;
}
.slick-home-gallery a.modular_gallery_image {
    display: block;
    position: relative;
}
.slick-home-gallery a.modular_gallery_image:after {
    position: absolute;
    width: 100%;
    height: 100%;
    background: #000;
    content: "";
    left: 0;
    top: 0;
    opacity: 0.4;
    transition: all 0.5s ease;
}
.slick-home-gallery .slick-active a.modular_gallery_image:after {
    opacity: 0;
}
.slick-home-gallery a.modular_gallery_image img {
    display: block;
    height: 460px;
    object-fit: cover;
    object-position: center center;
    width: 100%;
}

.multipurpose-boxes .box-bg {
    transform: none;
    left: 0;
    top: 0;
    overflow: hidden;
    width: 55%;
    height: 100%;
}

.multipurpose-boxes .box-link-wrapper {
    padding: 0;
    position: static;
    height: auto;
    width: 100%;
    margin-right: 0;
    display: block;
}

.multipurpose-boxes .box-link-wrapper .mp-box-content{
    filter: grayscale(1);
}
.multipurpose-boxes .box-link-wrapper:hover .mp-box-content{
    filter: grayscale(0);
}
.multipurpose-boxes .box-link-wrapper:hover .box-bg .sec-overlay {
    opacity: 0;
}
.cta-boxes .flex-box {
    display: block;
    padding-left: 55%;
    min-height: 600px;
    position: relative;
}

.cta-boxes .box-link-wrapper .flex-child {
    padding: 0;
    overflow: visible;
    position: static;
}
.multipurpose-boxes .flex-child:hover .box-bg {
    transform: none;
}


.multipurpose-boxes .box-bg img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: all 0.5s ease 0s;
}
svg.home-cta-svg {
    position: absolute;
    left: 0;
    z-index: 9;
    bottom: -12%;
    width: 55%;
    z-index: 99;
}
.multipurpose-boxes .box-link-wrapper:nth-child(2) .box-bg {
    z-index: 8;
}
.multipurpose-boxes .box-link-wrapper:hover .box-bg {
    z-index: 9;
}
.multipurpose-boxes .flex-child:hover .box-bg img {
    transform: scale(1.15);
}
/*
.multipurpose-boxes .box-bg .sec-overlay {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    opacity: 0.3;
}
*/
body a.box-link-wrapper {
    position: relative;
    width: auto;
    height: auto;
    top: auto;
    left: auto;
    z-index: 9;
}
body .multipurpose-boxes .flex-child {
    margin: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-flow: column;
    justify-content: center;
    text-align: center;
}
.cta-boxes .flex-child .box-link-wrapper {
    display: none;
}
.mp-box-content {
    top: auto;
    transform: none;
    left: auto;
    display: block;
    text-align: left;
    padding: 60px;
    max-width: 640px;
}
.mp-box-content:after {
    content: "\f054";
    font-family: fontawesome;
    font-weight: 400;
    font-size: 40px;
    margin-left: 0;
    position: absolute;
    right: 15px;
    line-height: 1;
    top: 50%;
    transform: translateY(-50%);
}
.mp-box-content h2:after {
    opacity: 0;
}
.mp-box-content br {
    display: none;
}
.mp-box-content h2 {
    font-size: 45px;
    line-height: 1;
    margin: 0 0 25px;
}
.mp-box-content h3 {
    margin: 0;
    font-size: 32px;
}       
.mp-box-content .cta-arrow {
    position: relative;
    font-size: 0;
    width: 100px;
    margin: 30px 0;
    height: 100px;
    border: 2px solid;
    border-radius: 50%;
}
.mp-box-content .cta-arrow:before {
    content: "";
    width: 40px;
    left: 25px;
    top: 50%;
    height: 0;
    position: absolute;
    border-top: 3px solid;
}
.mp-box-content .cta-arrow:after {
    content: "";
    position: absolute;
    width: 15px;
    height: 15px;
    right: 32px;
    top: 42px;
    border-top: 3px solid;
    border-right: 3px solid;
    transform: rotate(45deg);
}
section.multipurpose-boxes.cta-boxes {
    padding: 200px 0 150px;
        margin: 0;
}

.form-sec-img, .form-sec-form {
    width: 50%;
    position: relative;
}


.form-sec-form {
    padding: 100px 0 50px;
    width: 60%;
    padding-left: calc(50vw - 750px);
}
.form-sec-img .img-layer {
    height: 0;
    width: 115%;
    padding-bottom: 115%;
    position: relative;
}


.form-sec-img img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
}

.form-subcol {
    width: 100%;
    max-width: 780px;
}
.formmangr-field {
    flex-flow: wrap;
}
.form-outer {
    padding: 20px 0;
}
span.error {
    margin-top: 5px;
}
.formmangr-row .formmangr-input:placeholder, .formmangr-row select.formmangr-form-dd:placeholder, .formmangr-row textarea:placeholder {
    color: #696969;
}
.formmangr-row .formmangr-input, .formmangr-row select.formmangr-form-dd, .formmangr-row textarea {
    width: 100%;
    font-size: 18px;
    font-family: inherit;
    font-weight: 700;
    border-width: 0;
    border-style: none;
    border-radius: 0;
    -webkit-appearance: none;
    border-bottom: 4px solid;
    background: transparent;
    padding: 12px;
    margin-top: 10px;
    background: #fafafa;
    line-height: 1.5;
}
.formmangr-row {
    margin-bottom: 0;
    text-align: center;
    align-items: center;
    justify-content: center;
}
.formmangr-col {
    padding: 0 12px;
    margin-bottom: 45px;
}
.form-sec-form .form-subcol h2.section-title {
    margin-bottom: 30px;
}
div#submit {
    text-align: center;
}
button.formmangr-button.formmangr-button-submit {
    display: inline-block;
    padding: 12px 15px;
    font-size: 20px;
    line-height: 1.5;
    color: #fff;
    transition: all 0.5s ease 0s;
    margin: 15px 0 0;
    box-shadow: none;
    border: none;
    cursor: pointer;
    text-align: center;
    min-width: 200px;
    font-weight: 700;
    border-radius: 30px;
}
button.formmangr-button.formmangr-button-submit:hover {
    opacity: 0.75;
}
div#submit {
    text-align: left;
    margin-left: 10px;
}
.form-sec-form h2.section-title {
    margin-left: 5px;
}
.form-sec-img img {
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    display: block;
    object-fit: cover;
}
.form-sec-img {
    position: relative;
    width: 40%;
    overflow: hidden;
}
.img-layer {
    width: 100%;
    height: 100%;
}

.form-sec-img:before{
    top: 20px;
    left: 0;
}
.form-sec-img:after{
    top: 93px;
    left: 100px;
}
.img-layer:before{
    bottom: -100px;
    left: 0;
}
.img-layer:after{
    bottom: 122px;
    right: 100px;
}
label.formmangr-field-label {
    font-weight: 700;
    font-size: 18px;
        display: none;
}

section#footer-google-map {
    height: 1000px;
}

.gmap-info {
    visibility: hidden;
    opacity: 0;
    height: 0;
    width: 0;
    overflow: hidden;
}


/*===== Map Section =====*/
/*
.gm-style > div > div > div > div > div * {
    background: transparent !important;
}
*/
.gm-style .gm-style-iw-d {
    max-width: 300px !important;
    overflow: hidden !important;
    color: #fff;
}
.gm-style .gm-style-iw-d h1 {
    margin: 0;
    font-weight: 500;
}
.gm-style .gm-style-iw-d h5 {
    margin-top: 5px;
    font-size: 15px;
    font-weight: 500;
    margin-bottom: 0;
}
.info-w-wrapper {
    padding: 15px 0;
}
img.info-w-logo {
    display: inline-block;
    margin-right: 15px;
    vertical-align: middle;
    width: 90px;
    height: auto;
        max-height: 90px;
    object-fit: contain;
}
.info-W-content {
    display: inline-block;
    width: calc(100% - 110px);
    vertical-align: middle;
    border-left: 1px solid rgba(255,255,255,0.5);
    line-height: 24px;
}
.info-W-content, .info-W-content p {
    font-size: 14px;
    margin-bottom: 0;
    padding: 10px;
    font-weight: 600;
}
section#footer-google-map {
    min-height: 560px;
}
.gm-style .gm-style-iw-c button.gm-ui-hover-effect {
    top: 13px !important;
    right: -14px !important;
    height: 0px !important;
}

.gm-style-iw-ch{
    padding-top: 0px !important;
}

.gm-ui-hover-effect>span{
    margin: 0px !important;
    background-color: transparent !important;
}

.gm-style button.gm-ui-hover-effect img {
    display: none !important;
}
.gm-style button.gm-ui-hover-effect:after {
    content: "+";
    color: #fff;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    line-height: 33px;
    font-size: 27px;
    transform: rotate(45deg);
}
.gmap-info {
    display: none;
}
.insta-transparent-bg {
    display: none;
}
.col-6.footer-cta-desc {
    padding-top: 125px;
    padding-bottom: 75px;
}
.footer-cta-bg img {
    height: 100%;
    object-fit: cover;
    display: block;
    object-position: center;
}
section.site-footer {
    background: #f7f7f7;
}

.social-bar ul.social-links {
    display: block;
    margin: 0;
    font-size: 0;
    text-align: left;
    margin-top: 10px;
}
.social-bar ul.social-links li.social-icon {
    width: 30px;
    height: 30px;
    display: inline-block;
    margin: 10px;
    position: relative;
    border-radius: 50%;
}
.social-bar ul.social-links li.social-icon a {
    position: absolute;
    text-align: center;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    border-radius: 50%;
    background: #fff
}
.social-bar ul.social-links li.social-icon a:after {
    position: absolute;
    content: "\f09a";
    font-family: fontawesome;
    width: 100%;
    height: 100%;
    left: 0;
    line-height: 30px;
    font-size: 17px;
    top: 0;
}
/*
.footer-social.social-bar ul.social-links li.social-icon a:after {
    line-height: 40px;
    font-size: 24px;
}
*/
.social-bar ul.social-links li.social-icon.twitter a:after {
    content: "\f099";
}

.social-bar ul.social-links li.social-icon.linkedin a:after {
    content: "\f0e1";
}

.social-bar ul.social-links li.social-icon.instagram a:after {
    content: "\f16d";
}

.social-bar ul.social-links li.social-icon.youtube a:after {
    content: "\f16a";
}
.social-bar ul.social-links li.social-icon:first-child {
    margin-left: 0;
}

.footer-logo {
    margin: 0 0 25px;
}
.footer-address {
    font-size: 18px;
    line-height: 1.75;
    padding: 30px 60px;
}
.footer-address, .footer-menu {
    display: flex;
    flex-flow: column;
    justify-content: flex-end;
}
.footer-address .contact a {
    display: block;
}
    ul.footer-menu-wraper {
    font-size: 0;
}
.footer-bottom {
    margin-top: 40px;
}

ul.footer-menu-wraper li.footer-menu-item {
    font-size: 18px;
    font-weight: 700;
    line-height: 1.75;
    display: inline-block;
    width: auto;
    padding-right: 50px;
}
.footer-lower {
    background: #969696;
    padding: 25px 100px;
}
.footer-cta{
    position: relative;
}
.ctaimg-wrap {
    width: 90%;
    height: 100%;
    position: relative;
}

.property-icons {
    float: right;
    width: auto;
    vertical-align: middle;
    padding: 10px 0;
    margin-left: 10px;
}
.copyright-area {
    display: block;
    vertical-align: middle;
    float: left;
    padding: 8.5px 0;
}
ul.property-icons-list {
    margin: 0;
}
.property-icons li.single-prop-icon {
    display: inline-block;
    width: 30px;
    margin: 0 4px;
    vertical-align: middle;
}
.property-icons li.single-prop-icon img {
    width: 100%;
    height: auto;
}
.copyright-area {
    display: block;
    vertical-align: middle;
}
.copyright-text {
    display: inline-block;
    width: auto;
    vertical-align: middle;
}
.copyright-text p {
    margin: 0;
    font-size: 18px;
    margin-right: 10px;
    font-weight: 500;
}
ul.policy-nav {
    display: inline-block;
    width: auto;
    vertical-align: middle;
    margin: 0;
}
ul.policy-nav li {
    display: inline-block;
    vertical-align: middle;
    padding: 0 10px;
    position: relative;
    font-size: 18px;
}
ul.policy-nav li:after {
    content: "";
    width: 6px;
    height: 0;
    border-bottom: 6px solid;
    position: absolute;
    border-radius: 50%;
    top: 50%;
    margin-top: -3px;
    left: -5px;
}
a.cb-logo-link {
    display: inline-block;
    vertical-align: middle;
    margin-left: 15px;
}

.attribution {
    float: right;
}

a.scroll-trigger {
    display: none;
}
body.home a.scroll-trigger {
    display: block;
    position: absolute;
    width: 30px;
    height: 30px;
    border-right: 4px solid;
    z-index: 99;
    bottom: 18px;
    left: 50%;
    transform: translateX(-50%) rotate( 
45deg
 );
    border-radius: 4px;
    border-bottom: 4px solid;
}

.walkscore-info {
    display: none;
}




/*===== Amenities Page =====*/
section.inner-page-banner {
    display: flex;
    flex-flow: wrap;
    z-index: 99;
    background: #fff;
        background-size: cover;
    background-position: center;
}
section.inner-page-banner:before {
    content: "";
    background: #000;
    opacity: 0.25;
    position: absolute;
    height: 100%;
    left: 0;
    top: 0;
    width: 100%;
}
.inner-banner-content {
    height: auto;
    padding: 130px 60px;
    min-height: 40vw;
    display: flex;
    flex-flow: column;
    justify-content: center;
        position: relative;
}
.inner-banner-content .subcol.to-left {
    height: auto;
    min-height: 100vh;
    display: flex;
    flex-flow: column;
    padding-bottom: 30vh;
    justify-content: center;
    text-align: center;
}

body.page-template-page-amenities .inner-banner-content .subcol.to-left:before{
    display: none;
}
body.page-template-page-amenities .inner-banner-content .subcol.to-left:after{
    left: 0;
    bottom: 0;
}
.subcol.to-left {
    padding-left: calc(50% - 800px);
    padding: 70px;
}
h1.inner-page-title {
    font-size: 64px;
    margin: 0;
    line-height: 1.5;
    position: relative;
    padding-bottom: 20px;
    font-weight: 400;
}

.inner-banner-logo > img {
    position: absolute;
    height: 100%;
    top: 0;
    right: 0;
    width: 60%;
    object-fit: cover;
    object-position: top left;
    opacity: 0.15;
}

.inner-banner-bg {
    background-size: cover;
    background-position: center center;
    position: relative;
}
.inner-banner-bg:before {
    left: 15%;
    bottom: 150px;
}
body:not(.home) section.page-section.intro-type-1:before,
body:not(.home) section.page-section.intro-type-2:before {
    width: 7vw;
    content: "";
    height: 25%;
    top: 0;
    left: 0;
    position: absolute;
    z-index: 10;
}

.page-template-page-amenities section.page-section.amenities-box {
    padding: 60px 0;
        padding-left: 10vw;
}
.page-template-page-amenities section.page-section.amenities-box.col-reverse {
    padding-left: 0;
    padding-right: 10vw;
}
.page-template-page-amenities section.page-section.amenities-box .container-full {
    padding-top: 100px;
}

.page-template-page-amenities .inner-page-banner + section.page-section + section.page-section + section.page-section.amenities-box .col-6.amenity-list-col{
    padding: 80px 45px;
}

section.page-section.amenities-box .col-6.amnety-image {
    margin-left: -8.33%;
}

section.page-section.amenities-box.col-reverse .col-6.amnety-image {
    margin-right: -8.33%;
    margin-left: 0;
    z-index: 9;
}
section.page-section.amenities-box .amenity-list-col {
    padding-right: 8.33%;
    margin-top: 20px;
    margin-bottom: 60px;
        position: relative;
}
section.page-section.amenities-box.col-reverse .amenity-list-col {
    padding-right: 0;
    padding-left: 8.33%;    
}
.amenity-list-col .subcol.to-right {
    padding: 60px;
    position: relative;
}
.page-section .col-bg img {
    height: 100%;
    display: block;
    object-fit: cover;
}
.col-reverse .amnety-image .col-bg {
    left: 0;
    right: auto;
}
.amenity-list-col ul.amenities-grid {
    padding: 0;
}

.col-6.site-cta-desc {
    padding-top: 300px;
    padding-bottom: 50px;
}
.special-cta-img {
    height: 30vw;
}
.special-cta-img img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center center;
}
.special-cta .section-clip {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background: #f0f0f0;
}
.special-cta .subcol.to-right {
    padding-top: 75px;
    padding-bottom: 75px;
    padding-left: 100px;    
}

section.page-section.special-cta {
    padding-top: 100px;
    background: #fff;
}

section.page-section.special-cta .section-btns {
    margin-top: 40px;
}

section.intro-type-2 .container {
    text-align: center;
    max-width: 1020px;
}
section.page-section.intro-type-2 {
    padding-top: 90px;
    padding-bottom: 90px;
    text-align: center;
    background-color: #FAFAFA;
}
section.page-section.intro-type-2 h2.section-title::after {
    left: 50%;
    margin-left: -38px;
}
section.floorplan-filters {
    width: 100%;
    margin-top: 30px;
    height: auto;
}
section.floorplan-filters.fixed {
    top: auto !important;
    position: relative !important;
    z-index: inherit !important;
}
section.floorplans-listing {
    padding-top: 0 !important;
    margin-top: 20px;
    margin-bottom: 70px;
    width: 100%;
}

.flp-listing .single-floorplan {
    padding: 0 25px;
    width: 50%;
    margin-bottom: 75px;
}
.single-floorplan .floorplan-inner {
    padding: 0;
    font-size: 0;
    display: flex;
    flex-flow: wrap;
}
.floorplan-filters select.flp-bedrooms, .floorplan-filters select {
    background-image: url(img/chevron-down.svg) !important;
}
.flp-slide-in.active {
    z-index: 99999 !important;
}
.floorplan-filters select.flp-bedrooms {
    margin: 10px 0 0;
    width: 100%;
    box-shadow: none;
    border-bottom: 5px solid;
    padding: 18px;
    height: auto;
}
.floorplan-filters h4, .floorplan-filters h2 {
    display: block;
    text-transform: none;
    font-size: 24px;
    margin-bottom: 10px;
    font-weight: 400;
}
.flp-price-range span.sf-range-values-seperator {
    display: none;
}
.flp-price-range select.flp-max-price {
    display: none;
}
input.flp-date {
    width: 100%;
    line-height: 54px;
    border: none;
    border-bottom: 5px solid #007c8f;
    color: #000;
    font-size: 24px;
}
.floorplan-filters.new-ver .container {
    font-size: 0;
}
.floorplan-filters .single-filter {
    display: inline-block;
    vertical-align: middle;
    width: 20%;
    padding: 0 40px;
        font-size: 0;
	margin: 0;
}
.floorplan-filters .single-filter.small {
    width: 15%;
}
.floorplan-filters select {
    min-width: calc(50% - 24px);
    margin: 10px 0 0;
    box-shadow: none;
    border-bottom: 5px solid;
    padding: 18px;
    height: auto;
}
span.sf-range-values-seperator {
    display: inline-block;
    vertical-align: middle;
    margin: 0 15px;
    width: 15px;
    height: 15px;
    border-top: 3px solid;
    border-right: 3px solid;
    transform: rotate(
45deg
);
}
.flp-top {
    padding: 20px 20px 60px;
    position: relative;
    width: 50%;
}
.flp-top .flp-img {
    height: 280px;
    margin: 0;
}
.single-floorplan.date-no-match {
	display:none;
}
.flp-swaps {
    position: absolute;
    width: auto;
    left: 50%;
    bottom: 0;
    font-size: 0;
    z-index: 9;
    transform: translateX(-50%);
    padding: 5px;
    border-radius: 50px;
    background: #DDDDDD;
}
.flp-swaps a {
    display: inline-block;
    padding: 0;
    font-size: 20px;
    font-weight: 700;
    line-height: 45px;
    width: 45px;
    text-align: center;
    border-radius: 50%;
}

.flp-header-l {
    width: 100%;
    flex-grow: 1;
    padding: 25px;
}
.flp-ctas a {
    margin: 0 20px;
}
.single-flp-info span {
    font-size: 18px;
    line-height: 1.6;
}
.flp-header-r {
    display: block;
    width: 100%;
}
.flp-header-r .price-box {
    padding: 0;
    font-size: 18px;
    text-align: left;
    line-height: 1.6;
        border: none;
        font-weight: 700;
}
.flp-header-r .price-box span {
    font-weight: 400;
    display: inline-block;
    margin: 0;
    font-size: 18px;
}
body .flp-header {
    padding: 0;
    position: relative;
    width: 50%;
    display: flex;
    flex-flow: column;
}

.flp-ctas a.cb-btn {
    margin-top: 15px;
    vertical-align: top;
    padding: 12px 25px;
    width: auto;
    min-width: 138px; 
}
section.page-section.dynamic-mb-map {
    display: flex;
    flex-flow: wrap;
    padding-bottom: 150px;
    padding-top: 0;
}
.nb-places-list h2.section-title {
    margin-bottom: 40px;
}
ul.nb-places-ul li a:hover {
    opacity: 0.75;
}
div#nbp-filter-options .container {
    padding: 0;
    text-align: center;
}

div#nbp-filter-options .container a.nb-map-filter {
    width: auto;
    text-align: center;
    font-size: 22px;
    line-height: 2;
    font-weight: 400;
    cursor: pointer;
    padding: 40px;
    margin: 0;
    position: relative;
    display: inline-block;
        padding-bottom: 30px;
}
div#nbp-filter-options .container a.nb-map-filter.active {
    border-bottom: 10px solid;
}

div#nbp-filter-options .container a.nb-map-filter label {
    display: block;
    cursor: pointer;
}

.nbp-fliter-dropdown {
    display: none;
}
.map-filters-box {
    display: flex;
    flex-flow: wrap;
    padding: 0;
    width: 100%;
}
div#nbp-filter-options {
    width: 100%;
}
div#map-canvas {
    width: 50%;
    min-height: 500px;
    height: auto;
}

.nbp-filter-places {
    width: 50%;
    display: flex;
    flex-flow: column;
    justify-content: center;
    padding: 50px 25px;
}

ul.nb-places-ul {
    font-size: 0;
}
.walk-score-section .col-12 {
    padding: 0;
    font-size: 0;
}
.walk-score-section .col-12 h2.section-title {
    text-align: center;
}   
.nb-scores {
    width: 50%;
    font-size: 45px;
    display: inline-block;
    text-align: center;
    padding: 70px 0 50px;
    margin-top: 0;
}

.score-inner {
    font-size: 300px;
    font-weight: 700;
}
section.gallery-tabs-header {
    text-align: center;
}
.page-template-page-gallery .gallery-tabs-outer li {
    padding: 20px;
}
.gallery-tabs-outer li.tab-link a {
    width: 100%;
    text-align: center;
    font-size: 20px;
    line-height: 2;
    font-weight: 700;
    cursor: pointer;
    display: block;
}
/*
.page-template-page-gallery li.tab-link.current a {
    border-bottom: 2px solid;
}
*/
.gallery-tabs-outer ul.ct-tabs {
    display: flex;
}
.gallery-tabs-outer ul.ct-tabs li {
    width: 100%;
}
.gallery-tabs-outer ul.ct-tabs {
    display: flex;
    width: auto;
    max-width: 700px;
    margin: 30px auto 0;
    padding: 0;
}
.gallery-tabs-outer ul.ct-tabs li.tab-link {
    position: relative;
}
.gallery-tabs-outer ul.ct-tabs li.tab-link.current:after {
    position: absolute;
    content: "";
    width: 100%;
    height: 10px;
    left: 0;
    bottom: 0;
}
.mfp-arrow:before {
    opacity: 0 !important;
}
section.page-section.gallery-section .tab-content {
    padding-top: 0;
}
ul.nb-places-ul li {
    display: inline-block;
    font-size: 18px;
    width: 50%;
    margin-bottom: 15px;
    line-height: 1.25;
    font-weight: 700;
    padding-right: 25px;
    float: left;
}
.gallery-section li.modular-image-container {
    width: 33.33%;
    display: inline-block;
    height: 25vw;
    overflow: hidden;
        float: left;
}
.gallery-section ul.modular-gallery-ul {
    font-size: 0;
}
.gallery-section li.modular-image-container img {
    height: 100%;
    display: block;
    width: 100%;
    object-fit: cover;
    object-position: center center;
    transition: all 0.5s ease 0s;
}
.gallery-section li.modular-image-container:hover img {
    transform: scale(1.1);
}
.page-template-page-gallery .gallery-grid-modular:after {
    display: none;
}
.Contact-page-logo {
    margin-bottom: 30px;
}
.Contact-page-logo > img {
    width: auto;
    max-width: 250px;
    height: auto;
    display: block;
    margin: 0;
}
.contact-page-desc, .contact-hours-desc {
    float: left;
    width: 50%;
}

.daily-hours {
    margin-bottom: 15px;
    font-size: 20px;
}
.daily-hours span {
    font-weight: 700;
}
.single-resident-section {
    background: #F2F2F2;
    padding: 40px;
}
.single-resident-section {
    padding: 40px;
    width: calc(50% - 60px);
    margin: 0 30px 60px;
    height: auto;
    border: 3px solid;
    background: #fff;
    position: relative;
}
.single-resident-section:before {
    content: "";
    background-image: url(https://alexa-staging.beswifty.com/wp-content/uploads/2021/04/TheAlexa_IconOnly_Color_Modified.svg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: right top;
    width: 40%;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    opacity: 0.15;
}
body section.resident-sections {
    max-width: 100%;
    padding-bottom: 50px;
}
h2.resident-section-title {
    font-size: 35px;
    font-weight: 700;
    text-transform: none;
    line-height: 1.5;
    padding: 0;
    margin-bottom: 10px;
}
h3.resident-section-subtitle {
    padding: 0;
    margin: 0;
    line-height: 1.5;
    font-size: 18px;
    font-weight: 400;
}
h2.resident-section-title:after {
    display: none;
}
.resident-section-content {
    display: block;
}
.single-resident-section:after {
    content: "\f054";
    font-family: fontawesome;
    font-weight: 400;
    font-size: 50px;
    margin-left: 0;
    position: absolute;
    right: 65px;
    line-height: 1;
    top: 50%;
    transform: translateY(-50%);
}

section.faq-wrap{
    position: relative;
    padding-bottom: 100px;
    padding-top: 60px;
}
section.faq-wrap:after {
    width: 7vw;
    content: "";
    height: 100%;
    top: 0;
    left: 0;
    position: absolute;
    z-index: 9;
}
dl.accordion {
    margin: 0;
}
section.faq-wrap .container {
    max-width: 1440px;
    padding-left: 100px;
}
.accordion dt a {
    display: block;
    border-top:1px solid #cdcdcd;
    font-size: 30px;
    padding: 25px 50px;
    position: relative;
}
.accordion dt:first-child a {
    border-top: none;
}
.accordion-hr {
    margin-bottom: 0px;
}
.accordion dt a:after {
    position: absolute;
    content: "";
    width: 30px;
    height: 0;
    top: 50%;
    left: 0;
    font-size: 60px;
    line-height: 85px;
    text-align: center;
    border-bottom: 5px solid;
    transform: translateY(-50%);
}
.accordion dt a:before {
    position: absolute;
    content: "";
    width: 0;
    height: 30px;
    top: 50%;
    left: 0;
    font-size: 60px;
    line-height: 85px;
    text-align: center;
    border-right: 5px solid;
    transform: translateY(-50%);
    margin-left: 12.5px;
    transition: all 0.5s ease 0s;
}
.accordion dt a.active:before {
    transform: translateY(-50%) rotate(
90deg
);
}

.accordion dd {
    font-size: 19px;
    margin-top: 0;
    line-height: 2;
    margin-bottom: 40px;
    padding: 0 50px;
}
span.faq-heading {
    display: block;
    font-weight: 700;
}
.single-resource {
    width: calc(33.33% - 40px);
    margin: 0 20px 35px;
    padding: 30px 40px;
    border: 2px solid;
    
}
.single-resource > * {
    display: block;
}
/*
.page-template-page-faq .page-content, .page-template-page-resources .page-content {
    padding-bottom: 100px;
}
*/
section.page-section.walk-score-section {
    padding-top: 200px;
}
.map-outer {
    position: relative;
}
.map-outer:before {
    position: absolute;
    content: "";
    background: #ededed;
    width: 100%;
    height: 300px;
    bottom: 0;
}
.map-outer section#footer-google-map {
    margin-bottom: 0;
}

.flp-top .flp-img > div img {
    opacity: 1;
    height: 100%;
    padding: 15px;
    object-fit: contain;
    object-position: center center;
}
.floorplan-inner a.download-flp {
    font-size: 15px;
    margin: 20px 0 0;
    font-weight: 700;
    text-align: left;
}
.walkscore-wrapper .container {
    display: flex;
    flex-flow: wrap;
}
.walkscore-wrapper {
    position: relative;
}
.walkscore-wrapper .wave {
    position: absolute;
    width: 120%;
    left: -10%;
    bottom: 50px;
    opacity: 0.5;
}
.walkscore-wrapper img.ghost-logo {
    right: -8%;
}
.walkscore-wrapper h2.section-title {
    text-align: center;
    width: 100%;
}
section.gallery-tabs-header h2.section-title::after {
    left: 50%;
    margin-left: -37.5px;
}
section.page-section.gallery-section {
    padding-bottom: 90px;
        padding-top: 5px;
}
.contact-page-info h3, .contact-page-info h5 {
    font-weight: 400;
    font-size: 27px;
    line-height: 1.5;
    margin: 20px 0;
}
svg.half-circle-svg {
    position: absolute;
    z-index: 9;
    width: 18%;
    left: 55%;
    bottom: -90px;
}
section#home-floorplans + div#amenities + section.home-amenities-section:before {
    content: "";
    width: 18%;
    height: 4px;
    position: absolute;
    top: 0;
    z-index: 9;
    left: 15%;
    transform: rotate(45deg);
}
svg.half-rectangle {
    width: 20%;
    position: absolute;
    top: -100px;
    z-index: 99;
    left: 45%;
}
section.page-section.home-3-ctas:before {
    content: "";
    width: 3px;
    height: 300px;
    position: absolute;
    top: 0;
    z-index: 99;
    left: 30%;
}
.relative-wrapper {
    position: relative;
}
svg.half-circle-svg.rotate-180 {
    transform: rotate(180deg);
    width: 15%;
}
.page-template-page-amenities .intro-type-1 + section.page-section.amenities-box:before {
    content: "";
    width: 460px;
    height: 4px;
    position: absolute;
    top: 0;
    z-index: 99;
    left: 30%;
    transform: rotate( 45deg );
}
svg.half-circle-svg.ab-connector {
    width: 25%;
    left: 55%;
    bottom: -160px;
    z-index: 12;
}
.page-template-page-amenities .inner-page-banner + section.page-section + section.page-section svg.half-circle-svg.to-bottom.ab-connector {
    bottom: -50px;
}
section.page-section.special-cta:before {
    content: "";
    width: 3px;
    height: 300px;
    position: absolute;
    top: -60px;
    left: 75%;
}
.resources-wrap{
    position: relative;
}
.resources-wrap:before{
    width: 7vw;
    content: "";
    height: 100%;
    top: 0;
    left: 0;
    position: absolute;
    z-index: 9;
}

body .single-resource-header h3{
    position: relative;
    padding-top: 30px;
    font-size: 30px;
}
body .single-resource-header h3:before{
    content: "";
    border-top: 12px solid;
    width: 75px;
    position: absolute;
    left: 0;
    top: 0;
}
.single-resource-content {
    padding: 0 0 25px;
}
.resources-intro{
    padding-bottom: 0px;
}
.single-resource-header{
    padding: 0;
}
.flp-slider-counter {
    position: absolute;
    bottom: 28px;
    font-size: 20px;
    font-weight: 700;
    left: 50%;
    transform: translateX(-50%);
}
div#gallery-grid-slider .slick-slider button.slide-arrow {
    position: absolute;
    top: -87px;
    left: calc(50% - 100px);
}
div#gallery-grid-slider .slick-slider button.slide-arrow.next-arrow {
    left: calc(50% + 80px);
}
.gallery-slider-counter {
    font-size: 27px;
    text-align: center;
    position: relative;
    font-weight: 700;
    margin: 0 0 70px;
}

section.page-section.flp-listing-section {
    display: flex;
    flex-flow: wrap;
}

a.cb-btn.type-10 {
    background: transparent;
    border: 2px solid #fff;
    padding: 11px 30px;
}
a.cb-btn.type-10:hover {
    color: #000;
    background: #fff;
}
svg.map-section-svg {
    position: absolute;
    z-index: 9;
    height: 13vw;
    width: 100%;
    transform: rotate(180deg) scale(-1, 1);
}
svg.footer-cta-svg {
    position: absolute;
    width: 100%;
    bottom: 0;
    left: 0;
}
.footer-menu {
    padding: 60px 60px 40px;
    justify-content: space-between;
}


.wave {
    width: 100%;
    height: 25vw;
    margin: 0;
    overflow: hidden;
}

.wave-brown-element {
/*
    -webkit-animation:oscill 1s ease-in-out infinite alternate; 
    -moz-animation:oscill 1s ease-in-out infinite alternate; 
    -ms-animation:oscill 1s ease-in-out infinite alternate; 
*/
    animation:oscill 3s ease-in-out infinite alternate; 
    background: url('img/wave-brown.svg');
    background-size: cover;
    background-position: center center;
    position:relative;
    height:100%;
    width:8px;
    display:inline-block;
    opacity: 0;
    transform-origin: left;
}

.wave-white-element {
/*
    -webkit-animation:oscill 1s ease-in-out infinite alternate; 
    -moz-animation:oscill 1s ease-in-out infinite alternate; 
    -ms-animation:oscill 1s ease-in-out infinite alternate; 
*/
    animation:oscill 3s ease-in-out infinite alternate; 
    background: url('img/wave-white.svg');
    background-size: cover;
    background-position: center center;
    position:relative;
    height:100%;
    width:8px;
    display:inline-block;
    opacity: 0;
    transform-origin: left;
}


section.page-section.intro-type-1 .wave.brown-wave {
    position: absolute;
    bottom: 0;
    height: calc(25vw + 100px);
    padding: 50px 0;
    opacity: 0.5;
}
section.home-gallery .wave {
    position: absolute;
    top: -1%;
    left: -20%;
    width: 140%;
    height: calc(30vw + 50px);
    padding: 0 0 50px;
    opacity: 0.5;
}
img.ghost-logo {
    position: absolute;
    top: 0;
    right: -26%;
    width: auto;
    height: 100%;
    object-fit: cover;
    object-position: top center;
    opacity: 0.04;
}
.footer-cta img.ghost-logo {
    height: 110%;
    top: -10%;
    right: -15%;
}
.inner-page-banner .multiply-overlay {
    position: absolute;
    width: 72.3%;
    top: 0;
    left: 0;
    height: 100%;
    mix-blend-mode: multiply;
    clip-path: polygon(0 0, 0 100%, calc(76.3%) 100%, 100% 0);
    opacity: 0.6;
}
section.page-section.intro-type-1 .col-bg {
    height: 0;
    width: 120%;
    left: -20%;
    padding-bottom: 120%;
    position: relative;
        border-radius: 50%;
    overflow: hidden;
    margin-bottom: -150px;
}
section.page-section.intro-type-1 .col-bg img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-position: right;
}
.amenities-box .col-bg {
    -webkit-mask: url(img/mask-png.png);
    -webkit-mask-size: 105% auto;
    -webkit-mask-position: bottom center;
}
.amenity-list-col .wave {
    position: absolute;
    opacity: 0.5;
    height: 100%;
    width: 130%;
    left: -15%;
}
.special-cta img.ghost-logo {
    right: -15%;
}
svg.nb-map-bottom {
    position: absolute;
    bottom: 45px;
    z-index: 9;
    width: 50%;
}
section.page-section.gallery-tabs-header {
    padding-top: 75px;
}   
.gallery-section li.modular-image-container:nth-child(9n + 1), .gallery-section li.modular-image-container:nth-child(9n + 2), .gallery-section li.modular-image-container:nth-child(9n + 4), .gallery-section li.modular-image-container:nth-child(9n + 5) {
    width: 25%;
}
.gallery-section li.modular-image-container:nth-child(9n + 3) {
    width: 50%;
}
.gallery-section li.modular-image-container:nth-child(9n + 6) {
    width: 25%;
    height: 50vw;
}
.gallery-section li.modular-image-container:nth-child(9n + 7), .gallery-section li.modular-image-container:nth-child(9n + 8) {
    width: 25%;
    float: right;
}
.gallery-section li.modular-image-container:nth-child(9n + 9) {
    width: 50%;
    float: left;
    margin-top: -25vw;
}
.page-template-page-contact section.page-section.amenities-box {
    padding-right: 10vw;
    padding-top: 100px;
    padding-bottom: 0;
    margin-bottom: -90px;
}
.page-template-page-contact section.page-section.amenities-box:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 50%;
    background: #fafafa;
    top: 0;
}
.page-template-page-contact section.page-section.amenities-box + .inner-page-form .form-subcol {
    padding-top: 100px;
}
span.tab-trigger {
    position: absolute;
    width: 80px;
    height: 70px;
    z-index: 99;
    right: -80px;
    top: 50%;
        transition: all 0.5s ease 0s;
}
span.tab-trigger .trigger-symbol {
    width: 25px;
    height: 25px;
    border-top: 5px solid;
    border-radius: 3px;
    border-right: 5px solid;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translateX(-50%) translateY(-50%) rotate(45deg);
    margin-left: -6px;
    transition: all 0.5s ease 0s;
}
.second-tab span.tab-trigger {
    right: auto;
    left: -80px;
    transform: rotate(
180deg
);
}
li.first-tab.tab-link.current span.tab-trigger {
    right: 0;
}
li.second-tab.tab-link.current span.tab-trigger {
    left: 0;
}


.flp-slider-outer {
    position: relative;
}
a.flp-details-trigger.cb-btn {
    margin-right: 0;
}
.footer-cta .footer-cta-content {
    margin-bottom: 100px;
}
body.home header:not(.fixed) a.cb-btn.type-11 {
    color: #fff;
    border-color: #fff;
}
section.page-section.form-section .wave {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 110%;
    height: calc(25vw + 100px);
    padding: 50px 0;
    opacity: 0.5;
    left: -10%;
}

.reset-new-flp-filtrers a.cb-btn {
    margin-top: 68px;
}

body .mfp-bg {
    z-index: 99998;
}
body .mfp-wrap {
    z-index: 99999;
}

.main-menu-panel .big-logo img {
    width: auto;
    height: 45px;
}
.main-menu-panel a.top-contact-no {
    text-align: center;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.5;
    display: block;
    margin-top: 20px;
    padding-top: 30px;
    border-top: 1px solid #fff;
}
.main-menu-panel a.top-contact-no span {
    display: block;
    font-weight: 400;
}
.main-menu-panel .header-cta {
    height: auto;
    text-align: center;
        font-size: 0;
}
.main-menu-panel .header-cta a.cb-btn {
    width: calc(50% - 20px);
    min-width: 50px;
    padding: 12px 15px;
}
.main-menu-panel .header-cta a.cb-btn.type-11 {
    color: #fff;
    border-color: #fff;
    padding: 10px 15px;
}

.phase-selector {
    text-align: center;
    margin-bottom: 20px;
}
a.phase-trigger {
    border: 2px solid #af5918;
    display: inline-block;
    padding: 10px 30px;
    margin: 0 10px;
    color: #af5918;
}
a.phase-trigger.active {
    background: #af5918;
    color: #fff;
}
.external-phase-wrapper {
    position: absolute;
    width: 100%;
    height: calc(100% - 60px);
    left: 0;
    top: 60px;
    visibility: hidden;
    z-index: -1;
    opacity: 0;
}
.swifty-sitemap-wrapper.inactive {
    z-index: 9;
    position: relative;
    visibility: hidden;
    opacity: 0;
}
.external-phase-wrapper.active {
    visibility: visible;
    z-index: 9;
    opacity: 1;
}
.external-phase-wrapper .epw-inner {
    height: 100%;
}


.external-phase-wrapper .epw-inner iframe.epw-frame {
    width: 100%;
    border: none;
    height: 100%;
    overflow: hidden;
}













@keyframes oscill {
    0% {
        transform: translateY(4%);
        opacity: 1;
    }        
    100% {
        transform: translateY(-4%);
        opacity: 1;
    }
}