/*
Theme Name: fsanchez-pending.com
Description: AIOS mobile semi-custom theme.
Author: AgentImage
Author URI: http://www.agentimage.com
Version: 1.6.0
Tags: one-column, two-columns, right-sidebar, custom-menu, full-width-template, sticky-post
License: Proprietary
License URI: http://www.agentimage.com
Template: aios-starter-theme
*/
/*
TABLE OF CONTENTS
1. Variables
2. Custom CSS
3. IP styles
4. MEDIA QUERIES ARE AUTOMATICALLY REMOVED FROM THIS FILE, they must be placed in style-media-queries.css
*/
/*******************************************************
 *
 * 1. Variables
 *
 *******************************************************/
:root {
    /** Font default */
    --font-default: 'Source Sans Pro', sans-serif;
    --font-alt: 'Lato', sans-serif;
    --font-jll: 'jll_handregular', cursive;
    --font-size-default: 14px;
    --font-size-title: 18px;
    --font-color-default: #000000;
    --font-color-title: #000000;
    /** Use for input, button, and any other element */
    --primary: #e82822;
    --secondary: #dbd6c7;
    --success: #28a745;
    --info: #17a2b8;
    --warning: #ffc107;
    --danger: #dc3545;
    --light: #f8f9fa;
    --dark: #343a40;
}

#main-wrapper {
    overflow: hidden;
}

a {
    color: inherit;
}

a:hover,
a:focus {
    color: var(--primary);
}

a:hover,
a:focus,
.slick-slide,
.slick-slide a {
    outline: none;
    text-decoration: none;
}

input,
select,
textarea {
    outline: none;
}

.flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
}

.flex:before,
.flex:after {
    display: none;
}

.dir-col {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column wrap;
    flex-flow: column wrap;
}

.dir-col-reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-flow: column-reverse wrap;
    flex-flow: column-reverse wrap;
}

.dir-row-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-flow: row-reverse wrap;
    flex-flow: row-reverse wrap;
}

.al-center {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.al-start {
    -webkit-box-align: start;
    -ms-flex-align: start;
    /*align-items: flex-start; */
    align-items: center;
}

.al-end {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
}

.ju-center {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.ju-start {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

.ju-end {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

.ju-between {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

/*******************************************************
 *
 * 2. Navigation
 *
 *******************************************************/
/* Sub Menu */
#nav li {
    position: relative;
}

#nav li a {
    display: flex;
    align-items: center;
    flex-flow: row wrap;
}

#nav>li {
    display: inline-block;
    vertical-align: top;
    padding: 4px 0 5px;
    /*margin-right: 15px;*/
    margin-right: 40px;
}

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

#nav>li>a {
    font-size: 13px;
    color: #000;
    font-weight: 400;
    padding: 8px 0;
    position: relative;
}

#nav>li>a:before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: var(--primary);
    transform-origin: right;
    transform: scaleX(0);
    transition: transform .3s ease;
}

#nav>li:hover>a:before,
#nav>li:focus-within>a:before {
    transform: scaleX(1);
    transform-origin: left;
}

#nav>li>a:after {
    content: "\b0207";
    position: relative;
    font-family: agentimage !important;
    speak: none;
    font-style: normal;
    font-weight: 400;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-size: 9px;
    color: #9c9c9c;
    top: 3px;
    margin-left: 5px;
    display: none;
}

#nav .sub-menu {
    list-style: none outside none;
    margin: 0;
    background: #fff;
    text-align: center;
    padding: 0;
    position: absolute;
    width: 100%;
    min-width: 200px;
    transform: translateY(20px);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: all .3s ease;
}

#nav>li>.sub-menu {
    left: calc(50% - 100px);
}

#nav .sub-menu a {
    color: #000;
    display: block;
    padding: 10px;
    font-size: 16px;
    transition: all .3s ease;
}

#nav .sub-menu li:hover>a,
#nav .sub-menu li:focus-within>a {
    background: var(--primary);
    color: #fff;
}

#nav .sub-menu .sub-menu {
    margin-left: 100%;
    top: 0;
}

#nav li:hover>.sub-menu,
#nav li:focus-within>.sub-menu {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
    pointer-events: all;
}

/*******************************************************
 *
 * 3. Custom CSS
 *
 *******************************************************/
/* Global */
body {
    font-family: var(--font-default);
    font-size: var(--font-size-default);
    background: #FFFFFF;
    color: var(--font-color-default);
    margin: 0;
    /* Remove the comment from line 85 to 86 if the font issue in safari occurs */
    /* -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; */
}

.section-title {
    text-align: center;
    font-size: 55px;
    line-height: 1;
    color: #000;
    font-weight: 900;
}

.section-title:after {
    content: '';
    display: block;
    position: relative;
    width: 290px;
    max-width: 90%;
    margin: 32px auto 0;
    height: 1px;
    background: #d1d1d1;
}

.section-title strong {
    font-weight: inherit;
}

.section-title.is-white {
    color: #fff;
}

.section-title.is-white:after {
    background: #ce202b;
}

a.btn-a,
.btn-a {
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    justify-content: center;
    text-align: center;
    width: 260px;
    height: 52px;
    border: 1px solid var(--secondary);
    font-size: 18px;
    font-weight: 600;
    letter-spacing: 0.02em;
    color: #000;
    background: transparent;
    position: relative;
    z-index: 1;
    transition: background .3s ease, color .3s ease, border .3s ease;
}

.btn-a:before {
    content: '';
    position: absolute;
    top: -1px;
    left: -1px;
    right: -1px;
    bottom: -1px;
    transform-origin: left;
    background: var(--secondary);
    transition: all .3s ease;
    z-index: -1;
    transform: scaleX(0);
}

.btn-a:hover:before,
.btn-a:focus:before {
    transform: scaleX(1);
}

a.btn-a:hover,
.btn-a:hover,
a.btn-a:focus,
.btn-a:focus {
    color: #000;
}

/*header*/
header.header.animate-in,
header.header.active {
    position: fixed;
}

header.header.animate-in {
    transform: translateY(-100%);
}

header.header.active {
    transform: translateY(0);
    transition: all .3s ease;
}

header.header.animate-out {
    transform: translateY(-100%);
}

/*.header.active .header-logo {
        -webkit-box-ordinal-group: 2;
            -ms-flex-order: 1;
                order: 1;
    }
    .header .header-right {
        -webkit-box-ordinal-group: 4;
            -ms-flex-order: 3;
                order: 3;
        width: auto;
    }
        .header .header-register-login {
            position: relative;
        }
    .header .header-navigation {
        border-top: 0;
        -webkit-box-ordinal-group: 3;
            -ms-flex-order: 2;
                order: 2;
        width: auto;
        margin-right: auto;
        -webkit-box-flex: 1;
            -ms-flex-positive: 1;
                flex-grow: 1;
    }*/
.header.active .header-right {
    order: 3;
}

.header.active .header-navigation {
    order: 2;
    width: auto;
    flex-grow: 1;
    border-top: 0;
}

.header.active .header-register-login {
    position: relative;
}

.active .header-logo {
    margin-left: 0;
}

.active #nav {
    padding: 0 15px 0 25px;
}

.active #nav>li {
    margin-right: 30px;
}

