/*
Theme Name: dC Real Estate
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 */
    --Lora: 'Lora', serif;
    --RobotoCondensed: 'Roboto Condensed', sans-serif;

    /** Use for input, button, and any other element */
    --primary-color: #000000;
    --secondary-color: #858585;
    --body-font-color-dark: #000000;
    --body-font-color-light: #aeaeae;
}

.parallax_bg {
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    font-size: 0;
}
    .parallax_bg canvas {
        width: 100%;
        height: 100%;
        display: block;
        background-size: cover;
        background-position: center;
        background-attachment: fixed;
        background-repeat: no-repeat;
    }
        .safari-true .parallax_bg canvas,
        .mobile .parallax_bg canvas {
            background-attachment: scroll;
        }

.non_parallax_bg {
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    font-size: 0;
}
    .non_parallax_bg canvas {
        width: 100%;
        height: 100%;
        display: block;
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
    }

/*******************************************************
 *
 * 2. Custom CSS
 *
 *******************************************************/

/* GLOBAL */

body {
    font-family: var(--RobotoCondensed);
    font-size: 14px;
    background: #FFFFFF;
    color: var(--body-font-color-dark);
    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; */
}

a, a:hover, a:link, a:active, a:focus {
    color: var(--body-font-color-dark);
    outline: none;
    text-decoration: none;
}

.slick-slide, .slick-slide *, .slick-slide a {outline: none;}

.site_easing, #header_wrap a, #fixed_header a, #burger_nav li a, .burger_contact_info a, #footer_wrap a {
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
#main-wrapper {
    position: relative;
    overflow: hidden;
}

.site_section {
    position: relative;
}


/* CUSTOM SITE TITLE */
.custom_site_title {
    display: inline-block;
    vertical-align: top;
    text-align: left;
    text-transform: uppercase;
}
    .custom_site_title > span {
        display: inline-block;
        vertical-align: top;
        padding: 18px 0 15px;
        color: var(--secondary-color);
        font-size: 20px;
        letter-spacing: 0.4em;
        border-bottom: 1px solid rgba(255,255,255,0.2);
        position: relative;
    }
        .custom_site_title > span::before {
            width: 30px;
            height: 1px;
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            background-color: #ffffff;
        }
    .custom_site_title h2,
    #content .custom_site_title h2 {
        display: block;
        margin-top: 15px;
        color: #ffffff;
        font-size: 72px;
        font-weight: 400;
        font-family: var(--Lora);
        line-height: 1;
        letter-spacing: 0.02em;
    }
        #content .custom_site_title h2 {
            margin-bottom: 0;
        }
        .custom_site_title h2 > span {
            text-transform: lowercase;
        }

    /* DARK TITLE */
    .custom_site_title.dark_title h2,
    #content .custom_site_title.dark_title h2 {
        color: var(--primary-color);
    }
    .custom_site_title.dark_title > span,
    #content .custom_site_title.dark_title > span {
        border-bottom: 1px solid rgba(0,0,0,0.20);
    }

    .custom_site_title.dark_title > span::before,
    #content .custom_site_title.dark_title > span::before {
        background-color: var(--primary-color);
    }

/* CUSTOM SITE BUTTON */
.custom_site_button {
    display: inline-block;
}
    .custom_site_button a {
        width: 207px;
        height: 57px;
        display: inline-block;
        vertical-align: top;
        color: #ffffff;
        font-size: 14px;
        text-align: center;
        text-transform: uppercase;
        line-height: 53px;
        letter-spacing: 0.2em;
        border: 2px solid #ffffff;
        transition: all 0.3s ease-in-out;
    }
        .custom_site_button a:hover {
            color: var(--body-font-color-dark);
            background-color: #ffffff;
        }

    /* DARK BUTTON */
    .custom_site_button.dark_button a {
        color: var(--primary-color);
        border-color: var(--primary-color);
    }
        .custom_site_button.dark_button a:hover {
            color: #ffffff;
            background-color: var(--primary-color);
        }

/* HEADER */
#header_wrap {
    width: 100%;
    position: absolute;
    z-index: 100;
    top: 0;
    left: 0;
    font-size: 0;
    text-align: center;
    padding: 32px 0 0;
    transition: all 0.3s ease-in-out;
}
    #header_wrap > .container-fluid {
        /*padding: 0 3.75%;*/
        max-width: 1510px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        flex-wrap: wrap;
        align-items: flex-start;
        justify-content: space-between;
    }
        .header_logo {
            width: 10.07%;
            font-size: 0;
            text-align: left;
        }
            .header_logo img {
                max-width: 100%;
                height: auto;
            }
        .bm_button {
            width: 9.53%;
            text-align: right;
        }
            .bm_button_line {
                width: 30px;
                display: inline-block;
                vertical-align: top;
                padding: 22px 0;
                cursor: pointer;
            }
                .bm_button_line span {
                    width: 100%;
                    height: 3px;
                    display: inline-block;
                    vertical-align: top;
                    background-color: #ffffff;
                }
                    .bm_button_line span:first-child {
                        margin-bottom: 5px;
                    }
                    .bm_button_line:hover {
                        opacity: 0.7;
                    }

