/*
Theme Name: CAL Home - AIOS Starter Theme (Child)
Description: AIOS mobile semi-custom theme.
Author: AgentImage
Author URI: http://www.agentimage.com
Version: 1.5.8
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. Custom CSS
2. IP styles
3. MEDIA QUERIES ARE AUTOMATICALLY REMOVED FROM THIS FILE, they must be placed in style-media-queries.css

*/

.visible-on-scroll {
    display: none !important;
}

/*******************************************************
 *
 * 1. Navigation
 *
 *******************************************************/


/* Sub Menu */
#nav li {
    position: relative;
    display: inline-block;
}

#nav .sub-menu {
    list-style: none outside none;
    margin: 0;
    background: rgba(0, 0, 0, 0.9) url("images/submenu-fixer.png");
    display: none;
    padding: 0;
    position: absolute;
    width: 100%;
    min-width: 180px;
}

#nav .sub-menu a {
    color: #FFFFFF;
    display: block;
    padding: 10px;
}

#listings-details .listings-form div.wpcf7-response-output {
    color: #000 !important;
}

#nav .sub-menu a:hover {
    background: none repeat scroll 0 0 #b2b2b2;
    color: #000000;
    text-decoration: none;
}

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

#nav li:hover>.sub-menu {
    display: block;
}

#nav .sub-menu li {
    position: relative;
}


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

/* Global */

body {
    font-family: 'Didact Gothic', Helvetica, Georgia, Sans-serif;
    font-size: 14px;
    background: #FFF;
    color: #000000;
    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; */
}

#main-wrapper {
    overflow: hidden;
}

.outer-container {
    max-width: 1370px;
    padding: 0 15px;
    width: 100%;
    margin: 0 auto;
}

.full-section {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    min-height: auto;
}

.section-title {
    font-family: 'Josefin Sans';
    font-size: 35px;
    text-transform: uppercase;
    color: #4e4e4e;
    font-weight: 600;
    letter-spacing: 0.05em;
}

.hp-btn {
    width: 247px;
    height: 64px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #707070;
    font-size: 14px;
    text-transform: uppercase;
    color: #4e4e4e;
    letter-spacing: 0.05em;
    font-weight: 600;
    font-family: 'Josefin Sans';
    text-align: center;
    padding: 10px 20px;
    background: transparent;
    transition: all 0.3s ease-in-out;
    -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;
}

.hp-btn:hover {
    border: 2px solid #787878;
    background: #787878;
    color: #fff;
}

.hp-btn span {
    margin-top: 3px;
}

/* Mobile Logo */
.mobile-logo {
    padding: 30px;
    background: #4e514e;
    text-align: center;
    display: none;
}

.mobile-logo a {
    display: block;
    max-width: 126px;
    margin: 0 auto;
}

.mobile-logo img {
    width: 100%;
}

/* Header */
#main-header {
    position: fixed;
    z-index: 1000;
    width: 100%;
    padding: 15px 0;
    background: transparent;
    transition: all 0.3s ease-in-out;
    -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;
}

#main-header.active {
    background: rgba(78, 78, 78, 0.97);
    padding: 5px 0;
}

.header-flex {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.main-logo {
    display: flex;
    align-items: center;
    font-size: 0;
}

.kron-logo {
    max-width: 103px;
    margin-left: 30px;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease-in-out;
    -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;
}

#main-header.active .kron-logo {
    opacity: 1;
    visibility: visible;
}

/* #main-header.active .hr-contact.hr-hide {
    opacity: 0;
    visibility: hidden;
} */

.cal-logo {
    max-width: 126px;
    transition: all 0.3s ease-in-out;
    -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;
}

.main-logo a {
    display: block;
}

.cal-logo img {
    width: 100%;
    height: auto;
}

#main-header.active .cal-logo {
    max-width: 82px;
}

.header-contact {
    margin-bottom: 5px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.hr-contact {
    color: #fff;
    margin-left: 30px;
    display: flex;
    align-items: center;
}

.hr-contact:first-child {
    margin-left: 0;
}


.hr-contact.hr-hide {
    opacity: 1;
    visibility: visible;
    transition: all 0.3s ease-in-out;
    -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;
}

.hr-contact i {
    margin-right: 10px;
    font-size: 16px;
}

.hr-contact .ai-envelope-f {
    font-size: 10px;
    margin-top: 4px;
}

.hr-contact a {
    font-size: 15px;
    letter-spacing: 0.02em;
    color: #fff;
    transition: all 0.3s ease-in-out;
    -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;
}

.hr-contact a:hover {
    opacity: 0.6;
}

#nav {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

#nav>li {
    position: relative;
}

