/*
Theme Name: skyline
Theme URI: https://theroom10.com/
Author: TheRoom1.0 & 24studio
Author URI: https://theroom10.com/
Description: Wordpress template for 24studio's Skyline project, by The Room 1.0
Version: 2019
Text Domain: skyline

skyline WordPress Theme © 2019 theRoom1.0
skyline is distributed under the terms of the GNU GPL
*/


/*@import url("responsive.css");*/

@font-face {
    font-family: 'skyline';
    src: url('fonts/skyline-light.woff2') format('woff2'), url('fonts/skyline-light.woff') format('woff');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'skyline';
    src: url('fonts/skyline-bold.woff2') format('woff2'), url('fonts/skyline-bold.woff') format('woff');
    font-weight: 700;
    font-style: normal;
}

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline
}

body {
    line-height: 1;
    font-size: 10px;
    background-color: #131313;
    color: white;
    font-family: 'skyline', skyline, Arial, Helvetica, sans-serif;
    overflow-x: hidden;
}

a {
    text-decoration-skip-ink: auto
}

a:focus {
    outline: 0;
}

button {
    outline: 0
}

ol,
ul {
    list-style: none
}

blockquote,
q {
    quotes: none
}

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: '';
    content: none
}

q {
    display: inline;
    font-style: italic
}

q:before {
    content: '"';
    font-style: normal
}

q:after {
    content: '"';
    font-style: normal
}

textarea,
input[type="text"],
input[type="button"],
input[type="submit"],
input[type="reset"],
input[type="search"],
input[type="password"] {
    -webkit-appearance: none;
    appearance: none;
    border-radius: 0
}

#loadMore {
    border: 2px solid black;
    border-radius: 2em;
    color: black;
    background-color: transparent;
    line-height: 1em;
    font-size: 1.5em;
    text-align: center;
    padding: 0.5em 1em;
    display: inline-block;
    cursor: pointer;
    margin-bottom: 4em;
    margin-top: 2em;
    font-weight: bold;
    padding-top: 0.6em;
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

th,
td {
    padding: 2px
}

big {
    font-size: 120%
}

small,
sup,
sub {
    font-size: 80%
}

sup {
    vertical-align: super
}

sub {
    vertical-align: sub
}

dd {
    margin-left: 20px
}

kbd,
tt {
    font-family: courier;
    font-size: 12px
}

ins {
    text-decoration: underline
}

del,
strike,
s {
    text-decoration: line-through
}

dt {
    font-weight: bold
}

address,
cite,
var {
    font-style: italic
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block
}

* {
    box-sizing: border-box;
    -webkit-tap-highlight-color: transparent;
    /*transition: all 0.5s ease*/
}

.sticky {}

.bypostauthor {}

.wp-caption {}

.wp-caption-text {}

.gallery-caption {}

.alignright {}

.alignleft {}

.aligncenter {}

.screen-reader-text {
    clip: rect(1px, 1px, 1px, 1px);
    position: absolute !important
}


/*-----------------------SLIDER------------------------*/

* {
    box-sizing: border-box;
}

.slider {
    background-color: #131313;
    width: 100%;
    margin: 100px auto;
}

.slick-slide img,
.slick-slide video {
    /*height: auto;
    width: 100%;
    object-fit: cover;
    max-width: none;
    min-width: 100vw;
    min-height: 100vh;*/
    width: 100%;
    object-fit: contain;
    max-width: 100vw !important;
    max-height: 100vh;
    background: #000;
}

.slick-prev {
    left: 25px;
    z-index: 1;
    -ms-transform: rotate(180deg);
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
    transform-origin: 50% 25%;
}

.slick-next {
    right: 25px;
}

.slick-next::before,
.slick-prev::before {
    content: "";
}

.slick-next,
.slick-prev {
    content: "";
    height: 50px;
    width: 25px;
    background-image: url('img/slider-arrow.png');
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: center;
}

.slick-prev:hover {
    background-image: url('img/slider-arrow.png');
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: center;
}

.slick-next:focus {
    background-image: url('img/slider-arrow.png');
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: center;
}

.slick-prev:focus {
    background-image: url('img/slider-arrow.png');
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: center;
}

.slick-next {
    background-image: url('img/slider-arrow.png');
}

.slick-next:hover {
    background-image: url('img/slider-arrow.png');
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: center;
}

.slider-container {
    height: 100vh;
}

.slick-initialized .slick-slide {
    height: 100vh;
    width: 100vw !important;
}

.slider-container>div {
    width: 100%;
    height: 100vh;
    display: block;
    position: relative;
}

.slick-dots {
    margin-left: 4%;
    margin-bottom: 6em;
    width: 92%;
}

.slick-dots li button {
    width: 16px;
    height: 16px;
    margin: 0;
}

.slick-dotted.slick-slider {
    margin-bottom: 0;
}

.slick-dots {
    text-align: left;
}

.slick-dots li button:before {
    font-size: 10px;
    line-height: 16px;
    width: 16px;
    height: 16px;
    color: white;
    opacity: 0.4;
    margin-top: 1px;
}

.slick-dots li.slick-active button:before {
    color: white;
    opacity: 1;
}

.slick-dots li {
    margin: 0;
}

.slick-dots li.slick-active button {
    border: 1px solid white;
    border-radius: 50%;
}

html .slick-initialized .slick-slide {
    display: flex;
    vertical-align: middle;
}

#downArrowContainer {
    text-align: center;
    display: block;
    width: 100%;
    height: 0 !important;
    line-height: 0 !important;
}

#downArrow {
    text-align: center;
    position: relative;
    width: auto;
    margin: 0 auto;
    bottom: 5em;
    display: inline-block;
}

#downArrow p {
    font-size: 1em;
    line-height: 4em;
    display: inline-block;
}

#downArrow a {
    color: white;
}


/* progress bar */

.slider-progress {
    width: 100px;
    height: 4px;
    position: absolute;
    bottom: 3em;
    right: 4vw;
}

.slider-progress .back {
    width: 100%;
    height: 2px;
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 1;
    border-left: 2px solid transparent;
    box-sizing: border-box;
}

.slider-progress .back::after {
    content: "";
    background-color: white;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.slider-progress .progress:after {
    content: "";
    background: white;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.slider-progress .progress {
    width: 0%;
    height: 4px;
    border-right: 2px solid transparent;
    position: relative;
    z-index: 2;
}

#sliderContainer h2 {
    margin-bottom: 0.5em;
}

.slick-slide .info {
    position: absolute;
    left: 10%;
    right: 10%;
    bottom: 4%;
    color: #fff;
}

.slick-slide span {
    font-weight: 700;
    font-size: 2.5em;
    display: block;
    border-bottom: 1px solid #fff;
    padding: 0 0 .4em;
    margin: 0 0 .5em;
}

.slick-slide h2 {
    font-weight: 400;
    font-size: 1.5em;
    display: block;
}

#albumSelector {
    height: 100vh;
    width: 100%;
    overflow: hidden;
    /*display: flex;
    flex-direction: row;*/
    background: #000;
    position: relative;
}

#exteriors,
#interiors {
    width: 50%;
    height: 100vh;
    left: 0;
    position: absolute;
    overflow: hidden;
    -webkit-transition: all .8s;
    transition: all .8s;
}

#interiors {
    left: unset;
    right: 0;
}

#albumSelector .slick-slider {
    height: 100%;
    left: 0;
    width: 100vw;
}

.albumTitle {
    position: absolute;
    top: 50%;
    left: 10%;
    transform: translateY(-50%);
    color: #fff;
    font-weight: 700;
    font-size: 3em;
    z-index: 1;
}

#albumSelector>div {
    -webkit-transition: all .8s;
    transition: all .8s;
}

#albumSelector>div.default {
    cursor: pointer;
}

#albumSelector>div .slick-slide img,
#albumSelector>div .slick-slide video {
    height: auto;
    width: 100%;
    -webkit-transition: all .8s;
    transition: all .8s;
}

#albumSelector>div.default .slick-slide img,
#albumSelector>div.default .slick-slide video {
    object-fit: cover;
    height: 100%;
}

#albumSelector>div:not(.open) .info,
#albumSelector>div.open .albumTitle {
    opacity: 0;
    -webkit-transition: all ease-out .8s;
    transition: all ease-out .8s;
}

#albumSelector>div:not(.open) button {
    display: none !important;
    -webkit-transition: all .8s;
    transition: all .8s;
}

#albumSelector>div.open {
    width: 100%;
}

#albumSelector>div.closed {
    width: 0;
}

#albumSelector>div .slick-track {
    -webkit-transition: all ease-out .8s;
    transition: all ease-out .8s;
    width: 100%;
}

#albumSelector>div.open .slick-track {
    /*width: 100% !important;*/
}


/*-----------------------END SLIDER------------------------*/


/*-----------------------HEADER------------------------*/

header#header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100vh;
    z-index: 19;
    overflow: hidden;
    -webkit-transition: all ease-in .5s;
    transition: all ease-in .5s;
}

header#header.open {
    bottom: 0;
    background: #000;
}

header#header.closed {
    top: 0;
    height: auto;
}

header#header .wrapper {
    position: relative;
    z-index: 2;
}

#menu-bgs:before,
.header:before,
.page-template-green-spaces #topContainerImg:before,
.page-template-residences #topContainerImg:before,
.page-template-default #container:before {
    background: -moz-linear-gradient(top, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 100%);
    background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 100%);
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 100%);
    filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#80000000', endColorstr='#00000000', GradientType=0);
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 50%;
    width: 100%;
    z-index: 0;
    pointer-events: none;
}

.page-template-green-spaces .mapItem p {
    right: calc(-15vw - 1em);
    width: 15vw;
}

.page-template-green-spaces .mapItem p span {
    display: block;
    font-size: 0.8em;
}

.page-template-green-spaces .mapItem p span img {
    width: 1em;
    height: 1em !important;
    vertical-align: middle;
}

.page-template-green-spaces .mapItem p span img:last-of-type {
    margin-left: 1em;
}

#menu-bgs:before {
    position: fixed;
    z-index: 1;
    height: 25%;
}

#menu {
    position: fixed;
    height: 100vh;
    z-index: 0;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 8% 10% 4%;
    overflow: hidden;
    -webkit-transition: all ease-in .5s;
    transition: all ease-in .5s;
}

#menu.closed {
    max-height: 0vh;
    padding-top: 0;
    padding-bottom: 0;
}

#menu.open {
    max-height: 100vh;
}

#menu-bgs {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    overflow: hidden;
    pointer-events: none;
}

#menu-bgs>div {
    position: absolute;
    z-index: 0;
    top: 50%;
    left: 50%;
    width: 100vw;
    height: 100vh;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    opacity: 0;
    -webkit-transition: all .8s;
    transition: all .8s;
}

#bg01,
#bg02,
#bg03,
#bg04,
#bg05,
#bg06 {
    background: url() no-repeat center center transparent;
    background-size: cover;
}

#bg01 {
    background-image: url(img/bg-home-01.jpg)
}

#bg02 {
    background-image: url(img/bg-home-02.jpg)
}

#bg03 {
    background-image: url(img/bg-home-03.jpg)
}

#bg04 {
    background-image: url(img/bg-home-04.jpg)
}