.active #nav>li>a {
    font-size: 12px;
}

.active #nav>li>a:after {
    display: none;
}

.header .header-register-login {
    margin-right: 15px;
}

.header .header-register-login span,
.active .country-select-name {
    font-size: 13px;
}

.active .header-search {
    margin-left: 15px;
}

header.header {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 100;
    background: #fff;
    font-family: var(--font-alt);
}

.header-logo {
    font-size: 0;
    margin-left: 50px;
    order: 1;
}

.header-logo a {
    display: inline-block;
}

.header-logo a img {}

.header-right {
    padding: 24px 0 21px;
    position: relative;
    order: 2;
}

.header-register-login {
    position: absolute;
    top: 100%;
    /*left: 0;*/
    right: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    /*display: none;*/
}

.header-register-login a {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #000;
    padding: 12px 0;
    transition: color .3s ease;
    white-space: nowrap;
}

.header-register-login a i.icon-bell {
    display: block;
    width: 14px;
    height: 16px;
    background: url(images/icon-bell.jpg) center/contain no-repeat;
    top: 1px;
    position: relative;
    margin-right: 10px;
}

.header-register-login span {
    font-size: 16px;
}

.header-register-login a:hover,
.header-register-login a:focus {
    color: var(--primary);
}

.header-country {
    display: none;
}

.country-select-btn {
    background: transparent;
    border: none;
    padding: 0;
    display: flex;
    align-items: center;
    flex-flow: row wrap;
    /*padding: 5px 0 0;*/
}

i.country-select-flag {
    background-image: url(images/flags.png);
    background-repeat: no-repeat;
    display: inline-block;
    width: 21px;
    height: 16px;
    top: 1px;
    position: relative;
}

.country-select-btn i.ai-font-arrow-g-d {
    font-size: 9px;
    color: #9c9c9c;
    top: 3px;
}

.country-select-name {
    font-size: 16px;
    color: #000;
    margin: 0 13px 0 12px;
}

.header-search {
    margin-left: 24px;
}

.search-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    background: var(--primary);
    color: #fff;
    font-size: 17px;
    border: none;
    transition: background .3s ease;
}

.search-btn i {
    transform: rotateY(180deg);
}

.search-btn i:before {
    font-weight: 700;
}

.search-btn:hover,
.search-btn:focus {
    background: var(--secondary);
}

.header-navigation {
    width: 100%;
    border-top: 1px solid #e1e1e1;
    order: 3;
    /*display: none;*/
}

#nav {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-flow: row wrap;
    padding: 0 50px;
}

.mobile-menu-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    background: var(--primary);
    color: #fff;
    font-size: 17px;
    border: none;
    transition: background .3s ease;
    border-left: 1px solid #b1050f;
}

.mobile-menu-btn span {
    width: 80%;
    position: relative;
    padding: 0;
    background: none;
    border: none;
    height: 2px;
    background: #fff;
    display: block;
    transition: all 0.5s ease;
}

.mobile-menu-btn span:before {
    content: ' ';
    height: 2px;
    background: #fff;
    width: 100%;
    display: block;
    position: absolute;
    top: -8px;
    transition: all 0.5s ease;
}

.mobile-menu-btn span:after {
    content: ' ';
    height: 2px;
    background: #fff;
    width: 100%;
    display: block;
    position: absolute;
    top: 8px;
    transition: all 0.5s ease;
}

.mobile-menu-btn.active span {
    background: transparent;
}

.mobile-menu-btn.active span:before {
    transform: rotate(-45deg);
    top: 0;
}

.mobile-menu-btn.active span:after {
    transform: rotate(45deg);
    top: 0;
}

/*header end*/
/*mobile menu*/
.mobile-menu-wrap {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    width: 320px;
    max-width: 100%;
    background: #fff;
    z-index: 99;
    padding: 120px 5% 30;
}

/*mobile menu end*/
/*country list*/
.country-dropdown.active {
    /*max-height: 710px;
    padding: 20px;
    box-shadow: 0 0 8px 0 rgb(0 0 0 / 30%);*/
    opacity: 1;
    visibility: visible;
    pointer-events: all;
}

.country-dropdown {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: all .3s ease-in-out;
    position: absolute;
    top: 100%;
    right: 0;
    z-index: 10;
    padding: 20px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 0 8px 0 rgb(0 0 0 / 30%);
}

.country-dropdown-inner {
    display: flex;
    font-size: 18px;
}

.country-region {
    padding: 0 20px;
    min-width: 190px;
}

.country-region-label {
    color: #000;
    font-weight: 900;
    margin-bottom: 10px;
    display: block;
    font-family: var(--font-default);
    font-size: 16px;
}

.country-region.two-col {
    min-width: 400px;
}

.country-region.two-col ul {
    column-count: 2;
}

.country-region ul {}

.country-region ul li {
    font-size: .9rem;
    white-space: nowrap;
    display: flex;
    align-items: center;
    page-break-inside: avoid;
}

.country-region ul li a {
    border-bottom: 1px solid transparent;
}

.country-region ul li a:hover,
.country-region ul li a:focus {
    color: #000;
    text-decoration-color: #e30613;
    background: none;
    border-bottom: 1px solid #e30613;
}

.country-region ul li.active {
    font-weight: 900;
}

.country-region i.country-select-flag {
    margin: 5px 10px 5px 5px;
}

i.country-select-flag[data-country="Argentina"] {
    background-position: -174px -154px;
}

i.country-select-flag[data-country="Brazil"] {
    background-position: -217px -10px;
}

i.country-select-flag[data-country="Canada"] {
    background-position: -217px -45px;
}

i.country-select-flag[data-country="Chile"] {
    background-position: -217px -80px;
}

i.country-select-flag[data-country="Colombia"] {
    background-position: -217px -115px;
}

i.country-select-flag[data-country="Mexico"] {
    background-position: -217px -150px;
}

i.country-select-flag[data-country="Peru"] {
    background-position: -10px -190px;
}

i.country-select-flag[data-country="United States"] {
    background-position: -51px -190px;
}

i.country-select-flag[data-country="Philippines"] {
    background-position: -94px -10px;
}

i.country-select-flag[data-country="Macau"] {
    background-position: -92px -190px;
}

i.country-select-flag[data-country="Sri Lanka"] {
    background-position: -133px -190px;
}

i.country-select-flag[data-country="Singapore"] {
    background-position: -94px -46px;
}

i.country-select-flag[data-country="Taiwan"] {
    background-position: -174px -190px;
}

i.country-select-flag[data-country="New Zealand"] {
    background-position: -215px -190px;
}

i.country-select-flag[data-country="Malaysia"] {
    background-position: -258px -10px;
}

i.country-select-flag[data-country="Japan"] {
    background-position: -10px -82px;
}

i.country-select-flag[data-country="Indonesia"] {
    background-position: -10px -10px;
}

i.country-select-flag[data-country="India"] {
    background-position: -258px -45px;
}

i.country-select-flag[data-country="Thailand"] {
    background-position: -258px -80px;
}

i.country-select-flag[data-country="Australia"] {
    background-position: -258px -115px;
}

i.country-select-flag[data-country="China (Mainland)"] {
    background-position: -258px -150px;
}

i.country-select-flag[data-country="Hong Kong"] {
    background-position: -258px -185px;
}