#nav>li>a {
    font-size: 13px;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.8);
    padding: 12px 8px;
    display: block;
    background: transparent;
    letter-spacing: 0.03em;
    transition: all 0.3s ease-in-out;
    -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;
}

#nav>li>a:before {
    color: #fff;
    content: attr(data-title);
    position: absolute;
    -webkit-transition: -webkit-transform 0.3s, opacity 0.3s;
    -moz-transition: -moz-transform 0.3s, opacity 0.3s;
    transition: transform 0.3s, opacity 0.3s;
}

#nav>li:hover>a:before {
    -webkit-transform: scale(0.9);
    -moz-transform: scale(0.9);
    transform: scale(0.9);
    opacity: 0;
}

#nav>li:hover>a {
    background: #787878;
}

#nav .sub-menu {
    background: transparent;
    left: 50%;
    transform: translateX(-50%);
    text-align: center;
    min-width: max-content;
    padding-top: 1px;
}

#nav .sub-menu li {
    display: block;
}

#nav .sub-menu li a {
    font-size: 15px;
    text-transform: uppercase;
    background: #787878;
    padding: 15px;
    display: block;
    letter-spacing: 0.03em;
    transition: all 0.3s ease-in-out;
    -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;
}

#nav .sub-menu li a:hover {
    background: #fff;
    color: #787878;
}

.main-navigation {
    margin-right: -12px;
}

/* Slideshow */
#main-slideshow {
    position: relative;
}

.slideshow-container {
    position: relative;
}

#main-slideshow .cycloneslider-slide:before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    z-index: 1;
    background: rgba(0, 0, 0, 0.2);
}

.slideshow-container:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: url(images/slide-overlay.png) no-repeat top center/ cover;
    z-index: 1;
}

/* Quick Search */
.main-qs {
    position: relative;
    width: 100%;
    z-index: 11;
    left: 0;
    top: -19px;
    font-size: 0;
}

.qs-flex {
    align-items: center;
    justify-content: center;
}

.qs-flex label {
    display: none;
}

.city {
    width: 87%;
    display: inline-block;
}

.qs-flex input,
.qs-flex button.btn-default {
    width: 100%;
    height: 47px;
    border: 1px solid #c3c3c3;
    border-right: none;
    background: rgba(255, 255, 255, 0.87) url(images/magnify.png) no-repeat left 20px center;
    padding-left: 53px;
    font-size: 15px;
    color: #313131;
    letter-spacing: 0.02em;
    outline: 0;
}

.qs-submit {
    min-width: 160px;
    width: 13%;
    display: inline-block;
    vertical-align: middle;
}

.qs-submit input {
    padding: 0;
    background: #4e4e4e;
    border: none;
    color: #fff;
    text-transform: uppercase;
    font-family: 'Josefin Sans';
    font-weight: 600;
    letter-spacing: 0.05em;
    transition: all 0.3s ease-in-out;
    -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;
}

.qs-submit input:hover {
    background: #787878;
}

.main-qs ul.dropdown-menu.inner {
    max-height: 250px !important;
}

/* Fixed SMI */
.fixed-smi {
    position: fixed;
    right: 30px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 900;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.fixed-smi a {
    font-size: 22px;
    color: #fff;
    margin: 15px 0;
    transition: all 0.3s ease-in-out;
    -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;
}

.fixed-smi a:hover {
    opacity: 0.5;
}

.fixed-smi.smi-dark-theme a {
    color: #787878;
}

.fixed-smi.smi-dark-theme a img {
    filter: brightness(0) saturate(100%) invert(47%) sepia(0%) saturate(30%) hue-rotate(313deg) brightness(100%) contrast(93%);
}

/* Videos */
#main-videos {
    padding: 105px 0;
    background: url(images/videos-bg.jpg) no-repeat center center/ cover;
}

.videos-flex {
    display: flex;
    justify-content: space-between;
}

.videos-left {
    max-width: 754px;
    width: 57%;
}

.vid-item {
    position: relative;
}

.vid-item a {
    font-size: 0;
    position: relative;
    display: block;
}

.vid-item canvas {
    width: 100%;
    background-position: center center;
    background-size: cover;
}

.vid-item a:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.4);
    z-index: 1;
    transition: all 0.3s ease-in-out;
    -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;
}

.play-btn {
    width: 47px;
    height: 47px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    border: 2px solid #fff;
    z-index: 2;
    border-radius: 50px;
    font-size: 17px;
    color: #fff;
}

.vid-item a:hover:before {
    background: rgba(0, 0, 0, 0.25);
}

.videos-left .vid-item a:before {
    background: rgba(0, 0, 0, 0.2);
}

.videos-left .vid-item a:hover:before {
    background: rgba(0, 0, 0, 0.1);
}