#bg05 {
    background-image: url(img/bg-home-05.jpg)
}

#bg06 {
    background-image: url(img/bg-home-06.jpg)
}

#menu-bgs>div img {
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    object-fit: cover;
}

#home-bg-video {
    position: absolute;
    z-index: 0;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    min-width: 100%;
    min-height: 100%;
}

#branding {
    padding-top: 3vw;
    padding-top: Calc(3vh + 20px);
    pointer-events: none;
    position: fixed;
    z-index: 3;
}

#branding a {
    pointer-events: auto;
    display: inline-block;
    z-index: 1;
    position: relative;
}

#branding a h1 {
    float: left;
}

header#header h1 img {
    max-width: 100%;
    height: auto;
}

#maine-menu,
#secondary-menu,
#socialIcons,
#languageSelector {
    position: relative;
    z-index: 1;
}

#main-menu {
    margin: 20vh 2em 20vh 0;
    position: relative;
    z-index: 2;
}

#main-menu li a,
#secondary-menu li a {
    font-weight: 700;
    font-size: 3em;
    text-decoration: none;
}

.menu-item.video {
    margin-top: 1em;
    position: absolute;
    top: calc(50% - 1em);
    left: 50%;
    margin: 0;
    transform: translate(-50%, -50%);
    border-radius: 2em;
    -webkit-transition: all .8s;
    transition: all .8s;
    overflow: hidden;
    background-color: rgba(0, 0, 0, 0.7);
}

.menu-item.video svg {
    fill: #fff;
    width: 0.65em;
    height: 0.65em;
    vertical-align: middle;
    margin-bottom: 0.1em;
    margin-right: 0.25em;
    display: inline-block;
}

.menu-item.video a {
    font-size: 2em !important;
    padding-top: .35em;
    padding-bottom: .35em;
    padding-left: 1em;
    padding-right: 1em;
    cursor: pointer;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
}

ul.menu li.video:hover a {
    background: inherit;
    padding-left: 1em;
    margin-right: 0;
}

ul.menu li.menu-item.video:hover {
    background-color: rgba(0, 0, 0, 1);
    -webkit-transition: all .8s ease;
    transition: all .8s ease;
}

ul.menu li.video:hover {
    overflow: hidden;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
}

.menu-item.video a:before {
    /*content: "";*/
    width: 1em;
    height: 1em;
    background: no-repeat center center transparent;
    background-size: 100% 60%;
    background-image: url(img/slider-arrow.svg), url(img/slider-arrow.svg);
    display: inline-block;
    border-radius: 99px;
    border: 1px solid #fff;
    margin: -.35em .5em 0 0;
    vertical-align: middle;
}

#secondary-menu {
    z-index: 1;
    position: absolute;
    left: 10%;
    bottom: 8%;
}

#secondary-menu li a {
    font-size: 2em;
}

ul.menu li {
    display: inline-block;
    margin: 0 0 .75em;
    float: left;
    clear: left;
}

ul.menu li a {
    color: #fff;
    display: inline-block;
    padding: 0 .5em 0 0;
    -webkit-transition: all .8s;
    transition: all .8s;
}

ul.menu li:hover a {
    /*color: #000;*/
    background: #000;
    background: rgba(0, 0, 0, .65);
    padding-left: .5em;
    margin-right: -.5em;
    -webkit-transition: all .2s;
    transition: all .2s;
}

ul.menu li:last-child {
    margin-bottom: 0;
}

ul.menu:after {
    content: "";
    display: table;
    clear: both;
}

#socialIcons {
    position: absolute;
    right: 10%;
    top: 21vh;
    padding: 8% 0;
    margin-right: -.7em;
}

#socialIcons li {
    text-align: center;
    margin: 0 0 .5em;
}

#socialIcons li a {
    /*display: block;*/
    border-radius: 50%;
    width: 40px;
    height: 40px;
    text-align: center;
    background: rgba(0, 0, 0, 0);
    /*padding-top: .7em;*/
    -webkit-transition: all .8s;
    transition: all .8s;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

#socialIcons li:hover a {
    background: rgba(0, 0, 0, .65);
    -webkit-transition: all .2s;
    transition: all .2s;
}

#socialIcons li a img {
    filter: invert(1);
    height: 2em;
    width: auto;
    max-width: 2em;
    margin: 0 auto;
}

#languageSelector {
    font-size: 1em;
    text-transform: none;
    color: #fff;
    position: absolute;
    right: 10%;
    bottom: 8%;
    height: 0;
}

#languageSelector li {
    display: inline-block;
    color: #fff;
    transform-origin: 100% 0;
    -webkit-transform: rotateZ(90deg);
    transform: rotateZ(90deg);
    font-size: 1.5em;
}

#languageSelector li a {
    padding: 0 0 0 .5em;
    text-decoration: none;
    font-weight: 700;
}

#languageSelector li:hover a {
    padding: 0 .5em 0;
    margin: 0 0 0 -.5em;
}

#languageSelector li:after {
    content: "/";
    margin-left: 0.4em;
    margin-right: 0.25em;
}

#languageSelector li:last-child {
    margin-right: 0;
}

#languageSelector li:last-child::after {
    content: none;
    margin: 0;
}

#sliderContainer {
    position: relative;
    width: 100%;
    height: 100vh;
}

#timer {
    right: 0;
    width: 100px;
    line-height: 0;
    position: absolute;
    padding-right: 4vw;
    bottom: 2.5vw;
}

#timerContainer {
    position: relative;
    z-index: 1;
    width: 100px;
    display: block;
    float: right;
}

#timerBackground {
    position: absolute;
    right: 0;
    bottom: 0;
    height: 3px;
    width: 30px;
    border-left: 1px solid transparent;
    box-sizing: border-box;
}

#timerBackground::after {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background-color: #fff;
}

#timerBar {
    height: 5px;
    width: 70px;
    border-right: 1px solid transparent;
    box-sizing: border-box;
    position: absolute;
    left: 0;
    bottom: 0;
}

#timerBar::after {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background-color: #fff;
}

.sliderCenteredContent {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
}

.nav {
    z-index: 10;
    clear: both;
}

ul#menu {
    display: none;
}

ul#menu li a {
    width: 100%;
    display: block;
    background-color: #000;
    color: #fff;
    font-size: 1em;
    padding: 1.5em 1.6em;
    transition: background 0.2s;
    text-decoration: none;
}

ul#menu a:hover {
    background-color: #303030;
}


/*@media screen and (min-width: 1280px) {
    .hamburger-container {
        display: none;
    }

    .nav ul#menu {
        display: inline;
    }

    .nav ul#menu li {
        display: inline-block;
        margin-right: -5px;
    }
}*/

ul.hamburger li {
    height: 2px;
    background: #fff;
    content: "";
    position: relative;
    transition: 0.25s ease-in-out;
}

.hidden {
    opacity: 0;
}

.rot45deg {
    transform: rotate(45deg);
    top: 10px !important;
}

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

ul.hamburger {
    display: block;
    height: 2.5em;
}

ul.hamburger li:nth-child(1) {
    top: 0;
}

ul.hamburger li:nth-child(2) {
    top: 8px;
}

ul.hamburger li:nth-child(3) {
    top: 16px;
}

.hamburger-container {
    width: 2.5em;
    margin: 0;
    padding-top: 3vw;
    padding-top: Calc(3vh + 20px);
    height: 2em;
    cursor: pointer;
    position: fixed;
    right: 10%;
    top: 0;
    z-index: 10;
}

.hamburger-container span {
    position: absolute;
    left: -200%;
    font-size: 1.3em;
    margin-top: 0.35em;
}


/*-----------------------END HEADER------------------------*/


/*-----------------------MAIN------------------------*/

#normalPage {
    padding-top: 8vw;
}

#normalPage h1 {
    font-size: 5.8em;
    line-height: 1.03em;
    font-weight: bold;
    margin-bottom: 0.3em;
}

#normalPage h3 {
    margin-top: 0.75em;
}

#normalPage h3:first-child {
    margin-top: 0;
}

#normalPage a {
    color: inherit;
}

#normalPage p {
    margin-bottom: 1em;
}

.wrapper {
    width: 80%;
    margin: 0 auto;
}

.header .wrapper {
    position: relative;
    z-index: 1;
}

h2,
h3,
#content h1 {
    font-size: 3.2em;
    line-height: 1.03em;
    font-weight: 700;
}

h3 {
    font-size: 2.6em;
    margin: 0 0 .75em;
}

.grecaptcha-badge {
    display: none !important;
}

.callToAction,
input[type=submit] {
    background-color: #F27A48;
    appearance: none;
    -webkit-appearance: none;
    -moz-apperance: none;
    border: 0;
    font-size: 1.167em;
    padding: 1em 1.5em;
    color: #fff;
    text-decoration: none;
    width: auto;
    display: inline-block;
    transition: 0.3s ease-in all;
}

.callToAction:hover,
input[type=submit]:hover {
    background-color: #ffa078;
}

.slider-container .description {
    position: absolute;
    left: 4vw;
    bottom: 2em;
}

#logosContainer {
    padding: 50px 0;
}

#logosContainer .wrapper {
    display: flex;
    flex-direction: row;
    justify-content: center;
    text-align: center;
}

.logo {
    text-align: center;
    vertical-align: top;
    flex: 1;
}

.logo img {
    max-width: 45px;
    height: 50px;
    object-fit: contain;
}

.logo p {
    margin-top: 1em;
    font-size: 1em;
}

.small {
    font-size: 0.8em;
    line-height: 1.2em;
}

.legalForm {
    color: #999;
    margin-top: 2em;
}

.legalForm p {
    margin-bottom: 0.5em;
}

p {
    line-height: 1.3em;
}

.error404 #content {
    padding: 300px 4% 100px 4%;
}

.error404 #content h1 {
    font-size: 3em;
    margin-bottom: 0.2em;
}

#content {
    background: #fff;
    color: #000;
}

#content .header {
    background: #0028C9;
    padding: 16% 0 16%;
    position: relative;
    color: #fff;
}

.single-post {
    background-color: white;
}

#content .galleryIcon {
    float: right;
    margin-top: .85em;
}

.blog #content .header,
.single-post #content .header {
    background-color: #E2E2E2;
    color: #000;
    padding: 10% 0 20%;
}

#thumbnailImg {
    position: relative;
    margin-top: -7%;
    margin-bottom: 4em;
}

.single-post .header-top .narrowtext {
    text-align: left;
    margin-top: 1em;
}

.single-post #postContent {
    margin-top: 4em;
    font-size: 1.5em;
    padding-bottom: 4em;
    min-height: 45vh;
}

.single-post #content .header {
    padding: 10% 0;
}

.single-post header h3 {
    font-size: 1.8em;
}

.single-post footer {
    background-color: #F98248;
    clear: both;
}

.blog #breadcrumb span {
    background-color: #F98248;
    color: #000;
}

.page-template-residences #breadcrumb span {
    white-space: nowrap;
}

.blog #breadcrumb:before {
    background: #000;
}

.blog h4 {
    font-size: 1.5em;
    position: relative;
    margin-top: 0.5em;
    font-weight: bold;
}

.blog .date {
    margin-top: 2em;
}

