/*
Theme Name: Daniel J. Pirz
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

*/

@font-face {
    font-family: 'Myfont';
    src: url('fonts/Myfont-Regular.eot');
    src: url('fonts/Myfont-Regular.eot?#iefix') format('embedded-opentype'),
        url('fonts/Myfont-Regular.woff2') format('woff2'),
        url('fonts/Myfont-Regular.woff') format('woff'),
        url('fonts/Myfont-Regular.ttf') format('truetype'),
        url('fonts/Myfont-Regular.svg#Myfont-Regular') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Garamond Premiere Pro';
    src: url('fonts/GaramondPremrPro.eot');
    src: url('fonts/GaramondPremrPro.eot?#iefix') format('embedded-opentype'),
        url('fonts/GaramondPremrPro.woff2') format('woff2'),
        url('fonts/GaramondPremrPro.woff') format('woff'),
        url('fonts/GaramondPremrPro.ttf') format('truetype'),
        url('fonts/GaramondPremrPro.svg#GaramondPremrPro') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Garamond Premiere Pro';
    src: url('fonts/GaramondPremrPro-Bd.eot');
    src: url('fonts/GaramondPremrPro-Bd.eot?#iefix') format('embedded-opentype'),
        url('fonts/GaramondPremrPro-Bd.woff2') format('woff2'),
        url('fonts/GaramondPremrPro-Bd.woff') format('woff'),
        url('fonts/GaramondPremrPro-Bd.ttf') format('truetype'),
        url('fonts/GaramondPremrPro-Bd.svg#GaramondPremrPro-Bd') format('svg');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Compass Sans';
    src: url('fonts/CompassSans-Regular.eot');
    src: url('fonts/CompassSans-Regular.eot?#iefix') format('embedded-opentype'),
        url('fonts/CompassSans-Regular.woff2') format('woff2'),
        url('fonts/CompassSans-Regular.woff') format('woff'),
        url('fonts/CompassSans-Regular.ttf') format('truetype'),
        url('fonts/CompassSans-Regular.svg#CompassSans-Regular') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

/*******************************************************
 *
 * 1. Variables
 *
 *******************************************************/

:root {
    /** Font default */
    --font-family-default: 'Arvo', serif;
    --font-family-menu: 'Garamond Premiere Pro';
    --font-family-title-lg: 'Cinzel', serif;
    --font-family-title-sm: 'Myfont';
    --font-size-default: 14px;
    --font-size-title: 18px;
    --font-color-default: #000000;
    --font-color-title: #6c757d;

    /** Use for input, button, and any other element */
    --primary: #007bff;
    --secondary: #6c757d;
    --success: #28a745;
    --info: #17a2b8;
    --warning: #ffc107;
    --danger: #dc3545;
    --light: #f8f9fa;
    --dark: #343a40;
    --jost: 'Jost', sans-serif;
    --compass: 'Compass Sans';
}

/*******************************************************
 *
 * 2. Navigation
 *
 *******************************************************/

.header-nav{
    font-size: 0;
    text-align: right;
}
.header-nav li {
position:relative;
display: inline-block;
}
.header-nav > li{
    margin-left: 68px;
}
.header-nav > li:first-child{
    margin-left: 0;
}
.header-nav a{
    font-size: 16px;
    letter-spacing: 0.220em;
    text-transform: uppercase;
    color: #fff;
    display: block;
    position: relative;
}
.header-nav > li > a{
    font-family: var(--font-family-menu);
    font-weight: 700;
}
.header-nav > li:hover > a{}
.header-nav > li > a:before{
    content:'';
    display: block;
    position: absolute;
    height: 0px;
    opacity: 0;
    background: #0171af;
    left: -22px;
    right: -22px;
    bottom: -23px;
    transition: all ease .4s;
    -moz-transition: all ease .4s;
    -webkit-transition: all ease .4s;
}
.header-nav > li:hover > a:before{
    height: 10px;
    opacity: 1;
}

/* Sub Menu */

.header-nav .sub-menu {
    list-style: none outside none;
    margin-left: auto;
    margin-right: auto;
    opacity: 0;
    pointer-events: none;
    transition: all ease .4s;
    -moz-transition: all ease .4s;
    -webkit-transition: all ease .4s;
    transition: all ease .4s;
    position: absolute;
 	width:100%;
 	min-width: 220px;
    left: -100vw;
    right: -100vw;
    padding: 23px 0 0;
}
.header-nav .sub-menu a {
    color: #000;
    display: block;
    padding: 13px 10px;
    font-size: 15px;
    letter-spacing: 0.100em;
	text-align: center;
}
.header-nav .sub-menu a:hover {
    background: #0171af;
    color: #fff;
}
.header-nav .sub-menu .sub-menu {
    margin-left: 100%;
    left: 0vw;
    right: 0vw;
 	top:0;
    padding: 0 0 0;
}
.header-nav li:hover > .sub-menu {
    opacity: 1;
    pointer-events: auto;
}
.header-nav .sub-menu li {
    position: relative;
    display: block;
    background: #fff;
}


/*******************************************************
 *
 * 3. Custom CSS
 *
 *******************************************************/

/* Global */

body{
	font-family: var(--font-family-default);
	font-size: var(--font-size-default);
	background: #FFFFFF;
	color: var(--font-color-default);
	margin: 0;

    /* Remove the comment from line 85 to 86 if the font issue in safari occurs */
    /* -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; */
}
body.sp-active{
    overflow: hidden;
}
/********CSS Post Launch********/
a,
a:hover,
a:focus,
input,
input:hover,
input:focus,
textarea,
textarea:focus,
textarea:hover,
select:hover,
select:focus,
select,
button,
button:focus,
button:hover,
.btn-group.bootstrap-select.show-tick.qs-select,
.bootstrap-select .dropdown-toggle,
.bootstrap-select .dropdown-toggle:focus{
    outline: 0px !important;
}
#content .ihf-search .ihf-select-options ul,
#content .ihf-search .ihf-select-options,
#content .ihf-search .ihf-pagination,
#content #ihf-main-container .nav-tabs,
#content #ihf-main-container .chosen-results{
    margin: 0 0 0;
    padding: 0 0 0;
    list-style: none;
}
#content #ihf-main-container #ihf-search-adv2-submit{
    margin: 20px 0 0;
}
#content #ihf-main-container .ihf-grid-result-address{
    overflow: hidden;
    text-overflow: ellipsis;
    display: block;
}
#content #ihf-main-container .ihf-listing-search-results .btn{
    padding: 6px 6px;
}
#content div.wpcf7-response-output,
div.wpcf7-response-output{
    text-align: center;
}

#ihf-main-container #ihf-mortgage-calculator-modal .mc-total-payment-subline,
#content #ihf-main-container .mc-total-payment-subline{
    color:#333;
}