/* FIXED HEADER */
#fixed_header {
    width: 100%;
    position: fixed;
    z-index: 1011;
    top: -60px;
    left: 0;
    font-size: 0;
    text-align: center;
    padding: 9px 0;
    background-color: rgba(0,0,0,0.8);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: all 0.4s ease-in-out;
}
    #fixed_header.fixedhead {
        top: 0;
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
    }
    #fixed_header > .container-fluid {
        /*padding: 0 3.75%;*/
        max-width: 1510px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        flex-wrap: wrap;
        align-items: flex-start;
        justify-content: space-between;
    }
    .fixed_header_logo {
        width: 10.07%;
        font-size: 0;
        text-align: left;
    }
        .fixed_header_logo img {
            width: auto;
            max-height: 60px;
        }


/* NAVIGATION */
.navigation {
    width: 80.40%;
    font-size: 0;
    margin-top: 8px;
}
    #nav li {
        padding: 0 27px;
        position: relative;
        display: inline-block;
    }
        #nav li::before {
            width: 1px;
            height: 11px;
            content: '';
            position: absolute;
            top: calc(50% - 5.5px);
            left: 0;
            background-color: #ffffff;
            opacity: 0.3;
        }
            #nav li:first-child::before {
                display: none;
            }
        #nav li a {
            display: block;
            padding: 13px 5px;
            color: #ffffff;
            font-size: 15px;
            text-transform: uppercase;
            letter-spacing: 0.15em;
            position: relative;
        }
            #nav li a > span {
                text-transform: lowercase;
            }
            #nav > li > a::before {
                width: 100%;
                height: 100%;
                content: '';
                position: absolute;
                top: 0;
                left: 0;
                border-top: 2px solid #ffffff;
                border-bottom: 2px solid #ffffff;
                transition: all 0.3s ease-in-out;
                opacity: 0;
            }
                #nav > li:hover > a::before {
                    opacity: 1;
                }
            #nav > li > a::after {
                width: 0;
                height: 0;
                content: '';
                position: absolute;
                bottom: 2px;
                left: 0;
                right: 0;
                margin: 0 auto;
                border-left: 4px solid transparent;
                border-right: 4px solid transparent;
                border-bottom: 4px solid #ffffff;
                transition: all 0.3s ease-in-out;
                opacity: 0;
            }
                #nav > li:hover > a::after {
                    opacity: 1;
                }

        #nav .sub-menu {
            list-style: none outside none;
            margin: 0;
            display: none;
            padding: 0;
            position: absolute;
         	width: 100%;
         	min-width: 160px;
            text-align: center;
        }
            #nav > li > .sub-menu {
                left: -150%;
                right: -150%;
                margin: 0 auto;
            }
            #nav .sub-menu li {
                width: 100%;
                margin: 1px 0 0;
                padding: 0;
                position: relative;
            }
                #nav .sub-menu a {
                    color: #ffffff;
                    display: block;
                    padding: 12px 5px;
                    background-color: rgba(0,0,0,0.8);
                }
                    #nav .sub-menu a:hover {
                        color: var(--primary-color);
                        background-color: #ffffff;
                        text-decoration: none;
                    }

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


/* FIXED NAVIGATION */
.fixed_navigation {
    width: 80.40%;
    font-size: 0;
    margin-top: 8px;
}
    #fixed_nav li {
        padding: 0 27px;
        position: relative;
        display: inline-block;
    }
        #fixed_nav li::before {
            width: 1px;
            height: 11px;
            content: '';
            position: absolute;
            top: calc(50% - 5.5px);
            left: 0;
            background-color: #ffffff;
            opacity: 0.3;
        }
            #fixed_nav li:first-child::before {
                display: none;
            }
        #fixed_nav li a {
            display: block;
            padding: 13px 5px;
            color: #ffffff;
            font-size: 15px;
            text-transform: uppercase;
            letter-spacing: 0.15em;
            position: relative;
        }
            #fixed_nav li a > span {
                text-transform: lowercase;
            }
            #fixed_nav > li > a::before {
                width: 100%;
                height: 100%;
                content: '';
                position: absolute;
                top: 0;
                left: 0;
                border-top: 2px solid #ffffff;
                border-bottom: 2px solid #ffffff;
                transition: all 0.3s ease-in-out;
                opacity: 0;
            }
                #fixed_nav > li:hover > a::before {
                    opacity: 1;
                }
            #fixed_nav > li > a::after {
                width: 0;
                height: 0;
                content: '';
                position: absolute;
                bottom: 2px;
                left: 0;
                right: 0;
                margin: 0 auto;
                border-left: 4px solid transparent;
                border-right: 4px solid transparent;
                border-bottom: 4px solid #ffffff;
                transition: all 0.3s ease-in-out;
                opacity: 0;
            }
                #fixed_nav > li:hover > a::after {
                    opacity: 1;
                }

        #fixed_nav .sub-menu {
            list-style: none outside none;
            margin: 0;
            display: none;
            padding: 20px 0 0;
            position: absolute;
            width: 100%;
            min-width: 160px;
            text-align: center;
        }
            #fixed_nav > li > .sub-menu {
                left: -150%;
                right: -150%;
                margin: 0 auto;
            }
            #fixed_nav .sub-menu li {
                width: 100%;
                margin: 1px 0 0;
                padding: 0;
                position: relative;
            }
                #fixed_nav .sub-menu a {
                    color: #ffffff;
                    display: block;
                    padding: 12px 5px;
                    background-color: rgba(0,0,0,0.8);
                }
                    #fixed_nav .sub-menu a:hover {
                        color: var(--primary-color);
                        background-color: #ffffff;
                        text-decoration: none;
                    }

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