.entrada a {
    text-decoration: none;
    color: inherit
}

.blog h4 span {
    position: absolute;
    right: 0;
    transition: all 0.3s ease-in-out;
}

.entrada {
    /*flex-basis: calc(33.3333333% - 2.66666666667em);*/
    /*margin-right: 4em;*/
    margin-bottom: 4em;
    position: relative;
}

.blog .grid-item:first-child,
.blog .grid-item:nth-child(3) {
    margin-top: 10%;
}

.blog .grid-item {
    padding-left: 0;
    padding-right: 0;
    margin-bottom: 40px;
}

.entrada img {
    width: 100%;
}

.entrada:hover h4 span {
    right: -1em;
    transition: all 0.1s ease;
}

.blog .grid-sizer,
.blog .grid-item {
    width: 30% !important;
}

.blog .gutter-sizer {
    width: 5%;
}

.blog .entrada .contenido {
    margin-top: 1em;
}

.blog .entrada .contenido p {
    margin-bottom: 0.5em;
    font-size: 1.3em;
}

.blog .entrada .contenido p:last-child {
    margin-bottom: 0em;
}

.blog #menu-bgs:before {
    display: none;
}

.blog #content>.wrapper {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: flex-start;
    margin-top: -22%;
    padding-bottom: 8em;
}

.blog .category {
    margin-bottom: 0.5em;
    font-size: 1.4em;
}

#content .header:after {
    background: #f98248;
    background: -moz-linear-gradient(left, #f98248 0%, #060e9f 100%);
    background: -webkit-linear-gradient(left, #f98248 0%, #060e9f 100%);
    background: linear-gradient(to right, #f98248 0%, #060e9f 100%);
    filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#f98248', endColorstr='#060e9f', GradientType=1);
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    height: 15px;
    z-index: 20;
}

.header-top {
    position: relative;
}

#breadcrumb {
    font-weight: 700;
    font-size: 1.8em;
    display: flex;
    flex-direction: row;
    align-items: center;
    position: absolute;
    bottom: 0;
    left: 0;
    transform: rotate(-90deg);
    align-items: center;
    width: 15%;
    transform-origin: 0% 0%;
}

#breadcrumb::after {
    height: 1px;
    width: 100%;
    background: #fff;
    content: "";
    min-width: 30%;
}

#breadcrumb span {
    padding: 0 1em 0 0;
}

#breadcrumbInterior {
    position: absolute;
    top: 100px;
    z-index: 1;
    color: white;
    font-size: 1.5em;
    left: 10%;
}

#breadcrumbInterior a {
    color: white;
}

#breadcrumbInterior span {
    text-decoration: underline;
    cursor: pointer;
}

#breadcrumbInterior span:last-child {
    text-decoration: none;
    cursor: initial;
}

.narrowtext {
    padding: 8% 25%;
    font-weight: 400;
    font-size: 1.8em;
    line-height: 1.6em;
}

.narrowtext.wider {
    padding: 8% 15%;
}

.header .narrowtext {
    padding: 0 15%;
}

.narrowtext p {
    line-height: 1.6em;
}

.narrowtext p+p {
    margin-top: 1em;
}

figure {
    clear: both;
    padding: 0;
}

figcaption {
    color: #000;
    clear: both;
    padding: .8em 0 0;
    font-size: 1.6em;
}

figure.firstImage {
    float: left;
    padding: 8% 0;
}

#content img {
    max-width: 100%;
    height: auto;
}

.imagerow-60-40,
.row-40-60 {
    display: flex;
    flex-direction: row;
}

.imagerow-60-40>*,
.row-40-60>* {
    flex-basis: 40%;
    align-self: center;
    padding-left: 20px !important;
}

.imagerow-60-40>*:first-child,
.row-40-60>*:last-child {
    flex-basis: 60%;
    padding-left: 0px !important;
}

.imagecol {
    display: flex;
    flex-direction: column;
}

.imagecol>*:last-child {
    padding-left: 40%;
}

*[class^="imagerow"]:last-child {
    margin-bottom: 8%;
}

@-webkit-keyframes locationIntro {
    0%,
    25% {
        height: 25%
    }
    100% {
        height: 100%
    }
}

@keyframes locationIntro {
    0%,
    25% {
        height: 25%
    }
    100% {
        height: 100%
    }
}

#topContainerImg {
    position: relative;
}

#topContainerImg img {
    display: block;
}

#topMask {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 100%;
    background: url(img/bg-location-02.jpg) no-repeat bottom center transparent;
    background-size: cover;
    -webkit-animation: locationIntro 8s linear;
    animation: locationIntro 8s linear;
}

#content .full-header {
    display: block;
    height: 100%;
    height: 100vh;
    padding: 16% 0 16%;
    position: relative;
    color: #fff;
}

#content .full-header #topContainerImg {
    position: absolute;
    z-index: 0;
    top: 50%;
    left: 50%;
    width: 100vw;
    height: 100vh;
    overflow: hidden;
    max-width: 100%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

#content .video-header {
    display: block;
    position: relative;
    width: 100%;
}

.page-template-green-spaces #topContainerImg {
    background: url(img/bg-home-03.jpg) no-repeat center center transparent;
    background-size: cover;
}

.page-template-residences #topContainerImg {
    background: url(img/bg-home-04.jpg) no-repeat center center transparent;
    background-size: cover;
}

.full-header #breadcrumb {
    bottom: 20%;
    left: 10%;
}

.full-header #breadcrumb span {
    /*background: transparent;
    transform-origin: 2em 2em;
    padding: 0 1em;*/
}

.full-header #breadcrumb:before {
    /*height: 60%;
    bottom: 40%;*/
}

.page-template-residences #breadcrumb:before,
html[lang^="es"] #breadcrumb:before {
    height: 45%;
    bottom: 55%;
}

html[lang^="es"] .page-template-amenities #breadcrumb:before {
    height: 35%;
    bottom: 65%;
}

.residencesMenu {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    height: 90%;
    height: Calc(100vh - 9vw);
    position: relative;
    z-index: 9;
}

.residencesMenu .column {
    flex: 1;
    position: relative;
}

.residencesMenu .column>* {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
}

.column .split {
    bottom: 50%;
    height: 50%;
}

.column .split+.split {
    bottom: 0;
    top: 50%;
}

.residencesMenu .gallery {
    background: #232323;
}

.residencesMenu .qualities {
    background: #0D0D0D;
}

.residencesMenu .virtual {
    background: #4300ff;
    background: -moz-linear-gradient(top, #4300ff 0%, #220080 100%);
    background: -webkit-linear-gradient(top, #4300ff 0%, #220080 100%);
    background: linear-gradient(to bottom, #4300ff 0%, #220080 100%);
    filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#4300ff', endColorstr='#220080', GradientType=0);
}

.residencesMenu .floorplans {
    background: #FF6F00;
}

body.page-template-floorplans {
    overflow: hidden;
}

.page-template-floorplans #menu-bgs:before {
    display: none;
}

.residencesMenu .disabled:hover {
    background: #5E5E5E;
    cursor: not-allowed;
}

.residencesMenu a {
    display: block;
    color: #fff;
    text-decoration: none;
    height: 100%;
    padding: 10%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    text-align: left;
    -webkit-transition: all 1s;
    transition: all 1s;
}

strong{
    font-weight: bold;
}

.residencesMenu img {
    display: inline-block;
    margin: 0 auto 0 0;
    width: auto;
    height: 3em !important;
}

.residencesMenu .virtual img {
    margin: -.5em auto -.5em -.7em;
    height: 4em !important;
}

.residencesMenu .title {
    display: block;
    font-size: 4em;
    font-weight: 200;
    padding: 0 0 .25em 0;
    margin-right: 20%;
    position: relative;
}

.residencesMenu a .title:after {
    height: 1px;
    width: 0;
    background: #fff;
    position: absolute;
    left: 0;
    bottom: 0;
    content: "";
    -webkit-transition: all 1s;
    transition: all 1s;
}

.residencesMenu a:hover .title:after {
    width: 100%;
    -webkit-transition: all .2s;
    transition: all .2s;
}

.residencesMenu a.disabled:hover .title:after {
    width: 0;
}

.residencesMenu span {
    display: inline-block;
    font-size: 1.25em;
    text-transform: uppercase;
    text-decoration: underline;
    letter-spacing: .25em;
}

#map {
    width: 100%;
    height: 90vh;
    z-index: 8;
    position: relative !important;
}

.page-template-default #content {
    background: #fff;
    color: #0028C9;
    padding: 12% 0 8%;
}


/*.page-template-default #header.closed h1 img {
    filter: invert(1);
}

.page-template-default #header.closed ul.hamburger li {
    background: #000;
}*/

.page-template-default p, .page-template-default table, .page-template-default :not(td) li {
    color: #000;
    font-size: 1.25em;
    line-height: 1.4em;
}
.page-template-default td li, .page-template-default td p {
    font-size: 1em;
}
.page-template-default #sticker * {
    color: #FFF;
}
.page-template-default #normalPage ul {
    list-style-type: disc;
}

#header-video {
    display: block;
    min-width: 100vw;
    min-height: 100vh;
    object-fit: cover;
    position: absolute;
    width: 100%;
    height: 100%;
}

@-webkit-keyframes updown {
    0%,
    100% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0)
    }
    50% {
        -webkit-transform: translate(0, 5px);
        transform: translate(0, 5px)
    }
}

@keyframes updown {
    0%,
    100% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0)
    }
    50% {
        -webkit-transform: translate(0, 5px);
        transform: translate(0, 5px)
    }
}

@-webkit-keyframes updownbg {
    0%,
    100% {
        -webkit-background-position: center 80%;
        background-position: center 80%
    }
    50% {
        -webkit-background-position: center 100%;
        background-position: center 100%
    }
}

@keyframes updownbg {
    0%,
    100% {
        -webkit-background-position: center 80%;
        background-position: center 80%
    }
    50% {
        -webkit-background-position: center 100%;
        background-position: center 100%
    }
}

.scrollDown {
    background: url(img/arrow-down.svg) no-repeat transparent;
    background-size: 1.5em;
    -webkit-background-position: center 80%;
    background-position: center 80%;
    position: absolute;
    bottom: 2%;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 24px;
    height: 40px;
    filter: invert(1);
    padding-bottom: 7em;
    cursor: pointer;
    -webkit-animation: updownbg 2.5s ease-in-out infinite;
    animation: updownbg 2.5s ease-in-out infinite;
}

.scrollDown .scroller {
    -webkit-animation: updown 2.5s ease-in-out infinite;
    animation: updown 2.5s ease-in-out infinite;
}

#mapContainer {
    display: flex;
    flex-direction: row;
}

#map {
    flex-basis: 80%;
}

#legend {
    flex-basis: 20%;
    background: #000;
    color: #fff;
    display: flex;
    flex-direction: column;
    justify-content: center;
}


/*-----------------------END MAIN------------------------*/


/*-----------------------RESIDENCES SELECTOR------------------------*/

.sectionsResidences {
    width: 100%;
    height: 100vh;
    display: flex;
}

.sectionsResidences .bed {
    flex: 1;
    justify-content: center;
    align-items: center;
    -webkit-transition: all 0.8s ease;
    transition: all 0.8s ease;
    position: relative;
    display: flex;
    align-items: flex-end;
}