.videos-left .play-btn {
    font-size: 28px;
    width: 94px;
    height: 94px;
}

.videos-left p {
    margin-top: 35px;
    font-size: 14px;
    color: #787878;
    letter-spacing: 0.02em;
    line-height: 24px;
}

.videos-left .vid-item a {
    border: 5px solid #fff;
    -webkit-box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.27);
    -moz-box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.27);
    box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.27);
}

.videos-right {
    max-width: 490px;
    width: 37%;
    margin-left: 30px;
    padding-top: 65px;
}

.videos-title {
    margin-bottom: 50px;
    white-space: nowrap;
}

.videos-wrap {
    margin-bottom: 35px;
}

.vid-flex {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.vid-flex .vid-item {
    max-width: 235px;
    margin-left: 20px;
}

.vid-flex .vid-item:first-child {
    margin-left: 0;
}

.vid-flex:first-child {
    margin-bottom: 20px;
}

/* CTA */
#main-cta {
    background: #4e4e4e;
    padding: 105px 0;
}

.cta-flex {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.cta-item {
    width: 25%;
    max-width: 305px;
    position: relative;
    margin-left: 40px;
    -webkit-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.4);
    -moz-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.4);
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.4);
}

.cta-item:first-child {
    margin-left: 0;
}

.cta-img {
    font-size: 0;
    position: relative;
}

.cta-img canvas {
    width: 100%;
    background-size: cover;
    background-position: center center;
    transition: all 0.3s ease-in-out;
    -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;
}

.cta-item:hover .cta-img canvas {
    filter: grayscale(100%);
    -webkit-filter: grayscale(100%);
    -moz-filter: grayscale(100%);
    -ms-filter: grayscale(100%);
    -o-filter: grayscale(100%);
}

.cta-img:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(78, 78, 78, 0.5);
    z-index: 1;
    transition: all 0.3s ease-in-out;
    -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;
}

.cta-item:hover .cta-img:before {
    background: rgba(255, 255, 255, 0.7);
}

.cta-desc {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 10;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

.cta-logo {
    max-width: 60px;
    position: relative;
    margin-bottom: 20px;
}

.cta-logo img {
    width: 100%;
}

.cta-logo .cta-hover {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: all 0.3s ease-in-out;
    -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;
}

.cta-desc h3 {
    font-family: 'Josefin Sans';
    text-transform: uppercase;
    color: #fff;
    font-size: 40px;
    font-weight: 600;
    text-shadow: 0px 0px 20px rgba(0, 0, 0, 0.2);
    transition: all 0.3s ease-in-out;
    -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;
}

.cta-item:hover .cta-desc h3 {
    color: #4e4e4e;
    text-shadow: none;
}

.cta-item:hover .cta-logo .cta-hover {
    opacity: 1;
}

/* Featured Listings */
#main-fl {
    padding: 105px 0;
    background: url(images/fl-bg.jpg) no-repeat center center/ cover;
    background-attachment: fixed;
    position: relative;
}

.safari #main-fl {
    background-attachment: unset;
}

#main-fl:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(244, 243, 243, 0.95);
    z-index: 1;
}

#main-fl:after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: url(images/fl-white.png) no-repeat center center/ cover;
    z-index: 0;
}

#main-fl .container {
    position: relative;
    z-index: 10;
}

.fl-title {
    margin-bottom: 12px;
    text-align: center;
}

.fl-slider-wrap {
    position: relative;
    width: 100%;
}

.fl-slider {
    width: 100%;
}

.fl-item {
    position: relative;
    border: 5px solid #fff;
    -webkit-box-shadow: 0px 0px 32px 0px rgba(0, 0, 0, 0.27);
    -moz-box-shadow: 0px 0px 32px 0px rgba(0, 0, 0, 0.27);
    box-shadow: 0px 0px 32px 0px rgba(0, 0, 0, 0.27);
}

.fl-item a {
    display: block;
    position: relative;
    outline: 0;
}

.fl-img {
    font-size: 0;
    position: relative;
}

.fl-img canvas {
    width: 100%;
    background-size: 100%;
    background-position: center center;
    transition: all 0.3s ease-in-out;
    -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;
}

.fl-item a:hover .fl-img canvas {
    background-size: 110%;
}

.fl-img:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: url(images/fl-overlay.png) no-repeat bottom center / cover;
    z-index: 1;
}

.fl-desc {
    position: absolute;
    width: 100%;
    text-align: center;
    bottom: 0;
    left: 0;
    padding: 35px 15px;
    z-index: 10;
}

.fl-desc .price {
    display: block;
    margin-bottom: 10px;
    font-size: 30px;
    font-family: 'Josefin Sans';
    color: #fff;
    font-weight: 600;
}