i.country-select-flag[data-country="Vietnam"] {
    background-position: -10px -225px;
}

i.country-select-flag[data-country="Romania"] {
    background-position: -51px -82px;
}

i.country-select-flag[data-country="Portugal"] {
    background-position: -92px -82px;
}

i.country-select-flag[data-country="Poland"] {
    background-position: -52px -10px;
}

i.country-select-flag[data-country="Netherlands"] {
    background-position: -135px -10px;
}

i.country-select-flag[data-country="Morocco"] {
    background-position: -135px -46px;
}

i.country-select-flag[data-country="Luxembourg"] {
    background-position: -135px -82px;
}

i.country-select-flag[data-country="Italy"] {
    background-position: -10px -118px;
}

i.country-select-flag[data-country="Israel"] {
    background-position: -51px -118px;
}

i.country-select-flag[data-country="Ireland"] {
    background-position: -92px -118px;
}

i.country-select-flag[data-country="France"] {
    background-position: -133px -118px;
}

i.country-select-flag[data-country="Hungary"] {
    background-position: -51px -225px;
}

i.country-select-flag[data-country="Germany"] {
    background-position: -176px -10px;
}

i.country-select-flag[data-country="Belgium"] {
    background-position: -92px -225px;
}

i.country-select-flag[data-country="Czech Republic"] {
    background-position: -133px -225px;
}

i.country-select-flag[data-country="Egypt"] {
    background-position: -174px -225px;
}

i.country-select-flag[data-country="Finland"] {
    background-position: -215px -225px;
}

i.country-select-flag[data-country="United Kingdom"] {
    background-position: -256px -225px;
}

i.country-select-flag[data-country="United Arab Emirates"] {
    background-position: -10px -260px;
}

i.country-select-flag[data-country="Slovakia"] {
    background-position: -51px -260px;
}

i.country-select-flag[data-country="Russia"] {
    background-position: -10px -46px;
}

i.country-select-flag[data-country="South Africa"] {
    background-position: -176px -46px;
}

i.country-select-flag[data-country="Ukraine"] {
    background-position: -176px -82px;
}

i.country-select-flag[data-country="Turkey"] {
    background-position: -176px -118px;
}

i.country-select-flag[data-country="Sweden"] {
    background-position: -10px -154px;
}

i.country-select-flag[data-country="Saudi Arabia"] {
    background-position: -51px -154px;
}

i.country-select-flag[data-country="Spain"] {
    background-position: -92px -154px;
}

i.country-select-flag[data-country="Switzerland"] {
    background-position: -133px -154px;
}

i.country-select-flag[data-country="Korea"] {
    background-position: -52px -46px;
}

/*country list end*/
/*slideshow*/
#hp-slideshow {
    position: relative;
}

.slideshow-content {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 3;
    padding: 6.2% 0 0;
}

.slideshow-discover {
    max-width: 745px;
    margin: 0 auto;
}

.slideshow-discover h2 {
    font-size: 55px;
    font-weight: 900;
    color: #fff;
    line-height: 1;
    margin-bottom: 12px;
}

#hp-slideshow .cycloneslider-template-responsive {
    background-color: #f5f5f5;
}

a.discover-btn {
    display: block;
    position: relative;
}

.discover-btn-text-wrap {
    display: block;
    background: #fff;
    height: 80px;
    color: #000;
    overflow: hidden;
    padding-right: 11%;
}

.discover-btn-text-wrap h3,
.discover-btn-text-wrap p {
    height: 100%;
    max-width: 615px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding: 0 30px;
    transition: transform .3s ease;
    margin: 0;
}

a.discover-btn:hover .discover-btn-text-wrap h3,
a.discover-btn:hover .discover-btn-text-wrap p,
a.discover-btn:focus .discover-btn-text-wrap h3,
a.discover-btn:focus .discover-btn-text-wrap p {
    transform: translateY(-100%);
}

.discover-btn-text-wrap h3 {
    /*height: 80px;*/
    font-size: 30px;
    font-weight: 400;
}

.discover-btn-text-wrap p {
    font-size: 14px;
    color: #000;
    line-height: 16px;
}

i.discover-btn-icon {
    position: absolute;
    left: 92.1%;
    top: 50%;
    transform: translateY(-50%);
}

i.discover-btn-icon:before {
    content: '';
    display: block;
    width: 28px;
    height: 2px;
    background: var(--primary);
    transition: all .3s ease;
}

i.discover-btn-icon:after {
    content: '';
    position: absolute;
    width: 16px;
    height: 16px;
    border-right: 2px solid var(--primary);
    border-bottom: 2px solid var(--primary);
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    transform: rotate(-45deg);
}

a.discover-btn:hover i.discover-btn-icon:before,
a.discover-btn:focus i.discover-btn-icon:before {
    width: 32px;
}

a.discover-btn span {
    position: absolute;
    top: 100%;
    right: 0;
    font-size: 16px;
    color: #fff;
    padding: 6px 15px 7px;
    background: var(--primary);
}

/*slideshow end*/
/*properties*/
#hp-rp {
    padding: 73px 0 88px;
}

#hp-cp {
    padding: 104px 0 118px;
    background: #f5f5f5;
}

#hp-fd {
    padding: 81px 0 48px;
}

.properties-wrap {
    position: relative;
    overflow: hidden;
}

.properties-wrap .section-title {
    margin-bottom: 56px;
}

.property-slick {
    font-size: 0;
    margin: 0 -3px;
}

.property-item:nth-child(4)~.property-item {
    display: none;
}

.property-item {
    width: 25%;
    padding: 0 3px;
    display: inline-block;
    vertical-align: top;
}

.property-item a {
    display: block;
    position: relative;
}

.property-item-img {
    position: relative;
}

.property-item-img canvas {
    display: block;
    width: 100%;
    background-position: center;
    background-size: cover;
    position: relative;
}

.property-item-img img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 1;
}

.property-item-img:before,
.property-item-img:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    opacity: 0;
    transition: opacity .3s ease;
    z-index: 2;
}

.property-item-img:before {
    background: var(--primary);
}

.property-item-img:after {
    background: url(images/jll-icon.svg) center no-repeat;
    /*background-size: 117px;*/
    background-size: 29.8%;
    -webkit-filter: brightness(0) invert(1);
    filter: brightness(0) invert(1);
}

.property-item a:hover .property-item-img:before,
.property-item a:focus .property-item-img:before {
    opacity: 0.8;
}

.property-item a:hover .property-item-img:after,
.property-item a:focus .property-item-img:after {
    opacity: 1;
}

.property-item-details {
    text-align: center;
    color: #000;
    padding: 40px 0 0;
}

.property-item-details .price,
.property-item-details .new-propertyname {
    font-weight: 600;
    font-size: 30px;
    line-height: 1;
    margin: 0 0 16px;
}

.property-item-details .price:after,
.property-item-details .new-propertyname:after {
    content: '';
    display: block;
    width: 60px;
    height: 1px;
    background: var(--primary);
    margin: 16px auto 0;
}

.property-item-details .address,
.property-item-details .new-mlsnumber,
.property-item-details .new-price,
.property-item-details .new-totalm2,
.property-item-details .new-lotm2 {
    font-weight: 600;
    font-size: 18px;
    line-height: 23px;
    letter-spacing: 0.05em;
    /* margin: 0 0 21px; */
    margin: 0 0 10px;
}

