/* RESET STYLES */

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: inherit;
    font-size: 100%;
    vertical-align: baseline;
}
html {
    line-height: 1;
}
ol, ul {
    list-style: none;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
caption, th, td {
    text-align: left;
    font-weight: normal;
    vertical-align: middle;
}
q, blockquote {
    quotes: none;
}
q:before, q:after, blockquote:before, blockquote:after {
    content: "";
    content: none;
}
a img {
    border: 0;
}
img{
    border: 0;
	max-width: 100%;
}
a{
    text-decoration: none;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {
    display: block;
}

* {
    box-sizing: border-box;
}

/* GENERAL STYLES, TEXT FORMATTING AND  TYPOGRAPHY */

html, body {
    min-height: 100%;
    width: 100%;
    font: normal 16px 'Montserrat', sans-serif;
    background-color: #fff;
    line-height: 1;
    color: #4e4e4e;
}

strong{
    font-weight: bold;
}

em{
    font-style: italic;
}

/**
* For modern browsers - http://nicolasgallagher.com/micro-clearfix-hack/
*/
.cf:before,
.cf:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}

.cf:after {
    clear: both;
}
 
/**
 * For IE 6/7 only
 * Include this rule to trigger hasLayout and contain floats.
 */
.cf {
    *zoom: 1;
}

.relative,
.underline,
.river-estates-amenities-title {
    position: relative;
}

.absolute,
.underline::after,
.river-estates-amenities-title::after,
.river-estates-slider .slick-dots,
.river-estates-slider .slick-arrow {
    position: absolute;
}

.rel-center {
    margin: 0 auto;
}

.d-block,
.rel-center,
.open .menu,
.river-terrace .residences-header-title,
.community .community-header-title {
    display: block;
}

.d-flex,
#photo-viewer.show,
.river-estates-slider .slick-dots {
    display: flex;    
}

.d-flex-wrap,
.model-container {
    flex-wrap: wrap;
}

.d-inline-block,
.btn-virtual-tour::before,
.renovations:before,
.new-developments:before {
    display: inline-block;
}

.d-none,
.open .hamburger {
    display: none;
}

.full-w,
.river-view-list.inner-list,
.river-estates-list.inner-list,
.social-icons > li > a,
.image-button .btn,
.river-estates-slider .slick-dots,
.model-a-fachada,
.model-a-sala,
.model-b-fachada,
.model-b-sala,
.appointment-form {
    width: 100%;
}

.headline {
    font-size: 2.5rem;
    font-weight: 600;
}

.headline.alt {
    font-size: 3rem;
}

.subheadline {
    font-size: 1.75rem;
    font-weight: 600;
}

.subheadline.alt {
    font-size: 2.10rem;
}

.body-text,
.model-features-list.alt > li {
    font-size: 1.5rem;
    line-height: 2.5rem;
}

.headline,
.body-text {
    margin-bottom: 2.875rem;
}

.body-text.alt {
    margin-bottom: 1.5rem;
    line-height: 1.2;
}

.body-text.alt,
.google-map-btn,
.new-developments,
.renovations,
.river-estates-list > li,
.btn-site-map.hokey-pokey-back,
.river-estates .citas-btn {
    font-size: 1.125rem;
}

.body-list {
    width: 665px;
    padding-left: 20px;
    list-style-type: disc;
    margin-bottom: 2.5rem;
}

.body-list > li {
    margin-bottom: 0.5rem;
}

.uppercase {
    text-transform: uppercase;
}

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

.underline::after {
    content: '';
    width: 250px;
    height: 3px;
    bottom: -18px;
    left: 50%;
    transform: translateX(-50%);
}

.underline.alt::after {
    left: 0;
    transform: none;
}

.header,
.main,
.bg-bars-restaurants {
    background-color: transparent;
    background-repeat: no-repeat;
    background-position: center top;
}
.main,
.bg-bars-restaurants {
    background-position-y: 120px;
}

.main {
    background-image: url(../img/bg-diagonal-stripe-2.png);
}

.bg-bars-restaurants {
    background-image: url(../img/bg-diagonal-stripe.png);
}

.river-terrace .main {
    background-image: url(../img/bg-grey-square.png);
}

.move-up {
    margin-top: -100px;
}

.vrm .move-up {
    margin-top: -60px;
}

.social-icons {
    top: 15px;
    left: 15px;
}

.social-icons > li {
    width: 30px;
    height: 30px;
    margin: 0 10px;
}

.social-icons > li > a {
    height: 100%;
}

.social-icons > li > a.lang-switcher {
    display: block;
    width: 30px;
}

.d-flex-justify-center,
.social-icons,
.nav,
.development-logos-container,
.form-group,
.button-container,
.model-name-container,
.community-amenities-list,
.floorplans-container.side-by-side,
.river-estates-slider .slick-dots,
#photo-viewer.show {
    justify-content: center;
}

.nav {
    overflow: hidden;
}

.nav,
.model-container,
.model-name-container,
.floorplans-container.side-by-side {
    align-items: flex-start;
}

.home .nav,
.residences .nav,
.location .nav {
    padding-top: 142px;
}

.river-terrace .nav {
    padding-top: 360px;
}

.community .nav {
    padding-top: 368px;
}

.vrm .nav {
    padding-top: 268px;
}

.river-view .nav {
    padding-top: 360px;
}

.river-estates .nav {
    padding-top: 220px;
}

.header-logo {
    width: 488px;
    margin-right: 20%;
}

.river-estates .header-logo {
    width: 700px;
    margin-right: 20%;
}

.vrm .header-logo {
    width: 400px;
    margin-top: 45px;
    margin-bottom: 100px;
}

.community .header-logo {
    width: 643px;
    margin-top: 90px;
    margin-right: 16%;
}

.logo-river-club,
.logo-river-village,
.floorplans-image,
.community .header-logo {
    margin-bottom: 40px;
}

.header-title-container {
    width: 764px;
}