/* BURGER MENU CONTENT */
body.show_menu {
    overflow: hidden;
}
.burger_menu_content_wrap {
    width: 100%;
    height: 100%;
    position: fixed;
    z-index: 1031;
    right: -50%;
    top: 0;
    text-align: right;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    -webkit-transition: all 0.8s ease;
    -moz-transition: all 0.8s ease;
    -ms-transition: all 0.8s ease;
    -o-transition: all 0.8s ease;
    transition: all 0.8s ease;
    background-image: url(images/bg-burger-menu.jpg);
    background-size: cover;
    background-position: top center;
    background-repeat: no-repeat;
}
.burger_menu_content_wrap.show_menu {
    right: 0;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}
    .burger_menu_content {
        width: 100%;
        height: 100%;
        display: inline-block;
        vertical-align: top;
        padding: 95px 0 50px;
        text-align: center;
        position: relative;
        z-index: 2;
        font-size: 0;
        color: var(--quaternary-color);
        background-color: rgba(0,0,0,0.85);
        overflow-y: scroll;
    }
        .burger_menu_content::-webkit-scrollbar {
            width: 0;
        }
        .burger_menu_content::before {
            width: 100%;
            max-width: 986px;
            height: 100%;
            content: '';
            position: absolute;
            pointer-events: none;
            top: 0;
            left: -80px;
            background-image: url(images/accent-logo.png);
            background-size: cover;
            background-position: right center;
            background-repeat: no-repeat;
            opacity: 0.05;
        }
        .bm_close_btn {
            position: absolute;
            z-index: 5;
            top: 50px;
            right: 64px;
            font-size: 0;
            color: #ffffff;
            cursor: pointer;
        }
            .bm_close_btn:hover {
                opacity: 0.6;
                transform: rotate(90deg);
            }
            .bm_close_btn i {
                font-size: 23px;
            }
        .burger_navigation {
            font-size: 0;
            text-align: left;
        }
            #burger_nav {
                display: flex;
                flex-direction: column;
                flex-wrap: wrap;
                align-content: space-between;
                height: 595px;
            }
                #burger_nav > li {
                    width: 50%;
                    min-height: 98px;
                    margin-top: 100px;
                }
                    #burger_nav > li > a {
                        color: #ffffff;
                        font-size: 24px;
                        text-transform: uppercase;
                        letter-spacing: 0.1em;
                    }
                        #burger_nav li a > span {
                            text-transform: lowercase;
                        }
                        #burger_nav > li > a:hover {
                            color: var(--secondary-color);
                        }
                        #burger_nav .sub-menu {
                            width: 100%;
                            display: inline-block;
                            vertical-align: top;
                            margin-top: 12px;
                        }
                            #burger_nav .sub-menu li {
                                width: 100%;
                                display: inline-block;
                                vertical-align: top;
                                margin: 8px 0;
                            }
                            #burger_nav .sub-menu li a {
                                color: #a6a6a6;
                                font-size: 15px;
                                text-transform: uppercase;
                                letter-spacing: 0.1em;
                            }
                                #burger_nav .sub-menu li a:hover {
                                    color: #ffffff;
                                }

        .burger_contact_info {
            color: #ffffff;
            margin-top: 165px;
            padding-right: 0;
        }
            .bm_logo {
                width: 100%;
                display: inline-block;
                vertical-align: top;
                font-size: 0;
                margin-bottom: 50px;
            }
                .bm_logo img {
                    max-width: 100%;
                    height: auto;
                }
            .bm_info_wrap {
                width: 100%;
                display: flex;
                align-items: center;
                justify-content: center;
            }
                .bm_info {
                    padding: 0 27px;
                    font-size: 18px;
                    letter-spacing: 0.1em;
                    position: relative;
                }
                    .bm_info::before {
                        width: 2px;
                        height: 15px;
                        content: '';
                        position: absolute;
                        top: calc(50% - 7.5px);
                        left: 0;
                        background-color: #ffffff;
                    }
                    .bm_info:first-child {
                        padding-left: 0;
                    }
                        .bm_info:first-child::before {
                            display: none;
                        }
                    .bm_info:last-child {
                        padding-right: 0;
                    }
                    .bm_info a {
                        color: inherit;
                    }
                        .bm_info a:hover {
                            color: var(--secondary-color);
                        }
            .bm_info_address {
                width: 100%;
                display: inline-block;
                vertical-align: top;
                margin-top: 30px;
                font-size: 18px;
                letter-spacing: 0.1em;
            }
            .bm_smi {
                width: 100%;
                display: inline-block;
                vertical-align: top;
                margin-top: 35px;
            }
                .bm_smi a {
                    color: #ffffff;
                    font-size: 28px;
                    display: inline-block;
                    vertical-align: middle;
                    margin-left: 39px;
                }
                    .bm_smi a:first-child {
                        margin-left: 0;
                    }
                    .bm_smi a:hover {
                        color: var(--secondary-color);
                    }