.fl-desc .address {
    display: block;
    font-size: 16px;
    color: #fff;
    letter-spacing: 0.075em;
}

.fl-buttons button {
    width: 64px;
    height: 64px;
    outline: 0;
    border: none;
    background: #787878;
    color: #fff;
    font-size: 22px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    transition: all 0.3s ease-in-out;
    -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;
}

.fl-buttons {
    display: flex;
    align-items: center;
    justify-content: center;
}

.fl-buttons button.prev-slick {
    left: 0;
}

.fl-buttons button.next-slick {
    right: 0;
}

.fl-buttons button:hover {
    background: #4e4e4e;
}

.fl-btn {
    margin-top: 11px;
    display: flex;
    justify-content: center;
    align-items: center;
}

/* Meet The Team */
#main-mtt {
    position: relative;
    padding: 105px 0 0;
    background: #fff;
}

.mtt-left {
    position: absolute;
    left: 0;
    top: 0;
    width: 30.1875%;
    height: 100%;
    z-index: 0;
    background: url(images/mtt-left.jpg) no-repeat center center/ cover;
}

.mtt-right {
    position: absolute;
    width: 69.8125%;
    right: 0;
    top: 0;
    height: 100%;
    background: url(images/mtt-right.jpg) no-repeat center center/ cover;
    background-attachment: fixed;
    z-index: 0;
}

.safari .mtt-right {
    background-attachment: unset;
}

.mtt-right:before {
    content: '';
    background: rgba(78, 78, 78, 0.92);
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}

#main-mtt .outer-container {
    position: relative;
    z-index: 10;
    max-width: 1247px;
}

.mtt-title {
    margin-bottom: 50px;
    text-align: center;
}

.mtt-title .section-title {
    color: #fff;
}

.agent-flex {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin: 5px 0 0;
    padding: 0 30px;
}

.agent-flex .slick-list {
    max-width: 100%;
}

.agent-flex:first-child {
    margin-top: 0;
}

.agent-item {
    display: flex !important;
    align-items: stretch;
    justify-content: center;
    width: 50%;
    /*    margin-left: 45px;*/
    flex-direction: row-reverse;
    padding: 0 15px;
}

/*
.agent-item:first-child {
    margin-left: 0;
}
*/

.mtt-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    font-size: 30px;
    color: #fff !important;
    cursor: pointer;
}

.mtt-arrow.next {
    left: auto;
    right: 0;
}

.agent-img {
    font-size: 0;
    width: 50%;
}

.agent-img canvas {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center center;
}

.agent-desc {
    width: 50%;
    background: #fff;
    display: flex;
    justify-content: center;
    flex-direction: column;
    padding: 40px 20px 40px 40px;
}

.agent-desc h3 {
    font-family: 'Josefin Sans';
    text-transform: uppercase;
    font-size: 30px;
    color: #4e4e4e;
    line-height: 34px;
    letter-spacing: 0.05em;
    font-weight: 600;
    margin-bottom: 20px;
}

.agent-contact {
    margin-bottom: 20px;
}

.ac-contact {
    display: flex;
    align-items: center;
    font-size: 16px;
    color: #787878;
    margin-bottom: 10px;
}

.ac-contact i {
    margin-right: 10px;
}

.ac-contact .ai-envelope-f {
    font-size: 10px;
}

.ac-contact .ai-cellphone {
    margin-left: 2px;
}

.ac-contact a {
    color: #787878;
    transition: all 0.3s ease-in-out;
    -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;
}

.ac-contact a:hover {
    color: #4e4e4e;
}

.agent-flex:nth-child(2) .agent-item {
    flex-direction: row;
}

.agent-btn .hp-btn {
    width: 165px;
    height: 42px;
    font-size: 14px;
}

/* About */
#main-about {
    padding: 170px 0 150px;
    background: url(images/about-bg.jpg) no-repeat center center/ cover;
}

.about-flex {
    display: flex;
    align-items: flex-start;
}

.about-left {
    max-width: 551px;
    width: 42%;
}

.about-right {
    max-width: 690px;
    padding-left: 100px;
    width: 53%;
}

.about-images {
    position: relative;
}

.about-img {
    position: relative;
    font-size: 0;
}

.about-img img {
    width: 100%;
}

.about-img:first-child {
    max-width: 369px;
    width: 67%;
}

.about-img:last-child {
    max-width: 335px;
    width: 61%;
    position: absolute;
    right: 0;
    top: 70.68%;
}

.about-sub {
    margin-bottom: 25px;
}

.about-sub h4 {
    font-family: 'Josefin Sans';
    font-size: 22px;
    text-transform: uppercase;
    color: #4e4e4e;
    line-height: 26px;
    letter-spacing: 0.025em;
}

.about-title {
    margin-bottom: 20px;
}