.sectionsResidences .bed .bottom {
    margin-top: 4vh;
    position: relative;
    z-index: 1;
}

.sectionsResidences .bed .bottomSelect {
    padding: 4em 2em 6vh;
    width: 100%;
    text-align: center;
    color: white;
}

.sectionsResidences .bed p {
    position: relative;
    z-index: 1;
    font-size: 1.3em;
    letter-spacing: 0.1em;
}

.sectionsResidences .bed p a {
    margin-right: 1em;
}

.sectionsResidences .bed:before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0%;
    left: 0;
    background: rgb(0, 0, 0);
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0.3) 33%, rgba(0, 0, 0, 0.3) 66%, rgba(0, 0, 0, 1) 100%);
}

.sectionsResidences .bed:hover {
    flex: 2;
}

.sectionsResidences .bed span {
    font-weight: 700;
    color: white;
    font-size: 1.8em;
    text-decoration: none;
    position: relative;
    z-index: 1;
    margin-right: 1em;
}

.sectionsResidences .bed .cta {
    display: inline-block;
    padding: 1em 3em 0.8em 3em;
    font-size: 1.3em;
    border: 2px solid white;
    position: relative;
    z-index: 1;
    border-radius: 2em;
    vertical-align: middle;
    margin-right: 3em;
    text-decoration: none;
    color: white;
}

.sectionsResidences .bed .logosSelect {
    display: inline-block;
    vertical-align: middle;
}

.sectionsResidences .bed .logosSelect img {
    max-width: 100%;
    margin-left: 1em;
}

.sectionsResidences #bed1 {
    background-image: url(img/1-beds-select_.jpg);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

.sectionsResidences #bed2 {
    background-image: url(img/2-beds-select_.jpg);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

.sectionsResidences #bed3 {
    background-image: url(img/3-beds-select_.jpg);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}


/*-----------------------END RESIDENCES SELECTOR------------------------*/


/*-----------------------CONTACT------------------------*/

body.page-template-contact,
body.page-template-contact-thankyou
body.page-template-contact-thanksforcalling {
    height: 100vh;
}

.page-template-contact #container,
.page-template-contact-thankyou #container,
.page-template-contact-thanksforcalling #container {
    display: flex;
    flex-direction: column;
    height: 100vh;
}

.page-template-contact #content,
.page-template-contact-thanksforcalling #content,
.page-template-contact-thankyou #content {
    flex-basis: 91%;
    background: #0028C9;
    color: #fff;
    padding: 16% 10% 0;
}

.page-template-contact #footer,
.page-template-contact-thankyou #footer,
.page-template-contact-thanksforcalling #footer {
    flex-basis: 9%;
}

#contact>div {
    position: relative;
}

.page-template-contact .contactTitle,
.page-template-contact-thankyou .contactTitle,
.page-template-contact-thanksforcalling .contactTitle {
    padding: 0 15% 0 0 !important;
    height: 100%;
}

.page-template-residences #contact {
    background: #0028C9;
    color: #fff;
    padding: 16% 10%;
}

.page-template-contact #content h1,
.page-template-contact-thankyou #content h1,
.page-template-contact-thanksforcalling #content h1,
.page-template-residences #contact h2 {
    font-size: 3em;
    font-weight: 700;
    position: absolute;
    top: 0;
    left: 0;
    max-width: 9em;
}

.page-template-residences #contact h2 {
    position: static;
}

.page-template-residences .row-40-60>* {
    padding-left: 0 !important;
    align-self: flex-start;
}

.formContainer a {
    color: inherit;
}

.formContainer p {
    margin-bottom: 1em;
}

.form-row:after {
    content: "";
    display: table;
    clear: both;
}

.form-row .col {
    float: left;
    width: 49%;
    margin: 0 0 5% 2%;
}

.form-row .col:first-child {
    margin-left: 0;
}

.form-row .col.short {
    margin-bottom: 2%;
}

label,
input,
textarea,
select {
    font-family: 'skyline', Skyline, Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
}

label {
    display: block;
    text-indent: -2em;
    padding: 0 0 0 2em;
}

input[type=text],
input[type=email],
input[type=tel],
select,
textarea {
    -webkit-appearance: none;
    appearance: none;
    background: transparent;
    outline: none;
    border: none;
    box-shadow: none;
    border-bottom: 1px solid #fff;
    font-size: 1.25em;
    color: #fff;
    padding: .25em 0 .75em;
    margin: 0 0 .75em;
    width: 100%;
    -webkit-border-radius: 0;
    border-radius: 0;
    -webkit-transition: all .8s;
    transition: all .8s;
}

input[type=text]:focus,
input[type=email]:focus,
input[type=tel]:focus,
select:focus,
textarea:focus {
    border-bottom: 1px solid #F98248;
    color: #F98248;
    -webkit-transition: all .2s;
    transition: all .2s;
}

input[type=text]:hover,
input[type=email]:hover,
input[type=tel]:hover,
select:hover,
textarea:hover {
    border-bottom: 1px solid #F98248;
    color: #F98248;
    -webkit-transition: all .1s;
    transition: all .1s;
}

#contact input[type=submit],
textarea {
    background: transparent;
    border: 1px solid #fff;
    width: 100%;
    font-size: 1.25em;
}

#contact input[type=submit]:hover,
#contact input[type=submit]:focus,
textarea:hover,
textarea:focus {
    border-color: #F98248;
    outline: 0;
}

#contact input[type=submit]:active {
    color: #F98248;
    outline: 0;
}

textarea {
    height: 10em;
}

input[type=checkbox] {
    -webkit-appearance: none;
    appearance: none;
    background: transparent;
    border: 1px solid #fff;
    color: #fff;
    width: 1em;
    height: 1em;
    vertical-align: bottom;
    margin: 0 .75em 0 0;
    line-height: 1;
    -webkit-border-radius: 0;
    border-radius: 0;
    cursor: pointer;
}

input[type=checkbox]:checked {
    background: url(img/checked.png) no-repeat transparent;
    -webkit-background-position: center center;
    background-position: center center;
    -webkit-background-size: contain;
    background-size: contain;
}

select {
    background: url(img/select-arrow.png) no-repeat center right transparent;
    -webkit-background-size: 13px 7px;
    -background-size: 13px 7px;
}

option {
    /*background-color: #0028C9;*/
    padding: .25em;
}

input[type=submit] {
    cursor: pointer;
}

span.wpcf7-list-item {
    margin: 0;
}

div.wpcf7-response-output {
    margin: 2em 0 0;
    padding: 1em;
    border: 1px solid #f00;
    background: rgba(255, 0, 0, .5);
}

div.wpcf7-validation-errors,
div.wpcf7-acceptance-missing {
    border: 1px solid #ff0;
    background: rgba(0, 0, 0, .5);
    color: #ff0
}

div.mail-sent-ok {
    border: 1px solid #0c0;
    background: rgba(0, 0, 0, .5);
    color: #0f0;
}

::placeholder {
    color: #fff;
    opacity: 1;
}

:-ms-input-placeholder {
    color: #fff;
}

::-ms-input-placeholder {
    color: #fff;
}

input:-internal-autofill-previewed,
input:-internal-autofill-selected,
textarea:-internal-autofill-previewed,
textarea:-internal-autofill-selected,
select:-internal-autofill-previewed,
select:-internal-autofill-selected {
    background: transparent;
}

.wpcf7-mail-sent-ok {
    background-color: #082b06 !important;
    border: 0 !important;
}

#sticker {
    position: fixed;
    z-index: 999;
    background-color: rgba(0, 0, 0, 0.5);
    color: #FFF;
    padding: 1.5em;
    top: 10vw;
    transition: all 0.5s ease-in-out;
    -webkit-transition: all 0.5s ease-in-out;
    right: 10%;
    width: 380px;
}

#sticker .close {
    background-image: url(img/closeSticker.png);
    background-size: contain;
    width: 14px;
    height: 14px;
    position: absolute;
    top: 1em;
    right: 1em;
    cursor: pointer;
    font-size: inherit;
}

#sticker a {
    color: inherit;
    text-decoration: none;
}

#sticker h3 {
    font-size: 18px;
}

#sticker p {
    font-size: 15px;
}

#sticker img {
    margin-right: 0.5em;
}

#sticker .open {
    background-image: url(img/arrow.png);
    background-size: contain;
    width: 1em;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0.5em;
    cursor: pointer;
    font-size: inherit;
    background-repeat: no-repeat;
    background-position: center center;
    transition: all 0.5s ease-in-out;
    opacity: 0;
}

#sticker.closed {
    padding-left: 3em;
    right: calc(-380px + 2em);
}

#sticker.closed .open {
    opacity: 1;
}


/**/

#stickerCov {
    position: fixed;
    z-index: 999;
    background-color: rgba(0, 0, 0, 0.99);
    padding: 1.5em;
    top: 10vh;
    right: 10%;
    width: 80%;
    height: 80vh;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 4em;
}

#stickerCov .right,
#stickerCov .left {
    flex: 1;
    max-width: 500px;
}

#stickerCov .right {
    padding-left: 4em;
}

#stickerCov p {
    margin-bottom: 0.5em;
    font-size: 1.5em;
}

#stickerCov .left p {
    font-size: 1.8em;
}

#stickerCov p img {
    margin-right: 1em;
}

#stickerCov a {
    color: inherit;
}

#stickerCov h3:last-child {
    margin-top: 1em;
}

#stickerCov .close {
    background-image: url(img/closeSticker.png);
    background-size: contain;
    width: 14px;
    height: 14px;
    position: absolute;
    top: 1em;
    right: 1em;
    cursor: pointer;
    font-size: inherit;
}

#stickerCov form {
    margin: 2em 0;
}

#stickerCov input[type=submit] {
    margin-top: 1em;
}

@media screen and (max-width: 1000px) {
    #stickerCov {
        display: block;
        font-size: 0.5em;
    }
    #stickerCov .right {
        padding: 0;
        margin-top: 2em;
    }
    #stickerCov form {
        font-size: 1.25em;
    }
    #stickerCov {
        height: auto;
        max-height: 80vh;
    }
}


/**/

@media screen and (max-width: 767px) {
    #sticker {
        bottom: 0%;
        max-width: 100vw;
        top: auto;
        min-width: auto;
        width: 100%;
        right: 0;
    }
    #sticker.closed {
        right: calc(-100% + 2em);
    }
}


/*-----------------------END CONTACT------------------------*/


/*-----------------------AMENITIES------------------------*/

#amenitiesContainer {
    position: relative;
    height: 100vh;
    width: 100%;
    overflow: hidden;
}

#amenitiesContainer .arrow {
    height: 50px;
    width: 25px;
    background-image: url(img/slider-arrow.png);
    position: absolute;
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: center;
    transform-origin: 50% 25%;
    z-index: 1;
    top: calc(50% - 30px);
    cursor: pointer;
    -webkit-transition: all .8s;
    transition: all .8s;
}

#amenitiesContainer .arrow.left {
    transform: rotate(180deg);
    transform-origin: center;
    left: 10px;
    cursor: pointer;
}

#amenitiesContainer .arrow.right {
    right: 10px;
}