#ihf-main-container .pagination>li>a,
#ihf-main-container .pagination>li>span{
    padding: 6px 9px;
}
#ihf-main-container #ihf-schedule-showing-request-form .form-control{
    padding: 6px 7px;
}
#content #ihf-main-container #ihf-search-location-tab{
    margin: 8px 5px 0 0;
}
#ihf-main-container #ihf-advsearch-features label{
    font-size: .8em;
}
html.name-Microsoft_Edge .ai-default-cf7wrap input[type="submit"],
html.name-Microsoft_Edge .ai-default-cf7wrap input.wpcf7-submit{
    margin: 6px 0 0;
}
#ws-walkscore-tile{
    background:#fff !important;
}
#hero .quick-search form select[name="propertyType"]{
    margin-left: 2%;
}
#content ul.ihf-navbar-nav{
    list-style: none;
    margin: 0 0 0;
}
#content .ihf-eureka .ihf-navbar{
    padding: 4px 14px;
}
#content #ihf-main-container .ihf-listing-open-home-text-grid,
#content #ihf-main-container .ihf-map-info-window-content{
    color:#777;
}
#content #ihf-main-container label{
    color:inherit;
}
#content #ihf-main-container .ihf-polygon-reset{
    color:#000;
}
#ihf-main-container .modal-body {
    color: #000;
}
body.page-id-0 > img,
body.page-id-0 > iframe{
    display: none !important;
}
#content #ihf-main-container #ihf-market-report-nav-container.row,
#content #ihf-main-container #ihf-market-report-nav-container.row .row,
#content #ihf-main-container .row #areaPickerContainer.row,
#content #ihf-main-container .row #ihf-search-location-tab .row,
#content #ihf-main-container .row #ihf-refine-map-search-form .row,
#content #ihf-main-container .row .ihf-grid-result-container .row,
#content #ihf-main-container .row #ihf-search-location-tab.row{
    margin-left: -15px;
    margin-right: -15px;
}
#content #ihf-main-container .row .row{
    margin-left: 0;
    margin-right: 0;
}
#ihf-main-container  .ihf-social-share .dropdown-menu > li > a{
    color:#000 !important;
}
#ihf-main-container  .ihf-social-share .dropdown-menu > li > a:hover{
    color:#fff !important;
}
#ihf-main-container #ihf-refine-map-search-form label{
    color:#fff !important;
}
#ihf-main-container #ihf-refine-map-search-form .checkbox {
    padding-left: 0px;
    margin-left: -15px;
}
#ihf-main-container ul.chosen-results {
    margin-left: 0 !important;
}
#content .ihf-eureka ul.ihf-dropdown-menu{
    margin: 0 0 0;
    padding: 0 0 0 0;
    list-style: none;
}
#content #ihf-detail-navrow .ihf-detail-navigation .pull-right{
    float: none !important;
    text-align: right;
}
#content #ihf-main-container .map-infobox-img{
    max-width: 100% !important;
}
#ihf-main-container #ihf-map-canvas .ihf-map-info-box-title{
    padding: 0 15px 0 0;
}
.grecaptcha-badge{
    z-index: 91;
}
#content #IDX-main{}
#content #IDX-main #IDX-boxLabel_remarksConcat input{
    display: block;
    width: 100%;
}
#content #IDX-main ul.select2-choices,
#content #IDX-main ul.IDX-navbar-nav{
    margin: 0 0 0 0;
}
.areaPickerExpandAllTopBar:after{
    content:'';
    display: block;
    clear: both;
}
#ihf-main-container #ihf-main-search-form fieldset > div:nth-child(14) .checkbox{
  padding-left: 0px;
}
#ihf-main-container #ihf-main-search-form fieldset > div:nth-child(14) .checkbox label{
    padding-right: 30px;
    white-space: break-spaces;
}
#ihf-main-container #ihf-detail-features-tab > .row.mt-10{
    margin-left: 0;
    margin-right: 0;
}
#ihf-agent-sellers-rep-own-listing{
    max-width: 100%;
}
#ihf-main-search-form fieldset div[data-ihf-geographic-field="true"] .checkbox{
    padding-left: 0;
}
#content ul#IDX-searchNavList{
    margin: 0 0 0;
}
#content ul#IDX-searchNavList li:first-child{
    padding-left: 0px;
}
#content ul#IDX-searchNavList li:last-child{
    padding-right: 0px;
}
#IDX-formSubmit.IDX-formSubmit {
    font-size: 16px;
    margin-right: 20px;
    line-height: 18px;
}
#IDX-formSubmit.IDX-formSubmit {
    font-size: 16px;
    margin-right: 20px;
    line-height: 18px;
    font-weight:400;
}
#IDX-ccz-group .IDX-controls span{
    vertical-align: middle;
    margin: 0 0 0 10px;
}
#IDX-ccz-group .IDX-controls span:first-child{
    margin: 0 0 0 0;
}
#ihf-main-container #ihf-map-canvas{
    position: relative;
    z-index: 0;
}
#ihf-main-container #ihf-refine-map-search-form{
  margin: 0 0;
}
#ihf-main-container .ihf-mapsearch-refine-overlay-inner{
  padding: 8px 15px;
}
#ihf-main-container .ihf-grid-result{
    margin-bottom: 15px;
}
#ihf-main-container .ihf-grid-result:after{
    content: '';
    display: block;
    clear: both;
}
#listings-results .listings-map{
    position: relative;
    z-index: 0;
}
#content ul#idx-mlm-nav-links{
  list-style: none;
  margin: 0 0 0 0;
}
#ihf-map-canvas .leaflet-div-icon{
    background: none;
    border: 0px solid #666;
}
.use-floating-validation-tip .wpcf7-not-valid-tip {
    position: absolute;
    top: 20%;
    left: 20%;
    width: auto;
    font-size: 11px;
    white-space: nowrap;
    display: none;
}
.use-floating-validation-tip .wpcf7-not-valid-tip:nth-of-type(1){
    display: block;
}
/********CSS Post Launch End********/
/*******************************************************
 *
 * 4. IP Styles
 *
 *******************************************************/
.ip-banner{
    position: relative;
    width: 100%;
}
    .ip-banner::before{
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 1;
        background: rgba(0,0,0,.6);
    }
    .ip-banner canvas{
        display: block;
        position: relative;
        z-index: 0;
        width: 100%;
        min-height: 250px;
        background-color: var(--dark);
        background-position: center center;
        background-repeat: no-repeat;
        background-size: cover;
    }
    .ip-banner .container{
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%,-50%);
        z-index: 2;
    }
        .ip-banner h1 {
            font-weight: 700;
            font-size: 32px;
            text-align: center;
            color: #FFFFFF;
            text-transform: uppercase;
            letter-spacing: 0.05em;
            line-height: 1.7;
        }
            .ip-banner h1 span{
                display: block;
                font-size: 24px;
                font-weight: 400;
                text-transform: none;
                letter-spacing: 0.01em;
            }
/* Adjust minimum height of page area */
#content-sidebar, #content-full{ min-height: 500px; margin-top: 20px;}

/** Adjust width of content columns **/
#content-sidebar #content{ width: 72.08%; }
#content-full #content { width: 100%; }

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

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

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

/* Style .entry-title(post/page) and .archive-title(category/archive/etc) main headings (h1) */
#content .entry-title,
#content .archive-title {
    font-family: var(--font-family-title-lg);
    font-size: 45px;
    color: #000;
    text-transform: uppercase;
    font-weight: 500;
}

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

}

:before,
:after{
    pointer-events: none;
}