.about-content {
    width: 100%;
}

.about-content p {
    font-size: 14px;
    color: #787878;
    line-height: 26px;
    letter-spacing: 0.02em;
}

.about-lists {
    margin-top: 25px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}

.al-list {
    width: 50%;
    margin-left: 30px;
}

.al-list:first-child {
    margin-left: 0;
}

.al-list li {
    display: block;
    font-size: 14px;
    color: #787878;
    padding-left: 25px;
    letter-spacing: 0.02em;
    margin-bottom: 25px;
    line-height: 18px;
    position: relative;
}

.al-list li:before {
    content: '';
    width: 8px;
    height: 8px;
    background: #9b9b9b;
    position: absolute;
    left: 0;
    top: 5px;
    border-radius: 50%;
}

.about-btn {
    margin-top: 15px;
}

/* Awards */
#main-awards {
    padding: 110px 0 70px;
    background: url(images/awards-bg.jpg) no-repeat center center/ cover;
    background-attachment: fixed;
    position: relative;
}

.safari #main-awards {
    background-attachment: unset;
}

#main-awards:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(92, 92, 92, 0.95);
}

#main-awards .container {
    position: relative;
    z-index: 10;
}

.awards-title {
    text-align: center;
    margin-bottom: 40px;
}

.awards-title .section-title {
    color: #fff;
}

.awards-content {
    text-align: center;
    margin-bottom: 70px;
    padding: 0 55px;
}

.awards-content p {
    font-size: 14px;
    color: #ffffff;
    line-height: 22px;
    letter-spacing: 0.02em;
}

.awards-flex {
    display: flex;
    align-items: stretch;
    justify-content: center;
}

.awards-item {
    max-width: 555px;
    margin-left: 30px;
    width: 48%;
    margin-bottom: 30px;
    display: flex;
    align-items: stretch;
}

.awards-item:first-child {
    margin-left: 0;
}

.awards-blog {
    margin-bottom: 75px;
}

.ai-left {
    font-size: 0;
    background: #fff;
    width: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.ai-left img {
    width: 100%;
}

.ai-right {
    background: #484848;
    padding: 30px 15px;
    width: 50%;
}

.ai-right h4 {
    margin-bottom: 15px;
    font-size: 14px;
    color: #fff;
    font-family: 'Josefin Sans';
    letter-spacing: 0.02em;
    line-height: 18px;
}

.ai-right p {
    font-size: 14px;
    line-height: 20px;
    color: #cbcbcb;
}

.ai-right .hp-btn {
    margin-top: 25px;
    max-width: 147px;
    height: 43px;
    border: 2px solid #c9c9c9;
    font-size: 12px;
    color: #fff;
    font-weight: 600;
    letter-spacing: 0.05em;
}

.awards-btn {
    display: flex;
    align-items: center;
    justify-content: center;
}

.awards-btn .hp-btn {
    border: 2px solid #fff;
    color: #fff;
}

.awards-btn .hp-btn:hover {
    background: #fff;
    color: #484848;
}

.ai-right .hp-btn:hover {
    background: #fff;
    color: #484848;
    border: 2px solid #fff;
}

/* Testimonials */
#main-testimonials {
    padding: 100px 0;
    background: url(images/testimonials-bg.jpg) no-repeat center center/ cover;
    background-attachment: fixed;
}

.safari #main-testimonials {
    background-attachment: unset;
}

.testi-box {
    padding: 100px 30px;
    background: rgba(0, 0, 0, 0.7);
    text-align: center;
}

.testi-title {
    margin-bottom: 20px;
}

.testi-title .section-title {
    color: #fff;
}

.testi-content {
    max-width: 750px;
    margin: 0 auto 20px;
}

.testi-content p {
    font-size: 14px;
    color: #fff;
    line-height: 22px;
    letter-spacing: 0.02em;
}

.quote {
    display: block;
    margin-bottom: 20px;
}

.testi-slider {
    max-width: 860px;
    margin: 0 auto;
}

.testi-item p {
    font-size: 15px;
    line-height: 24px;
    color: #fff;
    letter-spacing: 0.04em;
}

.testi-item .author {
    display: block;
    margin-top: 25px;
    font-size: 22px;
    text-transform: uppercase;
    color: #fff;
    font-family: 'Josefin Sans';
    letter-spacing: 0.1em;
}

.testi-slider .slick-dots {
    margin-top: 30px;
    display: flex !important;
    align-items: center;
    justify-content: center;
}

.testi-slider .slick-dots button {
    width: 31px;
    height: 31px;
    margin: 0 1px;
    border: 1px solid transparent;
    background: transparent;
    font-size: 0;
    position: relative;
    border-radius: 50px;
    padding: 0;
}