/* HP SLIDESHOW */
#hp_slideshow_wrap {
    position: relative;
    z-index: 1;
    overflow: hidden;
}
    .hp_slideshow {
        position: relative;
        z-index: 1;
    }
        .hp_slideshow .cycloneslider-template-responsive {
            background-size: cover;
            background-repeat: no-repeat;
            background-position: center;
        }
        .hp_slideshow .cycloneslider-template-responsive .cycloneslider-slide {
            background-color: transparent;
        }
            .hp_slideshow .cycloneslider-template-responsive .cycloneslider-slide::before {
                width: 100%;
                height: 315px;
                content: '';
                position: absolute;
                top: 0;
                left: 0;
                background: rgb(0,0,0);
                background: linear-gradient(180deg, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 100%);
                opacity: 0.5;
            }

        .slide_numbers {
            width: 138px;
            position: absolute;
            z-index: 2;
            bottom: 48px;
            right: 59px;
        }
            .slide_numbers span {
                display: block;
                color: #ffffff;
                font-size: 14px;
            }
                .slide_numbers span:last-child {
                    text-align: right;
                }
            .slide_numbers_line {
                width: 100%;
                height: 2px;
                margin: 5px 0;
                background-color: rgba(255,255,255,0.2);
                position: relative;
            }
                .slide_numbers_line::before {
                    width: 40px;
                    height: 2px;
                    content: '';
                    position: absolute;
                    top: 0;
                    left: 0;
                    background-color: #ffffff;
                }

    .hp_slide_tagline {
        width: 100%;
        position: absolute;
        z-index: 2;
        top: 55%;
        left: 0;
        color: #ffffff;
        text-align: center;
        text-transform: uppercase;
        transform: translate(0,-50%);
        text-shadow: 0 0 5px #000000;
    }
        .hp_slide_tagline span {
            display: block;
            margin-bottom: 10px;
            /*font-size: 24px;*/
            font-size: 30px;
            letter-spacing: 0.4em;
        }
        .hp_slide_tagline h2 {
            margin-bottom: 33px;
            font-size: 72px;
            font-family: var(--Lora);
            letter-spacing: 0.02em;
        }


/* HP WELCOME */
#hp_welcome_wrap {

}
    .hp_welcome {
        position: relative;
        z-index: 2;
    }
        .welcome_content {
            font-size: 0;
        }
            .welcome_left_wrap {
                width: 50%;
                display: inline-block;
                vertical-align: top;
                margin-top: 60px;
                padding-left: 60px;
                font-size: 0;
                text-align: right;
            }
                .welcome_photo {
                    width: 100%;
                    display: inline-block;
                    vertical-align: top;
                    font-size: 0;
                    position: relative;
                }
                    .welcome_photo canvas {
                        width: 100%;
                        height: 740px;
                        display: block;
                    }
                    .welcome_photo img {
                        width: 100%;
                        height: 100%;
                        position: absolute;
                        top: 0;
                        left: 0;
                        object-fit: cover;
                    }
            .welcome_right_wrap {
                width: 50%;
                display: inline-block;
                vertical-align: top;
                margin-bottom: 60px;
                padding: 100px 20px 100px 80px;
                background-color: var(--primary-color);
                position: relative;
            }
                .welcome_right_wrap > div {
                    position: relative;
                    z-index: 2;
                }
                .welcome_right_wrap::before {
                    width: 100%;
                    height: 100%;
                    content: '';
                    position: absolute;
                    top: 0;
                    right: 0;
                    background-image: url(images/accent-logo.png);
                    background-size: auto 100%;
                    background-position: center;
                    background-repeat: no-repeat;
                    pointer-events: none;
                    opacity: 0.08;
                }
                .welcome_title {
                    width: 100%;
                    display: inline-block;
                    vertical-align: top;
                }
                .welcome_text {
                    width: 100%;
                    max-width: 587px;
                    display: inline-block;
                    vertical-align: top;
                    margin-top: 35px;
                    color: var(--body-font-color-light);
                }
                    .welcome_text p {
                        margin-bottom: 20px;
                        font-size: 14px;
                        line-height: 24px;
                        letter-spacing: 0.05em;
                    }
                .welcome_btn {
                    width: 100%;
                    display: inline-block;
                    vertical-align: top;
                    margin-top: 30px;
                }
                    .welcome_btn a {
                        width: 187px;
                    }