.abs-img-container{
    position: relative;
    z-index: 0;
    display: block;
}
.abs-img{
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

canvas{
    width: 100%;
    height: auto;
    position: relative;
    z-index: 0;
    display: block;
}

section{
    position: relative;
}

.header{
    position: absolute;
    z-index: 90;
    top: 0;
    left: 0;
    width: 100%;
}
.hdr-main{
    position: relative;
    z-index: 0;
    padding: 12px 0;
}
.hdr-main:before{
    content:'';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #000;
    opacity: 0.37;
}
.hdr-fixed{
    position: fixed;
    z-index: 1;
    top: -100px;
    left: 0;
    width: 100%;
    padding: 9px 0;
    opacity: 0;
    pointer-events: none;
    transition: all ease .4s;
    -moz-transition: all ease .4s;
    -webkit-transition: all ease .4s;
}
.hdr-fixed.active{
    pointer-events: auto;
    opacity: 1;
    top: 0px;
}
.hdr-fixed:before{
    content:'';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #017fc5;
}
.hdr-fixed .logo{
    max-width: 168px;
    margin: 0 auto 0 0;
}
.hdr-main .logo{
    max-width: 168px;
    margin: 0 auto 0 0;
}
.hdr-container{
    margin: 0 auto;
    width: calc(100% - 30px);
    max-width: 1340px;
}
.hdr-inner{
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    justify-content: space-between;
    position: relative;
    z-index: 1;
}

.burger-wrap{
    margin: 0 0 0 65px;
}
.burger-wrap .burger-button{
    border: 1px solid rgba(255,255,255,0.7);
    width: 53px;
    height: 53px;
    display: flex;
    flex-flow: column wrap;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    background: rgba(0,0,0,0);
    transition: all ease .4s;
    -moz-transition: all ease .4s;
    -webkit-transition: all ease .4s;
}
.burger-wrap .burger-button:hover{
    background: #fff;
}
.burger-wrap .burger-button > div{
    width: 27px;
    background: #fff;
    height: 4px;
    margin: 7px 0;
    transition: all ease .4s;
    -moz-transition: all ease .4s;
    -webkit-transition: all ease .4s;
}
.burger-wrap .burger-button:hover > div{
    background: #0171af;
    margin: 10px 0;
}
.burger-wrap .burger-button > div:first-child,
.burger-wrap .burger-button > div:last-child{
    height: 1px;
    margin: 0px 0;
}
.hdr-sm{
    position: fixed;
    z-index: 3;
    top: 0;
    left: 25px;
    height: 100vh;
    display: flex;
    flex-flow: column wrap;
    align-items: center;
    justify-content: center;
    pointer-events: none;
}
.hdr-sm .hdr-sm-inner{
    max-width: 18px;
}
.hdr-sm ul{
    display: flex;
    flex-flow: column wrap;
    align-items: center;
    justify-content: center;
}
.hdr-sm ul:after{
    content:'';
    display: block;
    width: 1px;
    height: 3.125vw;
    margin: 1.5625vw auto 0;
    background: #fff;
}
.hdr-sm li{
    margin: 19px 0 0;
}
.hdr-sm li:first-child{
    margin: 0 0 0;
}
.hdr-sm li a{
    font-size: 20px;
    pointer-events: auto;
    color: #fff;
    text-shadow: 1px 1px 0px rgb(0,0,0,0.05);
    transition: all ease .4s;
    -moz-transition: all ease .4s;
    -webkit-transition: all ease .4s;
}
.hdr-sm li.sm-phone a{
    font-size: 16px;
}
.hdr-sm li.sm-email a{
    font-size: 13px;
}
.hdr-sm .sm-connect{
    display: inline-block;
    position: relative;
    left: 3px;
    top: 6.75vw;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 0.220em;
    color: #fff;
    text-shadow: 1px 1px 0px rgba(0,0,0,0.05);
    transform-origin: left top;
    transform: rotate(-90deg);
    -moz-transform: rotate(-90deg);
    -webkit-transform: rotate(-90deg);
    transition: all ease .4s;
    -moz-transition: all ease .4s;
    -webkit-transition: all ease .4s;
}
.hdr-sm.nav-active-section-inner-page-wrapper .sm-connect,
.hdr-sm.nav-active-section-hp-sm .sm-connect,
.hdr-sm.nav-active-section-hp-fv .sm-connect,
.hdr-sm.nav-active-section-hp-testi .sm-connect,
.hdr-sm.nav-active-section-hp-compass .sm-connect,
.hdr-sm.nav-active-section-hp-fc .sm-connect,
.hdr-sm.nav-active-section-hp-lbwd .sm-connect,
.hdr-sm.nav-active-section-hp-fp .sm-connect,
.hdr-sm.nav-active-section-hp-sp .sm-connect,
.hdr-sm.nav-active-section-inner-page-wrapper li a,
.hdr-sm.nav-active-section-hp-sm li a,
.hdr-sm.nav-active-section-hp-fv li a,
.hdr-sm.nav-active-section-hp-testi li a,
.hdr-sm.nav-active-section-hp-compass li a,
.hdr-sm.nav-active-section-hp-fc li a,
.hdr-sm.nav-active-section-hp-lbwd li a,
.hdr-sm.nav-active-section-hp-fp li a,
.hdr-sm.nav-active-section-hp-sp li a{
    color: #c7b7b7;
}
.hdr-sm li a:hover{
    color: #017fc5;
}
.hdr-sm.nav-active-section-inner-page-wrapper ul:after,
.hdr-sm.nav-active-section-hp-sm ul:after,
.hdr-sm.nav-active-section-hp-fv ul:after,
.hdr-sm.nav-active-section-hp-testi ul:after,
.hdr-sm.nav-active-section-hp-compass ul:after,
.hdr-sm.nav-active-section-hp-fc ul:after,
.hdr-sm.nav-active-section-hp-lbwd ul:after,
.hdr-sm.nav-active-section-hp-fp ul:after,
.hdr-sm.nav-active-section-hp-sp ul:after{
    background: #c7b7b7;
}

.slide-panel{
    position: fixed;
    z-index: 4;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    opacity: 0;
    pointer-events: none;
    transition: all ease .4s;
    -moz-transition: all ease .4s;
    -webkit-transition: all ease .4s;
}
.slide-panel.active{
    opacity: 1;
    pointer-events: auto;
}
.slide-panel .sp-bd{
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}
.slide-panel .sp-inner{
    position: absolute;
    z-index: 1;
    top: 0;
    bottom: 0;
    right: -30vw;
    width: calc(100% - 30px);
    max-width: 718px;
    display: flex;
    flex-flow: column wrap;
    align-items: center;
    justify-content: center;
    background: url(images/sp-bg.png) center bottom no-repeat #fff;
    background-size: 100% auto;
    transition: all ease .4s;
    -moz-transition: all ease .4s;
    -webkit-transition: all ease .4s;
}
.slide-panel.active .sp-inner{
    right: 0vw;
}
.slide-panel .sp-content{
    width: 100%;
    padding: 0 152px 0 70px;
}
.slide-panel .sp-content h2{
    font-family: var(--font-family-title-lg);
    font-size: 40px;
    color: #1b1b1b;
    letter-spacing: 0.100em;
    text-transform: uppercase;
    margin: 0 0 83px;
}
#spnav{
    display: flex;
    flex-flow: row wrap;
    align-items: flex-start;
    justify-content: center;
}
#spnav li{}
#spnav a{
    text-transform: uppercase;
    transition: all ease .4s;
    -moz-transition: all ease .4s;
    -webkit-transition: all ease .4s;
}
#spnav > li{
    width: 50%;
    margin: 85px 0 0;
}
#spnav > li:first-child{}
#spnav > li:first-child,
#spnav > li:first-child + li{
    margin: 0 0 0;
}
#spnav > li > a{
    font-family: var(--font-family-title-lg);
    letter-spacing: 0.100em;
    font-size: 26px;
}
#spnav > li > a:hover{
    color: #0171af;
}
#spnav .sub-menu{
    margin: 14px 0 0;
}
#spnav .sub-menu li{
    line-height: 1.277;
    font-size: 18px;
}
#spnav .sub-menu li:first-child{}
#spnav .sub-menu a{
    color: #828282;
    letter-spacing: 0.050em;
}
#spnav .sub-menu a:hover{
    color: #0171af;
}
#spnav .sp-ci{
    margin: 14px 0 0;
}
#spnav .sp-ci-single{
    line-height: 1.277;
    font-size: 18px;
}
#spnav .sp-ci-single:first-child{}
#spnav .sp-ci-single a{
    display: inline-flex;
    flex-flow: row wrap;
    align-items: center;
    justify-content: center;
    color: #828282;
    transition: all ease .4s;
    -moz-transition: all ease .4s;
    -webkit-transition: all ease .4s;
}
#spnav .sp-ci-single a em{
    color: #1b1b1b;
    font-size: 10px;
    min-width: 14px;
    text-align: center;
    margin: 0 10px 0 0;
    transition: all ease .4s;
    -moz-transition: all ease .4s;
    -webkit-transition: all ease .4s;
}
#spnav .sp-ci-single a span{
    /*text-transform: lowercase;*/
    text-transform: initial;
}
#spnav .sp-ci-single a:hover,
#spnav .sp-ci-single a:hover em{
    color: #0171af;
}
.sp-close{
    position: absolute;
    right: 80px;
    top: 35px;
    font-size: 21px;
    color: #373737;
    width: 53px;
    height: 53px;
    background: #fff;
    display: flex;
    flex-flow: column wrap;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    box-shadow: 0px 0px 0px #000;
    transition: all ease .4s;
    -moz-transition: all ease .4s;
    -webkit-transition: all ease .4s;
}
.sp-close:hover{
    box-shadow: 0px 0px 10px rgba(0,0,0,0.1);
}
#hp-hero{}