#amenitiesContainer .arrow.closed {
    left: -30px;
}

#amenitiesContainer .arrow.closed {
    right: -30px;
}

#amenities {
    display: flex;
    width: 100vw;
    height: 100%;
    position: relative;
    top: 0;
    left: 0;
    flex-direction: row;
    align-items: center;
    overflow-x: scroll;
    overflow-y: hidden;
}

#amenities::-webkit-scrollbar {
    height: 10px;
    background-color: #0028C9;
}


/* Track */

#amenities::-webkit-scrollbar-track {
    background: transparent;
    border-top: 1px solid white;
    cursor: pointer;
}


/* Handle */

#amenities::-webkit-scrollbar-thumb {
    background: white;
}


/* Handle on hover */

#amenities::-webkit-scrollbar-thumb:hover {
    background: white;
}

.amenity {
    min-width: 25vw;
    width: 25vw;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    box-sizing: border-box;
    padding: 50px;
    line-height: 32px;
    font-size: 36px;
    font-weight: bold;
    position: relative;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    cursor: pointer;
    transition: all 0.5s ease-in-out;
}

.amenity>div {
    left: 0;
    top: 0;
}

.amenity>div .arrows {
    opacity: 0;
    transition: all 0.5s ease;
    pointer-events: none;
}

.amenity.open>div .arrows {
    opacity: 1;
    pointer-events: all;
}

.amenity p {
    position: absolute;
    z-index: 8;
    transition: all 0.5s ease-in-out;
    top: auto;
    bottom: 50%;
    left: 5vw;
    transform: translate(0, 50%);
    color: white;
    line-height: 1.1em;
    max-width: 17vw;
}

.amenity::after {
    transition: all 0.5s ease-in-out;
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-color: #171717;
    opacity: 0.6;
}

.amenity.open {
    min-width: 100vw;
    max-width: 100vw;
    padding: 50px;
    overflow: hidden;
}

.amenity.open::after {
    opacity: 0;
}

.amenity.closed {
    max-width: 0vw;
    padding: 0;
    min-width: 0vw;
    overflow: hidden;
}

.amenity.open p {
    position: absolute;
    bottom: 50px;
    left: 10%;
    top: auto;
    padding-bottom: 0;
    transform: translate(0, 0);
}

.backButton {
    cursor: pointer;
    line-height: 1.5em;
    border-radius: 40px;
    padding: 0.65em 4em;
    background-color: transparent;
    color: black;
    text-align: center;
    position: absolute;
    top: 20vh;
    right: calc(5vw - 25px);
    z-index: 10;
    font-size: 14px;
    font-weight: bold;
    color: white;
    border: 2px solid white;
}

.mapItem {
    background-color: white;
    border-radius: 50%;
    width: 60px;
    height: 60px;
    margin-left: -30px;
    margin-bottom: 10px;
    /*margin-left: -35px;*/
    cursor: pointer;
    color: #000000;
    font-size: 10px;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: row;
    position: relative;
    z-index: 9;
    transition: all 0.5s ease-in-out;
}

.page-template-green-spaces .mapItem {
    width: 60px;
    height: 60px;
    margin-left: -30px;
}

.mapItem.active {
    background-color: #F27A48;
}

.mapItem.active img {
    filter: brightness(0) invert(1);
}

.mapItem:last-child {
    border-bottom: 0;
}

.mapItem img {
    max-width: 50%;
    max-height: 50%;
    transition: all 0.5s ease-in-out;
}

.mapItem p {
    position: absolute;
    right: calc(-100% - 1em);
    color: white;
    width: 100%;
    text-align: left;
    font-size: 16px;
    margin: 0;
}

#groupServices {
    max-height: 0;
    transition: all 0.5s ease-in-out;
    overflow: hidden;
}

#groupServices.abierto {
    max-height: 400px;
}

#groupServices .mapItem {
    margin-left: 10px;
}


/* Desactivar hasta que metamos las ameinities de antes con las divisiones:
.page-template-amenities #container{
    flex-basis: 99%;
    position: relative;
}

.page-template-amenities footer{
    flex-basis: 1%;
    z-index: 1;
}

body.page-template-amenities{
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100vh;
    overflow: hidden;
}
*/


/*-----------------------END AMENITIES------------------------*/


/*-----------------------FLOORPLANS------------------------*/

.page-template-floorplans {
    display: flex;
    flex-direction: column;
    height: 100vh;
}

.page-template-floorplans header#header,
.page-template-location header#header {
    z-index: 19;
}

.page-template-floorplans #container {
    flex-basis: 99%;
    display: flex;
    overflow: hidden;
    position: relative;
}

.page-template-floorplans #container .wrapper {
    height: 100%;
}

.page-template-floorplans #footer {
    flex-basis: 1%;
}

.page-template-floorplans #content {
    width: 100%;
    height: 100%;
    flex-basis: 100%;
    background-color: #171717;
    width: 100vw;
    overflow-x: hidden;
}

.unitsContainer {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    height: 83vh;
    justify-content: flex-start;
    align-content: flex-start;
    box-sizing: border-box;
    position: relative;
    padding-top: 16vh;
    padding-bottom: 6vh;
    overflow-x: scroll;
}

.unitsContainer>p {
    color: white;
    font-size: 1.5em;
}

.irs--flat .irs-min,
.irs--flat .irs-max {
    display: none !important;
}

.irs--flat .irs-bar {
    top: 10px !important;
    background-color: white !important;
}

.irs--flat .irs-handle>i:first-child {
    position: absolute;
    display: block;
    top: 0;
    left: 50%;
    width: 18px !important;
    border-radius: 50% !important;
    height: 100%;
    margin-left: -9px !important;
    background-color: #fff !important;
    box-shadow: 0 0 10px 0 #000;
}

.irs--flat .irs-from,
.irs--flat .irs-to,
.irs--flat .irs-single {
    margin-top: 25px;
}

.irs--flat .irs-from,
.irs--flat .irs-to,
.irs--flat .irs-single,
.irs--flat .irs-from:before,
.irs--flat .irs-to:before,
.irs--flat .irs-single:before {
    background-color: transparent !important;
    border-top-color: transparent !important;
}

.irs--flat .irs-line,
.irs--flat .irs-bar {
    height: 8px !important;
    top: 10px !important;
}

.irs--flat .irs-handle {
    top: 5px !important;
}

.unit {
    width: calc(33.33333334% - 13.333333334px);
    height: calc(50% - 20px);
    flex-direction: row;
    box-sizing: border-box;
    margin: 0 20px 20px 0;
}

.unit:nth-child(even) {
    margin-bottom: 0;
}

.unit>div {
    margin-bottom: 1em;
    background-color: #000;
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    border-radius: 20px;
    color: white;
    padding: 6%;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
}

.unit>div .left {
    width: 40%;
    flex-direction: column;
    display: flex;
    justify-content: space-between;
}

.unit>div .right {
    width: 60%;
    display: flex;
    justify-content: center;
    text-align: center;
    flex-direction: column;
}

.unit>div .right img {
    max-width: calc(90% - 1em) !important;
    height: auto !important;
    max-height: 100%;
    margin: 0 auto;
    display: inline-block;
}

.unit>div {
    position: relative;
    overflow: hidden;
}

.unit>div>.reservado {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(35, 12, 1, 0.8);
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 25px;
    font-weight: bold;
    color: rgb(249, 130, 72);
    text-transform: uppercase;
}


/* width */

.unitsContainer::-webkit-scrollbar {
    height: 10px;
}


/* Track */

.unitsContainer::-webkit-scrollbar-track {
    background: transparent;
    border-bottom: 1px solid white;
    cursor: pointer;
}


/* Handle */

.unitsContainer::-webkit-scrollbar-thumb {
    background: white;
}


/* Handle on hover */

.unitsContainer::-webkit-scrollbar-thumb:hover {
    background: white;
}

.footerPlans {
    color: white;
    position: relative;
    height: 0;
}

.footerPlans h2 {
    font-size: 3em;
    top: -1.5em;
    position: relative;
}

.page-template-floorplans .galleryIcon {
    top: 9%;
    right: 9.6%;
    position: absolute;
    z-index: 1;
}

.page-template-floorplans #unitModal .galleryIcon {
    z-index: 1;
    top: 9vh;
    right: 9.6% !important;
}

.footerPlans .galleryIcon {
    position: absolute;
    right: 0;
    bottom: Calc(100% + 1em);
}

.filterBar {
    position: absolute;
    width: 20vw;
    background-color: rgba(0, 0, 0, 0.96);
    right: 0;
    top: 0;
    bottom: 0;
    height: 100vh;
}

.filterBar #icons {
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    flex-direction: column;
    height: calc(100% + 1rem);
    justify-content: space-between;
    width: 5vw;
    text-align: center;
    align-items: center;
    padding-top: 1em;
    padding-bottom: 5em;
}

.filterBar #icons img {
    padding: 1em 0;
}

.filterBar.open {
    right: 0;
}

#unitModal {
    position: absolute;
    z-index: 18;
    top: 100vh;
    left: 0;
    right: 0;
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
    background-color: #000;
    color: white;
    width: 100%;
    height: 100%;
}

#unitModal.open {
    top: 0;
}

.unit .title {
    font-weight: 700;
    font-size: 2em;
    margin-bottom: .25em;
    color: #fff;
}

.unit .dormitorios {
    color: #F98248;
    font-weight: 700;
    font-size: 1.2em;
    text-transform: uppercase;
}

.unit .resto>div {
    display: block;
    margin: .75em 0 0;
}

.unit .icon {
    width: 1.5em;
    text-align: center;
    display: inline-block;
    margin: 0 1em 0 0;
    vertical-align: bottom;
}

.unit .icon img {
    vertical-align: middle;
}


/*UNIT PAGE*/

#unitPage {
    width: 100vw;
    height: 100vh;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0vh;
    z-index: 2;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}

#unitPage.close {
    bottom: -100%;
}

#closeUnit {
    cursor: pointer;
    line-height: 1.5em;
    border-radius: 40px;
    padding: 0.65em 4em;
    background-color: transparent;
    color: black;
    text-align: center;
    position: absolute;
    top: 20vh;
    right: calc(5vw - 25px);
    z-index: 10;
    font-size: 14px;
    font-weight: bold;
    color: white;
    border: 2px solid white;
}

#unitLeft {
    width: 35%;
    height: 100%;
    background-color: black;
    position: absolute;
    top: 0;
    left: 0;
    padding: 13vh 50px 18vh 10vw;
    box-sizing: border-box;
}

#unitRight {
    width: 65%;
    height: 100%;
    background-color: #171717;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    padding: 13vh 10vw 15vh 100px;
    box-sizing: border-box;
}

#unitModal .backButton {
    position: absolute;
    right: 10vw;
    bottom: 0;
    top: unset;
}

#unitLeft .title {
    font-size: 3em;
    font-weight: 700;
    margin-bottom: 1em;
}

#unitLeft .orange {
    color: #EB7417;
    font-size: 18px;
    font-weight: bold;
    line-height: 1.5em;
}

#unitLeft .orange div {
    display: inline-block;
    font-weight: bold;
}

#unitLeft .planta {
    font-size: 18px;
    font-weight: bold;
    line-height: 1.5em;
}