/* HP FEATURED PROPERTIES */
#hp_featprop_wrap {
    padding: 100px 0 81px;
}
    #hp_featprop_wrap::before {
        width: 100%;
        max-width: 850px;
        height: 714px;
        content: '';
        position: absolute;
        pointer-events: none;
        top: -32px;
        left: 0;
        background-image: url(images/accent-logo.png);
        background-size: 100% auto;
        background-position: top right;
        background-repeat: no-repeat;
        opacity: 0.04;
        filter: invert(1);
    }
    .hp_featprop {

    }
        .fp_left_wrap {

        }
            .fp_title span::before {
                display: none;
            }
        .fp_right_wrap {
            margin-top: 75px;
            text-align: right;
        }
            .fp_more_btn a {
                width: 287px;
            }

        .fp_slider_wrap {
            margin-top: 90px;
        }
            .fp_slider {
                width: 100%;
                display: inline-block;
                vertical-align: top;
                margin-left: -4.5px;
                margin-right: -4.5px;
            }
                .fp_slider_01 {

                }
                .fp_slider_02 {

                }
                    .fp_item {
                        display: none;
                        padding: 0 4.5px 9px;
                    }
                        .fp_item a {
                            width: 100%;
                            height: 100%;
                            display: block;
                            position: relative;
                        }
                            .fp_item a::before {
                                width: 100%;
                                height: 344px;
                                content: '';
                                position: absolute;
                                z-index: 1;
                                bottom: 0;
                                left: 0;
                                background: rgb(0,0,0);
                                background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 100%);
                                pointer-events: none;
                                transition: all 0.3s ease-in-out;
                                opacity: 0.7;
                            }
                                .fp_item a:hover::before {
                                    opacity: 0;
                                }
                            .fp_item a::after {
                                width: 100%;
                                height: 100%;
                                content: '';
                                position: absolute;
                                z-index: 3;
                                top: 0;
                                left: 0;
                                border: 8px solid #c8c8c8;
                                pointer-events: none;
                                transition: all 0.3s ease-in-out;
                                opacity: 0;
                            }
                                .fp_item a:hover::after {
                                    opacity: 1;
                                }
                        .fp_photo {
                            font-size: 0;
                            position: relative;
                        }
                            .fp_photo::before {
                                width: 100%;
                                height: 100%;
                                content: '';
                                position: absolute;
                                z-index: 2;
                                top: 0;
                                left: 0;
                                background-image: url(images/accent-logo-hover.png);
                                background-size: cover;
                                background-position: top center;
                                background-repeat: no-repeat;
                                transition: all 0.3s ease-in-out;
                                opacity: 0;
                            }
                                .fp_item:hover .fp_photo::before {
                                    opacity: 1;
                                }
                            .fp_photo canvas {
                                width: 100%;
                                height: auto;
                                display: block;
                            }
                            .fp_photo img {
                                width: 100%;
                                height: 100%;
                                position: absolute;
                                top: 0;
                                left: 0;
                                object-fit: cover;
                            }
                        .fp_text {
                            width: 100%;
                            position: absolute;
                            z-index: 3;
                            bottom: 38px;
                            left: 0;
                            font-size: 0;
                            text-align: left;
                        }
                            .fp_text_left {
                                width: 54.27%;
                                display: inline-block;
                                vertical-align: bottom;
                                color: #ffffff;
                                padding-left: 40px;
                                padding-bottom: 20px;
                                text-align: left;
                                border-bottom: 1px solid rgba(255,255,255,0.3);
                                position: relative;
                            }
                                .fp_text_left::before {
                                    width: 30px;
                                    height: 1px;
                                    content: '';
                                    position: absolute;
                                    bottom: -1px;
                                    left: 40px;
                                    background-color: #ffffff;
                                }
                                .fp_address {
                                    font-size: 14px;
                                    line-height: 20px;
                                    letter-spacing: 0.05em;
                                }
                                    .fp_address span {
                                        display: block;
                                        margin-bottom: 3px;
                                        font-size: 18px;
                                    }
                                .fp_price {
                                    margin-top: 15px;
                                    font-size: 24px;
                                    font-family: var(--Lora);
                                }
                                .fp_details {
                                    height: 0;
                                    opacity: 0;
                                    transition: all 0.3s ease-in-out;
                                }
                                    .fp_details span {
                                        display: inline-block;
                                        vertical-align: middle;
                                        padding: 0 10px;
                                        font-size: 14px;
                                        position: relative;
                                    }
                                        .fp_details span::before {
                                            width: 1px;
                                            height: 12px;
                                            content: '';
                                            position: absolute;
                                            top: calc(50% - 6px);
                                            left: 0;
                                            background-color: #ffffff;
                                            opacity: 0.6;
                                        }
                                        .fp_details span:first-child {
                                            padding-left: 0;
                                        }
                                            .fp_details span:first-child::before {
                                                display: none;
                                            }
                                        .fp_details span:last-child {
                                            padding-right: 0;
                                        }
                                        .fp_item a:hover .fp_details {
                                            height: auto;
                                            opacity: 1;
                                            margin-top: 20px;
                                        }
                            .fp_text_right {
                                width: 45.73%;
                                display: inline-block;
                                vertical-align: bottom;
                                padding-right: 44px;
                                text-align: right;
                            }
                                .fp_more_dets {
                                    width: 197px;
                                    max-width: 100%;
                                    height: 57px;
                                    display: inline-block;
                                    vertical-align: top;
                                    color: #ffffff;
                                    font-size: 14px;
                                    text-align: center;
                                    text-transform: uppercase;
                                    line-height: 53px;
                                    letter-spacing: 0.2em;
                                    border: 2px solid #ffffff;
                                    transition: all 0.3s ease-in-out;
                                }
                                    .fp_item a:hover .fp_more_dets {
                                        color: var(--body-font-color-dark);
                                        background-color: #ffffff;
                                    }