.hp-ss{
    position: relative;
    z-index: 0;
}
.hp-ss:before{
    content:'';
    display: block;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #000;
    opacity: 0.13;
}
.hp-ss .cycloneslider{
    z-index: 0;
}

.hp-cta{
    position: absolute;
    z-index: 1;
    left: 0;
    right: 0;
    bottom: 3.625vw;
}
.cta-wrap{
    text-align: center;
    font-size: 0;
}
.cta-wrap .cta-single{
    display: inline-block;
    vertical-align: middle;
    width: calc((100% / 3) - 16px);
    margin-left: 23px;
    max-width: 309px;
}
.cta-wrap .cta-single:first-child{
    margin-left: 0;
}
.cta-wrap a{
    display: block;
    border: 2px solid #fff;
    background: rgba(46,46,46,0.37);
    color: #fff;
    text-transform: uppercase;
    font-family: var(--font-family-menu);
    font-weight: 700;
    letter-spacing: 0.150em;
    font-size: 18px;
    padding: 21px 10px;
    transition: all ease .4s;
    -moz-transition: all ease .4s;
    -webkit-transition: all ease .4s;
}
.cta-wrap a:first-child{
    margin-left: 0;
}
.cta-wrap a:hover{
    background: #017fc5;
    border: 2px solid #017fc5;
}

#hp-qs{
    background: #2e2e2e;
    padding: 29px 0;
    margin: 0 0 4.8125vw;
    z-index: 1;
}
.qs-wrap{}
.qs-wrap .bootstrap-select.btn-group .dropdown-menu.inner{
    max-height: 235px !important;
}
.qs-wrap .bootstrap-select.btn-group .dropdown-toggle .filter-option {
    text-overflow: ellipsis;
    width: 100%;
}
.qs-wrap .qs-title{
    overflow: hidden;
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    justify-content: center;
}
.qs-wrap .qs-title h2{
    position: relative;
    font-family: var(--font-family-title-lg);
    text-transform: uppercase;
    font-size: 30px;
    letter-spacing: 0.050em;
    color: #fff;
}
.qs-wrap .qs-title h2:before{
    content:'';
    display: block;
    width: 100vw;
    height: 1px;
    background: #979797;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto 0;
    right: calc(100% + 18px);
}
.qs-wrap .qs-title h2:after{
    content:'';
    display: block;
    width: 100vw;
    height: 1px;
    background: #979797;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto 0;
    left: calc(100% + 18px);
}
.qs-wrap .qs-content{
    margin: 26px 0 0;
}
.qs-wrap .qs-form{
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    justify-content: flex-start;
}
.qs-wrap .qs-block{
    margin-left: 0.263%;
}
.qs-wrap .qs-block:first-child{
    margin-left: 0;
}
.qs-wrap .qs-long{
    width: 20.175%;
}
.qs-wrap .qs-short{
    width: 8.772%;
}
.qs-wrap .qs-button{
    width: 10%;
}
.qs-wrap .qs-block.qs-submit{
    margin-left: auto;
}
.qs-wrap .qs-form{}
.qs-wrap .qs-form select{
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: 1px solid #5a5a5a;
    display: block;
    width: 100%;
    background: none;
    font-size: 9px;
    letter-spacing: 0.100em;
    text-transform: uppercase;
    color: #fff;
    height: 38px;
    padding: 0 18px 0 9px;
    background: url(images/qs-dd.png) calc(100% - 5px) center no-repeat;
    outline: 0;
}
.qs-wrap .qs-form option{
    color: #000;
}
.qs-wrap .qs-button input{
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: 0px solid #5a5a5a;
    display: block;
    width: 100%;
    padding: 0 0 ;
    height: 38px;
    background: #017fc5;
    color: #fff;
    font-size: 9px;
    letter-spacing: 0.100em;
    text-transform: uppercase;
    transition: all ease .4s;
    -moz-transition: all ease .4s;
    -webkit-transition: all ease .4s;
}
.qs-wrap .qs-button a{
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: 0px solid #5a5a5a;
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 0 0 ;
    height: 38px;
    background: #000;
    color: #fff;
    font-size: 9px;
    letter-spacing: 0.100em;
    text-transform: uppercase;
    transition: all ease .4s;
    -moz-transition: all ease .4s;
    -webkit-transition: all ease .4s;
}
.qs-wrap .qs-button input:hover,
.qs-wrap .qs-button a:hover{
    background: #fff;
    color: #017fc5;
}
.qs-wrap .qs-idx{
    font-size: 14px;
    color: #9a9a9a;
    line-height: 1.786;
    margin: 15px 0 0;
}
button.global-button,
input.global-button,
a.global-button,
.global-button{
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    display: inline-flex;
    flex-flow: row wrap;
    align-items: center;
    justify-content: center;
    border: 2px solid #000;
    background: rgba(0,0,0,0);
    font-size: 16px;
    letter-spacing: 0.150em;
    text-transform: uppercase;
    min-width: 281px;
    height: 65px;
    /*padding: 0 20px;*/
    padding: 0 43px;
    color: #000;
    transition: all ease .4s;
    -moz-transition: all ease .4s;
    -webkit-transition: all ease .4s;
}
button.global-button.light,
input.global-button.light,
a.global-button.light,
.global-button.light{
    border: 2px solid #fff;
    color: #fff;
}
button.global-button.light:hover,
input.global-button.light:hover,
a.global-button.light:hover,
.global-button.light:hover,
button.global-button:hover,
input.global-button:hover,
a.global-button:hover,
.global-button:hover{
    background: #017fc5;
    border: 2px solid #017fc5;
    color: #fff;
}
#hp-abt{
    background: url(images/abt-bg.jpg) top left no-repeat;
    background-size: cover;
    /*background-attachment: fixed;*/
    min-height: 923px;
    padding: 30px 0;
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    justify-content: center;
    z-index: 0;
}
#hp-abt:before{
    content:'';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url(images/abt-bg_fade.png) top right no-repeat;
    background-size: cover;
}
.abt-wrap{
    position: relative;
    z-index: 2;
    margin: 0 0 0 -40px;
}
.abt-wrap .abt-title{
    text-transform: uppercase;
    display: flex;
    flex-flow: column wrap;
    align-items: flex-start;
    justify-content: flex-start;
    overflow: hidden;
    margin: 0 0 0 -40px;
}
.abt-wrap .abt-title-sm{
    font-family: var(--font-family-title-sm);
    color: #017fc5;
    font-size: 72px;
    position: relative;
    margin: 0 0 0 0px;
}
.abt-wrap .abt-title-sm:before{
    content: '';
    display: block;
    position: absolute;
    top: 30%;
    bottom: 0;
    left: calc(100% + 26px);
    height: 1px;
    background: #75706e;
    width: 100vw;
    margin: auto 0;
}
.abt-wrap .abt-title-lg{
    font-family: var(--font-family-title-lg);
    font-size:70px;
    color: #fff;
    padding: 0 0 0 40px;
}
.abt-wrap .abt-photo{
    display: none;
    max-width: 400px;
    margin: 30px auto;
}
.abt-wrap .abt-desc{
    color: #fff;
    line-height: 1.857;
    letter-spacing: 0.050;
    margin: 47px 0 0;
}
.abt-wrap .abt-desc p{
    margin: 27px 0 0;
}
.abt-wrap .abt-desc p:nth-of-type(1){
    margin: 0 0 0;
}
.abt-wrap .abt-button{
    margin: 63px 0 0;
}