.community .header-title-container {
    width: 1010px;
}

.river-terrace .header-title-container {
    top: 325px; /* .river-terrace .nav margin top - 35px */
}

.header-title {
    right: 0;
    font-size: 2.6875rem;
    font-weight: 600;
}

.header-title .smaller {
    font-size: 0.3255em;
    font-weight: 900;
}

.hamburger,
.icon-leaves {
    width: 60px;
}

.home .hamburger,
.residences .hamburger,
.location .hamburger {
    margin-top: 275px;
}

.river-view .hamburger,
.river-estates .hamburger {
    margin-top: 150px;
}

.river-terrace .hamburger {
    margin-top: 120px;
}

.vrm .hamburger {
    margin-top: 149px;
}

.community .hamburger {
    margin-top: 142px;
}

.hamburger,
.menu-close span {
    cursor: pointer;
}

.menu {
    margin-left: -225px;
}

.home .menu,
.residences .menu,
.location .menu {
    margin-top: 215px;
}

.river-view .menu,
.river-estates .menu {
    margin-top: 80px;
}

.river-terrace .menu {
    margin-top: 40px;
}

.vrm .menu {
    margin-top: 90px;
}

.community .menu {
    margin-top: 80px;
}

.menu > li {
    padding: 8px 0;
    border-bottom: 2px solid #4e4e4e;
    text-align: right;
}

.menu > li.menu-close {
    border-bottom: none;
}

.menu-close span {
    padding: 8px;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    -o-border-radius: 50%;
    border-radius: 50%;
}

.menu-link,
.river-estates-list {
    font-size: 1.375rem;
}

.menu-link {
    font-weight: 600;
}

.menu-link .smaller {
    font-size: 0.60em;
}

.menu-link,
.menu-link:active,
.menu-link:visited {
    color: #4e4e4e;
}

.content-image {
    margin-bottom: -4%;
}

.content-image.pull-up {
    margin-top: -4%;
}

.content-image.alt {
    margin-bottom: -3%;
}

.button-container {
    margin-top: 90px;
    margin-bottom: 100px;
}

.image-button {
    width: 292px;
    height: 360px;
    margin: 22px;
    background-color: transparent;
    background-repeat: no-repeat;
    background-position: center top;
    background-size: contain;
}

.residencias {
    background-image: url(../img/btn-residences.png);
}

.comunidad {
    background-image: url(../img/btn-community.png);
}

.river-view .comunidad {
    background-image: url(../img/btn-river-view-community.jpg);
}

.river-estates .comunidad {
    background-image: url(../img/river-estates-return-home.jpg);
}

.cita {
    background-image: url(../img/btn-appointments.png);
}

.return-home {
    background-image: url(../img/btn-pool-2.png);
}

.river-view .return-home {
    background-image: url(../img/btn-river-view-home.jpg);
}

.river-estates .return-home {
    background-image: url(../img/river-estates-home.jpg);
}

.image-button .btn {
    bottom: 0;
}

.image-button .btn {
    padding: 1.75rem 5px;
}

.river-view .image-button .btn,
.river-estates .image-button .btn {
    bottom: -15px;
}

.image-button .btn,
.btn-site-map.btn {
    font-size: 1.5rem;
}

.image-button .btn.multiline {
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    line-height: 1.2;
}

.btn {
    background: transparent url(../img/bg-image-buttons.png) no-repeat center bottom;
}

.river-view .btn,
.river-estates .btn {
    background-image: initial;
    border-radius: 40px;
}

@media (max-width: 1400px) {
    .move-up,
    .vrm .move-up {
        margin-top: -50px;
    }

    .content-image {
        margin-bottom: -3.25%;
    }

    .content-image.alt {
        margin-bottom: -1.5%;
    }
}

@media (max-width: 1250px) {
    .river-estates .header-logo {
        max-width: 650px;
        margin-right: 30%;
    }
}

@media (max-width: 1200px) {
    html, body {
        font-size: 14px;
    }

    .menu {
        margin-left: -190px;
    }

    .image-button .btn {
        background-size: contain;
    }

    .image-button {
        width: 260px;
        height: 320px;
    }
}

@media (max-width: 1030px) {
    .header {
        background-position-x: 20%;
    }

    .river-terrace .nav {
        padding-top: 260px;
    }

    .river-terrace .header-title-container {
        top: 220px;
    }

    .community .nav {
        padding-top: 268px;
    }

    .community .header-title-container {
        width: 75%;
    }

    .river-estates .header-logo {
        max-width: 450px;
        margin-right: 25%;
    }
}

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

    .header {
        background-position: -300px top;
    }

    .header-logo,
    .vrm .header-logo {
        width: 314px;
        margin-right: 25%;
    }

    .community .header-logo {
        width: 450px;
    }

    .river-terrace .header-logo {
        margin-bottom: 100px;
    }

    .home .hamburger,
    .residences .hamburger,
    .river-view .hamburger,
    .river-estates .hamburger,
    .location .hamburger {
        margin-top: 160px;
    }

    .community .hamburger {
        margin-top: 115px;
    }

    .home .menu, 
    .residences .menu,
    .river-view .menu,
    .river-estates .menu,
    .location .menu {
        margin-top: 85px;
    }

    .vrm .hamburger {
        margin-top: 110px;
    }

    .vrm .menu {
        margin-top: 0;
    }

    .community .menu {
        margin-top: 50px;
    }

    .menu {
        margin-top: 100px;
        margin-left: -165px;
    }

    .image-button {
        width: 225px;
        height: 275px;
        margin: 10px;
    }

    .header-title-container {
        width: 625px;
    }
}