.testi-slider .slick-dots button:before {
    content: '';
    width: 8px;
    height: 8px;
    background: #9a9a9a;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    border-radius: 50px;
}

.testi-slider .slick-dots .slick-active button {
    border: 1px solid rgba(255, 255, 255, 0.44);
}

.testi-slider .slick-dots .slick-active button:before {
    background: #fff;
}

.testi-btn {
    display: flex;
    justify-content: center;
    margin-top: 35px;
}

.testi-btn .hp-btn {
    border: 2px solid #fff;
    color: #fff;
    width: 287px;
}

.testi-btn .hp-btn:hover {
    border: 2px solid #787878;
}

/* Blog */
#main-blog {
    padding: 100px 0;
    background: url(images/blog-bg.jpg) no-repeat center center/ cover;
}

.blog-title {
    margin-bottom: 45px;
    text-align: center;
}

.blog-wrap {
    display: flex;
    align-items: flex-start;
    justify-content: center;
}

.blog-item {
    width: 50%;
    margin-left: 30px;
}

.blog-item:first-child {
    margin-left: 0;
}

.blog-img {
    width: 100%;
    border: 3px solid #fff;
    font-size: 0;
    -webkit-box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.27);
    -moz-box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.27);
    box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.27);
    transition: all 0.3s ease-in-out;
    -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;
}

.blog-img canvas {
    width: 100%;
    background-size: cover;
    background-position: center center;
}

.blog-item a:hover .blog-img {
    border: 3px solid #787878;
}

.blog-desc {
    margin-top: 35px;
    text-align: center;
}

.blog-desc h4 {
    margin-bottom: 20px;
    font-size: 20px;
    font-weight: 700;
    text-transform: uppercase;
    font-family: 'Josefin Sans';
    color: #4e4e4e;
    letter-spacing: 0.02em;
}

.blog-desc p {
    font-size: 14px;
    line-height: 22px;
    color: #787878;
    letter-spacing: 0.03em;
    padding: 0 25px;
}

.blog-desc .hp-btn {
    margin: 25px auto 0;
    max-width: 217px;
}

/* Contact */
#main-contact {
    padding: 100px 0;
    background: #4e4e4e;
    text-align: center;
}

.contact-title {
    margin-bottom: 15px;
}

.contact-title .section-title {
    color: #fff;
}

.contact-content {
    margin-bottom: 45px;
}

.contact-content p {
    font-size: 15px;
    color: #fff;
    line-height: 1.3;
}

.contact-box {
    max-width: 967px;
    margin: 0 auto;
}

.git-form input {
    width: 100%;
    background: #fff;
    height: 59px;
    border: none;
    border-bottom: 3px solid #787878;
    padding: 20px;
    outline: 0;
    font-size: 17px;
    color: #4e4e4e;
    letter-spacing: 0.03em;
}

.git-form textarea {
    width: 100%;
    background: #fff;
    height: 59px;
    border: none;
    border-bottom: 3px solid #787878;
    padding: 20px;
    outline: 0;
    font-size: 17px;
    color: #4e4e4e;
    letter-spacing: 0.03em;
    min-height: 125px;
    max-height: 125px;
}

.git-form input[type="submit"] {
    max-width: 247px;
    height: 64px;
    background: transparent;
    color: #fff;
    border: 2px solid #fff;
    font-family: 'Josefin Sans';
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    transition: all 0.3s ease-in-out;
    -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;
}

.git-form input[type="submit"]:hover {
    background: #787878;
    border: 2px solid #787878;
}

.git-flex {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 18px;
}

.git-flex>div {
    width: 50%;
    margin-left: 20px;
}

.git-flex>.git-fname,
.git-flex>.git-email {
    margin-left: 0;
}

.git-send {
    margin-top: 50px;
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
}

.wpcf7 form .wpcf7-response-output {
    padding: 20px;
    color: #fff;
    text-align: center;
}

/* Footer */
#main-footer {
    background: #fff;
    padding: 35px 0 40px;
}

.footer-top {
    border-bottom: 1px solid #e3e3e3;
    padding-bottom: 35px;
}

.footer-logo {
    margin-bottom: 100px;
    text-align: center;
}

.footer-logo .textwidget {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
}

.footer-logo a {
    display: block;
    margin: 30px 15px 0;
}

.ft-flex {
    max-width: 810px;
    margin: 0 auto;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}

.ft-flex h3 {
    margin-bottom: 15px;
    font-family: 'Josefin Sans';
    font-weight: 600;
    font-size: 25px;
    color: #4e4e4e;
}

.fc-flex {
    display: flex;
    align-items: center;
}

.fc-contact {
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    font-size: 16px;
    color: #787878;
}