.section-title{
    display: flex;
    flex-flow: column wrap;
    align-items: flex-start;
    justify-content: center;
}
.section-title.title-center{
    align-items: center;
}
.section-title h2{
    text-transform: uppercase;
    display: flex;
    flex-flow: column wrap;
    align-items: flex-start;
    justify-content: flex-start;
    overflow: hidden;
}
.section-title.title-center h2{
    justify-content: center;
}
.section-title h2 em{
    font-family: var(--font-family-title-sm);
    color: #017fc5;
    font-size: 72px;
    position: relative;
    font-style: normal;
}
.section-title h2 em:before{
    content: '';
    display: block;
    position: absolute;
    top: 30%;
    bottom: 0;
    left: calc(100% + 26px);
    height: 1px;
    background: #75706e;
    width: 100vw;
    margin: auto 0;
}
.section-title h2 span{
    font-family: var(--font-family-title-lg);
    font-size:70px;
    color: #000;
    padding: 0 0 0 33px;
}
.section-title.alt h2 span{
    color: #fff;
}

#hp-sp{


    padding: 163px 0 0;

        padding: 140px 0 0;


}




.sp-wrap{}


.sp-wrap .sp-title{
    margin: 0 0 55px;
}
.sp-wrap .sp-content{
    overflow: hidden;
}
.sp-wrap .sp-slide:not(.slick-initialized){
    display: flex;
    overflow: hidden;
}
.sp-wrap .sp-slide{
    font-size: 0;
    margin: 0 -0.375vw;
}
.sp-wrap .slick-slide{}
.sp-wrap .slick-slide > div:not(:first-child){
    margin: 0.75vw 0 0;
}
.sp-wrap .sp-single{
    padding: 0 0.375vw;
}
.sp-wrap .sp-single a{
    display: block;
    position: relative;
    overflow: hidden;
}
.sp-wrap .sp-single a .sp-img{
    background: #000;
}
.sp-wrap .sp-single a .sp-img img{
    opacity: 1;
    transition: all ease .4s;
    -moz-transition: all ease .4s;
    -webkit-transition: all ease .4s;
}
.sp-wrap .sp-single a:hover .sp-img img{
    opacity: 0.40;
}
.sp-wrap .sp-single a .sp-img:before{
    content:'';
    display: block;
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background:url(images/sp-img_fade.png) center bottom  no-repeat;
    background-size: cover;
    opacity: 1;
    transition: all ease .4s;
    -moz-transition: all ease .4s;
    -webkit-transition: all ease .4s;
}
.sp-wrap .sp-single a:hover .sp-img:before{
    opacity: 0;
}
.sp-wrap .sp-single a .sp-img:after{
    content:'';
    display: block;
    position: absolute;
    z-index: 3;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url(images/logo-lg.png) center center no-repeat;
    background-size: 69.714% auto;
    opacity: 0;
    transition: all ease .4s;
    -moz-transition: all ease .4s;
    -webkit-transition: all ease .4s;
}