.property-item-details .address span,
.property-item-details .new-mlsnumber span,
.property-item-details .new-price span,
.property-item-details .new-totalm2 span {
    display: block;
    font-size: 16px;
    font-weight: 400;
    color: #565656;
}

.property-item-details .amenities {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-flow: row wrap;
}

.property-item-details .amenities span {
    padding: 7px 20px 8px;
    border-right: 1px solid rgba(0, 0, 0, 0.2);
    font-weight: 600;
    font-size: 12px;
    line-height: 1;
    letter-spacing: 0.15em;
    color: #000;
    text-transform: uppercase;
}

.property-item-details .amenities span:first-child {
    border-left: 0;
    padding-left: 0;
}

.property-item-details .amenities span:last-child {
    border-right: 0;
    padding-right: 0;
}

.property-btn {
    margin: 53px 0 0;
}

/*properties end*/
/*about*/
.ba-fixed {
    background-attachment: fixed !important;
}

.ios-true .ba-fixed,
.ipad-true .ba-fixed,
.mobile .ba-fixed {
    background-attachment: scroll !important;
}

#hp-about {
    position: relative;
    background-size: cover;
    background-position: center;
    z-index: 1;
    padding: 72px 0 108px;
}

#hp-about:before,
#hp-about:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
}

#hp-about:before {
    background: #fff;
    opacity: 0.9;
}

#hp-about:after {
    bottom: initial;
    height: 300px;
    background: rgb(255, 255, 255);
    background: -moz-linear-gradient(180deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%);
    background: -webkit-linear-gradient(180deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%);
    background: linear-gradient(180deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff", endColorstr="#ffffff", GradientType=1);
}

.abt-inner {}

.abt-text {
    /*width: 845px;*/
    /*width: 60.358%;*/
    width: 55.358%;
}

.abt-title {
    /*padding: 26px 75px 0;*/
    padding: 26px 8.9% 0;
    margin: 0 0 36px;
}

.abt-title span {
    display: block;
    font-size: 22px;
    letter-spacing: 0.4em;
    color: var(--primary);
    text-transform: uppercase;
    margin: 0 0 10px;
}

.abt-title strong {
    display: inline-block;
    font-size: 80px;
    font-weight: 900;
    color: #000;
    position: relative;
}

.abt-title strong:before {
    content: '';
    position: absolute;
    left: 100%;
    top: 25%;
    bottom: 0;
    margin: auto;
    width: 114px;
    height: 2px;
    background: var(--primary);
    margin-left: 28px;
}

.abt-text-box {
    background: #fff;
    padding: 52px 8.9% 71px;
}

.abt-text-box p.highlight {
    font-size: 18px;
}

.abt-text-box p {
    line-height: 24px;
    margin: 18px 0;
}

.abt-btn-list {
    margin: 44px 0 0;
}

.abt-btn-list a.btn-a {
    margin-right: 30px;
    width: 190px;
}

.abt-img {
    /*width: 505px;*/
    /*width: 36.072%;*/
    width: 41.072%;
    padding: 0 20px;
}

.abt-img img {
    display: block;
    width: 100%;
}

/*about end*/
/*map*/
#hp-map {
    position: relative;
    overflow: hidden;
    max-width: 1600px;
    margin: 0 auto;
    padding: 0 0 79px;
}

.map-inner {
    position: relative;
    /*margin-top: -2px;*/
    margin-top: -1px;
}

.map-area {
    /*width: 773px;*/
    width: 48.313%;
    position: relative;
}

.map-area img {
    font-size: 0;
    max-width: initial;
}

.map-area canvas {
    display: block;
    width: 100%;
}

.map-responsive {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.map-hovers {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    pointer-events: none;
}

.map-hover {
    position: absolute;
    top: 0;
    left: 0;
}

.map-hover img {
    opacity: 0;
    transform: scale(.9);
    transition: all .3s ease;
}

.map-hover.active img {
    opacity: 1;
    transform: scale(1);
}

.map-hover span {
    position: absolute;
    display: block;
    white-space: nowrap;
    font-size: 13px;
    letter-spacing: 0.05em;
    line-height: 16px;
    text-transform: uppercase;
    text-shadow: rgb(212, 213, 214) 2px 0px 0px, rgb(212, 213, 214) 1.75517px 0.958851px 0px, rgb(212, 213, 214) 1.0806px 1.68294px 0px, rgb(212, 213, 214) 0.141474px 1.99499px 0px, rgb(212, 213, 214) -0.832294px 1.81859px 0px, rgb(212, 213, 214) -1.60229px 1.19694px 0px, rgb(212, 213, 214) -1.97998px 0.28224px 0px, rgb(212, 213, 214) -1.87291px -0.701566px 0px, rgb(212, 213, 214) -1.30729px -1.5136px 0px, rgb(212, 213, 214) -0.421592px -1.95506px 0px, rgb(212, 213, 214) 0.567324px -1.91785px 0px, rgb(212, 213, 214) 1.41734px -1.41108px 0px, rgb(212, 213, 214) 1.92034px -0.558831px 0px;
}

.map-hover[data-area="area-lapaz"] {
    display: block;
    top: 6px;
    left: 148px;
}

.map-hover[data-area="area-lapaz"] span {
    top: 107px;
    left: 183px;
}

.map-hover[data-area="area-la-ventana"] {
    display: block;
    top: 101px;
    left: 458px;
}

.map-hover[data-area="area-la-ventana"] span {
    top: 78px;
    left: 41px;
}

.map-hover[data-area="area-east-cape-north"] {
    display: block;
    top: 198px;
    left: 526px;
}

.map-hover[data-area="area-east-cape-north"] span {
    top: 70px;
    left: 82px;
}

.map-hover[data-area="area-east-cape-south"] {
    display: block;
    top: 350px;
    left: 617px;
}

.map-hover[data-area="area-east-cape-south"] span {
    top: 141px;
    left: 21px;
}

.map-hover[data-area="area-san-jose-del-cabo"] {
    display: block;
    top: 568px;
    left: 593px;
}

.map-hover[data-area="area-san-jose-del-cabo"] span {
    top: 53px;
    left: 50px;
}

.map-hover[data-area="area-san-jose-corridor"] {
    display: block;
    top: 627px;
    left: 554px;
}

.map-hover[data-area="area-san-jose-corridor"] span {
    top: 31px;
    left: 54px;
}

.map-hover[data-area="area-cabo-corridor"] {
    display: block;
    top: 649px;
    left: 546px;
}

.map-hover[data-area="area-cabo-corridor"] span {
    top: 45px;
    left: 28px;
}

.map-hover[data-area="area-cabo-san-lucas"] {
    display: block;
    top: 646px;
    left: 494px;
}

.map-hover[data-area="area-cabo-san-lucas"] span {
    top: 57px;
    left: -62px;
}

.map-hover[data-area="area-pacific-south"] {
    display: block;
    top: 520px;
    left: 440px;
}

.map-hover[data-area="area-pacific-south"] span {
    top: 87px;
    left: -56px;
}

.map-hover[data-area="area-pescadero-cerritos"] {
    display: block;
    top: 462px;
    left: 418px;
}

.map-hover[data-area="area-pescadero-cerritos"] span {
    top: 43px;
    left: -87px;
}

.map-hover[data-area="area-todos-santos"] {
    display: block;
    top: 370px;
    left: 376px;
}

.map-hover[data-area="area-todos-santos"] span {
    top: 57px;
    left: -33px;
}

.map-hover[data-area="area-pacific-north"] {
    display: block;
    top: 94px;
    left: 89px;
}

.map-hover[data-area="area-pacific-north"] span {
    top: 175px;
    left: 170px;
}

.map-hover.no-hover {
    top: 383px;
    left: 477px;
}

.map-hover.no-hover span {
    position: relative;
    text-align: center;
}

.map-area-list {
    width: 51.687%;
    /*margin-top: 108px;*/
    /*padding-right: 110px;*/
    padding-right: 6.9%;
    padding-left: 20px;
    align-self: center;
    margin-top: 50px;
    flex-flow: column-reverse wrap !important;
}

.map-title {
    margin: 34px 31px 0;
}

.map-title span {
    display: block;
    font-weight: 700;
    font-size: 45.83px;
    letter-spacing: 0.05em;
    color: #000;
    text-transform: uppercase;
    margin: 0 0 4px;
}

.map-title strong {
    display: block;
    font-size: 114.71px;
    line-height: 1;
    color: #000;
    font-family: var(--font-jll);
    font-weight: 400;
}

.map-list {
    display: flex;
    flex-flow: column wrap;
    align-content: space-between;
    max-height: min(23.750vw, 380px);
}

.map-list li {
    width: 44.9%;
}

.map-list li a {
    display: block;
    font-weight: 600;
    letter-spacing: 0.05em;
    font-size: min(1.5vw, 24px);
    line-height: 1;
    text-transform: uppercase;
    position: relative;
    padding: min(23.125vw, 16px) 0 min(0.938vw, 15px) 40px;
    color: #000;
    transition: background .3s ease, color .3s ease;
}

.map-list li a:before {
    content: '';
    position: absolute;
    top: 15px;
    left: 14px;
    width: 15px;
    height: 26px;
    /*background: url(images/icon-cactus.png) center/contain no-repeat;*/
    background: url(images/icon-cactus-red.png) center/contain no-repeat;
    transition: all .3s ease;
}

.map-list li a:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 2px;
    transition: all .3s ease;
    background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAACCAYAAABhYU3QAAAAAXNSR0IArs4c6QAAABlJREFUGFdjnLn89H8GNJAeacqILsZIrEIAsmwIA/T8+YEAAAAASUVORK5CYII=
) repeat;
}