.fc-contact i {
    margin-right: 10px;
    font-size: 16px;
    color: #4e4e4e;
}

.fc-flex .fc-contact {
    margin-left: 10px;
}

.fc-flex .fc-contact:first-child {
    margin-left: 0;
}

.fc-contact .ai-envelope-f {
    font-size: 10px;
    margin-left: -2px;
}

.footer-newsletters {
    max-width: 350px;
    width: 50%;
}

.nl-form input {
    width: 100%;
    height: 43px;
    padding: 10px 15px;
    border: 1px solid #bfbfbf;
    background: #fff;
    outline: 0;
    font-size: 14px;
    color: #787878;
    letter-spacing: 0.025em;
}

.nl-form .plane {
    width: 25px;
    height: 24px;
    font-size: 0;
    padding: 0;
    margin: 0;
    border: none;
    background: url(images/plane.png) no-repeat center center/ contain;
    transition: all 0.3s ease-in-out;
    -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;
}

.nl-form {
    position: relative;
}

.nw-send {
    position: absolute;
    right: -10px;
    top: 9px;
}

.footer-newsletters .nw-send {
    right: 10px !important;
}

.footer-newsletters .wpcf7 form .wpcf7-response-output {
    color: #787878;
    text-align: center;
}

.nl-form .plane:hover {
    opacity: 0.7;
}

.footer-bottom {
    padding-top: 40px;
    text-align: center;
}

.footernav {
    display: flex;
    align-items: center;
    justify-content: center;
}

.footernav li {
    margin: 0 10px;
}

.footernav li a {
    text-transform: uppercase;
    font-size: 15px;
    color: #4e4e4e;
    letter-spacing: 0.05em;
    transition: all 0.3s ease-in-out;
    -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;
}

.footernav li a:hover {
    color: #787878;
}

.footer-copyright {
    margin: 12px 0 15px;
    line-height: 1.3;
    font-size: 14px;
    color: #787878;
    letter-spacing: 0.05em;
}

.footer-copyright a {
    color: #787878;
}

.footer-copyright a:hover {
    color: #4e4e4e;
}

.footer-mls {
    color: #4e4e4e;
    font-size: 20px;
}

#main-footer a {
    transition: all 0.3s ease-in-out;
    -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;
}