@media (max-width: 768px) {
    html, body {
        font-size: 10px;
    }

    .header {
        background-position-x: left;
    }

    .nav {
        justify-content: space-between;
    }

    .river-terrace .nav,
    .community .nav,
    .vrm .nav,
    .home .nav,
    .residences .nav,
    .river-view .nav,
    .river-estates .nav,
    .location .nav {
        padding-top: 100px;
    }

    .vrm .header-logo {
        width: 35%;
        margin-bottom: 130px;
        margin-top: 0;
    }

    .header-logo,
    .river-estates .header-logo,
    .community .header-logo {
        width: 45%;
        margin-right: 0;
        margin-left: 5%;
    }

    .community .header-logo {
        margin-top: 30px;
        margin-bottom: 60px;
    }

    .header-title {
        right: 5%;
        font-size: 2rem;
    }

    .river-terrace .header-title-container {
        top: 90px;
    }

    .hamburger {
        width: 40px;
    }

    .hamburger,
    .menu {
        margin-right: 5%;
    }

    .river-terrace .hamburger {
        margin-top: 90px;
    }

    .community .hamburger {
        margin-top: 42px;
    }

    .vrm .hamburger {
        margin-top: 0;
    }

    .community .menu {
        margin-top: 15px;
    }

    .move-up {
        margin-top: 0;
    }

    .content-image,
    .content-image.alt {
        margin-bottom: 5px;
    }

    .button-container {
        flex-direction: column;
        margin-top: 50px;
        margin-bottom: 50px;
    }

    .image-button {
        width: 185px;
        height: 230px;
        align-self: center;
    }

    .body-list {
        width: 75%;
        padding-left: 1.5%;
    }
}

@media (max-width: 650px) {
    .body-text {
        padding-left: 2.5%;
        padding-right: 2.5%;
    }

    .body-text br:not(.mobile-yes) {
        display: none;
    }

    .home .header-logo,
    .residences .header-logo,
    .river-view .header-logo,
    .river-estates .header-logo,
    .location .header-logo {
        margin-bottom: 30px;
    }

    .home .hamburger, .location .hamburger,
    .residences .hamburger,
    .river-view .hamburger,
    .river-estates .hamburger {
        margin-top: 80px;
    }

    .home .menu, .location .menu,
    .residences .menu,
    .river-view .menu,
    .river-estates .menu {
        margin-top: 0px;
    }

    .vrm .header-logo {
        margin-bottom: 150px;
    }
}

/* HOME */
.home .header,
.residences .header {
    background-image: url(../img/bg-home-header.png);
}

.logo-ciudad-jardin {
    width: 445px;
    margin-bottom: 100px;
}

.mb-0,
.logo-ciudad-jardin.alt,
.river-view-list > li:last-of-type,
.river-estates-list > li:last-of-type,
.body-text.alt.river-estates-amenities-title,
.river-view .appointment-title,
.river-estates .appointment-title {
    margin-bottom: 0;
}

.master-plan {
    width: 855px;
}

@media (max-width: 995px) {
    .master-plan {
        width: 85%;
    }
}

@media (max-width: 768px) {
    .logo-ciudad-jardin {
        width: 70%;
    }

    .home .header-logo,
    .residences .header-logo,
    .river-view .header-logo,
    .river-estates .header-logo,
    .location .header-logo {
        margin-left: -5%;
    }
}

/* COMMUNITY */
.community .header {
    background-image: url(../img/bg-community-header.jpg);
}

.community .main {
    background-color: #f2f2f2;
    background-image: none;
}

.logo-river-club {
    width: 275px;
}

.logo-river-village {
    width: 378px;
}

.community-amenities-text .bigger {
    vertical-align: middle;
    line-height: 1 !important;
    margin-top: -10px;
}

.community-spacer {
    margin-bottom: 31.25%;
    border: none !important;
}

.river-village-map-container,
.river-village-map-legend { /* 967w x 726h */
    width: 95%;
    max-width: 967px;
}

.renovations:before,
.new-developments:before,
.map-pin {
    -webkit-border-radius: 100%;
    -moz-border-radius: 100%;
    -o-border-radius: 100%;
    -khtml-border-radius: 100%;
    border-radius: 100%;
}

.map-pin {
    z-index: 3;
    width: 2.481902792140641%;
    height: 3.305785123966942%;
    cursor: pointer;
}

.popup-modal {
    z-index: 4;
    padding: 0.5rem;
    width: 10rem;
}

.map-pin.orange,
.new-developments::before,
.popup-modal.orange {
    background-color: #f69220;
}

.map-pin.blue,
.renovations::before,
.popup-modal.blue {
    background-color: #28aae1;
}

.restaurante {
    left: 49.017580144777663%;
    top: 19.696969696969697%;
}

.terraza-restaurante {
    top: 16%;
    left: 43.5%;
}

.estacionamiento {
    top: 23.553719008264463%;
    left: 13.44364012409514%;
}

.estacionamiento-calle {
    top: 42.148760330578512%;
    left: 20.47569803516029%;
}

.estacionamiento-abajo {
    top: 78.236914600550964%;
    left: 70.217166494312306%;
}

.estacionamiento-derecha {
    top: 51.101928374655647%;
    left: 85.108583247156153%;
}

.pro-golf-shop {
    top: 19.559228650137741%;
    left: 39.503619441571872%;
}

.oficina-ventas {
    top: 23.966942148760331%;
    left: 32.574974146845915%;
    z-index: 5;
}

.almacen-mantenimiento-golf {
    top: 27.823691460055096%;
    left: 20.579110651499483%;
}

.piscina {
    top: 53.443526170798898%;
    left: 44.777662874870734%;
}

.rotonda {
    top: 61.845730027548209%;
    left: 40.020682523267839%;
}

.casa-club {
    top: 71.349862258953168%;
    left: 49.327817993795243%;
}

.oficiona-asoc-prop {
    top: 74.242424242424242%;
    left: 39.503619441571872%;
}

.canchas-tenis {
    top: 62.534435261707989%;
    left: 66.287487073422958%;
}

.cancha-baloncesto {
    top: 66%;
    left: 81.799379524301965%;
}