/* HP CTA */
#hp_cta_wrap {
    padding: 219px 0 298px
}
    .hp_cta_bg_01 {

    }
        .hp_cta_bg_01::before {
            width: 50%;
            height: 89px;
            content: '';
            position: absolute;
            bottom: 0;
            right: 0;
            background-color: var(--primary-color);
            opacity: 0.7;
        }
    .hp_cta_bg_02 {
        height: calc(100% - 89px);
        position: absolute;
        z-index: 2;
        top: 0;
        left: 0;
        background-color: var(--primary-color);
    }
        .hp_cta_bg_02 canvas {
            opacity: 0.7;
        }
    .hp_cta {
        position: relative;
        z-index: 3;
        text-align: center;
    }
        .cta_list {
            font-size: 0;
            margin-left: -4px;
            margin-right: -4px;
        }
            .cta_item {
                width: 50%;
                display: inline-block;
                vertical-align: top;
                padding: 0 8px;
            }
                .cta_item a {
                    width: 100%;
                    height: 100%;
                    display: block;
                    position: relative;
                    overflow: hidden;
                }
                    .cta_item a::before {
                        width: 100%;
                        height: 100%;
                        content: '';
                        position: absolute;
                        z-index: 1;
                        top: 0;
                        left: 0;
                        background-image: url(images/hover-cta.png);
                        background-size: 100% 100%;
                        background-position: center;
                        background-repeat: no-repeat;
                        background-color: var(--primary-color);
                        opacity: 0.8;
                        transition: all 0.3s ease-in-out;
                    }
                        .cta_item a:hover::before {
                            opacity: 0.5;
                        }
                    .cta_photo {
                        font-size: 0;
                        position: relative;
                    }
                        .cta_photo canvas {
                            width: 100%;
                            height: 373px;
                            display: block;
                        }
                        .cta_photo img {
                            width: 100%;
                            height: 100%;
                            position: absolute;
                            top: 0;
                            left: 0;
                            object-fit: cover;
                            filter: grayscale();
                            transition: all 0.3s ease-in-out;
                        }
                            .cta_item a:hover .cta_photo img {
                                filter: none;
                                transform: scale(1.05);
                            }
                    .cta_text {
                        width: 100%;
                        position: absolute;
                        z-index: 2;
                        top: 52.8%;
                        left: 0;
                        transform: translate(0,-50%);
                    }
                        .cta_text::before {
                            width: 1px;
                            height: 108px;
                            content: '';
                            position: absolute;
                            top: -128px;
                            left: 0;
                            right: 0;
                            margin: 0 auto;
                            background-color: #ffffff;
                            opacity: 0.3;
                        }
                        .cta_text::after {
                            width: 1px;
                            height: 106px;
                            content: '';
                            position: absolute;
                            bottom: -106px;
                            left: 0;
                            right: 0;
                            margin: 0 auto;
                            background-color: #ffffff;
                            opacity: 0.3;
                        }
                        .cta_title {
                            margin-bottom: 30px;
                            color: #ffffff;
                            font-size: 36px;
                            font-family: var(--Lora);
                            letter-spacing: 0.05em;
                        }
                        .cta_button {
                            width: 197px;
                            height: 57px;
                            display: inline-block;
                            vertical-align: top;
                            color: #ffffff;
                            font-size: 14px;
                            text-align: center;
                            text-transform: uppercase;
                            line-height: 53px;
                            letter-spacing: 0.2em;
                            border: 2px solid #ffffff;
                            transition: all 0.3s ease-in-out;
                        }
                            .cta_item a:hover .cta_button {
                                color: var(--body-font-color-dark);
                                background-color: #ffffff;
                            }