.sp-wrap .sp-single a:hover .sp-img:after{
    opacity: 0.16;
}
.sp-wrap .sp-single a .sp-details{
    position: absolute;
    z-index: 1;
    left: 0;
    right: 0;
    bottom: -61px;
    color: #fff;
    text-align: center;
    display: flex;
    flex-flow: column wrap;
    align-items: center;
    justify-content: flex-end;
    transition: all ease .4s;
    -moz-transition: all ease .4s;
    -webkit-transition: all ease .4s;
}
.sp-wrap .sp-single a:hover .sp-details{
    bottom: 0;
}
.sp-wrap .sp-single a .sp-address{}
.sp-wrap .sp-single a .sp-address_1{
    font-size: 24px;
    letter-spacing: 0.020em;
    text-transform: uppercase;
    margin: 0 0 14px;
}
.sp-wrap .sp-single a .sp-address_2{
    font-size: 14px;
    letter-spacing: 0.020em;
}
.sp-wrap .sp-single a .sp-price{
    font-family: var(--font-family-title-lg);
    font-weight: 600;
    font-size: 30px;
    margin: 27px 0 0;
    padding: 0 0 23px;
    width: 100%;
    border-bottom: 1px solid rgba(255,255,255,0.49);
}
.sp-wrap .sp-single a .sp-vd{
    font-size: 16px;
    letter-spacing: 0.150em;
    text-transform: uppercase;
    padding: 36px 0;
    opacity: 0;
    transition: all ease .4s;
    -moz-transition: all ease .4s;
    -webkit-transition: all ease .4s;
}
.sp-wrap .sp-single a:hover .sp-vd{
    opacity: 1;
}
#hp-fp{
    padding: 75px 0 45px;
}
.fp-wrap{}
.fp-wrap .fp-title{}
.fp-wrap .fp-content{
    margin: 70px 0 0;
}
.fp-wrap .fp-slide:not(.slick-initialized){
    display: flex;
    overflow: hidden;
}
.fp-wrap .fp-slide{}
.fp-wrap .fp-single{}
.fp-wrap .fp-single a{
    display: block;
    position: relative;
    overflow: hidden;
}
.fp-wrap .fp-single a .fp-img:before{
    content:'';
    display: block;
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url(images/fp-img_fade.png) center center no-repeat;
    background-size: cover;
    opacity: 0.57;
    transition: all ease .4s;
    -moz-transition: all ease .4s;
    -webkit-transition: all ease .4s;
}
.fp-wrap .fp-single a:hover .fp-img:before{
    opacity: 0.8;
}
.fp-wrap .fp-single a .fp-img:after{
    content:'';
    display: block;
    position: absolute;
    z-index: 3;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url(images/logo-lg.png) center center no-repeat;
    background-size: 85.553% auto;
    opacity: 0;
    transition: all ease .4s;
    -moz-transition: all ease .4s;
    -webkit-transition: all ease .4s;
}
.fp-wrap .fp-single a:hover .fp-img:after{
    opacity: 0.08;
}
.fp-wrap .fp-single a .fp-img img{}
.fp-wrap .fp-single a .fp-det{
    position: absolute;
    z-index: 1;
    left: 0;
    right: 0;
    bottom: -58px;
    color: #fff;
    text-align: center;
    display: flex;
    flex-flow: column wrap;
    align-items: center;
    justify-content: flex-end;
    transition: all ease .4s;
    -moz-transition: all ease .4s;
    -webkit-transition: all ease .4s;
}
.fp-wrap .fp-single a:hover .fp-det{
    bottom: 0px;
}
.fp-wrap .fp-single a .fp-price{
    font-family: var(--font-family-title-lg);
    font-weight: 600;
    font-size: 30px;
    width: 100%;
    border-bottom: 1px solid #fff;
    margin: 0 0 21px;
}
.fp-wrap .fp-single a .fp-price span{
    background: rgb(1,127,197,0.8);
    display: inline-block;
    width: calc(100% - 20px);
    max-width: 302px;
    text-align: center;
    padding: 14px 0;
    margin: 0px 0 -11px;
    position: relative;
    z-index: -1;
}
.fp-wrap .fp-single a .fp-add{}
.fp-wrap .fp-single a .fp-add_1{
    font-size: 18px;
    letter-spacing: 0.020em;
    text-transform: uppercase;
    margin: 0 0 7px;
}
.fp-wrap .fp-single a .fp-add_2{
    font-size: 14px;
    letter-spacing: 0.020em;
}
.fp-wrap .fp-single a .fp-vd{
    font-size: 16px;
    letter-spacing: 0.150em;
    text-transform: uppercase;
    padding: 30px 0;
    opacity: 0;
    transition: all ease .4s;
    -moz-transition: all ease .4s;
    -webkit-transition: all ease .4s;
}
.fp-wrap .fp-single a:hover .fp-vd{
    opacity: 1;
}
.fp-wrap .fp-navigation{
    margin: 59px 0 0;
}
.site-navigation{
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    justify-content: center;
}
.site-navigation .site-arrow{
    cursor: pointer;
    width: 71px;
    height: 65px;
    display: flex;
    flex-flow: column wrap;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    color: #000;
    background: rgba(255,255,255,0);
    border: 2px solid #000;
    transition: all ease .4s;
    -moz-transition: all ease .4s;
    -webkit-transition: all ease .4s;
}
.site-navigation .site-arrow.slick-hidden{
    display: none;
}
.site-navigation .site-arrow:hover{
    border: 2px solid #017fc5;
    background: #017fc5;
    color: #fff;
}
.site-navigation .site-navigation-button{
    margin:0 9px;
}
#hp-lbwd{
    padding: 45px 0 0;
    overflow: hidden;
    padding-bottom: 90px;
}
.lbwd-container{
    margin: 0 auto;
    max-width: 1440px;
    width: calc(100% - 30px);
}
.lbwd-wrap{}
.lbwd-wrap .lbwd-inner{}
.lbwd-wrap .lbwd-single{
    display: flex;
    flex-flow: row wrap;
    align-items: flex-start;
    justify-content: flex-start;
    position: relative;
}
.lbwd-wrap .lbwd-single:not(:first-child){
    margin: -65px 0 0;
}
.lbwd-wrap .lbwd-single:nth-child(even){
    flex-flow: row-reverse wrap;
    align-items: flex-end;
}
.lbwd-wrap .lbwd-single .lbwd-img{
    width: 52.153%;
}
.lbwd-wrap .lbwd-single .lbwd-desc{
    width: 47.847%;
    padding: 31px 0 0 70px;
    max-width: 560px;
}
.lbwd-wrap .lbwd-single:nth-child(even) .lbwd-desc{
    padding: 0 70px 30px 0;
}
.lbwd-wrap .lbwd-single .lbwd-desc h3{
    font-family: var(--font-family-title-lg);
    text-transform: uppercase;
    font-size: 40px;
    letter-spacing: 0.050em;
    color: #000;
    margin: 0 0 18px;
}
.lbwd-wrap .lbwd-single .lbwd-desc p{
    font-size: 14px;
    line-height: 1.857;
    color: #4d4d4d;
    letter-spacing: 0.050em;
    margin: 0 0 33px;
}
#hp-fc{
    padding: 93px 0 45px;
}
.fc-wrap{}
.fc-wrap .fc-title{}
.fc-wrap .fc-content{
    margin: 65px 0 0;
}
.fc-wrap .fc-list{
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    justify-content: center;
}
.fc-wrap .fc-single{
    width: 20%;
}
.fc-wrap .fc-single a{
    display: block;
    position: relative;
}
.fc-wrap .fc-single a .fc-img{}
.fc-wrap .fc-single a .fc-img:before{
    content:'';
    display: block;
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    opacity: 1;
    background: url(images/fc-img_fade.png) center center no-repeat;
    background-size: cover;
    transition: all ease .4s;
    -moz-transition: all ease .4s;
    -webkit-transition: all ease .4s;
}
.fc-wrap .fc-single a:hover .fc-img:before{
    opacity: 0;
}
.fc-wrap .fc-single a .fc-img:after{
    content:'';
    display: block;
    position: absolute;
    z-index: 3;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    opacity: 0;
    background: url(images/fc-img_hover.png) center center no-repeat;
    background-size: cover;
    transition: all ease .4s;
    -moz-transition: all ease .4s;
    -webkit-transition: all ease .4s;
}
.fc-wrap .fc-single a:hover .fc-img:after{
    opacity: 1;
}
.fc-wrap .fc-single a .fc-label{
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    justify-content: center;
}
.fc-wrap .fc-single a .fc-label h3{
    color: #fff;
    text-transform: uppercase;
    font-family: var(--font-family-title-lg);
    font-weight: 600;
    font-size: 1.5vw;
}
.fc-wrap .fc-rm{
    margin: 60px 0 0;
}
#hp-compass{
    padding: 45px 0 0;
    overflow: hidden;
}
.compass-container{
    margin: 0 auto;
    max-width: 1440px;
    width: calc(100% - 30px);
}
.compass-wrap{}
.compass-wrap .compass-inner{}
.compass-wrap .compass-single{
    display: flex;
    flex-flow: row wrap;
    align-items: flex-start;
    justify-content: flex-start;
    position: relative;
}
.compass-wrap .compass-single:not(:first-child){
    margin: -65px 0 0;
}
.compass-wrap .compass-single:nth-child(even){
    flex-flow: row-reverse wrap;
    align-items: flex-end;
}
.compass-wrap .compass-single .compass-img{
    width: 52.153%;
}
.compass-wrap .compass-single .compass-img span{
    font-family: var(--font-family-title-sm);
    position: absolute;
    z-index: 3;
    color: #017fc5;
    font-size: 60px;
    letter-spacing: 0.025em;
    text-transform: uppercase;
    left: 3.995%;
    top: 1.282%;
    pointer-events: none;
}
.compass-wrap .compass-single .compass-desc{
    width: 47.847%;
    padding: 31px 0 0 49px;
    max-width: 650px;
}
.compass-wrap .compass-single:nth-child(even) .compass-desc{
    padding: 0 49px 30px 0;
}
.compass-wrap .compass-single .compass-desc h3{
    font-family: var(--font-family-title-lg);
    text-transform: uppercase;
    font-size: 40px;
    letter-spacing: 0.050em;
    color: #000;
    margin: 0 0 18px;
}
.compass-wrap .compass-single .compass-desc p{
    font-size: 14px;
    line-height: 1.857;
    color: #4d4d4d;
    letter-spacing: 0.050em;
    margin: 0 0 33px;
}
#hp-testi{
    padding: 77px 0 42px;
}
.testi-container{
    width: calc(100% - 30px);
    margin: 0 auto;
    max-width: 1386px;
}
.testi-wrap{}
.testi-wrap .testi-title{}
.testi-wrap .testi-content{
    margin: 76px 0 0;
}
.testi-wrap .testi-slide:not(.slick-initialized){
    display: flex;
    overflow: hidden;
}
.testi-wrap .testi-slide{
    font-size: 0;
}
.testi-wrap .testi-single{
    font-size: 16px;
    line-height: 1.625;
    color: #4d4d4d;
    letter-spacing: 0.050em;
    padding: 81px 58px 0;
    background: url(images/testi-quote.png) 58px top no-repeat;
}
.testi-wrap .slick-slide.slick-current + .slick-slide.slick-active .testi-single{
    border-left: 1px solid #bfbfbf;
}
.testi-wrap .testi-single h3{
    color: #000;
    text-transform: uppercase;
    margin: 26px 0 0;
}
.testi-wrap .testi-google{
    max-width: 138px;
    margin: 70px auto 0;
}
.testi-wrap .testi-navigation{
    margin: 49px 0 0;
}
#hp-fv{
    padding: 42px 0 70px;
}
.fv-container{
    width: calc(100% - 30px);
    max-width: 1440px;
    margin: 0 auto;
}
.fv-wrap{}
.fv-wrap .fv-title{}
.fv-wrap .fv-content{
    margin: 40px 0 0;
}
.fv-wrap .fv-slide:not(.slick-initialized){
    display: flex;
    overflow: hidden;
}
.fv-wrap .fv-slide{
    margin: 0 -5px;
}
.fv-wrap .fv-single{
    padding: 0 5px 73px;
    position: relative;
}
.fv-wrap .fv-single:before{
    content:'';
    display: block;
    position: absolute;
    left: 0;
    bottom: 0;
    right: 0;
    height: 73px;
    background: url(images/fv-shadow.png) center top no-repeat;
    background-size: 100% 100%;
}
.fv-wrap .fv-single a{
    display: block;
    position: relative;
}
.fv-wrap .fv-single a .fv-img{}
.fv-wrap .fv-single a .fv-img:before{
    content: '';
    display: block;
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #000;
    opacity: 0.2;
    transition: all ease .4s;
    -moz-transition: all ease .4s;
    -webkit-transition: all ease .4s;
}
.fv-wrap .fv-single a:hover .fv-img:before{
    background: #575757;
    opacity: 0.4;
}
.fv-wrap .fv-single a .fv-play{
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    justify-content: center;
}
.fv-wrap .fv-single a .fv-play-inner{
    background: url(images/fv-play.png) top center no-repeat;
    padding: 75px 0 0;
    transition: all ease .4s;
    -moz-transition: all ease .4s;
    -webkit-transition: all ease .4s;
}
.fv-wrap .fv-single a:hover .fv-play-inner{
    padding: 117px 0 0;
}
.fv-wrap .fv-single a .fv-play-inner span{
    font-size: 16px;
    color: #fff;
    letter-spacing: 0.150em;
    text-transform: uppercase;
    opacity: 0;
    transition: all ease .4s;
    -moz-transition: all ease .4s;
    -webkit-transition: all ease .4s;
}
.fv-wrap .fv-single a:hover .fv-play-inner span{
    opacity: 1;
}
.fv-wrap .fv-navigation{
    margin: 30px 0 0;
}
#hp-sm{
    background: url(images/sm-bg.jpg) center -10.3125vw no-repeat #fff;
    background-size: cover;
    padding: 70px 0 90px;
    overflow: hidden;
}
#hp-sm:before{
    content:'';
    display: block;
    position: absolute;
    top: 0;
    left: 10px;
    right: 10px;
    max-width: 757px;
    width: 47.3125vw;
    background: #017fc5;
    margin: 0 auto;
    height: 5px;
}
.sm-container{
    width: calc(100% - 30px);
    max-width: 1438px;
    margin: 0 auto;
}
.sm-wrap{}
.sm-wrap .sm-inner{
    display: flex;
    flex-flow: row wrap;
    align-items: flex-start;
    justify-content: space-between;
}
.sm-wrap .sm-col{
    width: calc(50% - 15px);
}
.sm-wrap .sm-fb{
    max-width: 675px;
}
.sm-wrap .sm-ig{
    max-width: 672px;
}
.sm-wrap .sm-title{}
.sm-wrap .sm-icon{
    overflow: hidden;
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    justify-content: flex-end;
}
.sm-wrap .sm-icon a{
    font-size: 30px;
    color: #000;
    position: relative;
    transition: all ease .4s;
    -moz-transition: all ease .4s;
    -webkit-transition: all ease .4s;
}
.sm-wrap .sm-icon a:before{
    content:'';
    display: block;
    position: absolute;
    width: 100vw;
    max-width: 260px;
    height: 3px;
    background: #017fc5;
    top: 0;
    bottom: 0;
    right: calc(100% + 14px);
    margin: auto 0;
}
.sm-wrap .sm-icon a:hover{
    color: #017fc5;
}
.sm-wrap .sm-fb-content{
    margin: 20px 0 0;
    overflow: hidden;
}
.sm-wrap .sm-fb-slide:not(.slick-initialized){
    display: flex;
    overflow: hidden;
}
.sm-wrap .sm-fb-slide{
    margin: 0 -7px;
    font-size: 0;
}
.sm-wrap .sm-fb-single{
    padding: 0 7px;
}
.sm-wrap .sm-fb-single a{
    display: block;
    position: relative;
}
.sm-wrap .sm-fb-single a .sm-fb-img{}
.sm-wrap .sm-fb-single a .sm-fb-img:before{
    content:'';
    display: block;
    position: absolute;
    z-index: 3;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    background: #017fc5;
    opacity: 0;
    transition: all ease .4s;
    -moz-transition: all ease .4s;
    -webkit-transition: all ease .4s;
}
.sm-wrap .sm-fb-single a:hover .sm-fb-img:before{
    opacity: 0.7;
}
.sm-wrap .sm-fb-single a .sm-fb-icon{
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    flex-flow: column wrap;
    align-items: center;
    justify-content: center;
    font-size: 30px;
    color: #fff;
    opacity: 0;
    transition: all ease .4s;
    -moz-transition: all ease .4s;
    -webkit-transition: all ease .4s;
}
.sm-wrap .sm-fb-single a:hover .sm-fb-icon{
    opacity: 1;
}
.sm-wrap .sm-fb-button{
    margin: 45px 0 0;
    text-align: center;
}
.sm-wrap .sm-ig-user{
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    justify-content: flex-start;
    padding: 25px 0 0;
}
.sm-wrap .sm-ig-photo{
    width: 65px;
    border-radius: 100%;
    overflow: hidden;
    margin: 0 10px 0 0;
}
.sm-wrap .sm-ig-username{
    max-width: calc(100% - 75px);
}
.sm-wrap .sm-ig-username a{
    font-family: var(--jost);
    font-size: 24px;
    letter-spacing: 0.100em;
    color: #1b1b1b;
    transition: all ease .4s;
    -moz-transition: all ease .4s;
    -webkit-transition: all ease .4s;
}
.sm-wrap .sm-ig-username a:hover{
    color: #017fc5;
}