.ofic-admin {
    top: 71.074380165289256%;
    left: 28.955532574974147%;
}

.entrada {
    top: 80.440771349862259%;
    left: 17.063081695966908%;
}

.river-deli {
    top: 27.272727272727273%;
    left: 30.920372285418821%;
}

.gym {
    top: 20.385674931129477%;
    left: 21.09617373319545%;
}

.areas-peatonales-a {
    top: 35.12396694214876%;
    left: 35.056876938986556%;
}

.areas-peatonales-b {
    top: 55.647382920110193%;
    left: 55.635987590486039%;
}

.estacionamiento-golf-a {
    top: 25.895316804407713%;
    left: 25.439503619441572%;
}

.estacionamiento-golf-b {
    top: 39.256198347107438%;
    left: 84.384694932781799%;
}

.playard {
    top: 62.396694214876033%;
    left: 31.230610134436401%;
}

.tennis-center {
    top: 44.214876033057851%;
    left: 71.458117890382627%;
}

.beach-tennis {
    top: 35.12396694214876%;
    left: 71.458117890382627%;
}

.control-acceso {
    top: 29.889807162534435%;
    left: 95.036194415718718%;
}

.dog-park {
    top: 90.220385674931129%;
    left: 30.403309203722854%;
}

.zahara-circle {
    top: 20.95%;
    left: 34.5%;
}


.zahara,
.peacock,
.racquet-club,
.buena-vista {
    z-index: 4;
    width: 8.273009307135471%;
    height: 12.409513960703206%;
    background-color: transparent;
    background-repeat: no-repeat;
    background-position: center center;
}

.buena-vista {
    left: 46%;
    top: 7%;
    background-image: url(../img/pin-buena-vista.png);
}

.zahara {
    top: 9%;
    left: 31.5%;
    background-image: url(../img/pin-zahara.png);
}

.peacock {
    top: 16%;
    left: 26%;
    background-image: url(../img/pin-peacock.png);
}

.racquet-club {
    top: 35%;
    left: 64%;
    background-image: url(../img/pin-racquet-club.png);
}

.zahara,
.peacock,
.racquet-club,
.buena-vista {
    background-size: contain;
}

.river-village-map-legend {
    justify-content: space-evenly;
    margin-top: 25px;
    margin-bottom: 78px;
}

.renovations,
.new-developments,
.image-button .btn,
.model-features-title,
.model-features-list > li,
.model-features-list .sublist > li,
.model-name-container .subheadline,
.model-name {
    line-height: 1;
}

.renovations:before,
.new-developments:before {
    content: '';
    vertical-align: middle;
    width: 1.5rem;
    height: 1.5rem;
    margin-right: 0.75rem;
}

@media (max-width: 992px) {
    .bg-bars-restaurants > .body-text br {
        display: none;
    }
}

@media (max-width: 768px) {
    .community-amenities-list {
        flex-direction: column;
    }

    .logo-river-village {
        width: 275px;
    }

    .logo-river-club {
        width: 200px;
    }
}

/* LOCATION */
.location .header {
    background-image: url(../img/bg-location-header.jpg);
}

.location-map {
    width: 998px;
}

.google-map-btn {
    width: 190px;
    padding: 16px 8px;
    margin-top: 45px;
    background-size: contain;
}

@media (max-width: 995px) {
    .location-map {
        width: 75%;
    }
}

@media (max-width: 768px) {
    .location-map {
        width: 95%;
    }
}

/* VRM COMPANIES */
.vrm .header {
    background-image: url(../img/bg-vrm-header.jpg);
}

.vrm-link {
    width: 250px;
    padding: 25px 0;
    margin-top: 80px;
    background-size: contain;
}

@media (max-width: 1200px) {
    .vrm-link {
        width: 200px;
        padding: 20px 0;
    }
}

@media (max-width: 995px) {
    .vrm-link {
        width: 180px;
        padding: 18px 0;
    }
}

@media (max-width: 768px){
    .vrm-link {
        width: 150px;
        padding: 15px 0;
    }
}

/* RESIDENCES */
.river-terrace .header {
    background-image: url(../img/bg-our-residences-header.jpg);
}

.btn-image-models {
    margin-bottom: 80px;
}

.models-container {
    padding-top: 80px;
    background: #fff url(../img/bg-page-danubio.png) no-repeat center top;
}

.model-a {
    padding-bottom: 150px;
}

.model-b {
    padding-bottom: 100px;
}

@media (min-width: 996px) {
    .model-danubio {
        background-size: cover;
        padding-bottom: 20%;
    }
}

@media (max-width: 995px) {
    .model-danubio {
        margin-bottom: 50px;
        padding-bottom: 50px;
    }
}

.model-container {
    width: 960px;
    margin-bottom: 55px;
}

.model-name-container {
    margin-bottom: 0.75rem;
}

.model-name-container .subheadline {
    padding-top: 0.56rem;
    padding-bottom: 0.565rem;
}

.model-name-container .subheadline,
.model-name {
    margin-left: 0.5rem;
    margin-right: 0.5rem;
}

.model-b-fachada,
.model-a-fachada,
.model-b-patio,
.model-a-patio,
.model-b-description,
.model-a-description,
.model-a-sala,
.model-b-sala,
.model-a-cuarto,
.model-a-bathroom,
.model-b-cuarto,
.model-b-bathroom,
.floorplans-container,
.model-features,
.river-terrace-price,
.river-view-info-container > img,
.river-view-info-container > ul,
.river-view-amenities-container > div {
    margin-bottom: 45px;
}

.model-a-patio,
.model-b-patio {
    width: 63%;
    margin-right: 3%;
}

.model-a-description,
.model-b-description {
    list-style-type: disc;
    width: 34%;
    padding-left: 3%; /* should match the margin-right of patio when in the same line */
}

@media (min-width: 769px) {
    .model-a-description.alt {
        align-self: flex-end;
    }
}