/* FOOTER */
#footer_wrap {
    text-align: center;
}
    .footer_form_wrap {
        padding: 88px 0 80px;
    }
        .footer_form_bg {
            background-color: var(--primary-color);
        }
            .footer_form_bg canvas {
                opacity: 0.3;
                background-position: bottom center;
            }
        .footer_contact_form {
            position: relative;
            z-index: 2;
        }
            .contact_form_title {

            }
            .contact_form_wrap {
                margin-top: 27px;
            }
                .contact_form {
                    width: 100%;
                    max-width: 943px;
                    display: inline-block;
                    vertical-align: top;
                    font-size: 0;
                    margin: 0 auto;
                    text-align: center;
                }
                    .contact_form form {
                        position: relative;
                    }
                    .contact_form .form_field_wrap {
                        width: 100%;
                        display: inline-block;
                        vertical-align: top;
                        position: relative;
                    }
                        .contact_form .form_field_short {
                            width: calc(50% - 15px);
                            display: inline-block;
                            vertical-align: top;
                            margin-left: 30px;
                        }
                            .contact_form .form_field_short:first-child {
                                margin-left: 0;
                            }
                            .contact_form .form_field input, .contact_form .form_field textarea {
                                width: 100%;
                                height: 71px;
                                display: inline-block;
                                vertical-align: top;
                                padding: 0;
                                color: #ffffff;
                                font-size: 14px;
                                letter-spacing: 0.05em;
                                border: none;
                                border-bottom: 1px solid rgba(255,255,255,0.6);
                                background-color: transparent;
                                outline: none;
                                -webkit-appearance: none;
                                -moz-appearance:    none;
                                appearance:         none;
                            }
                            .contact_form .form_field textarea {
                                height: 114px;
                                padding-top: 30px;
                                resize: none;
                            }
                        .contact_form .form_submit {
                            margin-top: 38px;
                        }
                            .contact_form .form_submit input[type="submit"] {
                                width: 177px;
                                height: 57px;
                                padding: 0;
                                color: #ffffff;
                                font-size: 14px;
                                border: none;
                                background-color: transparent;
                                line-height: 53px;
                                letter-spacing: 0.2em;
                                text-align: center;
                                text-transform: uppercase;
                                border: 2px solid #ffffff;
                                transition: all 0.3s ease-in-out;
                                outline: none;
                                -webkit-appearance: none;
                                -moz-appearance:    none;
                                appearance:         none;
                            }
                                .contact_form .form_submit input[type="submit"]:hover {
                                    color: var(--body-font-color-dark);
                                    background-color: #ffffff;
                                }

                        .contact_form .ajax-loader, .contact_form .wpcf7-spinner {
                            position: absolute;
                            right: 0;
                            margin: 0 !important;
                            bottom: -25px;
                        }
                        .contact_form .wpcf7-form-control-wrap {
                            display: block;
                        }
                        .contact_form .use-floating-validation-tip span.wpcf7-not-valid-tip {
                            max-width: 100%;
                            font-size: 11px;
                            position: absolute;
                            top: 10px;
                        }
                        .contact_form div.wpcf7-response-output,
                        .contact_form .wpcf7 form .wpcf7-response-output {
                            position: absolute;
                            left: 0;
                            right: 0;
                            margin: 10px auto 0;
                            color: #ffffff !important;
                            font-size: 12px;
                            text-align: center;
                        }
            .contact_smi_list {
                font-size: 0;
                margin-top: 70px;
            }
                .contact_smi {
                    display: inline-block;
                    vertical-align: middle;
                    margin-left: 117px;
                }
                    .contact_smi:first-child {
                        margin-left: 0;
                    }
                    .contact_smi a {
                        transition: all 0.3s ease-in-out;
                    }
                        .contact_smi a:hover {
                            opacity: 0.6;
                        }

    .footer_bottom_wrap {
        color: #ffffff;
        padding: 112px 0 92px;
        overflow: hidden;
    }
        .footer_bottom_wrap::before {
            width: 100%;
            max-width: 990px;
            height: 829px;
            content: '';
            position: absolute;
            z-index: 2;
            pointer-events: none;
            top: -20px;
            left: 0;
            background-image: url(images/accent-logo.png);
            background-size: auto 100%;
            background-position: top right;
            background-repeat: no-repeat;
            opacity: 0.06;
        }
        .footer_bottom_bg {
            background-color: var(--primary-color);
        }
            .footer_bottom_bg canvas {
                opacity: 0.15;
            }
        .footer_bottom_content {
            position: relative;
            z-index: 2;
        }
            .footer_info_wrap {

            }
                .footer_logo {
                    width: 100%;
                    display: inline-block;
                    vertical-align: top;
                    font-size: 0;
                    margin-bottom: 50px;
                }
                    .footer_logo img {
                        max-width: 100%;
                        height: auto;
                    }
                .footer_info {
                    width: 100%;
                    display: flex;
                    align-items: center;
                    justify-content: center;
                }
                    .foot_info {
                        padding: 0 27px;
                        font-size: 18px;
                        letter-spacing: 0.1em;
                        position: relative;
                    }
                        .foot_info::before {
                            width: 2px;
                            height: 15px;
                            content: '';
                            position: absolute;
                            top: calc(50% - 7.5px);
                            left: 0;
                            background-color: #ffffff;
                        }
                        .foot_info:first-child {
                            padding-left: 0;
                        }
                            .foot_info:first-child::before {
                                display: none;
                            }
                        .foot_info:last-child {
                            padding-right: 0;
                        }
                        .foot_info a {
                            color: inherit;
                        }
                            .foot_info a:hover {
                                color: var(--secondary-color);
                            }
                .foot_info_address {
                    width: 100%;
                    display: inline-block;
                    vertical-align: top;
                    margin-top: 25px;
                    font-size: 18px;
                    letter-spacing: 0.1em;
                }
                .footer_smi {
                    width: 100%;
                    display: inline-block;
                    vertical-align: top;
                    margin-top: 35px;
                }
                    .footer_smi a {
                        color: #ffffff;
                        font-size: 28px;
                        display: inline-block;
                        vertical-align: middle;
                        margin-left: 39px;
                    }
                        .footer_smi a:first-child {
                            margin-left: 0;
                        }
                        .footer_smi a:hover {
                            color: var(--secondary-color);
                        }
            .footer_disclaimer {
                margin: 35px 0;
                color: #a3a3a3;
                font-size: 13px;
                line-height: 18px;
                letter-spacing: 0.02em;
            }
                .footer_disclaimer a {
                    color: inherit;
                }
                    .footer_disclaimer a:hover {
                        color: #ffffff;
                    }
            .footernav {
                font-size: 0;
            }
                .footernav li {
                    display: inline-block;
                    vertical-align: middle;
                    padding: 0 33px;
                    position: relative;
                }
                    .footernav li:first-child {
                        padding-left: 0;
                    }
                    .footernav li:last-child {
                        padding-right: 0;
                    }
                    .footernav li::before {
                        width: 1px;
                        height: 11px;
                        content: '';
                        position: absolute;
                        top: calc(50% - 5.5px);
                        left: 0;
                        background-color: #ffffff;
                        opacity: 0.6;
                    }
                        .footernav li:first-child::before {
                            display: none;
                        }
                    .footernav li a {
                        color: #ffffff;
                        font-size: 15px;
                        letter-spacing: 0.15em;
                        text-transform: uppercase;
                    }
                        .footernav li a > span {
                            text-transform: lowercase;
                        }
                        .footernav li a:hover {
                            color: var(--secondary-color);
                        }
            .footer_copyright {
                margin-top: 25px;
                color: #a4a4a4;
                font-size: 13px;
                line-height: 1.5;
                letter-spacing: 0.1em;
            }
                .footer_copyright strong {
                    text-decoration: underline;
                }
                .footer_copyright a {
                    color: inherit;
                }
                    .footer_copyright a:hover {
                        color: #ffffff;
                    }
            .footer_mls {
                margin-top: 18px;
                color: #a4a4a4;
                font-size: 32px;
                text-align: center;
            }
                .footer_mls .ai-font-eho {
                    font-size: 25px;
                    margin-left: 3px;
                    top: -3px;
                }