#unitLeft .orientacion {
    font-size: 18px;
    font-weight: bold;
    line-height: 1.5em;
}

#unitRight .plano {
    width: auto;
    height: auto;
    max-height: 100%;
}

#unit-footer {
    height: 10vh;
    display: block;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 0 10vw;
    box-sizing: border-box;
    position: absolute;
    bottom: 0;
    left: 0;
}

#unit-footer #title {
    font-size: 36px;
    font-weight: bold;
}

#unit-footer #separator {
    display: block;
    width: 100%;
    height: 1px;
    background-color: white;
    margin-bottom: 10px;
    position: relative;
    z-index: 2;
    margin-top: 10px;
}

.planoText {
    position: absolute;
    right: 50px;
    bottom: 20vh;
    font-weight: bold;
    font-size: 18px;
    text-transform: uppercase;
}

.planoLeft {
    display: block;
    width: 100%;
    height: 30vh;
    object-fit: cover;
    max-height: 35vh;
}

#filterContainer {
    padding-right: 5vw;
    padding-left: calc(5vw + 1em);
    position: relative;
}

#filterContainer p {
    color: white;
    margin-bottom: 0;
    margin-top: 5px;
    font-size: 15px;
    line-height: 1em;
}

#filterContainer select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 100%;
    padding: 0.5em;
    margin: .25em 0 0;
    border-radius: 0.5em;
    border: 0;
    background-image: url("img/select-arrow.png");
    background-position: calc(100% - 1em) center;
    background-repeat: no-repeat;
    background-size: 1em;
    background-color: rgb(248, 248, 248);
    color: #000;
}

#filterContainer select.diff {
    -webkit-appearance: menulist;
    -moz-appearance: menulist;
    appearance: menulist;
}

#filterContainer select:focus,
#filterContainer input:focus,
#filterContainer textarea:focus {
    outline: none;
}

#filterContainer .row {
    position: relative;
    display: block;
    margin: 0 0 4vh;
}

#filterContainer .row img {
    position: absolute;
    right: Calc(100% + 2vw);
    top: 50%;
    margin-top: 1em;
    transform: translateY(-50%);
}

#filterContainer .precio img {
    width: 2.5em;
}

#filterContainer .superficie img,
#filterContainer .precio img,
#filterContainer .planta img {
    top: 33%;
}

#filterContainer .row input[type=submit] {
    width: 100%;
    margin-top: 2em;
}

.filterBar {
    width: 20vw;
    height: 100%;
    box-sizing: border-box;
    background-color: #000;
    position: absolute;
    top: 0;
    right: -15%;
    bottom: 0;
    z-index: 2;
    -webkit-transition: all .4s ease-in-out;
    transition: all .4s ease-in-out;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

#abrirFiltro {
    text-align: center;
    position: absolute;
    width: 5vw;
    right: 0;
    z-index: 17;
    bottom: 0;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
    cursor: pointer;
}

#abrirFiltro img {
    width: 36px;
    height: 36px;
    -webkit-transition: all .4s ease-in-out;
    transition: all .4s ease-in-out;
    margin-bottom: 2vh;
}

.rotate {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
    -webkit-transform-origin: 50%;
    transform-origin: 50%;
}


/*-----------------------END FLOORPLANS------------------------*/


/*-----------------------FOOTER------------------------*/

footer ul li {
    display: inline-block;
    margin-right: 1em;
}

footer {
    padding-top: 1.5vw;
    padding-bottom: 1.5vw;
    background: #0028C9;
}
:not(.page-template-contact) #footer {
    position: fixed;
    bottom: 0;
    z-index: 99;
    padding: 0 0 5px;
    display: block;
    width: 100%;
    background: transparent;
    text-shadow: 1px 1px 0 #000, 0 0 4px #000;
}
:not(.page-template-contact) #footer .address, :not(.page-template-contact) #footer #footerLogos {
    display: none;
}
:not(.page-template-contact) #footer .menu li:hover a {
    margin-left: -.5em;
}
html #cmplz-manage-consent .cmplz-manage-consent {
    right: 300px;
}

.blog footer {
    background: #F98248;
}

footer .modal p {
    color: black;
}

#footer .address {
    text-align: center;
    text-transform: uppercase;
    font-size: .75em;
    letter-spacing: .2em;
}

#footer .address a {
    background-color: #F27A48;
    appearance: none;
    -webkit-appearance: none;
    -moz-apperance: none;
    border: 0;
    color: #fff;
    text-decoration: none;
    width: auto;
    display: inline-block;
    transition: 0.3s ease-in all;
    font-size: 1.5em;
    padding: 1.25em 2em 1em 2em;
}

#footer .address img {
    vertical-align: middle;
    margin: -.35em 1em 0 0;
    max-width: 1.4em;
}

#copyright .wrapper {
    display: table;
}

#copyright .wrapper>* {
    display: table-cell;
    vertical-align: middle;
}

#footer .menu {
    text-align: left;
}

#footer .menu li {
    display: inline-block;
    margin: 0 1em 0 0;
    clear: none;
}

#footer .menu li:hover a {
    padding-left: .5em;
    margin-right: 0;
}

#footerLogos {
    width: 40%;
    text-align: right;
}

footer .logoF {
    vertical-align: middle;
    display: inline-block;
    margin-left: 3em;
    max-height: 5vw;
    max-width: 8vw;
}

footer .logoF.s24studio p {
    text-align: right;
    margin-bottom: 0.5em;
    font-size: 0.8em;
}

footer .logoF.s24studio img {
    max-height: 0.8vw;
    max-width: 6vw;
}

footer a {
    color: inherit;
    text-decoration: none;
}

footer a:hover {
    text-decoration: underline;
}

footer .logoF img {
    width: auto;
    max-width: 100%;
    max-height: 100%;
}


/*---------------------GALLERY------------------------*/

.galleryIcon {
    width: 40px;
    height: 40px;
    margin-left: 15px;
    cursor: pointer;
}

#top {
    width: 40px;
    height: 40px;
    margin-left: 15px;
    cursor: pointer;
    transform: rotate(90deg);
    opacity: 1;
    pointer-events: all;
    transition: all 0.3s;
    position: fixed;
    right: 10%;
    bottom: 5vw;
    z-index: 17;
}

#top.disabled {
    opacity: 0;
    pointer-events: none;
}

.galleryIcon.disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

#iconsGallery {
    position: absolute !important;
    width: auto !important;
    top: 9%;
    right: 9.6%;
    display: flex;
    flex-direction: row;
    justify-content: center;
    -webkit-transition: all .8s;
    transition: all .8s;
}

#iconsGallery.closed {
    right: -50px;
}


/*---------------------END GALLERY------------------------*/

.footerMenu {
    width: 40%;
}


/*---------------------START MASONRY------------------------*/

#galleryMasonry {
    width: 100%;
    margin: 0 auto;
    display: block;
    margin-bottom: 4em;
}

.grid-item {
    margin-bottom: 15px;
}

.grid-item img {
    width: 100%;
    height: auto;
    display: block;
}

.grid-item,
.grid-item:nth-child(5n+1) {
    width: 535px;
}

.grid-item:nth-child(5n+2) {
    width: 535px;
}

.grid-item:nth-child(5n+3) {
    width: 315px;
}

.grid-item:nth-child(5n+4) {
    width: 370px;
}

.grid-item:nth-child(5n+0) {
    width: 370px;
}

.grid-item:nth-child(1) {
    margin-top: 4%;
}

.page-template-green-spaces .grid-item:nth-child(6n+3),
.page-template-green-spaces .grid-item:nth-child(6n+0) {
    width: 535px;
}

.page-template-green-spaces .grid-item:nth-child(6n+2),
.page-template-green-spaces .grid-item:nth-child(6n+5) {
    width: 370px;
}

.page-template-green-spaces .grid-item:nth-child(6n+1) {
    width: 260px;
}

.page-template-green-spaces .grid-item:nth-child(6n+4) {
    width: 205px;
}

.page-template-green-spaces .grid-item:nth-child(1),
.page-template-green-spaces .grid-item:nth-child(3) {
    margin-top: 0;
}

.page-template-green-spaces .grid-item:nth-child(2) {
    margin-top: 2%;
}

.page-template-green-spaces .grid-item:nth-child(4) {
    margin-top: 4%;
}

.marker {
    width: 250px;
    height: 100px;
    display: flex;
    justify-content: center;
    align-content: center;
    flex-direction: column;
    align-items: center;
    position: relative;
}

.waves {
    width: 100px;
    height: 100px;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

.wave {
    height: 0px;
    width: 0px;
    top: 50%;
    transform: translate(-50%, -50%);
    left: 50%;
    position: absolute;
    border-radius: 50%;
    border: 0px solid #F98248;
    -webkit-animation: wave 3s infinite;
    animation: wave 3s infinite;
    opacity: 0.7;
}

.wave:nth-child(2) {
    animation-delay: 1s;
}

.wave:nth-child(3) {
    animation-delay: 2s;
}

.marker img {
    width: 177px;
    height: 51px;
    margin-left: -18px;
    position: relative;
    z-index: 2;
}


/* Standard syntax */

@keyframes wave {
    0% {
        height: 0px;
        width: 0px;
        border: 0px solid #F98248;
    }
    35% {
        border: 3px solid #F98248;
    }
    100% {
        height: 100px;
        width: 100px;
        border: 0px solid #F98248;
    }
}

@media screen and (max-width: 1768px) {
    #galleryMasonry {
        width: 920px !important;
    }
}


/*VIEWS*/

#views {
    display: flex;
    flex-direction: row;
    height: 100vh;
    box-sizing: border-box;
    position: absolute;
    top: 0;
    left: 0;
    width: 100vw;
}

#views .ori {
    min-width: 25vw;
    width: 25vw;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    box-sizing: border-box;
    padding: 50px;
    line-height: 32px;
    font-size: 36px;
    font-weight: bold;
    position: relative;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    cursor: pointer;
    transition: all 0.5s ease-in-out;
}

#views .ori img {
    width: 100vw;
    height: 100vh;
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
}

#views .ori img:nth-child(1) {
    bottom: -300vw;
}

#views .ori img:nth-child(2) {
    bottom: -200vh;
}

#views .ori img:nth-child(3) {
    bottom: -100vh;
}

#views .ori img:nth-child(4) {
    bottom: 0vh;
}

#views div#viewsMarquer {
    position: absolute;
    width: 135px !important;
    height: 2px !important;
    box-sizing: border-box;
    padding: 0 !important;
    background-color: #F98248;
    top: calc(50% + 1.5em);
    left: 50px;
    z-index: 1;
}

#views div.ori::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0.63;
    opacity: 0;
    background-color: #171717;
}

#views div p {
    color: white;
    font-size: 36px;
    font-weight: bold;
    z-index: 1;
    position: absolute;
    z-index: 8;
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
    top: auto;
    bottom: calc(50% - 50px);
    left: 50px;
    -webkit-transform: translate(0, 50%);
    transform: translate(0, 50%);
}

#views div#viewsMarquer::after {
    content: none;
    background-color: transparent;
}

#views .ori.open {
    min-width: 100vw;
    max-width: 100vw;
    padding: 50px;
    overflow: hidden;
}