.map-list li:nth-child(6) a:after,
.map-list li:nth-child(12) a:after {
    display: none;
}

.map-list li a:hover,
.map-list li a.active,
.map-list li a:focus {
    /*background: #5b6499;*/
    background: #e30613;
    color: #fff;
}

.map-list li a:hover:before,
.map-list li a.active:before,
.map-list li a:focus:before {
    -webkit-filter: brightness(0) invert(1);
    filter: brightness(0) invert(1);
}

.map-list li a:hover:after,
.map-list li a.active:after,
.map-list li a:focus:after {
    opacity: 0;
}

/*map end*/
/*communities*/
#hp-communities {
    overflow: hidden;
    position: relative;
    padding: 82px 0 0;
}

#hp-communities .section-title {
    margin: 0 0 53px;
}

.comm-list {
    margin: 0 -3px;
    font-size: 0;
    /*max-height: 1150px;*/
    /*max-height: 71.875vw;*/
    max-height: 73vw;
    flex-flow: column wrap !important;
}

.comm-item:nth-child(6n - 5) .comm-item-img canvas,
.comm-item:nth-child(6n - 4) .comm-item-img canvas {
    /*height: 307px;*/
    height: 19.188vw;
}

.comm-item:nth-child(6n - 3) .comm-item-img canvas {
    /*height: 517px;*/
    height: 32.313vw;
}

.comm-item:nth-child(6n - 2) .comm-item-img canvas,
.comm-item:nth-child(6n - 1) .comm-item-img canvas {
    /*height: 428px;*/
    height: 26.750vw;
}

.comm-item:nth-child(6n) .comm-item-img canvas {
    /*height: 275px;*/
    height: 17.188vw;
}

.comm-item {
    display: inline-block;
    vertical-align: top;
    width: 25%;
    padding: 3px;
}

.comm-item a {
    display: block;
    position: relative;
}

.comm-item-img {
    position: relative;
}

.comm-item-img canvas {
    display: block;
    width: 100%;
    background-position: center;
    background-size: cover;
    position: relative;
    z-index: 1;
}

.comm-item-img:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #000;
    opacity: 0.2;
    z-index: 2;
    transition: all .3s ease;
    display: none;
}

.comm-item-name {
    position: absolute;
    bottom: 8.8%;
    left: 0;
    right: 0;
    /*font-size: 41px;*/
    font-size: min(2.563vw, 41px);
    text-align: center;
    color: #fff;
    font-family: var(--font-jll);
    z-index: 2;
    font-weight: 400;
    transform: translateY(0);
    transition: all .3s ease;
}

.comm-item a:hover .comm-item-img:before,
.comm-item a:focus .comm-item-img:before {
    background: var(--primary);
    opacity: 0.8;
}

.comm-item a:hover .comm-item-name,
.comm-item a:focus .comm-item-name {
    bottom: 50%;
    transform: translateY(50%);
}

/*communities end*/
/*cta*/
#hp-cta {
    position: relative;
    padding: 138px 0 91px;
}

.cta-list {
    margin: 0 -6px;
    font-size: 0;
}

.aos-animate~.cta-item {
    opacity: 1;
}

.aos-animate~.cta-item:nth-of-type(1) {
    transition-delay: 0s;
}

.aos-animate~.cta-item:nth-of-type(2) {
    transition-delay: 0.1s;
}

.aos-animate~.cta-item:nth-of-type(3) {
    transition-delay: 0.2s;
}

.aos-animate~.cta-item:nth-of-type(4) {
    transition-delay: 0.3s;
}

.aos-animate~.cta-item:nth-of-type(5) {
    transition-delay: 0.4s;
}

.aos-animate~.cta-item:nth-of-type(6) {
    transition-delay: 0.5s;
}

.cta-item {
    width: 33.33%;
    display: inline-block;
    vertical-align: top;
    padding: 0 6px 13px;
    opacity: 0;
    transition: all 1s ease;
}

.cta-item a {
    display: block;
    position: relative;
}

.cta-img {
    position: relative;
}

.cta-img canvas {
    display: block;
    width: 100%;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    -webkit-filter: grayscale(1);
    filter: grayscale(1);
    transition: all .3s ease;
    position: relative;
    z-index: 1;
    min-height: 250px;
}

.cta-img:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 2;
    transition: all .3s ease;
}

.cta-item:nth-child(odd) .cta-img:before {
    background: var(--secondary);
    opacity: 0.8;
}

.cta-item:nth-child(even) .cta-img:before {
    background: var(--primary);
    opacity: 0.7;
}