.model-a-description > li.no-bullet,
.model-b-description > li.no-bullet {
    list-style-type: none !important;
    padding-top: 10px;
}

.model-a-description > li,
.model-b-description > li {
    margin-bottom: .5rem;
    line-height: 1.2;
}

.model-name {
    font-family: ofelia-text, sans-serif;
    font-weight: 500;
    font-size: 2.875rem;
}

.btn-virtual-tour {
    padding: 1rem 1.5rem;
    margin: 0;
    background: #4E4E4E url(../img/bg-btn-leaf.png) no-repeat right top;
    -moz-border-radius: 27px;
    -webkit-border-radius: 27px;
    -o-border-radius: 27px;
    border-radius: 27px;
    font-size: 1rem;
}

.btn-virtual-tour::before {
    vertical-align: middle;
    content: '';
    width: 2.25rem;
    height: 1.875rem;
    margin-right: 1rem;
    background: transparent url(../img/icon-virtual-tour.svg) no-repeat left center;
}

.btn-virtual-tour::before,
body.river-view,
.river-view-info {
    background-size: cover;
}

.btn-virtual-tour {
    margin-left: -25px;
}

.model-a-cuarto,
.model-b-cuarto {
    width: 69.5%;
    margin-right: 2.8%;
}

.model-a-bathroom,
.model-b-bathroom {
    width: 27.7%;
}

.model-features {
    width: 30%;
}

.model-features.margined {
    margin: 0 5%;
}

.model-features-title {
    margin-bottom: 10px;
}

.model-features-title,
.model-features-list > li {
    margin: 10px 0;
}

.model-features-title,
.model-features-list > li,
.model-a-description > li,
.model-b-description > li {
    font-size: 1rem;
}

.model-features-list {
    list-style-type: disc;
}

.model-features-list .sublist {
    list-style-type: circle;
    margin-top: 10px;
}

.model-features-list .sublist > li {
    margin: 5px 0;
    font-size: .9em;
}

.model-features-list,
.sublist {
    margin-left: 15px;
 }

.floorplans-container {
    width: 49.8%;
}

.floorplans-container.margin-right {
    margin-right: 0.4%;
}

.pdf-download-icon,
.river-view-floorplan-download-btn {
    width: 66px;
}

.river-estates .river-view-floorplan-download-btn {
    width: 50px;
}

.model-danubio .floorplans-container .model-features-list.alt,
.model-b .floorplans-container .model-features-list.alt {
    margin-left: 30px;
}

.model-a .padd {
    padding: 75px 0 0 100px;
}

.model-a .floorplans-container .pdf-download-icon {
    margin-top: 45px;
}

.model-features-list.alt > li {
    line-height: 1.2;
}

.floorplans-container .model-features-list {
    margin-left: 24px;
}

.river-terrace .button-container {
    margin-top: 0;
}

.river-terrace .google-map-btn {
    margin-bottom: 100px;
}

.btn-site-map {
    width: 35.625rem;
    padding: 1.5rem 1rem 2rem;
    margin-bottom: 9rem;
    background: transparent url(../img/bg-btn-longer.png) no-repeat center center;
    background-size: contain;
    font-size: 2rem;
    line-height: 1.2;
}

.btn-site-map.orange-back {
    margin-top: 100px;
}

.btn-site-map.orange-back,
.btn-site-map.hokey-pokey-back {
    background-image: none;
    -moz-border-radius: 4.6875rem;
    -webkit-border-radius: 4.6875rem;
    -o-border-radius: 4.6875rem;
    -ms-border-radius: 4.6875rem;
    -khtml-border-radius: 4.6875rem;
    border-radius: 4.6875rem;
}

@media (max-width: 995px) {
    .model-container {
        width: 90%;
    }

    .btn-image-models {
        width: 50%;
    }
}

@media (max-width: 768px){
    .model-container {
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }

    .model-a-patio,
    .model-b-patio {
        margin-right: 0;
        width: 80%;
        max-width: 600px;
    }

    .model-a-description,
    .model-b-description {
        width: 200px;
        padding-left: 0;
        padding-top: 0;
    }

    .model-a-cuarto,
    .model-b-cuarto {
        max-width: 605px;
    }

    .model-a-bathroom,
    .model-b-bathroom {
        max-width: 266px;
    }
    
    .model-a-cuarto,
    .model-b-cuarto,
    .model-a-bathroom,
    .model-b-bathroom {
        width: 80%;
    }

    .model-a-cuarto,
    .model-b-cuarto {
        margin-bottom: 40px;
    }

    .floorplans-container {
        margin-left: 0;
        margin-right: 0;
    }

    .floorplans-container.margin-right {
        margin-right: 0;
    }

    .model-b .floorplans-container .pdf-download-icon,
    .model-danubio .floorplans-container .pdf-download-icon {
        margin: 0 auto;
    }

    .model-features,
    .model-features.margined {
        width: 300px;
        margin: 0;
    }

    .model-a .padd {
        padding: 0 !important;
    }

    .model-features-title, 
    .model-features-list > li,
    .model-a-description > li,
    .model-b-description > li {
        font-size: 1.5rem;
      }
}

/* FOOTER */
.footer {
    padding-top: 50px;
    background: transparent url(../img/bg-leaf-green-overlay.png) no-repeat center bottom;
    overflow: auto;
}

.citas-btn {
    width: 375px;
    padding: 25px 10px;
    margin-bottom: 75px;
    background-size: contain;
    line-height: 1.2;
}

.river-view .citas-btn,
.river-estates .citas-btn {
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
    -o-border-radius: 50px;
    -khtml-border-radius: 50px;
    border-radius: 50px;
}

.citas-btn,
.river-view-list > li {
    font-size: 1.25rem;
}

.logo-terrace-footer {
    width: 200px;
    margin-top: 15px;
    margin-bottom: 15px;
}

.appointment-title {
    padding-bottom: 30px;
    margin-bottom: 130px;
    background: transparent url(../img/icon-arrow-down-green.svg) no-repeat center bottom;
    background-size: 25px auto;
}