#views .ori.closed {
    max-width: 0vw;
    padding: 0 !important;
    min-width: 0vw;
    overflow: hidden;
}

#views .ori {
    cursor: pointer;
}

#views .ori::after {
    transition: all 0.5s ease-in-out;
}

#views .ori.open p {
    position: absolute;
    bottom: 4vw;
    left: 50px;
    top: auto;
    transform: translate(0, 0);
    padding-bottom: 0;
}

#views .ori.open::after {
    opacity: 0;
}

#viewsNavegation {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    display: flex;
    flex-direction: row;
    justify-content: center;
    margin-top: 100px;
    opacity: 1;
    transition: all 0.5s ease-in-out;
    z-index: 31;
}

#viewsNavegation .active {
    color: #F98248;
    border-color: #F98248;
}

#viewsNavegation div {
    transition: all 0.5s ease-in-out;
    color: white;
}

#viewsNavegation.menuAbierto {
    opacity: 0;
}

#viewsNavegation.cerrado {
    opacity: 0;
}

.backButton {
    cursor: pointer;
    line-height: 1.5em;
    border-radius: 40px;
    padding: .65em 4em;
    background-color: initial;
    color: #000;
    text-align: center;
    position: absolute;
    top: 20vh;
    right: 9.6%;
    z-index: 10;
    font-size: 14px;
    font-weight: 700;
    color: #fff;
    border: 2px solid #fff;
}

.backArrow {
    position: static;
    margin: 0;
    margin-bottom: Calc(.5em + 60px);
    width: 60px;
    height: 60px;
    padding: 1em 0;
    border-radius: 999px;
    border: 1px solid #fff;
}

.backArrow img {
    height: auto;
    width: 1.25em;
    filter: invert(1);
    transform: rotateZ(90deg);
}

#amenities .backArrow {
    position: absolute;
    top: Calc(.5em + 60px);
    border: 0px solid #fff;
}

#amenities .backArrow img {
    width: 40px;
    height: 40px;
    transform: rotateZ(0deg);
    filter: invert(0);
}

.short select {
    background: none;
}

.interested-in {
    display: block;
    margin-top: 9%;
}

#content #views {
    overflow: hidden;
}

#content #views img {
    max-width: none;
}

#viewsNavegation.closed,
.backButton.closed {
    opacity: 0;
    pointer-events: none;
}

#viewsNavegation div {
    margin-right: 1em;
    border-radius: 99px;
    font-size: 22px;
    padding: 0.5em 1em;
    border: 1px solid white;
    font-weight: bold;
    box-sizing: border-box;
    z-index: 31;
    position: relative;
    cursor: pointer;
}

#viewsNavegation div#vWest {
    margin-right: 0;
}

#plantasSelector {
    position: absolute;
    top: 0;
    height: 100%;
    right: 20px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

#plantasSelector .butonSlidervertical {
    margin: 0.5em 0;
    font-size: 20px;
    background-color: white;
    color: #000;
    border-radius: 50%;
    height: 60px;
    width: 60px;
    justify-content: center;
    display: flex;
    text-align: center;
    flex-direction: column;
    line-height: 1em;
    cursor: pointer;
    padding-top: 0.25em;
    box-sizing: border-box;
    transition: all 0.5s ease-in-out;
}

#plantasSelector .butonSlidervertical.active {
    background-color: #F98248;
    color: white;
}

.ori p {
    padding-bottom: 10vh;
}

.fancybox-navigation .fancybox-button {
    background-color: transparent !important;
    content: "" !important;
    height: 50px !important;
    width: 25px !important;
    background-image: url(img/slider-arrow.png) !important;
    background-repeat: no-repeat !important;
    background-size: 100% auto !important;
    background-position: center !important;
    padding: 0 !important;
    right: 10% !important;
    top: calc(50% - 25px) !important;
}

.fancybox-button.fancybox-button--arrow_left {
    right: auto !important;
    left: 10% !important;
    transform: rotate(180deg);
}

.fancybox-button svg {
    display: none !important;
}

.submit.row p {
    color: white;
    text-decoration: underline;
    margin-top: 1em !important;
    cursor: pointer;
    text-align: center;
}

input:-webkit-autofill {
    -webkit-text-fill-color: white !important;
    background-color: #0028C9 !important;
    -webkit-box-shadow: 0 0 0px 10px #0028C9 inset !important;
    transition: background-color 5000s ease-in-out 0s !important;
}


/*END VIEWS*/


/*-----------------------END MASONRY------------------------*/


/*RESET MAPS INFOWINDOW*/


/*END RESET MAPS INFOWINDOW*/


/*-----------------------END FOOTER------------------------*/


/*@media screen and (max-width: 768px) {
    header#header h1 img {
        min-width: 100px;
    }
    html .logo {
        padding: 0.3em;
        width: 33%;
        min-width: 33%;
        margin-bottom: 2em;
    }
    html .slider-container .description {
        position: absolute;
        left: 0;
        padding: 0 2em;
        bottom: 10em;
        text-align: center;
        width: 100%;
    }
    html .slick-dots {
        margin-bottom: 3em;
        margin-left: 8%;
        width: 84%;
        text-align: center;
    }
    html #downArrow {
        bottom: 9em;
    }
    html #downArrow p {
        font-size: 1em;
        line-height: 1em;
        margin-top: 20px;
    }
    html .slider-progress {
        bottom: 4em;
        width: 80px;
        right: calc(50% - 40px);
    }
    html #footerLogos {
        float: none;
        width: 100%;
        display: block;
        margin-bottom: 1em;
    }
    html #footerLogos .logoF {
        width: 50%;
        margin-left: 0;
        height: auto;
        text-align: left
    }
    html #footerLogos .logoF:last-child {
        text-align: right
    }
    html h2 {
        font-size: 4em;
    }
    html header#header h1 {
        margin-top: 5vw;
    }
    html #contactForm {
        width: 92%;
        padding: 4% 0 4% 8%;
    }
    html .contactFormWrapper, html .form-row {
        width: 100%;
    }
    #normalPage{
        padding-top: 15vw;
    }
    #normalPage h1{
        font-size: 4em;
    }
    .page-template-default footer{
        margin-top: 0;
    }
    html .wrapper {
        width: 84%;
    }
    html .slick-dots li button:before {
        font-size: 12px;
        line-height: 16px;
        color: #fff;
        opacity: 0.4;
        margin-top: 1px;
    }
    footer {
        margin-top: 60vh;
        padding-top: 2em;
        padding-bottom: 2em;
    }
    footer .logoF {
        padding-top: 0;
    }
    #map {
        top: 100%;
        height: 60vh;
    }
    #map::after {
        background-image: none;
    }
    #logosContainer .wrapper{
        flex-wrap: wrap;
    }
}*/