.cta-item a:hover .cta-img:before,
.cta-item a:focus .cta-img:before {
    background: #000;
    opacity: 0.3;
}

.cta-item a:hover .cta-img canvas,
.cta-item a:focus .cta-img canvas {
    -webkit-filter: grayscale(0);
    filter: grayscale(0);
}

.cta-item a:hover .btn-a:before,
.cta-item a:focus .btn-a:before {
    transform: scaleX(1);
}

.cta-details {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    z-index: 2;
    /*padding: 0 12% 0;*/
}

.cta-details h3 {
    font-size: 34px;
    font-weight: 600;
    letter-spacing: 0.05em;
    line-height: 1;
    color: #fff;
    margin: 0 0 24px;
    padding: 0 5%;
}

.cta-details h3:after {
    content: '';
    display: block;
    position: relative;
    width: 94px;
    height: 1px;
    margin: 25px auto 0;
    transition: all .3s ease;
}

.cta-details p {
    font-size: 14px;
    line-height: 18px;
    margin: 0 0 33px;
    transition: color .3s ease;
    padding: 0 12% 0;
}

.cta-details .btn-a {
    width: 190px;
    margin: 0 auto;
}

.cta-item a:hover .cta-details p,
.cta-item a:focus .cta-details p {
    color: #fff !important;
}

.cta-item a:hover .cta-details h3:after,
.cta-item a:focus .cta-details h3:after {
    background: #fff !important;
}

.cta-item a:hover .cta-details .btn-a,
.cta-item a:focus .cta-details .btn-a {
    border-color: var(--secondary) !important;
}

.cta-item a:hover .cta-details .btn-a:before,
.cta-item a:focus .cta-details .btn-a:before {}

.cta-item:nth-child(odd) .cta-details h3:after {
    background: #000;
}

.cta-item:nth-child(even) .cta-details h3:after {
    background: #fff;
}

.cta-item:nth-child(odd) .cta-details p {
    color: #000;
}

.cta-item:nth-child(even) .cta-details p {
    color: #fff;
}

.cta-item:nth-child(odd) .cta-details .btn-a {
    border-color: #000;
}

.cta-item:nth-child(even) .cta-details .btn-a {
    border-color: #fff;
}

/*cta end*/
/*videos*/
#hp-fv {
    position: relative;
    z-index: 1;
    padding: 95px 0 77px;
}

#hp-fv:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 281px;
    background: #000;
    z-index: -1;
}

#hp-fv .section-title {
    margin-bottom: 17px;
}

.video-list {
    position: relative;
    padding-top: 81px;
    padding: 81px 0 34px;
}

.video-list a {
    display: block;
    position: relative;
    transition: all .3s ease;
}

.video-list a canvas {
    display: block;
    width: 100%;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

.video-list a:before,
.video-list a .icon-play,
.video-list a .icon-play:before,
.video-list a .icon-play:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
}

.video-list .video-big a:before {
    background: #000;
    opacity: 0.4;
}

.video-list .video-small a:before {
    background: #000;
    opacity: 0.1;
}

.video-list a .icon-play {
    width: 139px;
    height: 139px;
    margin: auto;
    background: url(images/icon-play.png) center/contain no-repeat;
    border-radius: 50%;
    transition: background-color .3s ease;
    border-radius: 50%;
}

.video-list a .icon-play:before {
    border-radius: 50%;
    border: 1px solid #fff;
    opacity: 0.3;
    transition: opacity .3s ease;
}

.video-list a .icon-play:after {
    border-radius: 50%;
    border: 1px solid #fff;
    opacity: 0.5;
    top: 9%;
    left: 9%;
    right: 9%;
    bottom: 9%;
    transition: opacity .3s ease;
}

.video-list .video-small a .icon-play {
    width: 97px;
    height: 97px;
}

.video-big {
    width: 795px;
    margin: 0 auto;
    width: 56.786%;
}

.video-small {
    width: 450px;
    position: absolute;
    z-index: 1;
    width: 32.143%;
}

.video-small a {
    box-shadow: 0px 0px 27px 0px rgba(0, 0, 0, 0.17);
}

.video-small:nth-child(2) {
    top: 0;
    left: 0;
}

.video-small:nth-child(3) {
    bottom: 0;
    right: 0;
}

.video-big:hover a,
.video-small:hover a,
.video-big:focus a,
.video-small:focus a {
    -webkit-transform: perspective(1000px) translate3d(0, 0, 21px);
    transform: perspective(1000px) translate3d(0, 0, 21px);
}

.video-list a:hover .icon-play,
.video-list a:focus .icon-play {
    background-color: var(--primary);
}

.video-list a:hover .icon-play:before,
.video-list a:hover .icon-play:after,
.video-list a:focus .icon-play:before,
.video-list a:focus .icon-play:after {
    opacity: 0;
}

.video-btn-list {
    margin: 49px 0 0;
}

.video-btn-list a.btn-a {
    margin: 0 10px;
}

/*videos end*/
/*statistics*/
#hp-pp {
    position: relative;
    /*min-height: 546px;*/
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    z-index: 1;
    padding: 102px 0 128px;
}

#hp-pp:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #000;
    /*opacity: 0.85;*/
    opacity: 0.55;
    z-index: -1;
}

#hp-pp .section-title {
    margin: 0 0 67px;
}

.stats-list {}

.stats-item {
    width: 33.33%;
    padding: 0 15px;
    color: #ffffff;
    text-align: center;
}

.stats-item-inner {
    background: #000000;
    height: 100%;
    min-height: 200px;
    padding: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.stats-item strong {
    display: block;
    font-weight: 700;
    font-size: 35px;
    line-height: 1;
    /* margin: 0 0 23px; */
}

.stats-item p {
    font-size: 13px;
    letter-spacing: 0.05em;
    line-height: 25px;
    color: #fff;
    text-transform: uppercase;
    min-height: 50px;
}

.stats-item:after {
    content: '';
    display: block;
    margin: 42px auto 0;
    width: 48px;
    height: 1px;
    background: var(--primary);
}

/*statistics end*/
/*contact*/
#hp-contact {
    position: relative;
    z-index: 1;
    /*min-height: 680px;*/
    padding: 94px 0 148px;
}

.bg-contact {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: -153px;
    z-index: -1;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    background-color: #000;
}

.bg-contact:before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 240px;
    background: rgb(255, 255, 255);
    background: -moz-linear-gradient(0deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%);
    background: -webkit-linear-gradient(0deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%);
    background: linear-gradient(0deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff", endColorstr="#ffffff", GradientType=1);
}

#hp-contact .section-title {
    margin: 0 0 50px;
}

#hp-contact .section-title:after {
    width: 116px;
}

.git-form {
    font-size: 0;
    margin: 0 -5px;
    position: relative;
}

.git-field {
    display: inline-block;
    vertical-align: top;
    padding: 0 5px;
}

.git-field input,
.git-field textarea {
    width: 100%;
    height: 49px;
    background: transparent;
    border: 1px solid #fff;
    font-size: 14px;
    letter-spacing: 0.1em;
    color: #fff;
    text-transform: uppercase;
    padding: 0 20px;
}

.git-field.field-6 {
    width: 50%;
    margin: 0 0 13px;
}

.git-field.field-12 {
    width: 100%;
}