.appointment-form-wrapper {
    width: 740px;
}

.appointment-form,
.river-view-fachada,
.icon-leaves {
    margin-bottom: 50px;
}

.d-flex-align-items-center,
.development-logos-container,
.form-group,
#photo-viewer.show {
    align-items: center;
}

.form-group {
    margin-bottom: 10px;
}

.form-label {
    width: 137px;
    padding-right: 20px;
    text-align: right;
}

.form-field {
    width: 603px;
    height: 45px;
    padding: 0 10px;
    border: 2px solid #bcbdc0;
}

.form-field,
.form-submit-btn,
.form-submit-btn-rv {
    color: #4e4e4e;
}

.form-submit-btn,
.form-submit-btn-rv,
.form-submit-btn-river-estates {
    width: 150px;
    padding: 8px;
    border: none;
    margin-right: 0;
    margin-top: 20px;
    -moz-border-radius: 16px;
    -webkit-border-radius: 16px;
    -o-border-radius: 16px;
    border-radius: 16px;
    cursor: pointer;
}

.form-label,
.form-field,
.form-submit-btn,
.form-submit-btn-rv,
.form-submit-btn-river-estates {
    font-size: 1.0625rem;
}

.development-logos-container {
    padding-bottom: 10px;
}

.river-view .development-logos-container,
.river-estates .development-logos-container {
    margin-top: 50px;
}

.vrm-development {
    width: 235px;
}

.fembi {
    width: 214px;
}

.equal-lender {
    width: 89px;
}

.equal-opportunity {
    width: 115px;
}

.river-estates .equal-lender {
    width: 222px;
}

.vrm-development,
.fembi,
.equal-lender,
.equal-opportunity {
    margin: 0 11px;
}

@media (max-width: 768px) {
    .footer {
        padding-top: 100px;
    }

    .citas-btn {
        width: 250px;
        padding: 20px 5px;
    }

    .appointment-form-wrapper {
        width: 95%;
    }
    
    .form-group {
        flex-direction: column;
        margin-bottom: 15px;
    }
    
    .form-label {
        padding-right: 0;
        text-align: left;
        margin-bottom: 6px;
    }
    
    .form-submit-btn,
    .form-submit-btn-rv {
        margin-right: auto;
    }

    .header-title-container,
    .river-terrace .header-title-container,
    .community .header-title-container,
    .floorplans-container,
    .form-label,
    .form-field {
        width: 100%;
    }
}

@media (max-width: 700px) {
    .development-logos-container {
        padding-bottom: 10px;
        flex-wrap: wrap;
    }

    .vrm-development,
    .fembi {
        width: 200px;
        margin: 8px 25%;
    }

    .equal-lender {
        width: 100px;
    }

    .river-estates .equal-lender {
        width: 150px;
    }

    .equal-opportunity {
        width: 125px;
    }
    
    .equal-lender,
    .equal-opportunity {
        margin: 8px 5%;
    }
}

/* RIVER VIEW - RIVER ESTATES */
body.river-view {
    background: rgba(209, 200, 69, 0.3) url(../img/bg-swishes.svg) no-repeat center 200px;
}

body.river-estates {
    background: #ecc594 url(../img/bg-gradient-with-leaves.svg) no-repeat center top;

}

.river-view .header {
    background-image: url(../img/bg-river-view-header.jpg);
}

.river-estates .header {
    background-image: url(../img/bg-top-bar.png);
    background-position-y: -2px;
}

.river-view .main {
    padding-top: 40px;
    background: initial;
}

.webp.river-estates .main {
    background: transparent url(../img/bg-curved-leafy.webp) no-repeat center bottom;
}

.no-webp.river-estates .main {
    background: transparent url(../img/bg-curved-leafy.png) no-repeat center bottom;
}

.river-estates .main {
    padding-top: 75px;
    padding-bottom: 200px;
    background-size: initial;
    overflow-x: hidden;
}

.btn-call-us {
    z-index: 99;
    width: 20.4375rem;
    top: 115px;
    right: -4rem;
}

.btn-vive-mejor {
    width: 17rem;
    padding: 1.5rem 2rem 1.5rem 1.5rem;
    margin-bottom: 4rem;

    background: #ae441e url(../img/icon-arrow-in-circle-white.svg) no-repeat 90% center;
    background-size: 1.75rem;
    font-size: 1.625rem;

    -moz-border-radius: 30px;
    -webkit-border-radius: 30px;
    -o-border-radius: 30px;
    border-radius: 30px;
}

.four-dots {
    width: 200px;
    margin-bottom: 85px;
}

.body-leaf-right,
.body-leaf-top-left {
    z-index: 2;
}

.body-leaf-top-left {
    top: 0;
    left: 0;
}

.body-leaf-right {
    top: -65%;
    right: 0;
}

.river-view-fachada,
.river-view-site-map,
.river-view-info-container,
.river-view-amenities-container,
.river-view-floorplans-container,
.river-view-list.alt,
.river-estates-list.alt {
    width: 90%;
}

.river-view-fachada {
    max-width: 1008px;
}

.rounded-top-green-back {
    padding: 4.75rem 10px;
    background: transparent url(../img/bg-rounded-top-stripe.svg) no-repeat center top;
    background-size: 100% auto;
}

.river-view-info {
    padding: 60px 1% 0 1%;
    background: #fff url(../img/bg-swishes-2.svg) no-repeat center 100px;
}

.river-estates-info {
    padding: 145px 1% 0 1%;
}

.no-webp .river-estates-info {
    background-color: #fff;
    background-image: url(../img/bg-curved-leafy-2.png), url(../img/bg-white-leaves.jpg);
    background-repeat: no-repeat, no-repeat;
    background-position: center top, center top;
}