@media screen and (max-width: 767px) {
    .page-template-floorplans #unitModal .galleryIcon {
        z-index: 1;
        top: 12vh;
        right: 9.6% !important;
    }
    body {
        font-size: 12px;
    }
    #branding {
        max-width: 45%;
    }
    footer .logoF.s24studio img {
        max-height: 3.5vh;
        max-width: 10vh;
    }
    #breadcrumb {
        width: 30vh;
    }
    #thumbnailImg {
        position: relative;
        margin-top: -20%;
        width: 100%;
        float: none;
        margin-right: 0;
        margin-bottom: 2em;
    }
    .single-post .header-top .narrowtext {
        text-align: left;
        margin-left: 0;
        margin-top: 1em;
        padding: 0;
    }
    .single-post #postContent {
        margin-top: 2em;
        font-size: 1.5em;
        padding-bottom: 2em;
        min-height: auto;
    }
    .single-post #content .header {
        padding: 25% 0 20% 0;
    }
    #normalPage h1 {
        font-size: 4em;
    }
    .wrapper {
        width: 80%;
    }
    header#header.closed {
        overflow: visible;
        height: 0;
    }
    #main-menu li a {
        font-size: 2em;
    }
    #secondary-menu li a,
    #languageSelector li {
        font-size: 1.25em;
    }
    .menu-item.video a {
        font-size: 1.5em !important;
    }
    #menu-bgs>div {
        background-image: none !important;
    }
    #content .header {
        padding: 40% 0 16%;
    }
    #breadcrumb span,
    .full-header #breadcrumb span {
        bottom: initial;
        top: -2em;
        background: transparent;
        transform-origin: 100% 100%;
        right: 0;
        left: initial;
    }
    #breadcrumb:before {
        left: initial;
        right: 0;
    }
    .full-header #breadcrumb:before {
        height: 100%;
        bottom: 0;
    }
    .narrowtext {
        font-size: 1.25em;
        padding: 20px 10%;
    }
    .header .narrowtext {
        padding: 0 0 0 15%;
    }
    figcaption {
        font-size: 1em;
    }
    #content .header:after {
        height: 10px;
    }
    #galleryMasonry {
        width: 100% !important;
    }
    #galleryMasonry:after {
        content: "";
        display: table;
        clear: both;
    }
    #galleryMasonry .grid {
        -moz-column-count: 2;
        -webkit-column-count: 2;
        column-count: 2;
        height: auto !important;
    }
    #galleryMasonry .grid-item {
        max-width: 100% !important;
        width: 100% !important;
        height: auto !important;
        position: static !important;
        float: none;
        margin: 0 5% 5% 0;
        /*position: relative !important;
        top: auto !important;
        left: auto !important;
        float: none;*/
    }
    .page-template-location #galleryMasonry .grid-item:nth-child(3),
    .page-template-green-spaces #galleryMasonry .grid-item:nth-child(3n+1) {
        /*width: 47.5% !important;*/
        margin-right: 5%;
    }
    .page-template-location #galleryMasonry .grid-item:nth-child(4),
    .page-template-green-spaces #galleryMasonry .grid-item:nth-child(3n+2) {
        /*width: 47.5% !important;*/
    }
    #contact .row-40-60 {
        flex-direction: column;
    }
    .page-template-contact .contactTitle {
        padding-right: 0 !important;
    }
    .page-template-contact #content h1 {
        position: static;
        max-width: none;
        padding: 40% 0 16%;
    }
    .page-template-contact .formContainer {
        margin-top: 4em;
    }
    .form-row .col {
        float: none;
        width: 100%;
        margin: 0 0 5% 0;
    }
    #views {
        flex-direction: column;
    }
    #views .ori {
        width: 100%;
        min-width: 100vw;
        height: 25vh;
        min-height: 25vh;
        padding: 20px;
        font-size: 2em;
        overflow: hidden;
    }
    #views .ori.open {
        min-height: 100vh;
        max-height: 100vh;
    }
    #views .ori.closed {
        max-width: 100%;
        padding: 0 !important;
        min-width: 100vw;
        max-height: 0;
        min-height: 0;
    }
    #content #views img {
        width: auto;
    }
    #plantasSelector {
        right: 20px;
    }
    #plantasSelector .butonSlidervertical {
        font-size: 1.4em;
        height: 40px;
        width: 40px;
    }
    #views div p {
        bottom: 36px;
        left: 20px;
        font-size: 1em;
    }
    #views .ori.open p {
        bottom: 20px;
        left: 20px;
    }
    .ori p {
        padding-bottom: 0;
    }
    #views div#viewsMarquer {
        left: 20px !important;
        display: none;
    }
    #viewsNavegation {
        margin-top: 100px;
    }
    #viewsNavegation div {
        margin-right: .5em;
        border-radius: 99px;
        font-size: 1.5em;
        padding: 0.25em .75em;
    }
    .backButton {
        margin-right: 0;
        border-radius: 99px;
        font-size: 1.5em;
        padding: 0.25em .75em 0.15em;
        border: 1px solid #fff;
        top: initial;
        bottom: 20px;
        right: 20px;
    }
    .residencesMenu {
        flex-direction: column;
        height: 100vh;
    }
    .residencesMenu .column {
        flex-basis: 25%;
    }
    .residencesMenu .column:last-child {
        flex-basis: 50%;
        display: flex;
        flex-direction: column;
    }
    .column .split {
        position: static;
        flex-basis: 50%;
    }
    .residencesMenu .title {
        font-size: 3em;
    }
    .residencesMenu a {
        padding: 20px;
    }
    .residencesMenu img {
        height: 2em !important;
        max-width: 3em !important;
    }
    .residencesMenu .virtual img {
        margin-left: -.7em;
    }
    .residencesMenu .virtual img {
        margin: -.5em auto -.5em -.6em;
        height: 3.2em !important;
    }
    /*.residencesMenu .disabled {
        background: #5E5E5E;
        cursor: not-allowed;
    }*/
    .albumTitle {
        font-size: 7vw;
    }
    #iconsGallery {
        position: fixed;
        bottom: 30px;
        right: 35px;
    }
    .info h2 {
        padding-right: 50px;
    }
    .scrollDown,
    #secondary-menu,
    #languageSelector {
        bottom: 16%;
    }
    .page-template-floorplans {
        display: block;
    }
    .page-template-floorplans header#header {
        background: #000;
        height: 80px;
        z-index: 999;
    }
    .page-template-floorplans header#header.open {
        height: 100vh;
    }
    .page-template-floorplans header#header.closed {
        overflow: hidden;
        z-index: 7;
    }
    .page-template-floorplans #content {
        display: flex;
        flex-direction: column;
        margin-top: 128px;
        padding-top: 4%;
        height: Calc(100vh - 128px);
    }
    .page-template-floorplans #content .wrapper {
        order: 3;
    }
    .page-template-floorplans #content .filterBar {
        order: 1;
        position: fixed;
        width: 100%;
        padding: 0% 10% 0% 8%;
        max-height: 0;
        overflow: hidden;
        flex: none;
        display: block;
        top: 0;
        left: 0;
        right: 0;
        z-index: 8;
        bottom: unset;
        height: auto;
        margin-bottom: 4%;
    }
    .page-template-floorplans #content .filterBar.open {
        max-height: 100vh;
        padding: 138px 10% 8% 8%;
        margin-bottom: 4%;
    }
    .page-template-floorplans #container {
        position: relative;
        z-index: 1;
    }
    #filterContainer {
        padding-left: Calc(6vw + 1em);
        padding-right: 0;
        font-size: .8em;
    }
    #filterContainer p {
        font-size: 1em;
    }
    #filterContainer .row {
        margin: 0 0 1em;
    }
    #filterContainer .row input[type=submit] {
        margin-top: 0;
        font-size: 1.5em;
        border-radius: .5em;
        padding: .5em 1em;
    }
    #filterContainer select {
        padding: 0.25em .5em .15em;
    }
    #abrirFiltro {
        position: fixed;
        top: 80px;
        bottom: unset;
        background: #5E5E5E;
        display: block;
        order: 2;
        width: 100%;
        padding: .5em .5em .25em;
        height: auto;
        z-index: 9;
    }
    #abrirFiltro:after {
        content: "Filter";
        color: #F27A48;
        font-weight: 700;
        font-size: 2em;
        line-height: 1.6em;
        vertical-align: bottom;
        display: inline-block;
        margin: 0 0 0 .25em;
    }
    html[lang^="es"] #abrirFiltro:after {
        content: "Filtrar";
    }
    #abrirFiltro img {
        margin-bottom: 0;
        -webkit-transform: rotateZ(-90deg);
        transform: rotateZ(-90deg);
    }
    #abrirFiltro img.rotate {
        -webkit-transform: rotateZ(90deg);
        transform: rotateZ(90deg);
    }
    .page-template-floorplans #container {
        height: 100vh;
    }
    .unitsContainer {
        height: auto;
        padding-top: 0;
        padding-bottom: 10vh;
    }
    .unit {
        width: 100%;
    }
    .unit>div {
        margin-bottom: 0;
    }
    footer {
        padding-top: 20px;
        padding-bottom: 40px;
    }
    :not(.page-template-contact) #footer {
        padding: 0 55px 10px 10px;
    }
    #copyright .wrapper>* {
        display: block;
        text-align: center !important;
    }
    #footer .menu li {
        float: none;
        display: block;
        text-align: center;
    }
    #footer .menu li a {
        display: block;
        padding: .5em .25em;
    }
    #footer .menu {
        margin: 0 auto 1em;
    }
    :not(.page-template-contact) #footer .menu {
        margin: 0;
    }
    :not(.page-template-contact) #copyright .wrapper {
        width: 100%;
    }
    :not(.page-template-contact) #footer .menu li {
        display: inline-block;
        margin-right: .75em;
        font-size: .8em;
    }
    #footer .address {
        padding: 2em 0 1.7em;
        margin: 1em 0;
        border-top: 0.5px solid #fff;
        border-bottom: 0.5px solid #fff;
    }
    #footer .logoF {
        margin-left: 10%;
        max-height: initial;
        max-width: 30%;
    }
    #footer .logoF:first-child {
        margin-left: 0;
    }
    .page-template-floorplans #footer {
        /*display: none;*/
        padding: 0 10px;
        background: rgb(0,0,0);
        background: linear-gradient(0deg, rgba(0,0,0,0.8) 0%, rgba(0,0,0,0) 100%);
    }
    .backButton {
        padding-top: .5em;
    }
    #unitBody {
        display: block;
        position: static;
        height: 100vh;
        overflow: auto;
        padding-top: 80px;
    }
    #unitLeft {
        width: 100%;
        height: auto;
        position: static;
        padding: 20px;
    }
    #unitLeft .title {
        margin-bottom: .25em;
    }
    #unitRight {
        position: static;
        width: 100%;
        height: auto;
        padding: 20px 20px 160px;
    }
    .planoLeft {
        max-height: 50vw;
    }
    #unitModal .backButton {
        margin-bottom: 60px;
    }
    #unit-footer {
        padding: 0 20px;
        display: none;
    }
    #unitModal {
        max-height: 200vh;
        -webkit-transition: all 1s;
        transition: all 1s;
    }
    #unitModal:not(.open) {
        max-height: 0;
        overflow: hidden;
    }
    #amenities {
        flex-direction: column;
        height: auto;
        position: relative;
    }
    .amenity {
        min-width: 100%;
        width: 100%;
        height: auto;
        max-width: 100vh;
        padding: 100px 50px;
    }
    .amenity.open {
        min-width: 100vw;
        max-width: 100vw;
        max-height: 100vh;
        height: 100vh;
    }
    .amenity.closed {
        min-width: 100vw;
        max-width: 100vw;
        max-height: 0vw;
        padding: 0;
        min-height: 0vw;
        overflow: hidden;
    }
    .amenity p {
        max-width: 100%;
    }
    #amenitiesContainer {
        position: relative;
        height: auto;
    }
    #amenitiesContainer .arrow {
        display: none;
    }
    #amenities .backArrow {
        top: 150px;
    }
    .menu-item.video {
        display: block;
        position: relative;
        left: auto;
        top: auto;
        margin: auto;
        margin-top: 1em;
        transform: none;
    }
    #map {
        flex-basis: 100%;
    }
    #legend {
        display: none;
    }
    .blog .grid-item {
        padding-left: 0;
        padding-right: 0;
        margin-bottom: 40px;
        position: relative !important;
        left: 0 !important;
        right: 0 !important;
        top: 0 !important;
        bottom: 0 !important;
        width: 100% !important;
    }
    .blog #content>.wrapper {
        height: auto !important;
    }
    .blog #content .header {
        padding: 25% 0 20%;
    }
    #footerLogos,
    .footerMenu {
        width: 100%;
    }
    .sectionsResidences {
        flex-wrap: wrap;
        height: auto;
    }
    .sectionsResidences .bed {
        width: 100%;
        max-width: 100%;
        min-width: 100%;
        height: 33.33333vh;
        padding: 5em 0 0;
        font-size: 0.8em;
    }
    .sectionsResidences .bed span {
        display: block;
        margin-bottom: 0.3em;
        margin-right: 0;
    }
    .sectionsResidences .bed .logosSelect img {
        max-width: 30px !important;
    }
    .sectionsResidences .bed .bottomSelect {
        padding: 4em 2em 2em;
    }
}

@media (min-width: 768px) and (max-width: 1024px) {
    .blog #content>.wrapper {
        margin-top: -15%;
    }
    .blog #content .header {
        padding: 15% 0 20%;
    }
    .blog .grid-sizer,
    .blog .grid-item {
        width: 46% !important;
    }
}

@media screen and (max-width: 767px) and (orientation: landscape) {
    ul.menu li {
        margin: 0 0 .5em;
    }
    #main-menu {
        margin: 10vh 2em 0vh 0;
    }
    #secondary-menu,
    #languageSelector {
        bottom: 15%;
        position: absolute;
    }
    #secondary-menu {
        left: 70%;
    }
    #socialIcons {
        top: 10vh;
    }
    .residencesMenu {
        height: 200vh;
    }
    .page-template-floorplans #content .filterBar.open {
        padding-top: 138px;
    }
    .page-template-floorplans #content {
        height: calc(100% - 128px);
    }
    #filterContainer .row {
        width: 40%;
        float: left;
    }
    #filterContainer .row:nth-of-type(2n+0) {
        margin-left: 20%;
    }
    #filterContainer .row:nth-of-type(2n+1) {
        clear: left;
    }
    .unitsContainer {
        flex-direction: row;
    }
    .unit {
        width: Calc(50% - 10px);
        float: left;
    }
    .unit:nth-of-type(2n+0) {
        margin-right: 0;
    }
    .unit:nth-of-type(2n+1) {
        clear: both;
    }
    .unit .title {
        white-space: nowrap;
    }
    .unit>div .right img {
        max-height: 120px;
    }
    #unitLeft {
        width: 40%;
        padding: 40px 20px 40px 50px;
    }
    .planoLeft {
        max-height: 30vh;
    }
    #unitRight {
        width: 60%;
        padding: 40px 100px 40px 40px;
    }
    #unit-footer {
        display: none;
    }
    #unitModal .backButton {
        margin-bottom: 40px;
    }
}

@supports (-webkit-touch-callout: none) {
    header#header {
        /*position: absolute;*/
    }
    header#header.closed video {
        opacity: 0;
    }
}

input[type=checkbox].CybotCookiebotDialogBodyLevelButton+label{
    padding-left: 3.5em !important;
}
a#CybotCookiebotDialogBodyLevelButtonAccept, a#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowAll, a#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelection{
    background-color: #F98248 !important;
    border: 1px solid #F98248 !important;
}