/*******************************************************
 *
 * 3. IP Styles
 *
 *******************************************************/
body:not(.page-id-0) .ip-banner {
    display: block;
}
.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,0.3);
    }
    .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 {
    color: var(--primary-color);
    font-size: 60px;
    font-weight: 400;
    font-family: var(--Lora);
    line-height: 1;
    text-transform: uppercase;
}
#content .entry-title > span,
#content .archive-title > span {
    text-transform: lowercase;
}

/* Styles for category/archive/search/etc subheadings (h2) */
#content .archive-subtitle {
    color: var(--primary-color);
    font-size: 30px;
    font-weight: 400;
    font-family: var(--Lora);
    line-height: 1;
    text-transform: uppercase;
}

/* POJO */
body.home.pojo-a11y-focusable a:focus, body.ip-container.pojo-a11y-focusable a:focus {
    outline: none !important;
}
body #pojo-a11y-toolbar {
    bottom:0 !important;
    top: auto !important;
    background-color: #ffffff !important;
}
body #pojo-a11y-toolbar.pojo-a11y-toolbar-left .pojo-a11y-toolbar-toggle {
    top:auto !important;
    bottom:0 !important;
}
body #pojo-a11y-toolbar .pojo-a11y-toolbar-toggle a {
    color: #ffffff !important;
    background-color: var(--primary-color) !important;
}

body.page-template-neighborhoods .ip-banner {
	display: none;
}

body.page-template-team .ip-banner {
	display: none;
}

.page-id-0.ihf-results-template .ip-banner {
    display: block;
}
.ip-container div#inner-page-wrapper > .container {
    padding: 0 15px;
}
.page-id-0 div#inner-page-wrapper > .container {
    padding: 0;
}
#ihf-main-container .nav-tabs {
    margin: 0;
}
#ihf-main-container ul.chosen-results {
    margin: 0;
    padding: 0;
    max-height: 150px;
}

.single-aios-agents .aiosp-wrap .aiosp-ref-\#agents-popup-form input[type=submit] {
    color: #ffffff;
}

.grecaptcha-badge {
    z-index: 99999;
}
#breadcrumbs .breadcrumb_last{
    display: initial !important;
}
.page-template-default #inner-page-wrapper {
    margin-bottom: 30px;
}
.post-page-contact-us .aios-contact-wrap .aios-contact-main .aios-contact-info ul li a:hover,
.post-page-contact-us .aios-contact-wrap .aios-contact-main .aios-contact-smi ul li a:hover {
    color: #ffffff;
    opacity: 0.7;
}
.post-page-testimonials .aiosp-wrap div[class*=aios-testimonials-popup-] .aiosp-content .aios-testimonials-popup-content {
    color: #ffffff;
}

.single-aios-agents div.wpcf7-response-output,
.single-aios-agents .wpcf7 form .wpcf7-response-output {
    color: #ffffff !important;
    text-align: center;
}
.single-aios-agents .use-floating-validation-tip .wpcf7-not-valid-tip {
    width: auto;
    position: absolute;
}
.ip-ld-desc-share .agent-container a{
    font-size: 24px;
    font-weight: 700;
}

.ip-agent-contact{
    font-size: 16px;
}
.ip-agent-contact img{
    margin: 10px 0;
}
.ip-agent-contact span{
    display: block;
    margin: 5px 0;
}

.single-aios-agents div.wpcf7-response-output, .single-aios-agents .wpcf7 form .wpcf7-response-output {
    font-size: 12px;
}

#hp_welcome_wrap, #hp_featprop_wrap, #hp_cta_wrap, #footer_wrap{
    display: none;
}
/* MEDIA QUERIES ARE AUTOMATICALLY REMOVED FROM THIS FILE, they must be placed in style-media-queries.css */

.property-status {
    position: absolute;
    top: 44px;
    right: 20px;
    z-index: 2;
    max-width: 42%;
}

span.aios-ps-for-sale.active {
    display: inline-block;
    font-size: 14px;
    text-transform: uppercase;
    padding: 5px;
    letter-spacing: 0.1em;
    margin: 0 1px 5px 0px;
    background: #008852;
    color: #fff;
}

span.aios-ps-for-sale.sold {
    display: inline-block;
    font-size: 14px;
    text-transform: uppercase;
    padding: 5px;
    letter-spacing: 0.1em;
    margin: 0 1px 5px 0px;
    background: #880002;
    color: #fff;
}









.page-id-19495 #header_wrap {
    /* display: none; */
    height: 0;
    padding: 0;
    opacity: 0;
    visibility: hidden;
}


.ip-ld-banner-slide-arrows {
    display: none;
}