.webp .river-estates-info {
    background-color: #fff;
    background-image: url(../img/bg-curved-leafy-2.png), url(../img/bg-white-leaves.webp);
    background-repeat: no-repeat, no-repeat;
    background-position: center top, center top;
}

.river-view-info-container,
.river-view-amenities-container {
    max-width: 960px;
    align-items: flex-start;
}

.river-view-info-container,
.river-view-amenities-container,
.river-estates-floorplans-container,
.river-view-floorplans-container {
    justify-content: space-between;
}

.river-estates-slider,
.river-estates-patio,
.river-estates-living-room,
.river-estates-bedroom {
    width: 90%;
    max-width: 960px;
    margin-bottom: 60px;
}

.river-estates-amenities-title {
    width: fit-content;
    padding: 0.75rem 1.25rem;
}

.river-estates-amenities-title::after {
    content: " ";
    top: 0;
    right: -1.25rem;
    width: 1.5rem;
    height: 100%;
    background: transparent url(../img/bg-banner-right-point.svg) no-repeat right center;
}

.river-view-floorplans-container {
    max-width: 1115px;
}

.river-estates-floorplans-container {
    max-width: 845px;
}

.river-view-floorplans-bg,
.river-estates-floorplans-bg {
    margin: 0 -1%;
    padding: 90px 0;
    background: #fff url(../img/bg-rounded-bottom.svg) no-repeat center top;
}

.river-view-floorplans-bg {
    background-size: cover;
}

.river-estates-floorplans-bg {
    padding-top: 190px;
    padding-bottom: 90px;
}

.webp .river-estates-floorplans-bg {
    background-image: url(../img/bg-river-estates-floorplans.webp);
}

.no-webp .river-estates-floorplans-bg {
    background-image: url(../img/bg-river-estates-floorplans.jpg);
}

.river-estates-floorplans-item {
    max-width: 384px;
    margin-bottom: 20px;
}

.river-estates-floorplans-title {
    font-size: 1.15625rem;
    line-height: 1.4;
}

.river-view-floorplans-bg .body-leaf-top-left {
    top: -20%;
}

.river-estates-decorative-bar {
    height: 140px;
}

.no-webp .river-estates-decorative-bar {
    background: transparent url(../img/bg-spacer-bar-middle.png) no-repeat right top;
}

.webp .river-estates-decorative-bar {
    background: transparent url(../img/bg-spacer-bar-middle.webp) no-repeat right top;
}

.river-view-pool {
    width: 63%;
}

.river-view-list,
.river-estates-list {
    padding-left: 20px;
    width: 35%;
    list-style-type: square;
    margin-left: 2%;
}

.river-estates-list {
    margin-left: 0;
}

.river-view-list.alt,
.river-estates-list.alt {
    padding-top: 20px;
}

.river-view-list > li,
.river-estates-list > li {
    margin: 13px 0;
}

.river-view-list > li:first-of-type,
.river-estates-list > li:first-of-type {
    margin-top: 0;
}

.river-view-amenities-container {
    max-width: 575px;
}

.river-view-floorplans-item,
.river-estates-floorplans-item {
    width: 49%;
}

.vive-alegre {
    padding: 20px 0 86px 0;
}

.vive-inspirado {
    padding: 120px 0;
}

.webp .vive-inspirado {
    background: transparent url(../img/bg-gradient-peach-with-leaves.png) no-repeat center top;
}

.no-webp .vive-inspirado {
    background: transparent url(../img/bg-gradient-peach-with-leaves.webp) no-repeat center top;
}

.vive-inspirado .headline {
    font-size: 4.125rem;
    font-weight: 800;
}

.vivie-inspirado-lists {
    max-width: 610px;
}

.river-view-site-map {
    max-width: 1000px;
}

.btn-site-map.hokey-pokey-back {
    width: 18rem;
    padding: 1rem;
    margin-top: 20px;
    margin-bottom: 0;
}

.google-map-btn.orange-back {
    background-image: none !important;
    
    -moz-border-radius: 26px;
    -webkit-border-radius: 26px;
    -o-border-radius: 26px;
    -khtml-border-radius: 26px;
    border-radius: 26px;
}

.river-view .form-label {
    color: initial;
}

.river-estates-neighborhood-section {
    padding-bottom: 75px;
}

.river-view .footer,
.river-estates .footer {
    padding: 100px 0 50px 0;
    background: #D1C845 url(../img/bt-rounded-down-green.png) no-repeat center top;
    background-size: 100% auto;
}

.river-view .footer .body-text,
.river-view .footer .body-text a,
.river-view .footer .body-text a:active,
.river-view .footer .body-text a:visited {
    color: initial;
}

.form-submit-btn-river-estates {
    margin-right: auto;
}

.no-webp.river-estates .footer {
    background: #fff url(../img/bg-footer.jpg) no-repeat center top;
}

.webp.river-estates .footer {
    background: #fff url(../img/bg-footer.webp) no-repeat center top;
}

.river-estates-slider .slick-dots {
    bottom: 8px;
}

.river-estates-slider .slick-arrow,
.river-estates-slider .slick-dots {
    z-index: 999;
}

.river-estates-slider .slick-dots > li {
    margin: 4px;
}

.river-estates-slider .slick-dots > li > button {
    width: 1rem;
    height: 1rem;
    background-color: #ecc695;
}

.river-estates-slider .slick-dots > li.slick-active > button,
.river-estates-slider .slick-arrow {
    background-color: #ac451f;
}

.river-estates-slider:hover .slick-arrow {
    opacity: 1;
}

.river-estates-slider .slick-dots > li > button,
.river-estates-slider .slick-arrow {
    border: none;
    border-radius: 100%;
    font-size: 0;
}

.river-estates-slider .slick-next {
    right: 8px;
    background-image: url(../img/icon-slider-arrow-right.svg);
}

.river-estates-slider .slick-prev {
    left: 8px;
    background-image: url(../img/icon-slider-arrow-left.svg);
}