/*******************************************************
 *
 * 3. 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: #f9f7f7;
    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: #FFF;
    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 {}

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

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

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

.ip-invest-wrap.left img {
    float: left;
    margin-right: 30px !important;
}

.ip-invest-wrap.right {
    clear: both;
    padding: 20px 0 0;
}

.ip-invest-wrap.right img {
    float: right;
    margin-left: 30px !important;
}

.single-aios_agent span.ihf_officeroster_agent_officephone,
.single-aios_agent span.ihf_officeroster_agent_email,
.single-aios_agent .ihf_officeroster_agent_officeaddress {
    display: none;
}

.single-aios_agent .ihf-agent-info br {
    display: none;
}

#listings-details .listings-slideshow .listings-slideshow-img::after {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    background: #000;
    opacity: .30;
}

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

#content .archive-subtitle {
    line-height: 1;
    margin-top: 0;
}

.aios-about-form .wpcf7-response-output {
    padding: 5px !important;
    font-size: 13px !important;
    color: #000 !important;
    line-height: 1;
}

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

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

.glyphicon {
    position: relative;
    top: 1px;
    display: inline-block;
    font-family: "Glyphicons Halflings";
    font-style: normal;
    font-weight: 400;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.glyphicon-ok:before {
    content: "\e013";
}

.page-id-13 #content .entry-title {
    text-align: center;
}

.page-id-13 .aidefcf-wrapper {
    text-align: center;
}

.page-id-13 div#wpcf7-f12-p13-o1 {
    margin: 0 auto;
}

.page-id-13 .entry.entry-content iframe {
    width: 100%;
}



.sac {
    position: absolute;
    bottom: 130px;
    left: 50%;
    transform: translateX(-50%);
    height: 64px;
    width: 100%;
    max-width: 385px;
    z-index: 99;
    display: flex;
    align-items: center;
    border: 2px solid #fff;
    color: #fff;
    justify-content: center;
    text-transform: uppercase;
    font-size: 14px;
    letter-spacing: 0.2em;
    transition: all 0.3s ease-in-out;
}

.sac:hover {
    background: #414141;
    color: #fff;
    border-color: #414141;
}






.aiosp-container.aiosp-inline-holder.aiosp-ref-\#sac .aios-popup-body {
    max-width: 947px;
    height: auto;
    min-height: auto;
    background: #000;
    padding-top: 28px;
    padding-bottom: 50px;
    padding-left: 15px;
    padding-right: 15px;
}

.sac-field input,
.sac-field textarea {
    background: transparent;
    color: #fff;
    border: 0;
    padding-bottom: 32px;
    font-size: 12px;
    font-weight: 400;
    letter-spacing: 0.2em;
    width: 100%;
    height: 100%;
    padding-top: 14px;
    text-transform: uppercase;
    outline: none;
}

.sac-field.sac-h.sac-checkbox {
    padding-top: 14px;
}

.sac-label {
    color: #fff;
    font-size: 12px;
    font-weight: 400;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    display: inline-block;
}

#interested-in span.wpcf7-list-item-label {
    color: #fff;
    display: inline-block;
    font-size: 12px;
    font-weight: 400;
    letter-spacing: .7px;
    text-transform: uppercase;
    vertical-align: top;
    margin-left: 5px;
}

#interested-in input[type="checkbox"] {
    width: auto;
    height: auto;
    margin: 0;
    padding: 0;
}

.sac-field {
    border-bottom: 1px solid #9a9a9a;
    margin-bottom: 25px;
}

.sac-field.sac-h {
    width: calc(100% / 2 - 16px);
}

.sac-form-wrapper {
    width: 100%;
    max-width: 816px;
    margin: 0px auto;
}

.sac-title img {
    margin: 0px auto;
    display: block;
    margin-bottom: 32px;
}

.sac-title h2 {
    text-align: center;
    display: block;
    color: #fff;
    font-size: 35px;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    margin-bottom: 30px;
}

.sac-form {
    position: relative;
    width: 100%;
    height: auto;
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
}

.sac-field.sac-f {
    width: 100%;
}

.sac-field textarea {
    max-height: 90px;
}

.sac-submit input {
    width: 100%;
    height: 100%;
    margin-top: 15px;
}

.sac-submit {
    height: 64px;
    max-width: 185px;
    width: 100%;
    margin: 0px auto;
    display: block;
}

.sac-submit .ajax-loader {
    position: absolute;
    right: -70px;
    top: 50%;
    transform: translateY(-50%);
}















.sac-submit input {
    border: 0;
    text-transform: uppercase;
    background: #000;
    color: #fff;
    letter-spacing: 0.2em;
    transition: all 0.3s ease-in-out;
    border: 2px solid #fff;
}

.sac-submit {
    letter-spacing: 0.2em;
}

.sac-submit:hover input {
    background: gray;
    border-color: gray;
}

.sac-field textarea {
    resize: none;
    text-transform: capitalize;
    letter-spacing: 1px;
}


.aiosp-container.aiosp-inline-holder.aiosp-ref-\#sac .aiosp-close {
    color: #fff;
    font-size: 40px;
    opacity: 1;
}


/* Opt-in | Start*/
.opt-in {
    width: 100% !important;
}

.opt-in .wpcf7-list-item {
    margin: 0;
}

.opt-in .wpcf7-list-item label {
    display: flex;
    padding: 10px 0;
}

.opt-in input {
    width: auto !important;
    height: max-content !important;
    margin: 0;
    appearance: auto !important;
    margin-top: 1px;
}

.opt-in .wpcf7-list-item-label {
    text-align: justify;
    padding-left: 10px;
    line-height: 1.2;
    font-size: 14px;
}

.git-opt-in.opt-in input {
    margin-top: 3px;
}

.sac-f.opt-in .wpcf7-list-item-label {
    color: #fff;
}

.git-opt-in.opt-in .wpcf7-list-item-label {
    color: #fff;
    font-size: 15px;
}

.opt-in .wpcf7-list-item-label a {
    color: inherit;
    text-decoration: underline;
    -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;
}

.opt-in .wpcf7-list-item-label a:hover {
    opacity: 0.75;
}

div.wpcf7 .ajax-loader,
.wpcf7-spinner {
    position: absolute;
}

/* #honely-future-value-plugin-wrapper {
    display: block !important;
    right: 70px !important;
} */

.page-id-13 .wpcf7 form .wpcf7-response-output {
    color: #000000 !important;
}

/* Opt-in | End*/

.page-id-11 .wpcf7 form .wpcf7-response-output,
.page-id-9 .wpcf7 form .wpcf7-response-output,
.page-id-7 .wpcf7 form .wpcf7-response-output {
    color: #000;
    padding: 0 15px;
}

.sac-form-wrapper .wpcf7-not-valid-tip {
    position: absolute;
    top: 0;
    left: 0;
    width: auto;
}

.wpcf7 form .sac-form-wrapper+.wpcf7-response-output {
    width: 100%;
    max-width: 816px;
    margin-left: auto;
    margin-right: auto;
}

.agent-holder .attachment-agent-image img {
    height: auto;
}

.error404 .wpcf7 form .wpcf7-response-output {
    color: #000;
}