.sm-wrap .sm-ig-content{
    overflow: hidden;
    margin: 27px 0 0;
}
.sm-wrap .sm-ig-slide:not(.slick-initialized){
    display: flex;
    overflow: hidden;
}
.sm-wrap .sm-ig-slide{
    font-size: 0;
    margin: 0 -5px;
}
.sm-wrap .sm-ig-slide .slick-slide > div:not(:first-child){
    margin: 10px 0 0;
}
.sm-wrap .sm-ig-single{
    padding: 0 5px;
}
.sm-wrap .sm-ig-single a{
    display: block;
    position: relative;
}
.sm-wrap .sm-ig-single a .sm-ig-img{}
.sm-wrap .sm-ig-single a .sm-ig-img:before{
    content:'';
    display: block;
    position: absolute;
    z-index: 3;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    background: #017fc5;
    opacity: 0;
    transition: all ease .4s;
    -moz-transition: all ease .4s;
    -webkit-transition: all ease .4s;
}
.sm-wrap .sm-ig-single a:hover .sm-ig-img:before{
    opacity: 0.7;
}
.sm-wrap .sm-ig-single a .sm-ig-icon{
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    flex-flow: column wrap;
    align-items: center;
    justify-content: center;
    font-size: 30px;
    color: #fff;
    opacity: 0;
    transition: all ease .4s;
    -moz-transition: all ease .4s;
    -webkit-transition: all ease .4s;
}
.sm-wrap .sm-ig-single a:hover .sm-ig-icon{
    opacity: 1;
}
.sm-wrap .sm-ig-button{
    margin: 45px 0 0;
    text-align: center;
}
.footer{
    position: relative;
    background: #2f2f2f;
    padding: 0 0 66px;
}
#ftr-git{
    background: url(images/git-bg.jpg) top left no-repeat #000;
    background-size: cover;
    padding: 89px 0 85px;
    background-attachment: fixed;
}
.git-wrap{}
.git-wrap .wpcf7-form-control-wrap{
    display: block;
}
.git-wrap .git-title{}
.git-wrap .git-subtitle{
    font-size: 14px;
    line-height: 1.714;
    color: #b2b2b2;
    letter-spacing: 0.050em;
    text-align: center;
    margin: 54px 0 0;
}
.git-wrap .git-content{
    max-width: 610px;
    margin: 50px auto 0;
}
.git-wrap .git-form{}
.git-wrap ::-webkit-input-placeholder {
    text-transform: uppercase;
}
.git-wrap :-ms-input-placeholder {
    text-transform: uppercase;
}
.git-wrap ::placeholder {
    text-transform: uppercase;
}
.git-wrap .git-row{}
.git-wrap .git-row:first-child{
    margin: 0 0 0;
}
.git-wrap .git-row.dual{
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    justify-content: space-between;
}
.git-wrap .git-row.dual > div{
    width: calc(50% - 5px);
}
.git-wrap .git-row.dual > div:first-child{
    margin: 0 0 0;
}
.git-wrap .git-row.textarea{
    margin: 34px 0 0;
}
.git-wrap .git-row.button{
    margin: 46px 0 0;
    display: flex;
    flex-flow: column wrap;
    align-items: center;
    justify-content: center;
}
.git-wrap input:not([type="submit"]){
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    display: block;
    width: 100%;
    color: #fff;
    background:none;
    border: 0px solid #6f6f6f;
    border-bottom: 2px solid #6f6f6f;
    padding: 0 0 0;
    height: 59px;
    letter-spacing: 0.050em;
    outline: 0;
}
.git-wrap textarea{
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    display: block;
    width: 100%;
    color: #fff;
    background:none;
    border: 0px solid #6f6f6f;
    border-bottom: 2px solid #6f6f6f;
    padding: 0 0 0;
    resize: none;
    height: 87px;
    letter-spacing: 0.050em;
    outline: 0;
}
.footer-logo{
    padding: 42px 0 0;
}
.footer-logo-wrap{
    font-size: 0;
    text-align: center;
}
.footer-logo-single{
    max-width: 217px;
    display: inline-block;
    vertical-align: middle;
}
.footer-bottom{
    margin: 45px 0 0;
    position: relative;
}
.footer-bottom .footer-bottom-accent{
    height: 1px;
    background: #4c4c4c;
    position: absolute;
    left: 0;
    right: 0;
    top: 10px;
    margin: 0 auto;
    /*max-width: 520px;*/
    max-width: 400px;
}
.footer-bottom-wrap{}
.footer-bottom-inner{
    display: flex;
    /*flex-flow: row wrap;*/
    flex-flow: row;
    align-items: flex-start;
    justify-content: space-between;
}
.footer-bottom-inner h3{
    font-family: var(--font-family-title-lg);
    font-size: 24px;
    letter-spacing: 0.220em;
    text-transform: uppercase;
    color: #fff;
    display: inline-block;
    margin: 0 0 28px;
}
.footer-ci{
    color: #fff;
}
.footer-ci .footer-ci-inner{
    display: flex;
    flex-flow: row wrap;
    align-items: flex-start;
    justify-content: flex-start;
}
.footer-ci .footer-ci-col{
    margin-left: 36px;
}
.footer-ci .footer-ci-col:first-child{
    margin-left: 0;
    margin-top: 0;
}
.footer-ci .footer-ci-col .footer-ci-single{
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    justify-content: flex-start;
    font-size: 16px;
    line-height: 1.714;
    letter-spacing: 0.075em;
    margin: 9px 0 0;
}
.footer-ci .footer-ci-col .footer-ci-single:first-child{
    margin: 0 0 0;
}
.footer-ci .footer-ci-col .footer-ci-single em{
    font-size: 10px;
    min-width: 16px;
    margin: 0 12px 0 0;
    line-height: 1;
}
.footer-ci .footer-ci-col a:hover{
    color: #017fc5;
}
.footer-ci .footer-ci-col .footer-ci-single em.ai-font-phone{
    font-size: 12px;
}
.footer-ci .footer-ci-col .footer-ci-single em.ai-font-location-c{
    font-size: 17px;
    margin: 4px 12px 0 0;
}
.footer-ci .footer-ci-col.info{}
.footer-ci .footer-ci-col.add{}
.footer-ci .footer-ci-col.add .footer-ci-single{
    align-items: flex-start;
}
.footer-ci .footer-ci-col.add .footer-ci-single a{
    max-width: 325px;
}
.footer-ci .footer-ci-col.sm{
    /*margin-left: 123px;*/
    margin-left: 70px;
    font-size: 0;
}
.footer-ci .footer-ci-col.sm a{
    display: inline-block;
    vertical-align: middle;
    font-size: 24px;
    margin-left: 42px;
}
.footer-ci .footer-ci-col.sm a:first-child{
    margin-left: 0px;
}
.footer-sitemap{
    max-width: 350px;
}
.footernav{
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
}
.footernav li{
    width: 50%;
    margin-bottom: 25px;
}
.footernav li:nth-child(even){
    /*margin-left: 50px;*/
}
.footernav li:first-child,
.footernav li:first-child + li{
    margin-top: 0;
}
.footernav a{
    color: #fff;
    font-size: 16px;
    text-transform: uppercase;
    letter-spacing: 0.220em;
    transition: all ease .4s;
    -moz-transition: all ease .4s;
    -webkit-transition: all ease .4s;
}
.footernav a:hover{
    color: #017fc5;
}
.ftr-disclaimer{
    font-size: 11px;
    letter-spacing: 0.050em;
    color: #a9a9a9;
    line-height: 1.727;
    text-align: center;
    margin: 72px 0 0;
}
.ftr-disclaimer a:hover{
    color: #fff;
}
.copyright{
    font-family: var(--compass);
    color: #fff;
    line-height: 1.429;
    font-size: 14px;
    letter-spacing: 0.050em;
    text-align: center;
    margin: 33px 0 0;
}
.copyright span{
    text-transform: uppercase;
}
.copyright a[target]{
    font-weight: 700;
    text-decoration: underline;
}
.copyright a:hover{
    color: #017fc5;
}
.re-logos{
    text-align: center;
    margin: 22px 0 0;
}
.re-logos span{
    font-size: 27px;
    display: inline-block;
    vertical-align: middle;
    margin-left: 9px;
    color: #fff;
}
.re-logos span:first-child{
    margin-left: 0;
    font-size: 19px;
}

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