.river-estates-slider .slick-arrow {
    top: 50%;
    transform: translateY(-50%);
    width: 3rem;
    height: 3rem;
    opacity: 0.5;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 1.5rem;
}

@media (max-width: 1475px) {
    .body-leaf-right,
    .body-leaf-top-left {
        width: 100px;
    }

    .body-leaf-right {
        top: -25%;
    }

    .river-view-floorplans-bg .body-leaf-top-left {
        top: -8%;
    }
}

@media (max-width: 1375px) {
    body.river-view {
        background-position-y: 250px;
    }
}

@media (max-width: 1200px) {
    .body-leaf-right,
    .body-leaf-top-left {
        width: 75px;
    }

    .body-leaf-right {
        top: -15%;
    }

    .river-view-floorplans-bg .body-leaf-top-left {
        top: -4%;
    }

    .river-view .header {
        background-position-x: 20%;
    }
}

@media (max-width: 995px) {
    .body-leaf-right,
    .body-leaf-top-left,
    .body-leaf-right {
        display: none;
    }

    .river-view-pool,
    .river-view-list,
    .river-view-amenities-container > div,
    .river-view-floorplans-item {
        width: 100%;
    }

    .river-view-floorplans-item > img,
    .river-estates-floorplans-item > img,
    .river-view-floorplan-download-btn {
        margin: 0 auto;
        display: block;
    }

    .river-view-floorplans-item,
    .river-estates-floorplans-item {
        margin-bottom: 50px;
    }

    .river-view-floorplans-item > .body-text,
    .river-estates-floorplans-item > .body-text {
        text-align: center;
    }

    .river-estates .main {
        padding-top: 120px;
    }

    .btn-call-us {
        top: 15px;
    }
}

@media (max-width: 768px) {
    .river-view .button-container {
        padding-bottom: 50px;
    }

    .river-view .button-container .image-button {
        margin-bottom: 25px;
    }

    .river-view .header {
        background-position-x: left;
    }

    .river-estates-decorative-bar {
        background-position-x: 90% !important;
    }

    .vivie-inspirado-lists {
        flex-direction: column;
        align-items: center;
        max-width: 300px;
    }

    .vivie-inspirado-lists .river-estates-list.alt {
        padding-top: 13px;
    }

    .river-estates-floorplans-container {
        padding-left: 1.5%;
        padding-right: 1.5%;
    }
}

/* NUESTRAS RESIDENCIAS */
.nuestras-residencias-choose-btn {
    margin: 25px 4.5rem;
}

.nuestras-residencias-choose-btn img {
    margin-bottom: 2.5rem;
}

.nuestras-residencias-choose-btn.rv img {
    width: 22.1875rem;
}

.nuestras-residencias-choose-btn.rt img {
    width: 28.4375rem;
}

.nuestras-residencias-choose-btn > span {
    padding: 0.75rem 1.5rem;
    font-size: 1.4rem;
    border-radius: 35px;
}

.residences .main {
    padding: 26.5rem 0;
    background: #fff url(../img/bg-grey-diagonal-stripe.png) no-repeat center top;
}

/* OVERRIDES */
.z-3 {
    z-index: 3;
}

.bigger {
    font-size: 2em;
}

.margin-bottom-0 {
    margin-bottom: 0 !important;
}

@media (max-width: 768px) {
    .margin-bottom-45-m {
        margin-bottom: 45px;
    }
}

.white,
.white a,
.white a:active,
.white a:visited,
.image-button .btn,
.form-label,
.btn-virtual-tour,
.btn-virtual-tour:active,
.btn-virtual-tour:visited,
.river-view .form-submit-btn-rv,
.form-submit-btn-river-estates,
.body-text.river-estates-amenities-title,
.river-estates-floorplans-title {
    color: #fff;
}

.green,
.menu-link:hover,
.menu-link.active,
.model-a-description ::marker,
.model-b-description ::marker,
.model-features-list ::marker,
.model-features-list .sublist ::marker,
.river-view-list.inner-list > li::marker {
    color: #006b31;
}

.dark-green,
.river-estates-list.inner-list > li::marker {
    color: #25453e;
}

.metallic-brown {
    color: #ae441e;
}

.orange,
.orange:active,
.orange:visited,
.orange a,
.orange a:active,
.orange a:visited,
.river-view-list > li::marker {
    color: #D68028;
}

.orange-back,
.river-view .form-submit-btn-rv,
.underline.alt::after {
    background-color: #D68028;
}

.hokey-pokey-back,
.form-submit-btn-river-estates,
.river-estates-amenities-title {
    background-color: #b08c31;
}

.hokey-pokey,
.river-estates-list > li::marker {
    color: #b08c31;
}

.blue,
.blue:active,
.blue:visited,
.blue a,
.blue a:active,
.blue a:visited,
.model-name {
    color: #0e5f97;
}

.blue-back {
    background-color: #0e5f97;
}

.green-back,
.underline::after,
.menu-close span {
    background-color: #006b31;
}

.white-back,
.form-field,
.form-submit-btn,
.form-submit-btn-rv,
.vive-alegre {
    background-color: #fff;
}

.hokey-pokey-back {
    background-color: #b08c31;
}

.hokey-pokey,
.hokey-pokey:active,
.hokey-pokey:visited,
.hokey-pokey a:active,
.hokey-pokey a:visited {
    color: #b08c31;
}

#loader, 
#photo-viewer {
    display: none;
    position: fixed;
    z-index: 9998;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

#loader {
    background: rgba(255, 255, 255, 0.7) url(../img/ajax-loader.gif) no-repeat center center;
}

#photo-viewer {
    background-color: #fff;
}

.photo-viewer__close-btn {
    z-index: 9999;
    top: 32px;
    right: 32px;
    padding: 12px 16px;
    border: 2px solid #000;
    border-radius: 50%;
    font-size: 18px;
    background-color: transparent;
    cursor: pointer;
}

.photo-viewer__img {
    max-height: 95vh;
}