.git-field textarea {
    height: 151px;
    padding-top: 23px;
    resize: none;
}

.git-form input.btn-a {
    margin: 35px auto 0;
    color: #fff;
}

.git-form input.btn-a:hover,
.git-form input.btn-a:focus {
    background: var(--secondary);
    color: #000;
}

.git-form .wpcf7 form .wpcf7-response-output {
    font-size: 14px;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    margin: 15px 5px 0;
    color: #fff;
    text-align: center;
    line-height: 1.2;
}

.git-form .wpcf7-spinner,
.git-form .ajax-loader {
    position: absolute;
    bottom: -30px;
    left: 0;
    right: 0;
    margin: auto;
}

.use-floating-validation-tip .wpcf7-not-valid-tip {
    position: absolute;
    width: auto;
    font-size: 12px;
    top: 50%;
    transform: translateY(-50%);
}

.git-form .wpcf7-form-control-wrap {
    display: block;
}

/*contact end*/
/*footer*/
footer.footer {
    position: relative;
    z-index: 1;
}

.footer-inner {
    background: #000;
    /*min-height: 444px;*/
    color: #fff;
    padding: 64px 53px 0;
}

.footer-logo {
    width: 170px;
    width: 13.138%;
}

.footer-nav {}

.footer-nav li {}

.footer-nav li a,
.footer-contact-info li {
    color: #fff;
    transition: color .3s ease;
    font-size: 16px;
    line-height: 30px;
    position: relative;
    display: inline-block;
}

.footer-nav li a:before,
.footer-contact-info a:before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: var(--primary);
    transform-origin: right;
    transform: scaleX(0);
    transition: transform .3s ease;
}

.footer-nav li a:hover:before,
.footer-contact-info a:hover:before,
.footer-nav li a:focus:before,
.footer-contact-info a:focus:before {
    transform: scaleX(1);
    transform-origin: left;
}

.footer-center {
    width: 595px;
    width: 46%;
}

.footer-links {
    display: flex;
    flex-flow: column wrap;
    max-height: 125px;
}

.footer-right {
    width: 40.862%;
    padding-right: 2%;
}

.footer-other-links {
    display: flex;
    flex-flow: column wrap;
    align-content: space-between;
    max-height: 95px;
}

.footer-contact-info {
    display: flex;
    flex-flow: column wrap;
    /* align-content: flex-end; */
    margin-left: auto;
    margin-right: 0;
    margin-top: 14px;
    width: 308px;
    max-width: 100%;
}

.footer-contact-info li a {
    display: inline-block;
    color: #fff;
    position: relative;
}

.footer-copyright {
    width: 100%;
    border-top: 1px solid #444444;
    margin-top: 49px;
    /*min-height: 137px;*/
    padding: 49.5px 0;
}

.footer-copyright p {
    font-size: 12px;
    line-height: 23px;
    letter-spacing: 0.02em;
    color: #fff;
    display: block;
    margin-right: 25px;
}

.footer-copyright p a {
    color: #fff;
    transition: color .3s ease;
}

.footer-copyright p a:hover,
.footer-copyright p a:focus {
    color: var(--primary);
}

.footer-icons {
    font-size: 0;
    display: flex;
    align-items: center;
}

.footer-icons i.ai-font-eho {
    font-size: 30px;
}

.footer-icons i.ai-font-realtor-mls {
    margin-left: 13px;
    font-size: 37px;
}

/*footer end*/
/*******************************************************
 *
 * 4. IP Styles
 *
 *******************************************************/
.ip-banner {
    position: relative;
    width: 100%;
}

.ip-banner::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    background: rgba(0, 0, 0, .6);
}

.ip-banner canvas {
    display: block;
    position: relative;
    z-index: 0;
    width: 100%;
    min-height: 250px;
    background-color: var(--dark);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}

.ip-banner .container {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
}

.ip-banner h1 {
    font-weight: 700;
    font-size: 32px;
    text-align: center;
    color: #FFFFFF;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    line-height: 1.7;
}

.ip-banner h1 span {
    display: block;
    font-size: 24px;
    font-weight: 400;
    text-transform: none;
    letter-spacing: 0.01em;
}

/* Adjust minimum height of page area */
#content-sidebar,
#content-full {
    min-height: 500px;
    margin-top: 20px;
}

/** Adjust width of content columns **/
#content-sidebar #content {
    width: 77.08%;
}

#content-full #content {
    width: 100%;
}

/* Adjust width of sidebar */
.sidebar {
    width: 20.83%;
}

/* fullwidth template */
.page-template-template-fullwidth #content {
    padding-left: 15px;
    padding-right: 15px;
}

.page-template-template-fullwidth #content ihf-search[data-eureka-id*=""].ihf-eureka {
    margin-left: -15px;
    margin-right: -15px;
}

/* Adjust line height of page elements */
#content h4,
aside h4,
#content p,
aside p,
#content blockquote,
aside blockquote,
#content ul,
aside ul,
#content fieldset,
aside fieldset,
#content form,
aside form,
#content ol,
aside ol,
#content dl,
aside dl,
#content dir,
aside dir,
#content menu,
aside menu {
    line-height: 1.7
}

/* Style .entry-title(post/page) and .archive-title(category/archive/etc) main headings (h1) */
#content .entry-title,
#content .archive-title {
    font-size: 55px;
    line-height: 1;
    color: #000;
    font-weight: 900;
}

/* Styles for category/archive/search/etc subheadings (h2) */
#content .archive-subtitle {}

body #pojo-a11y-toolbar {
    bottom: 0 !important;
    top: auto !important;
}

body #pojo-a11y-toolbar.pojo-a11y-toolbar-left .pojo-a11y-toolbar-toggle {
    top: auto !important;
    bottom: 0 !important;
}

/*button:focus-visible, a:focus-visible {
    outline-style: solid !important;
    outline-width: 5px !important;
    outline-color: red !important;
    transition: none !important;
}*/
#hp-cta,
#hp-fv {
    display: none;
}

.aios-custom-ihomefinder-shortcode #inner-page-wrapper .container {
    width: 100%;
}

#content .listings-printable-git ul li a[href]:after {
    display: none;
}

.error404 .wpcf7 form .wpcf7-response-output {
    text-align: center;
    margin: 0;
}

body>img,
body>iframe[name="__bkframe"] {
    display: none;
}

#ihf-main-container .mc-total-payment-subline {
    color: #666;
}

#ihf-main-container .nav-tabs {
    margin-left: 0;
}

#ihf-main-container .chosen-drop ul.chosen-results {
    padding-left: 0;
    margin: 0;
}

.ihf-grid-result-address {
    display: block;
}

#ihf-main-container #ihf-refine-map-search-form .checkbox,
#ihf-main-container #ihf-refine-map-search-form .col-xs-8 {
    padding: 0;
}

#ihf-agent-sellers-rep>div[style] {
    max-width: 100%;
}

#ihf-map-canvas .leaflet-top.leaflet-right {
    z-index: 999;
}

#ihf-main-container .glyphicon.glyphicon-remove-circle {
    color: #fff !important;
}

.aios-custom-ihomefinder-results-template .container #content-full .entry-title {
    width: 100%;
    padding: 0;
}

.pdf-desktop iframe {
    width: 100% !important;
    height: 1700px !important;
}