button.btn.dropdown-toggle.btn-default {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: 1px solid #5a5a5a;
    display: block;
    width: 100%;
    background-color: transparent;
    background-repeat: initial;
    background-attachment: initial;
    background-position: initial;
    background-image: none;
    height: 38px;
    padding: 0 18px 0 9px;
    background: url('images/qs-dd.png') calc(100% - 5px) center no-repeat;
    outline: 0;
    border-radius: unset;
}

span.filter-option.pull-left {
    font-size: 9px !important;
    letter-spacing: 0.100em !important;
    text-transform: uppercase !important;
    color: #fff !important;
}
.grecaptcha-badge {
    z-index: 999 !important;
}
.use-floating-validation-tip .wpcf7-not-valid-tip {
    width: auto;
    position: absolute;
}
.wpcf7 form .wpcf7-response-output {
    text-align: center;
}
#ftr-git .wpcf7 form .wpcf7-response-output {
    color: #ffffff;
}

#ihf-map-canvas .leaflet-right {
    z-index: 999;
}
body.page-id-37 p#breadcrumbs{
    margin-left: auto;
    margin-right: auto;
    width: 1140px;
}

.aios-custom-ihomefinder-results-template #content-full .entry-title {
    text-align: center;
}

.logo-sub-title {
	font-family: var( --font-family-title-sm);
    color: #fff;
    font-size: 45px;
}

.logo-sub-title small {
    font-size: 0.667em;
    font-weight: 700;
    position: relative;
    top: 0.133em;
}

.logo-sub-title big {
    font-size: 1.6em;
    line-height: 0;
    margin-left: 0.042em;
}

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

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