.s_pdf_download_bttn {
    display: block;
    padding: 5px 20px;
    background: #333;
    color: #fff;
    font-size: 18px;
    margin-top: 20px;
    border: 2px solid transparent;
    transition: all ease .25s;
    -webkit-transition: all ease .25s;
}

.s_pdf_download_bttn:hover {
    background: #fff;
    border: 2px solid #333;
    color: #333;
}

.grecaptcha-badge {
    z-index: 9;
}

/*press page*/
.ipmw-press-holder {
    position: relative;
}

.ipmw-press-col {
    width: 33.33%;
    margin-bottom: 85px;
    overflow: hidden;
    padding: 0 1px;
}

.ipmw-press-col a {
    display: block;
    background: #000;
    border: 1px solid #8d7631;
    transition: all 0.35s ease-in-out;
}

.ipmw-press-col a:hover {
    background: var(--primary);
}

.ipmw-press-text {
    height: 102px;
    padding: 5px;
    text-align: center;
}

.ipmw-press-title {
    font-size: 30px;
    font-weight: 700;
    color: #fff;
    line-height: 1.1;
    letter-spacing: -0.05em;
}

.ipmw-press-desc {
    padding: 0 15px;
    font-size: 15px;
    font-weight: 300;
    color: #ffffff;
    line-height: 1.2;
    letter-spacing: -0.02em;
    transition: all 0.35s ease-in-out;
}

.ipmw-press-image canvas {
    display: block;
    width: 100%;
    background-color: #cccccc;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}

#listings-results .listings-list .listings-img a::after,
#listings-results .listings-grid .listings-img::after,
#listings-results .listings-table .listings-table-body .listings-img::after {
    display: none;
}

.col-md-12.dfxctr {
    display: flex;
    justify-content: center;
}

.col-md-12.dfxctr .aios-cu-smi {
    margin: 0px auto !important;
    display: block;
    text-align: center;
    margin-top: 27px !important;
}

.row.aios-cu-inner.dflxcont {
    display: flex;
    flex-flow: row wrap;
    align-items: center;
}

.col-md-6.contc .aios-cu-left {
    /* text-align: right; */
    padding-left: 4.375vw;
}

.row.aios-cu-inner.dflxcont .aios-cu-img img {
    width: 100%;
    max-width: 460px;
}

.row.aios-cu-inner.dflxcont {
    margin-top: 70px;
}

.col-md-6.contc .aios-cu-left .aios-cu-contact span em a,
.col-md-6.contc .aios-cu-left .aios-cu-contact span a {
    font-size: 24px;
}

/*#hp-rp, #hp-cp, #hp-fd, #hp-map, #hp-communities */
section#hp-rp,
section#hp-cp,
section#hp-fd {
    opacity: 0;
    /*transition:opacity 1s;*/
}

/*#hp-about, #hp-pp, #hp-contact*/
section#hp-about,
section#hp-map,
section#hp-communities,
section#hp-pp,
section#hp-contact,
footer.footer {
    display: none;
}

#content .aios-custom-ihomefinder-template-img-loader img {
    object-fit: contain;
}

#listings-details .listings-slideshow-control .listings-slideshow-prev,
#listings-details .listings-slideshow-control .listings-slideshow-next {
    display: flex !important;
}

#listings-results .listings-table .listings-table-body .listings-table-label {
    color: white !important;
}

body.ihf-details-template #listings-details .listings-form textarea {
    padding-right: 35px !important;
    overflow-y: scroll;
    -ms-overflow-style: none;
    scrollbar-width: none;
}

body.ihf-details-template #listings-details .listings-form textarea::-webkit-scrollbar {
    display: none;
}

body.pojo-a11y-readable-font [class*=ai-font-] {
    font-family: agentimage !important;
}

.use-floating-validation-tip .wpcf7-not-valid-tip {
    width: fit-content !important;
    font-size: 11px !important;
}

.aios-custom-ihomefinder-details-template .wpcf7-spinner {
    position: absolute;
    bottom: -35px;
    right: 0;
    margin: 0;
}

.aiosp-wrap .aiosp-container.aiosp-ref-\#hp-popup .aios-popup-body {
    width: auto;
    min-height: auto;
    background: #fff;
    background: transparent;
    padding: 2.5%;
    padding: 0;
}

.popup-container {
    /*max-width: 534px;*/
    max-width: 1007px;
    display: flex;
    justify-content: center;
    /*align-items: center;*/
    text-align: center;
    min-height: 300px;
    /*  flex-flow: column;
	padding: 40px;
	border: 1px solid #000;
	border-bottom-left-radius: 30px;
	border-top-left-radius: 30px;
	border-bottom-right-radius: 30px;	
	border-top-right-radius: 30px;*/
}

.popup-container strong {
    font-weight: 600;
    font-size: 20px;
    color: #000;
    letter-spacing: .05em;
    line-height: 1.5;
    display: block;
    margin-bottom: 30px;
    margin-top: 20px;
}

.popup-container p {
    font-size: 15px;
    font-size: 20px;
    margin-bottom: 35px;
    color: #000;
    letter-spacing: .05em;
    line-height: 1.5;
}

.aios-popup-body .aiosp-close {
    color: #000;
    right: 10px;
    top: 10px;
    opacity: 1;
    font-size: 55px;
    font-weight: 400;
    font-family: var(--font-default);
}

.popup-container input {
    max-width: 300px;
    width: 100%;
    background: transparent;
    color: #000;
    border: 1px solid #e30613;
    padding: 10px 5px;
    margin-bottom: 16px;
    font-weight: 600;
    font-size: 18px;
    outline: none;
    letter-spacing: .05em;
    text-transform: uppercase;
    min-height: 65px;
    text-align: center;
}

.popup-container input[type="submit"] {
    font-weight: 600;
    font-size: 18px;
    color: #fff;
    letter-spacing: .05em;
    text-transform: uppercase;
    background: #e30613;
    border: none;
    padding: 10px 5px;
    width: 100%;
    max-width: 300px;
    text-align: center;
    min-height: 65px;
    margin: 0 auto;
    display: block;
}

.popup-bg {
    max-width: 401px;
    width: 100%;
}

.img-wrapper {
    position: relative;
    overflow: hidden;
    height: 100%;
    border-top-left-radius: 30px;
    border-bottom-left-radius: 30px;
}

.popup-content {
    width: 100%;
    padding: 50px;
    background: #fff;
    display: flex;
    flex-direction: column;
    justify-content: center;
    border-bottom-right-radius: 30px;
    border-top-right-radius: 30px;
}

.popup-content h2 {
    font-size: 50px;
    font-weight: 700;
    margin: 0 0 30px 0;
}

.img-wrapper canvas {
    display: block;
    width: 100%;
    height: auto;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}

.img-wrapper img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    position: absolute;
    top: 0;
    left: 0;
}

.page-id-35 .entry-content .row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.page-id-75 .row.aios-cu-inner.dflxcont .aios-cu-img img,
.page-id-35 .entry-content .row .col-md-6 img {
    max-width: 350px;
    margin: auto;
    display: block;
}

/* MEDIA QUERIES ARE AUTOMATICALLY REMOVED FROM THIS FILE, they must be placed in style-media-queries.css */