/*
Theme Name: ogroupcabostaging.com
Description: AIOS mobile semi-custom theme.
Author: AgentImage
Author URI: http://www.agentimage.com
Version: 1.6.0
Tags: one-column, two-columns, right-sidebar, custom-menu, full-width-template, sticky-post
License: Proprietary
License URI: http://www.agentimage.com
Template: aios-starter-theme
*/
/*

TABLE OF CONTENTS

1. Variables
2. Custom CSS
3. IP styles
4. MEDIA QUERIES ARE AUTOMATICALLY REMOVED FROM THIS FILE, they must be placed in style-media-queries.css

*/
/*******************************************************
 *
 * 1. Variables
 *
 *******************************************************/
 :root {
    /** Font default */
    --font-default: 'Roboto', sans-serif;
    --font-title: 'Source Sans Pro', san-serif;
    --font-barlow: 'Barlow Semi Condensed', sans-serif;
    --font-script: 'Southland';
    --font-size-default: 14px;
    --font-size-title: 18px;
    --font-color-default: #000000;
    --font-color-title: #1b1b1b;
    /** Use for input, button, and any other element */
    --primary: #e51937;
    --secondary: #1b1b1b;
    --success: #28a745;
    --info: #17a2b8;
    --warning: #ffc107;
    --danger: #dc3545;
    --light: #f8f9fa;
    --dark: #343a40;
}

/*******************************************************
 *
 * 2. Navigation
 *
 *******************************************************/
/* Sub Menu */
.navi {
    font-size: 0;
}

.navi li {
    position: relative;
}

.navi li a {
    font-size: 13px;
    font-weight: 300;
    line-height: 1;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    display: block;
    /*    font-weight: 500;*/
}

.navi > li {
    display: inline-block;
}

.navi > li:before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 100%;
    width: 1px;
    background: #fff;
}

.navi > li, .navi > li:before {
    margin: 0 26px;
}

.navi > li:first-child {
    margin-left: 0;
}

.navi > li:last-child {
    margin-right: 0;
}

.navi > li:last-child:before {
    display: none;
}

.navi > li > a {
    transition: color .4s ease;
}

.navi > li:hover > a, .navi > li:focus-within > a {
    color: var(--primary);
}

.navi .sub-menu {
    list-style: none outside none;
    margin: 0;
    padding: 0;
    position: absolute;
    width: 100%;
    min-width: 220px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    -webkit-transition: all .15s;
    transition: all .15s;
    text-align: center;
}

.navi .sub-menu a {
    color: #FFFFFF;
    display: block;
    padding: 10px;
    background: var(--secondary);
    border-top: 1px solid #272727;
    transition: all .4s ease;
}

.navi .sub-menu > li:first-child > a {
    border-top: 0;
}

.navi .sub-menu a:hover {
    background: var(--primary);
    border-top-color: #e51937;
    color: #fff;
}

.navi .sub-menu .sub-menu {
    margin-left: 100%;
    top: 0;
    left: 0;
    transform: none;
}

.navi li:hover > .sub-menu {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.navi > li:hover > .sub-menu {
    padding-top: 15px;
}

.navi .sub-menu li {
    position: relative;
}

/*******************************************************
 *
 * 3. Custom CSS
 *
 *******************************************************/
/* Global */
body {
    font-family: var(--font-default);
    font-size: var(--font-size-default);
    background: #FFFFFF;
    color: var(--font-color-default);
    margin: 0;
    /* Remove the comment from line 85 to 86 if the font issue in safari occurs */
    /* -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; */
}

#main-wrapper {
    overflow: hidden;
}

a {
    color: inherit;
}

a:hover {
    color: var(--primary);
}

a:hover, a:focus, .slick-slide, .slick-slide a {
    outline: none;
    text-decoration: none;
}

input, select, textarea {
    outline: none;
}

.flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
}

.flex:before, .flex:after {
    display: none;
}

.dir-col {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column wrap;
    flex-flow: column wrap;
}

.dir-col-reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-flow: column-reverse wrap;
    flex-flow: column-reverse wrap;
}

.dir-row-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-flow: row-reverse wrap;
    flex-flow: row-reverse wrap;
}

.al-center {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.al-start {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.al-end {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
}

.ju-center {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.ju-start {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

.ju-end {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

.ju-between {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

/*offcanvas*/
.site-offcanvas.active {
    -webkit-transform: translateX(0);
    transform: translateX(0);
}

.site-offcanvas-bg.active {
    display: block;
}

.site-offcanvas-bg {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 9999;
    display: none;
}

.site-offcanvas {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 9999;
    /*width: 1107px;*/
    width: 69.18%;
    background: #171717 url("images/bg-offcanvas.jpg") center/cover no-repeat;
    overflow: auto;
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
    -webkit-transition: -webkit-transform 0.6s ease-out;
    transition: -webkit-transform 0.6s ease-out;
    transition: transform 0.6s ease-out;
    transition: transform 0.6s ease-out, -webkit-transform 0.6s ease-out;
}

.offcanvas-container {
    padding: 42px 62px;
    /*height: 100%;*/
    position: relative;
}

.offcanvas-btn {
    position: absolute;
    top: 34px;
    right: 28px;
    background: transparent;
    padding: 0;
    outline: none;
    border: none;
}

.offcanvas-btn i {
    display: block;
    font-size: 19px;
    color: #838383;
    font-weight: 700;
}

.offcanvas-btn em {
    font-weight: 500;
    font-size: 8px;
    letter-spacing: 0.2em;
    line-height: 1;
    text-transform: uppercase;
    color: #6b6a6b;
    font-style: normal;
    margin: 11px 0 0;
    display: block;
    transition: color .4s ease;
}

.offcanvas-btn:hover em {
    color: var(--primary);
}

.offcanvas-logo {
    padding: 0 14px;
    margin: 0 0 68px;
}

.offcanvas-logo a {
    display: inline-block;
}

.offcanvas-nav {
    padding: 0 14px;
}

#off_nav {
    display: flex;
    flex-flow: row wrap;
    align-items: flex-start;
}

#off_nav > li {
    width: 30%;
    margin: 0 0 42px;
}

#off_nav > li > a {
    font-family: var(--font-title);
    font-size: 20px;
    /*    font-weight: 600;*/
    color: #fff;
    text-transform: uppercase;
    line-height: 1;
    transition: color .4s ease;
}

#off_nav ul {
    margin: 12px 0 0;
}

#off_nav ul ul {
    margin-left: 20px;
    margin-top: 0;
    padding-right: 20px;
}

#off_nav ul li {
}

#off_nav ul li a {
    font-size: 13px;
    letter-spacing: 0.02em;
    color: #8c8c8c;
    line-height: 2;
    text-transform: uppercase;
    transition: color .4s ease;
}

#off_nav > li > a:hover, #off_nav ul li a:hover {
    color: var(--primary);
}

.offcanvas-contact-info {
    border-top: 1px solid #343434;
    max-width: 835px;
    padding: 30px 0 0;
    margin: 15px 0 0;
}

.offcanvas-contact-info ul {
    display: flex;
    flex-flow: row wrap;
    align-items: flex-start;
}

.offcanvas-contact-info ul li {
    text-align: center;
    padding-left: 71px;
}

.offcanvas-contact-info ul li i {
    display: block;
    color: #737373;
    min-height: 14px;
    margin: 0 0 15px;
}

.offcanvas-contact-info ul li i.ai-font-phone {
    font-size: 15px;
}

.offcanvas-contact-info ul li i.ai-font-location-c {
    font-size: 20px;
    margin-bottom: 10px
}

.offcanvas-contact-info ul li span {
    display: block;
    font-size: 15px;
    line-height: 22px;
    color: #8c8c8c;
    transition: color .4s ease;
}

.offcanvas-contact-info ul li a {
    transition: color .4s ease;
    font-size: 15px;
    line-height: 22px;
    color: #8c8c8c;
}

.offcanvas-contact-info ul li a:hover, .offcanvas-contact-info ul li a:hover span {
    color: var(--primary);
}

.offcanvas-contact-info ul li:last-child {
    padding-right: 0;
    margin: 23px 0 0;
}

.offcanvas-contact-info ul li a[class*="ai-font-"] {
    width: 35px;
    height: 35px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    border-radius: 50%;
    border: 1px solid rgba(255, 255, 255, 0.2);
    color: #fff;
    margin-right: 14px;
    transition: background .4s ease, color .4s ease;
}

.offcanvas-contact-info ul li a[class*="ai-font-"]:last-child {
    margin-right: 0;
}

.offcanvas-contact-info ul li a[class*="ai-font-"]:hover {
    background: var(--primary);
    border-color: var(--primary);
    color: #Fff;
}

/*offcanvas end*/
/*fixed header*/
.mobile-fixed-header {
    display: none;
}

.fixed-header.active {
    pointer-events: all;
    top: 0;
}

.fixed-header {
    top: -100%;
    position: fixed;
    left: 0;
    right: 0;
    background: #1d1d1d url(images/bg-fh.jpg) center/cover no-repeat;
    /*padding: 0 0 0 33px;*/
    padding: 0 0 0 2.063%;
    z-index: 1011;
    pointer-events: none;
    -webkit-transition: all 1s ease;
    transition: all 1s ease;
}

.fh-logo {
    width: 21.889%;
}

.fh-logo a {
    display: inline-block;
}

.fh-logo a img {
}

.fh-nav {
    /* flex-grow: 1; */
    text-align: center;
    padding: 0 15px;
    margin: 0 auto 0 0;
}

.fh-nav .navi > li, .fh-nav .navi > li:before {
    /*margin: 0 min(1.500vw, 24px);*/
    /* margin: 0 min(1.063vw, 17px); */
    margin: 0 15px;
}

.fh-nav .navi > li > a {
    /* font-size: min(0.75vw, 14px); */
    font-size: 13px;
}

.fh-contact {
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    color: #fff;
    /*padding: 0 20px 0 0;*/
    padding: 0 min(1.250vw, 20px) 0 0;
}

.fh-contact > div {
    width: 100%;
    display: flex;
    flex-flow: row wrap;
    align-items: center;
}

.fh-contact span {
    padding: 0 min(0.550vw, 15px);
}

.fh-contact span a {
    /* font-size: min(1vw, 16px); */
    font-size: 13px;
    font-weight: 300;
    letter-spacing: 0.05em;
    line-height: 1;
    transition: color .4s ease;
}

.fh-contact span a:hover {
    color: var(--primary);
}

.fh-contact span em {
    display: block;
    font-weight: 300;
    font-size: 13px;
    letter-spacing: 0.05em;
    font-style: normal;
    margin: 0 0 5px;
}

.fh-contact span a.asis-mailto-obfuscated-email {
    width: min(2.188vw, 35px);
    height: min(2.188vw, 35px);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    border: 1px solid rgba(255, 255, 255, 0.2);
    font-size: min(0.563vw, 9px);
    transition: color .4s ease, background .4s ease, border .4s ease;
}

.fh-contact span a.asis-mailto-obfuscated-email:hover {
    background: var(--primary);
    border-color: var(--primary);
    color: #fff;
}

.fh-contact span:first-child {
    /*border-right: 1px solid rgb(255 255 255 / 50%);*/
    padding-left: 0;
}

.fh-contact span:last-child {
    padding-right: 0;
    padding-left: 0;
}

.fh-menu {
    width: min(4.938vw, 79px);
}

.fh-menu button {
    width: 100%;
    height: 69px;
    padding: 0;
    border: none;
    background: url(images/bg-fh-menu.jpg) center/cover no-repeat;
}

.fh-menu button span {
    display: block;
    width: 26px;
    height: 2px;
    background: #1d1d1d;
    position: relative;
    margin: 7px auto 12px;
}

.fh-menu button span:before, .fh-menu button span:after {
    content: '';
    position: absolute;
    height: 2px;
    background: #1d1d1d;
}

.fh-menu button span:before {
    bottom: 100%;
    right: 0;
    width: 12px;
    margin-bottom: 5px;
}

.fh-menu button span:after {
    top: 100%;
    right: 0;
    width: 21px;
    margin-top: 5px;
}

.fh-menu button em {
    display: block;
    font-size: 8px;
    letter-spacing: 0.2em;
    line-height: 1;
    text-transform: uppercase;
    color: #1d1d1d;
    font-style: normal;
    margin: 5px 0 0 -1px;
    transition: color .4s ease;
}

.fh-menu button:hover em {
    color: var(--primary);
}

/*fixed header end*/
/*header*/
header.header {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 100;
    padding: 34px 0 0;
}

#nav {
}

.header-contact {
}

.header-contact span {
    font-size: 13px;
    font-weight: 300;
    letter-spacing: 0.05em;
    line-height: 1;
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-right: 1px solid #fff;
    padding: 0 21px;
}

.header-contact span:first-child {
    /*padding-left: 0;*/
}

.header-contact span:last-child {
    border-right: 0;
    /*padding-right: 0;*/
}

.header-contact span i {
    font-size: 13px;
    margin-right: 7px;
}

.header-contact span em {
    font-style: normal;
    padding-right: 5px;
}

.header-contact span a {
    transition: color .4s ease;
}

.header-menu {
}

.header-menu button {
    padding: 0;
    border: none;
    background: transparent;
}

.header-menu button span {
    display: block;
    width: 26px;
    height: 2px;
    background: #fff;
    position: relative;
    margin: 7px 0 12px;
}

.header-menu button span:before, .header-menu button span:after {
    content: '';
    position: absolute;
    height: 2px;
    background: #fff;
}

.header-menu button span:before {
    bottom: 100%;
    right: 0;
    width: 12px;
    margin-bottom: 5px;
}

.header-menu button span:after {
    top: 100%;
    right: 0;
    width: 21px;
    margin-top: 5px;
}

.header-menu button em {
    display: block;
    font-size: 8px;
    letter-spacing: 0.2em;
    line-height: 1;
    text-transform: uppercase;
    color: #fff;
    font-style: normal;
    margin: 5px 0 0 -1px;
    transition: color .4s ease;
}

.header-menu button:hover em {
    color: var(--primary);
}

/*header end*/
/*floating smi*/
.floating-smi {
    position: fixed;
    top: 50%;
    transform: translateY(-50%);
    /*right: 35px;*/
    right: 15px;
    z-index: 101;
    width: 35px;
}

.floating-smi ul {
}

.floating-smi ul li {
}

.floating-smi ul li:after {
    content: '';
    position: relative;
    display: block;
    margin: auto;
    width: 1px;
    height: 11px;
    background: #fff;
    opacity: 0.43px;
}

.floating-smi ul li:first-child:after {
    height: 42px;
}

.floating-smi ul li:last-child:after {
    display: none;
}

.floating-smi ul li a {
    display: flex;
    width: 35px;
    height: 35px;
    border-radius: 50%;
    background: #d5d5d5;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: 15px;
    color: #000;
    transition: background .4s ease;
}

.floating-smi ul li a:hover {
    background: var(--primary);
    border-color: var(--primary);
}

.floating-smi ul li a span.ai-font-envelope {
    font-size: 12px;
}

/*floating smi end*/
/*slideshow*/
#hp-slideshow {
    position: relative;
}

#hp-slideshow .cycloneslider {
    position: relative;
}

#hp-slideshow .cycloneslider:before, #hp-slideshow .cycloneslider:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 10;
    z-index: 10;
}

#hp-slideshow .cycloneslider:before {
    /*height: 305px;*/
    height: 42.362%;
    opacity: 0.7;
    background: rgb(0, 0, 0);
    background: -moz-linear-gradient(180deg, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0) 100%);
    background: -webkit-linear-gradient(180deg, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0) 100%);
    background: linear-gradient(180deg, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0) 100%);
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr="#000000", endColorstr="#000000", GradientType=1);
}

#hp-slideshow .cycloneslider:after {
    bottom: 0;
    margin: auto;
    /*height: 454px;*/
    height: 63.056%;
    background: url(images/slideshow-overlay.png) center/100% 100% no-repeat;
}

#hp-slideshow .cycloneslider-slides {
    z-index: 1;
}

.slideshow-content {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 10;
}

.slideshow-content-accent-logo {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 10;
    background: url(images/accent-slideshow-cropped.png) right center no-repeat;
    background-size: auto 100%;
    background-repeat: no-repeat;
    background-attachment: fixed;
    opacity: 0.3;
}

.slideshow-content-accent-logo + .container {
    position: relative;
    z-index: 100;
}

.slideshow-content > div > div {
    display: flex;
    align-items: center;
    justify-content: center;
}

.slideshow-logo {
    text-align: center;
    /*margin: 0 0 37px;*/
    display: inline-block;
}

.slideshow-logo a {
    display: block;
}

.slideshow-logo a:first-child {
    margin-bottom: 25px;
}

.slideshow-logo a img {
    display: block;
    width: 622px;
    max-width: 100%;
    height: auto;
}

.slideshow-content .btn-a {
    margin: 0 auto 0;
    position: relative;
    left: 9.5%;
}

.slideshow-btn-list {
    display: flex;
    justify-content: center;
    align-items: center;
    padding-left: 15px;
}

.slideshow-btn-list a.btn-a.is-white {
    margin-bottom: 0;
    left: 0;
    margin: 0 28px;
    width: 220px;
}

.site-button {
    display: block;
    margin: 0 auto;
    width: 214px;
    height: 53px;
    text-align: center;
    font-size: 12px;
    font-weight: 500;
    line-height: 53px;
    letter-spacing: 2.4px;
    text-transform: uppercase;
    text-decoration: none !important;
    text-align: center;
    color: #fff;
    border: 1px solid #b3b3b3;
    position: relative;
    -webkit-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out;
}

.site-button:before {
    content: '';
    display: inline-block;
    vertical-align: middle;
    height: 100%;
}

.site-button:after {
    content: '';
    position: absolute;
    top: 50%;
    left: -23px;
    width: 46px;
    height: 1px !important;
    transform: scaleY(1.1);
    background: #b3b3b3;
    pointer-events: none;
    -webkit-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out;
}

.mac-true .site-button:after, .mac-true .site-button:before {
    top: 25.5px !important;
    height: 1px !important;
}

.mac-true .site-button:after, .mac-true .site-button:before {
    top: 25.5px !important;
    height: 1px !important;
}

.site-button:hover {
    background: #e51937 !important;
    border-color: #e51937 !important;
    color: #fff !important;
}

.single-listing-submit {
    display: block;
    width: 159px;
    position: relative;
    margin-left: auto;
}

.single-listing-submit:after {
    content: '';
    position: absolute;
    top: calc(50% - 0.5px);
    left: -23px;
    width: 46px;
    height: 1px;
    background: #b3b3b3;
    pointer-events: none;
    -webkit-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out;
}

.single-listing-submit input[type="submit"] {
    width: 100%;
}

a.btn-a, .btn-a {
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    justify-content: center;
    width: 177px;
    height: 53px;
    border: 1px solid #000;
    font-size: 12px;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: var(--secondary);
    background: transparent;
    position: relative;
    transition-duration: .4s;
    transition-timing-function: ease;
    transition-property: color, border, background;
}

a.btn-a.is-white, .btn-a.is-white {
    color: #fff;
    border-color: rgba(147, 147, 147, 0.6);
    text-align: center;
}

a.btn-a:hover, .btn-a:hover {
    background: var(--secondary);
    border-color: var(--secondary);
    color: #fff;
}

.btn-a:before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    right: -15px;
    width: 29px;
    height: 1px;
    background: #c5c5c5;
    margin: auto;
}

.btn-a.is-white:before {
    background: #fff;
}

a.scrolldown {
    position: absolute;
    bottom: 68px;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 10;
    width: 35px;
    height: 35px;
    border: 1px solid rgba(255, 255, 255, 0.3);
    color: #fff;
    font-size: 13px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    bottom: 9%;
    transition: background .4s ease, border .4s ease, color .4s ease;
    padding: 3px 0 0;
}

a.scrolldown:hover {
    background: var(--primary);
    border-color: var(--primary);
    color: #fff;
}

/*slideshow end*/
.custom-container {
    /*padding: 0 90px;*/
    padding: 0 min(4.625vw, 90px);
    /*padding: 0 4.25%;*/
}

/*fp*/
.ba-fixed {
    background-attachment: fixed!important;
}

#hp-listings {
    position: relative;
    padding: 0 10px 210px;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    z-index: 10;
}

#hp-listings .custom-container {
    /*    max-width: 1600px;*/
    max-width: 1325px;
    margin: 0 auto;
    width: 92%;
    padding: 0;
}

.fp-inner {
    /*    margin: 0 5px;*/
    position: relative;
    padding-top: 1px;
}

.fp-title {
    position: absolute;
    top: 0;
    left: 0;
    width: 30.882%;
    z-index: 1;
    /*    padding: min(4vw, 64px) 0 0;*/
    padding: 64px 0 0;
}

.section-title {
    display: inline-flex;
    flex-flow: column wrap;
    position: relative;
}

.section-title em {
    display: inline-flex;
    align-items: center;
    font-family: var(--font-barlow);
    font-weight: 700;
    font-size: 17.65px;
    letter-spacing: 0.01em;
    line-height: 1;
    color: var(--secondary);
    font-style: normal;
}

.section-title em:after {
    content: '';
    position: relative;
    width: 38px;
    height: 5px;
    background: var(--primary);
    margin-left: 10px;
}

.section-title strong {
    display: block;
    font-family: var(--font-barlow);
    font-weight: 600;
    font-size: 90px;
    letter-spacing: -0.025em;
    line-height: 1;
    color: var(--secondary);
    width: 100%;
    text-transform: uppercase;
    margin: -6px 0 0 -5px;
}

.section-title span {
    display: inline-block;
    margin-left: auto;
    font-family: var(--font-script);
    color: var(--primary);
    font-size: 95px;
    line-height: 1;
}

.section-title .line {
    position: absolute;
    top: 0;
    right: 100%;
    bottom: 0;
    margin: auto;
    width: 100vw;
    height: 4px;
    background: #d7d7d7;
}

.fp-title .section-title strong {
    font-size: min(6.6vw, 90px);
}

.fp-title .section-title span {
    font-size: min(5.938vw, 95px);
    margin-right: min(5.313vw, -30px);
    margin-top: min(1.875vw, -30px);
}

.fp-title .section-title .line {
    top: initial;
    bottom: 25.5%;
    right: min(11vw, 190px);
}

.fp-title a.btn-a {
    width: min(16.688vw, 267px);
    margin: 29px auto 0;
    min-width: 220px;
}

.fp-list {
    position: relative;
    font-size: 0;
    margin-left: -1px;
    /*    margin-top: min(-1.875vw, -30px);*/
    margin-top: -37px;
}

.fp-item {
    display: inline-block;
    vertical-align: top;
    width: 33.33%;
    padding-left: 1px;
    padding-bottom: 1px;
}

.fp-item:first-child {
    /*    margin-left: 33.33%;*/
    margin-left: 30.882%;
}

.fp-item a {
    position: relative;
    display: block;
    overflow: hidden;
}

.fp-img {
    position: relative;
}

.fp-img canvas {
    display: block;
    width: 100%;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    background-color: #000;
    -webkit-filter: contrast(75%) grayscale(1);
    filter: contrast(75%) grayscale(1);
    transition: all .6s ease-in-out;
}

.fp-info {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    color: #fff;
    flex-wrap: nowrap;
    transition: opacity .4s ease;
}

.fp-info > .flex {
    padding: 17px 19px 25px 21px;
    flex-wrap: wrap;
}

.fp-info::after {
    content: '';
    position: absolute;
    z-index: 1;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100px;
    background: transparent url(images/fl-info-bg-a.png) no-repeat;
    background-position: bottom center;
    background-size: 100% 100%;
    pointer-events: none;
}

.fp-info > div {
    position: relative;
    z-index: 2;
}
.prices {
	display: flex;
	margin-bottom: 10px;
}
.fp-price {
    font-family: var(--font-title);
    font-size: 24px;
    letter-spacing: 0.05em;
    line-height: 1;
    margin-right: 10px;
    margin-left: auto;
	border-right: 1px solid #fff;
padding-right: 10px;

}

.fp-mex-price  {
    font-family: var(--font-title);
    font-size: 24px;
    letter-spacing: 0.05em;
    line-height: 1;
	display: none;
}

.fp-address {
    font-weight: 300;
    font-size: 14px;
    letter-spacing: 0.02em;
    line-height: 1;
    align-self: flex-end;
    text-align: right;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    transition: opacity .4s ease;
}

.fp-btn {
    position: relative;
    /*width: 153px;*/
    width: auto;
    -ms-flex-preferred-size: 155px;
    flex-basis: 155px;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    top: 0;
    bottom: 0;
    right: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--secondary);
    color: #fff;
    text-transform: uppercase;
    font-size: 14px;
    font-weight: 300;
    letter-spacing: 0.02em;
    line-height: 1;
    text-align: center;
    transition: opacity .4s ease;
}

.fp-info-hover {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 2;
    background: #fff;
    transition: opacity .4s ease;
    opacity: 0;
}

.fp-info-hover .flex {
    flex-wrap: nowrap;
}

.fp-info-hover .fp-address {
    opacity: 1!important;
    color: #000;
    padding: 18px 15px;
}

.fp-item a:hover .fp-img canvas {
    -webkit-filter: contrast(100%) grayscale(0);
    filter: contrast(100%) grayscale(0);
    -webkit-transform: scale3d(1.2, 1.2, 1);
    transform: scale3d(1.2, 1.2, 1);
}

.fp-item a:hover .fp-info {
    /*background: #fff;
                    color: var(--secondary);*/
    opacity: 0;
}

.fp-item a:hover .fp-info::after {
    opacity: 0;
}

/*.fp-item a:hover .fp-address,
                .fp-item a:hover .fp-price {
                    opacity: 0;
                }*/
.fp-item a:hover .fp-btn {
    /*opacity: 1;*/
}

.fp-item a:hover .fp-info-hover {
    opacity: 1;
}

.fp-btn-list {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 33.33%;
    padding: min(0.938vw, 15px) 0;
    z-index: 1;
}

.fp-btn-list a {
    display: flex;
    align-items: center;
    justify-content: center;
    /*    font-size: min(1.125vw, 18px);*/
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 0.1em;
    color: #fff;
    text-transform: uppercase;
    background: var(--secondary);
    /*    width: min(22.375vw, 358px);*/
    width: 83.1%;
    /*    height: min(4.688vw, 75px);*/
    height: 76px;
    margin: min(0.688vw, 11px) 0 min(0.688vw, 11px) auto;
    position: relative;
    transition: background .4s ease;
}

.fp-btn-list a:before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 49px;
    height: 1px;
    left: -24px;
    background: #353535;
    transition: all .4s ease;
}

.fp-btn-list a:hover {
    background: var(--primary);
}

.fp-btn-list a:hover:before {
    background: #a6a6a6;
}

/*fp end*/
/*qs*/
#hp-listings {
    padding-bottom: 120px;
}

#hp-qs {
    position: relative;
    display: none;
}

#hp-qs .custom-container {
    max-width: 1600px;
    margin: 0 auto;
}

.qs-inner {
    margin: -125px 4px 0;
    background-position: center;
    background-size: cover;
    position: relative;
}

.qs-inner:before, .qs-inner:after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

.qs-inner:before {
    background: #000;
    opacity: 0.09;
}

.qs-inner:after {
    background: url(images/accent-qs.png) no-repeat;
    background-size: 366px;
    background-position: 105% 0%;
}

.qs-form {
    min-height: 262px;
    position: relative;
    padding: 59px 50px 0;
    font-size: 0;
    z-index: 1;
}

.qs-fields {
    display: inline-block;
    vertical-align: top;
    width: 80.716%;
    padding-right: 10px;
}

.qs-field.field-6 {
    width: 50%;
    margin-bottom: 16px;
}

.qs-field.field-3 {
    width: 25%;
}

.qs-field {
    display: inline-block;
    vertical-align: top;
    padding: 0 10px;
}

.qs-field select {
    width: 100%;
    height: 57px;
    border: none;
    border-bottom: 1px solid rgba(0, 0, 0, 0.33);
    background: transparent url(images/icon-select.png) calc(100% - 10px) 50% no-repeat;
    -webkit-appearance: none;
    appearance: none;
    font-weight: 500;
    font-size: 13px;
    color: var(--secondary);
    text-transform: uppercase;
}

.qs-field select::-ms-expand {
    display: none;
}

.qs-btns {
    display: inline-block;
    vertical-align: top;
    /*width: 253px;*/
    width: 19.284%;
    padding-left: 12px;
    text-align: center;
}

.qs-btns input {
    width: 100%;
    height: 45px;
    background: var(--secondary);
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0.1em;
    color: #fff;
    text-transform: uppercase;
    border: none;
    margin: 6px 0 61px;
}

.qs-btns a {
    font-size: 14px;
    letter-spacing: 0.1em;
    line-height: 1;
    color: var(--secondary);
    text-decoration: underline;
    text-transform: uppercase;
    font-weight: 500;
}

/*qs end*/
/*netflix*/
#hp-netflix {
    position: relative;
    margin-top: 0;
}

.hp-netflix-v2 {
}

.netflix-v2-wrap {
    position: relative;
    display: flex;
    flex-flow: row wrap;
}

.netflix-v2-col {
    width: 50%;
    background-position: center;
    background-size: cover;
    background-color: #000;
    padding: 120px 5%;
    text-align: center;
}

.netflix-v2-col a {
    display: inline-block;
    width: 70%;
}

#hp-netflix .netflix-v2-col a img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 0 auto;
}

.netflix-v2-bg-hover {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 2;
    pointer-events: none;
    background-position: center;
    background-size: cover;
    opacity: 0;
    background-color: #1a1a1a;
    transition: all .4s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}

.netflix-v2-bg-hover canvas {
    display: block;
    margin: 0 auto;
    max-width: 100%;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    background-color: #000;
    width: 90%;
}

/*.netflix-v2-col a:hover .netflix-v2-bg-hover {
        opacity: 1;
    }
        .netflix-v2-col a:hover .netflix-v2-bg-hover canvas {
            pointer-events: all;
        }*/
/*New Layout */
.netflix-v2-inner {
    width: 100%;
    position: relative;
}

.netflix-v2-inner .custom-container {
    display: block;
    width: 1411px;
    max-width: 100%;
    margin: 0 auto;
    padding: 0;
}

.netflix-v2-inner-flex {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-around;
    width: 100%;
    padding: min(7vw, 100px) min(6vw, 70px) min(7vw, 50px);
    gap: min(3vw, 50px);
}

.netfilx-v2-items-inner {
    position: relative;
}

.netfilx-v2-items-inner canvas {
    display: block;
    width: 100%;
    height: auto;
}

.netfilx-v2-items-inner img {
    width: 100%;
    height: 100%;
    position: absolute;
    object-fit: cover;
    object-position: center;
    top: 0;
}

.netflix-v2-inner-bg {
    top: 0;
    position: absolute;
    left: 0;
    width: 100%;
    height: 100%;
    background: #000;
    pointer-events: none;
}

.netflix-v2-inner-bg img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    filter: grayscale(1);
    opacity: 0.10;
}

.netflix-v2-items {
    width: 40%;
}

.netflix-v2-inner-flex .sunset-logos {
    position: relative;
    display: flex;
    flex-flow: row wrap;
    flex-wrap: wrap;
    /*align-items: center;*/
	align-items: flex-start;
    justify-content: center;
    width: 100%;
    font-size: 11px;
    color: #fff;
}
.netflix-v2-inner-flex .sunset-logos div {
    padding: 0 20px;
    display: flex;
    /*justify-content: center;*/
    align-items: center;
    margin: 10px 0;
    text-align: center;
	flex-flow: column-reverse;
  gap: 10px;
  justify-content: flex-start;
}
.netflix-v2-inner-flex .sunset-logos div img {
    /*max-width: 40px;
    margin-left: 5px;*/
	max-width: 100%;
  max-height: 30px;
  width: auto;
}
.netflix-v2-inner-flex .sunset-logos div:nth-child(2) img {
   /* max-width: 55px;*/
}
.netflix-v2-inner-flex .sunset-logos div:nth-child(3) img {
    /*max-width: 100%;
    width: auto !important;
    height: 40px;*/
}
/*New Layout */
/*netflix end*/
/*about*/
#hp-about {
    position: relative;
    z-index: 1;
}

.bg-about {
    position: absolute;
    top: 220px;
    left: 0;
    right: 0;
    bottom: 0;
    background-position: center;
    background-size: cover;
    z-index: -1;
}

.about-img {
    /*width: 431px;*/
    width: 37.8075%;
    position: relative;
}

.about-img canvas {
    display: block;
    width: 100%;
    background-position: center;
    background-size: cover;
    background-color: #525252;
}

.about-img img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.about-text {
    width: 62.1925%;
    padding: 61px 75px 79px;
    background: #fff;
}

.about-text p {
    font-size: 15px;
    color: #666666;
    line-height: 2;
    margin: 0 0 30px;
    font-weight: 300;
}

.about-jason {
    position: relative;
    padding: 24px 0 267px;
    margin-bottom: 70px;
}

.about-jason .about-title {
    padding-left: 20px;
    margin-bottom: 30px;
}

.about-jason .about-text .section-title strong {
    font-size: min(6.6vw, 90px);
    margin: -22px 0 0 -5px;
}

.about-jason .about-text .section-title span {
    margin-top: -29px;
    margin-right: -94px;
}

.about-jason .about-text .section-title .line {
    right: initial;
    left: 100%;
    bottom: 60px;
    margin-left: 55px;
}

.about-chris {
    position: relative;
    padding: 0 0 78px;
    display: none;
}

.about-chris .about-text {
    margin-top: 90px;
    padding-bottom: 59px;
}

.about-chris .about-title {
    padding: 2px 20px 0;
    margin-bottom: 19px;
}

.about-chris .about-text .section-title strong {
    font-size: 100px;
    margin: 6px 0 0 -5px;
}

.about-chris .about-text .section-title span {
    margin-top: -27px;
    margin-right: -48px;
}

.about-chris .about-text .section-title .line {
    right: initial;
    left: 100%;
    bottom: 27px;
    margin-left: 14px;
    width: 200px;
}

.about-chris .about-img {
    position: relative;
    z-index: 2;
}

.about-alen {
    position: relative;
    padding: 0 0 267px;
    display: none;
}

.about-alen .about-text {
    padding-bottom: 39px;
}

.about-alen .about-title {
    padding-left: 20px;
    margin-bottom: 30px;
}

.about-alen .about-text .section-title strong {
    font-size: 100px;
    margin: -22px 0 0 -5px;
}

.about-alen .about-text .section-title span {
    margin-top: -29px;
    margin-right: -94px;
}

.about-alen .about-text .section-title .line {
    right: initial;
    left: 100%;
    bottom: 60px;
    margin-left: 55px;
}

/*about end*/
/*team*/
#hp-team {
    position: relative;
    padding: 87px 0 50px;
    z-index: 2;

    display: none;
}

.team-title {
    position: absolute;
    left: 0;
    right: 0;
    width: 482px;
    background: #fff;
    bottom: 100%;
    z-index: 1;
    margin: auto;
    white-space: nowrap;
    padding: 66px 0 28px;
}

.team-title .section-title .line {
    top: 20px;
    margin-right: 16px;
    background: #b0b0b0;
}

.team-list {
    font-size: 0;
    /*margin: 0 -13px;*/
    max-width: 1210px;
    margin: 0 auto;
}

.team-item {
    display: inline-block;
    vertical-align: top;
    /*width: 20%;*/
    /*padding: 0 18px;*/
    padding: 0 40px;
    width: 33.33%;
}

.team-item a {
    display: block;
    position: relative;
}

.team-item-img {
    position: relative;
}

.team-item-img canvas {
    display: block;
    width: 100%;
}

.team-item-img img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.team-item-img .btn-a {
    width: 197px;
    max-width: 90%;
    margin: 0 auto;
    background: var(--primary);
    border-color: var(--primary);
    color: #fff;
    position: absolute;
    bottom: 26px;
    left: 0;
    right: 0;
    margin: auto;
    opacity: 0;
    transition: all .4s ease;
}

.team-item a:hover .team-item-img .btn-a {
    opacity: 1;
}

.team-item-name {
    font-family: var(--font-barlow);
    font-weight: 600;
    font-size: 25px;
    letter-spacing: -0.025em;
    line-height: 1;
    color: var(--secondary);
    text-transform: uppercase;
    text-align: center;
    margin: 29px 0 0;
}

.team-item-name:before {
    content: '';
    display: block;
    width: 32px;
    height: 4px;
    background: var(--primary);
    margin: 0 auto 21px;
}

.team-btn {
    margin: 52px 0 0;
}

.team-btn a.btn-a {
    width: 197px;
}

/*team end*/
/*cta*/
#hp-cta {
    position: relative;
    padding: 80px 0 84px;
    z-index: 1;
}

.bg-cta {
    position: absolute;
    /*top: -121px;*/
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-position: center top;
    background-size: 100%;
    z-index: -1;
}

.cta-list {
    margin: 0 -10px;
}

.cta-item {
    display: inline-block;
    width: 33.33%;
    padding: 10px;
}

.cta-item a {
    display: block;
    position: relative;
}

.cta-item a:before, .cta-item a:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    z-index: 1;
    transition: all .4s ease;
}

.cta-item:nth-child(odd) a:before {
    background: #1c1c1c;
    opacity: 0.71;
}

.cta-item:nth-child(even) a:before {
    background: #e51937;
    opacity: 0.71;
}

.cta-item a:after {
    content: '';
    position: absolute;
    z-index: 2;
    width: 213px;
    height: 83px;
    border: 1px solid #fff;
}

.cta-item a:hover:after {
    width: calc(100% - 60px);
    height: calc(100% - 60px);
}

.cta-item a canvas {
    display: block;
    width: 100%;
    height: 330px;
    background-position: center;
    background-size: cover;
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%);
}

.cta-name {
    position: absolute;
    z-index: 3;
    top: 50%;
    left: 0;
    width: 100%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    padding: 0 15px;
    font-family: var(--font-barlow);
    font-size: 36px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.02em;
    color: #fff;
    text-transform: uppercase;
    text-align: center;
}

/*cta end*/
/*work*/
#hp-work {
    position: relative;
    /*min-height: 535px;*/
    background-position: center;
    background-size: cover;
    z-index: 1;
    padding: 81px 0 104px;
}

#hp-work:before, #hp-work:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
}

#hp-work:before {
    background: #2a2a2a;
    opacity: 0.7;
}

#hp-work:after {
    height: 144px;
    opacity: 0.6;
    top: initial;
    background: rgb(42, 42, 42);
    background: -moz-linear-gradient(180deg, rgba(42, 42, 42, 0) 0%, rgba(42, 42, 42, 1) 100%);
    background: -webkit-linear-gradient(180deg, rgba(42, 42, 42, 0) 0%, rgba(42, 42, 42, 1) 100%);
    background: linear-gradient(180deg, rgba(42, 42, 42, 0) 0%, rgba(42, 42, 42, 1) 100%);
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr="#2a2a2a", endColorstr="#2a2a2a", GradientType=1);
}

.work-title {
    padding-left: 63px;
    margin: 0 0 42px;
}

.work-title .section-title {
    overflow: hidden;
    padding: 0 8px;
}

.work-title .section-title em {
    color: #fff;
}

.work-title .section-title strong {
    color: #fff;
    white-space: nowrap;
    padding-right: 63px;
}

.work-title .section-title span {
    position: relative;
    margin-top: -16px;
    letter-spacing: -0.025em;
}

.work-title .section-title span:before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 15px;
    right: 100%;
    width: 100vw;
    height: 4px;
    background: #818181;
    margin: auto;
    margin-right: 30px;
}

ul.work-list {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    /*max-width: 990px;*/
    margin: 0 auto;
}

ul.work-list li {
    width: 20%;
    text-align: center;
    border-right: 1px solid rgb(255 255 255 / 30%);
    padding: 0 30px 12px;
}

ul.work-list li:first-child {
    padding-left: 0;
}

ul.work-list li:last-child {
    padding-right: 0;
}

ul.work-list li strong {
    display: block;
    font-family: var(--font-title);
    font-size: 62px;
    letter-spacing: 3px;
    line-height: 1;
    color: #fff;
    text-transform: uppercase;
    font-weight: 600;
    margin: 0 0 10px;
}

ul.work-list li strong i {
    font-style: normal;
}

ul.work-list li span {
    display: block;
    font-size: 17px;
    line-height: 22px;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: #b2b2b2;
}

ul.work-list li:last-child {
    border-right: 0;
}

/*work end*/
.bg-sep {
    position: relative;
    height: 157px;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

.bg-sep:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #fff;
    opacity: 0.85;
}

/*blog*/
#hp-blog {
    position: relative;
    background-position: center;
    background-size: cover;
    /*min-height: 926px;*/
    z-index: 1;
    padding: 84px 0 85px;
}

#hp-blog:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #0f0f0f;
    opacity: 0.62;
    z-index: -1;
}

.blog-title {
    margin: 71px 0 34px;
}

.blog-title .section-title {
}

.blog-title .section-title em {
    color: #fff;
}

.blog-title .section-title strong {
    color: #fff;
}

.blog-title .section-title span {
    white-space: nowrap;
    position: relative;
    font-size: 85px;
    margin-top: -22px;
    margin-left: 41px;
}

.blog-title .section-title span:before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 3px;
    right: 100%;
    width: 100vw;
    height: 4px;
    background: #818181;
    margin: auto;
    margin-right: 20px;
}

.blog-text {
    max-width: 336px;
}

.blog-text p {
    font-weight: 300;
    font-size: 15px;
    line-height: 26px;
    color: #fff;
    margin: 0 0 57px;
}

.blog-text a.btn-a {
    width: 197px;
}

.blog-post-list {
    margin-left: -21px;
}

.blog-item {
    margin-bottom: 29px;
}

.blog-item:last-child {
    margin-bottom: 0;
}

.blog-item:nth-child(odd) {
    flex-flow: row-reverse wrap;
}

.blog-img {
    /*width: 337px;*/
    width: 50%;
}

.blog-img canvas {
    display: block;
    width: 100%;
    height: 100%;
    background-position: center;
    background-size: cover;
}

.blog-desc {
    background: #151515;
    color: #fff;
    padding: 28px 33px 20px;
    width: 50%;
    display: flex;
    flex-flow: column wrap;
}

.blog-desc h3 {
    font-family: var(--font-title);
    font-size: 24px;
    font-weight: 600;
    line-height: 1;
    color: #fff;
    text-transform: uppercase;
    margin: 0 0 10px;
}

.blog-desc h3 a {
    transition: color .4s ease;
}

.blog-desc p {
    font-weight: 300;
    font-size: 13px;
    line-height: 22px;
    margin: 0 0 12px;
}

.blog-desc a.btn-a {
    margin-top: auto;
}

.blog-desc a.btn-a:hover {
    background: var(--primary);
    border-color: var(--primary);
}

.blog-item:nth-child(even) .blog-desc a.btn-a:before {
    right: initial;
    left: -15px;
}

/*blog end*/
/*git*/
#hp-jon {
    position: relative;
    /*min-height: 769px;*/
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    padding: 88px 0 111px;
    z-index: 1;
}

#hp-jon:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #151515;
    opacity: 0.85;
    z-index: -1;
}

.jon-title {
    text-align: center;
}

.jon-title .section-title {
    text-align: left;
}

.jon-title .section-title em {
    color: #fff;
}

.jon-title .section-title strong {
    color: #fff;
    white-space: nowrap;
}

.jon-title .section-title span {
    margin-top: -25px;
    margin-right: -50px;
    letter-spacing: -0.025em;
    position: relative;
}

.jon-title .section-title span:before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    right: 100%;
    width: 146px;
    height: 4px;
    background: #818181;
    margin: auto;
    margin-right: 50px;
}

#hp-jon p {
    text-align: center;
    font-weight: 300;
    font-size: 16px;
    letter-spacing: -0.02em;
    line-height: 1;
    color: #bdbdbd;
    margin: 0 0 87px;
}

.jon-form {
    max-width: 762px;
    margin: 0 auto;
    font-size: 0;
    position: relative;
}

.jon-field {
    display: inline-block;
    vertical-align: top;
    padding: 0 12px;
}

.jon-field small {
    display: block;
    font-size: 11px;
    letter-spacing: 0.07em;
    line-height: 1;
    color: #fff;
    text-transform: uppercase;
}

.jon-field input, .jon-field textarea {
    width: 100%;
    background: transparent;
    border: none;
    border-bottom: 1px solid rgba(255, 255, 255, 0.5);
    display: block;
    width: 100%;
    color: #fff;
    font-size: 14px;
    line-height: 14px;
    text-transform: uppercase;
    letter-spacing: 1.26px;
    height: 32px;
}

.jon-field textarea {
    resize: none;
    height: 82px;
}

.jon-field.field-6 {
    width: 50%;
    margin: 0 0 38px;
}

.jon-field.field-12 {
    width: 100%;
}

.jon-form .btn-a {
    margin: 68px auto 0;
    width: 147px;
    position: relative;
}

.jon-form .btn-a input {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
}

.jon-form .btn-a .wpcf7-spinner, .jon-form .btn-a .ajax-loader {
    position: absolute;
    bottom: -30px;
    left: 0;
    right: 0;
    margin: auto;
}

.jon-form .btn-a:before {
    right: initial;
    left: -15px;
}

.jon-form .wpcf7 form .wpcf7-response-output {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    text-align: center;
    font-size: 12px;
    color: #fff;
    margin: 15px auto 0;
}

.use-floating-validation-tip .wpcf7-not-valid-tip {
    font-size: 12px;
    position: absolute;
    width: auto;
}

/*git end*/
/*footer*/
footer.footer {
    /*min-height: 972px;*/
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    z-index: 1;
    position: relative;
    padding: 87px 0 54px;
}

footer.footer:before, footer.footer:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
}

footer.footer:before {
    background: #fff;
    opacity: 0.72;
}

footer.footer:after {
    background: url(images/accent-footer.png) left center no-repeat;
    background-size: auto 100%;
    background-attachment: fixed;
}

.bktotop {
    position: absolute;
    /*bottom: 118px;
        right: 92px;*/
    right: 5.75%;
    bottom: 12.15%;
    width: 37px;
    height: 37px;
    border-radius: 50%;
    background: #535353;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    color: #fff;
    transition: background .4s ease, color .4s ease;
}

.bktotop:hover {
    background: var(--primary);
    color: #fff;
}

.footer-top {
    margin: 0 0 62px;
}

.footer-logo {
}

.footer-logo a {
    display: inline-block;
}

.footer-logo a img {
}

.footer-contact-info {
    color: #1f1f1f;
}

.footer-contact-info h2 {
    font-weight: 500;
    font-size: 20px;
    line-height: 1;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    margin: 0 0 20px;
}

.footer-contact-info ul {
}

.footer-contact-info ul li {
    font-size: 15px;
    font-weight: 400;
    line-height: 20px;
    letter-spacing: 0.2em;
    font-family: 'Roboto', Arial;
}

.footer-contact-info ul li a {
    transition: color .4s ease;
}

.footer-contact-info ul li.address {
    font-size: 14px;
    letter-spacing: 0.1em;
    margin: 16px 0 0;
    line-height: 19px;
}

.footer-contact-info p {
    font-size: 11px;
    font-weight: 300;
    letter-spacing: 0.02em;
    line-height: 20px;
    color: #494949;
    max-width: 605px;
    margin: 25px 0 39px;
}

.footer-contact-info .smi {
}

.footer-contact-info .smi a {
    width: 35px;
    height: 35px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    border-radius: 50%;
    border: 1px solid rgba(0, 0, 0, 0.2);
    color: #151515;
    font-size: 18px;
    margin-right: 12px;
    transition: all .4s ease;
}

.footer-contact-info .smi a:hover {
    background: var(--primary);
    border-color: var(--primary);
    color: #151515;
}

.footer-address-list {
    margin: 0 auto 60px;
    max-width: 1120px;
}

.footer-address {
    width: 25%;
}

.footer-address img {
    /*    width: 49.227%;*/
    width: 133px;
    height: 133px;
    object-fit: cover;
}

.footer-address-info {
    /*    width: 50.723%;*/
    width: calc(100% - 143px);
    position: relative;
    min-height: 117px;
    display: flex;
    justify-content: center;
    flex-flow: column;
    padding: 0 10px;
}

.footer-address-info:before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: -15px;
    border: 2px solid #999999;
    pointer-events: none;
}

.footer-address-info strong {
    display: block;
    /* font-size: 17px; */
    font-size: 13px;
    letter-spacing: 0.02em;
    line-height: 1;
    color: #000;
    text-transform: uppercase;
    margin-bottom: 8px;
}

.footer-address-info p {
    font-size: 11px;
    letter-spacing: 0.02em;
    line-height: 15px;
    color: #3a3a3a;
}

.footer-middle {
    border-top: 4px solid #c0c0c0;
    border-bottom: 1px solid #c0c0c0;
    padding: 36px 0 36px;
}

.footer-logo-list {
    display: flex;
    flex-flow: row;
    justify-content: space-between;
    align-items: center;
}

.footer-logo-list img {
    height: auto;
}

.footernav {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    align-items: flex-start;
    padding: 56px 0 0;
    margin: 0 -15px;
}

.footernav > li {
    padding: 0 15px;
}

.footernav > li > a {
    font-family: var(--font-title);
    font-size: 19px;
    font-weight: 600;
    letter-spacing: 0.38px;
    line-height: 1;
    text-transform: uppercase;
    color: #1f1f1f;
    transition: color .4s ease;
}

.footernav ul {
    margin: 13px 0 0;
}

.footernav ul li {
}

.footernav ul li a {
    font-size: 12px;
    letter-spacing: 0.02em;
    line-height: 25px;
    color: #3a3a3a;
    text-transform: uppercase;
    transition: color .4s ease;
}

.footernav > li > a {
    font-family: var(--font-title);
    font-size: 19px;
    font-weight: 600;
    letter-spacing: 0.38px;
    line-height: 1;
    text-transform: uppercase;
    color: #1f1f1f;
    transition: color .4s ease;
}

.footernav > li > a:hover, .footernav ul li a:hover {
    color: var(--primary);
}

.footer-copyright {
    text-align: center;
    margin: 78px 0 22px;
}

.footer-copyright p {
    font-weight: 300;
    font-size: 12px;
    line-height: 20px;
    letter-spacing: 0.02em;
    color: #1f1f1f;
}

.footer-copyright p a.footer-agentimage {
    text-decoration: underline;
    font-weight: 700;
}

.footer-credit-logo-list {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
}

.footer-credit-logo-list img, .footer-credit-logo-list a {
    margin: 6px 8px;
}

/*footer end*/
/*******************************************************
 *
 * 4. IP Styles
 *
 *******************************************************/
.ip-banner {
    position: relative;
    width: 100%;
}

.ip-banner::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    background: rgba(0, 0, 0, .1);
}

.ip-banner::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 171px;
    opacity: 0.7;
    background: rgb(0, 0, 0);
    background: -moz-linear-gradient(0deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 100%);
    background: -webkit-linear-gradient(0deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 100%);
    background: linear-gradient(0deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 100%);
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr="#000000", endColorstr="#000000", GradientType=1);
}

.ip-banner canvas {
    display: block;
    position: relative;
    z-index: 0;
    width: 100%;
    height: 342px;
    background-color: var(--dark);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}

.ip-banner-accent {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url(images/shadow-ip-banner.png) center/cover no-repeat;
    z-index: 1;
}

.ip-banner-accent:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url(images/accent-ip-banner.png);
    background-repeat: no-repeat;
    background-position: top right;
    background-size: 41.063vw;
    background-attachment: fixed;
}

.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;
}

.ip-banner-logo {
    max-width: 418px;
    margin: 58px auto 0;
}

.ip-banner-logo a {
    display: block;
}

.ip-banner-logo a img {
    width: 100%;
}

p#breadcrumbs {
    display: none;
}

.custom-ip-breadcrumbs {
    background: rgba(160, 160, 160, .66);
}

.custom-ip-breadcrumbs p {
    font-size: 10px;
    font-weight: 500;
    letter-spacing: 0.05em;
    color: #fff;
    text-transform: uppercase;
    padding: 11px 0;
}

/* Adjust minimum height of page area */
#content-sidebar, #content-full {
    min-height: 500px;
    margin-top: 20px;
}

/** Adjust width of content columns **/
#content-sidebar #content {
    width: 77.08%;
}

#content-full #content {
    width: 100%;
}

/* Adjust width of sidebar */
.sidebar {
    width: 20.83%;
}

/* fullwidth template */
.page-template-template-fullwidth #content {
    padding-left: 15px;
    padding-right: 15px;
}

.page-template-template-fullwidth #content ihf-search[data-eureka-id*=""].ihf-eureka {
    margin-left: -15px;
    margin-right: -15px;
}

/* Adjust line height of page elements */
#content h4, aside h4, #content p, aside p, #content blockquote, aside blockquote, #content ul, aside ul, #content fieldset, aside fieldset, #content form, aside form, #content ol, aside ol, #content dl, aside dl, #content dir, aside dir, #content menu, aside menu {
    line-height: 1.7
}

/* Style .entry-title(post/page) and .archive-title(category/archive/etc) main headings (h1) */
#content .entry-title, #content .archive-title {
    font-family: var(--font-barlow);
    font-weight: 600;
    font-size: 110px;
    letter-spacing: -0.025em;
    line-height: 1;
    color: var(--secondary);
    width: 100%;
    text-transform: uppercase;
    margin: 0;
}

#content .entry-custom-title, #content .archive-custom-title {
    font-family: var(--font-barlow);
    letter-spacing: -0.025em;
    font-size: 110px;
    line-height: 1;
    margin: 0;
    position: relative;
    display: inline-flex;
    flex-flow: column;
    width: auto;
    font-weight: 600;
}

#content .entry-custom-title span, #content .archive-custom-title span {
    display: inline-block;
    margin-left: auto;
    /*font-size: 104px;*/
    font-size: 0.945em;
    color: var(--primary);
    text-transform: initial;
    font-family: var(--font-script);
    /*margin-top: -40px;*/
    /*margin-right: -20px;*/
    margin-top: -0.364em;
    transform: translateX(30%);
    position: relative;
    letter-spacing: 0;
    font-weight: 400;
}

#content .entry-custom-title span:before, #content .archive-custom-title span:before {
    content: '';
    position: absolute;
    width: 100vw;
    height: 4px;
    top: 0;
    right: 100%;
    bottom: 0;
    margin: auto;
    background: #c7c7c7;
    margin-right: 40px;
}

.entry-custom-title em {
    font-family: "Source Sans Pro", sans-serif;
    font-size: 60px;
    font-weight: 300;
    line-height: 1;
    letter-spacing: 0.6px;
    color: #949494;
    display: block;
    margin: 0 0 -5px 5px;
    position: relative;
    top: 16px;
    font-style: normal!important;
}

#content .entry-custom-title.is-white, #content .archive-custom-title.is-white {
    color: #fff;
}

#content .entry-custom-title.no-line span:before, #content .archive-custom-title.no-line span:before {
    display: none;
}

/* Styles for category/archive/search/etc subheadings (h2) */
#content .archive-subtitle {
}

body #pojo-a11y-toolbar {
    bottom: 0 !important;
    top: auto !important;
}

body #pojo-a11y-toolbar.pojo-a11y-toolbar-left .pojo-a11y-toolbar-toggle {
    top: auto !important;
    bottom: 0 !important;
}

button:focus-visible, a:focus-visible {
    outline-style: solid !important;
    outline-width: 5px !important;
    outline-color: red !important;
    transition: none !important;
}

.ip-fp-list {
    margin: 120px 0 40px;
    display: flex;
    flex-flow: row wrap;
    align-items: flex-start;
}

.ip-fp-list .fp-item {
    margin: 0;
    width: 50%!important;
}

.ip-fp-list .fp-item .fp-img canvas {
    height: auto;
}

.ip-fp-list .fp-item:nth-child(even) {
    margin-top: -60px;
}

.ip-fp-list .fp-item a:hover .fp-address {
    opacity: 1;
}

.addtoany_list.a2a_kit_size_32 a:not(.addtoany_special_service)>span {
    height: 40px;
    line-height: 32px;
    width: 40px;
}

span.a2a_svg.a2a_s__default {
    font-size: 23px;
    color: #1b1b1b !important;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    padding: 2px;
    background: #f2f2f2 !important;
    fill: #000;
}

.single-blog span.a2a_svg.a2a_s__default {
    background: #000 !important;
}

/*custom communities*/
#aios-communities-iconic {
    padding: 30px 0px;
    display: block;
    position: relative;
}

#aios-communities-iconic .aioscomu-list {
    display: flex;
    justify-content: center;
    flex-flow: row wrap;
}

#aios-communities-iconic a.aioscomu-cont {
    position: relative;
    width: 33.33%;
}

#aios-communities-iconic a.aioscomu-cont .img-holder {
    position: relative;
    width: 100%;
    overflow: hidden;
}

#aios-communities-iconic a.aioscomu-cont .img-holder::before {
    content: "";
    position: absolute;
    top: 0px;
    left: 0px;
    right: 0px;
    bottom: 0px;
    z-index: 6;
    opacity: 0;
    background: rgb(25, 25, 25);
    transition: all 0.3s ease 0s;
}

#aios-communities-iconic a.aioscomu-cont canvas {
    display: block;
    width: 100%;
    background: rgb(160, 160, 160);
}

#aios-communities-iconic a.aioscomu-cont .img-holder img {
    object-fit: cover;
    object-position: center center;
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    display: block;
    opacity: 1;
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: scale(1.0);
    transform: scale(1.0);
    -webkit-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out;
}

.position-absolute-cover {
    position: absolute;
    top: 0px;
    right: 0px;
    bottom: 0px;
    left: 0px;
}

#aios-communities-iconic .aioscomu-overlay-details {
    display: flex;
    flex-direction: column;
    z-index: 7;
}

#content #aios-communities-iconic .aioscomu-comm-item-title {
    display: flex;
    height: 72.453%;
    align-items: center;
    padding: 0px 15.125%;
}

#content #aios-communities-iconic .aioscomu-comm-item-title h3 {
    color: #fff;
    /*word-spacing: 100vw;*/
    font-size: 28px;
    text-transform: uppercase;
    margin: 0;
    line-height: 1;
    font-family: var(--font-title);
    transition: color .3s ease;
    font-weight: 600;
    display: block;
}

#content #aios-communities-iconic .aioscomu-comm-item-button {
    height: 27.547%;
    padding-left: 8.75%;
}

#content #aios-communities-iconic .aioscomu-comm-item-button span {
    display: flex;
    justify-content: flex-end;
    width: max(33.75%, 200px);
    /*padding-top: 1.813vw;
                        border-top: 1px solid rgba(255, 255, 255, 0.5);*/
    transition: border .3s ease;
}

.primary-text-button {
    font-weight: 500;
    font-family: var(--font-default);
    font-size: max(0.875vw, 14px);
    color: var(--primary);
    text-transform: uppercase;
    letter-spacing: 0.4em;
    transition: color .3s ease;
}

.primary-text-button-reverse {
    color: #fff;
}

#content #aios-communities-iconic .btn-a {
    border-color: #fff;
}

#aios-communities-iconic a.aioscomu-cont:hover .img-holder::before {
    opacity: 0.2;
    background: rgb(25, 25, 25);
}

#content #aios-communities-iconic a.aioscomu-cont:hover .aioscomu-comm-item-button .primary-text-button, #content #aios-communities-iconic a.aioscomu-cont:hover .aioscomu-comm-item-title h3 {
    color: #fff;
}

#content #aios-communities-iconic a.aioscomu-cont:hover .aioscomu-comm-item-button span {
    border-top-color: var(--primary);
}

#content #aios-communities-iconic a.aioscomu-cont:hover .btn-a, #content #aios-communities-iconic a.aioscomu-cont .btn-a:hover {
    background: var(--secondary);
    border-color: var(--secondary);
    color: #fff;
}

#content #aios-communities-iconic a.aioscomu-cont:hover img {
    transform: scale(1.2);
}

.page-id-11 .ip-fp-list {
    margin: 120px -5vw 40px;
}

/*custom communities end*/
/*concierge*/
.hp-concierge-v2 {
    position: relative;
    padding: 122px 0 99px;
    /*display: none;*/
}

.hp-concierge-v2:before {
    content: '';
    position: absolute;
    top: -276px;
    left: 0;
    right: 0;
    bottom: 0;
    background: url(images/bg-concierge-v2.jpg) center/cover no-repeat;
    z-index: -1;
}

.hp-concierge-wrap {
    position: relative;
    width: 90.75%;
    margin: 0 auto;
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    z-index: 5;
}

.hp-concierge-text {
    width: 43.871%;
    padding-right: 7%;
}

.hp-concierge-text-inner {
    max-width: 370px;
    width: 90%;
    margin: 0 auto;
}

.hp-concierge-text-inner .hp-concierge-title {
}

.hp-concierge-title.section-title span {
    margin-top: -23px;
}

.hp-concierge-title.section-title .line {
    top: 70px;
    right: 65%;
}

.hp-concierge-text-inner p {
    font-weight: 300;
    font-size: 16px;
    letter-spacing: 0.05em;
    margin: 30px 0;
    line-height: 30px;
}

.hp-concierge-text-inner a.site-button {
    width: 248px;
    margin-left: 24px;
}

.hp-concierge-text-inner a.btn-a {
    width: 248px;
    max-width: 100%;
    margin-left: 23px;
}

.hp-concierge-text-inner a.btn-a:before {
    right: initial;
    left: -15px;
}

.hp-concierge-img {
    width: 56.129%;
}

.hp-concierge-img .twentytwenty-handle {
    background-image: url(images/concierge-compare-btn.png);
}

img-comparison-slider {
    --divider-width: 2px;
    --default-handle-opacity: 1;
}

.hp-concierge-img img-comparison-slider {
    width: 100%;
}

.hp-concierge-img img-comparison-slider img {
    width: 100%;
    height: auto;
}

.compare-handle {
    width: 40px;
    height: 40px;
    background: url(images/compare-handle.png) center/contain no-repeat;
}

/*sl v2*/
.sl-intro-cv2 {
    position: relative;
    padding: 100px 0 113px;
    background: url(images/bg-magazine.jpg) center top/cover no-repeat;
}

.sl-v2-wrap {
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    margin: 0 -32px;
}

.sl-v2-img {
    /*width: 417px;*/
    width: 34.635%;
    position: relative;
    z-index: 1;
}

.sl-v2-img img {
    margin: 0 auto;
}

.sl-v2-img:before {
    content: '';
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    height: 198px;
    background: url(images/sunset-living-v2-photo-shadow.png) center top/100% 100% no-repeat;
}

.sl-v2-text {
    /*max-width: 550px;*/
    margin-left: auto;
    max-width: 47%;
}

.sl-v2-inner {
}

.sl-v2-title {
}

.sl-v2-title.section-title span {
    white-space: nowrap;
    padding-left: 30px;
    margin-top: -25px;
}
    .sl-v2-title strong {
        white-space: nowrap;
    }

.sl-v2-title.section-title .line {
    width: 290px;
    top: 70px;
    right: 98%;
}

.sl-v2-inner p {
    font-weight: 300;
    font-size: 16px;
    letter-spacing: 0.05em;
    margin: 30px 0;
    line-height: 30px;
}




.sl-v2-text a.btn-a:before {
    right: initial;
    left: -15px;
}

.single-aios-communities .custom-ip-breadcrumbs .container {
    width: 100%;
}

.our-properties-single-slideshow-slide::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #000;
    opacity: .3;
}

.wpcf7 form .wpcf7-response-output {
    text-align: center;
}

body.body-overflow {
    overflow: hidden;
}

.postid-87 #agents-single .agents-right .agents-name {
    font-size: 125px;
}

.ip-cabo-neighborhood-content p {
    font-size: 15px;
    line-height: 26px;
    color: #666666;
}

.ip-cabo-neighborhood-row {
    margin: 80px -15px;
}

.ip-cabo-neighborhood-title {
}

#content .ip-cabo-neighborhood-title h2 {
    font-family: var(--font-barlow);
    font-weight: 600;
    font-size: 25px;
    letter-spacing: -0.025em;
    line-height: 1;
    color: #000;
    text-transform: uppercase;
}

.ip-cabo-neighborhood-row a {
    color: var(--primary);
}

.ip-cabo-neighborhood-row a:hover {
    color: var(--secondary);
}

/*Roadmaps*/
#content .aios-roadmaps-default-wrapper .entry-title {
    font-size: 70px;
}

.aios-roadmaps-default-wrapper .aios-roadmaps-default-title {
    margin: 50px 0 20px;
    text-align: center;
}

.aios-roadmaps-default-wrapper .aios-roadmaps-default-content {
    display: flex;
    flex-flow: row-reverse;
    align-items: center;
    color: #666666;
}

.postid-1485 .aios-roadmaps-default-wrapper .aios-roadmaps-default-content, .postid-1489 .aios-roadmaps-default-wrapper .aios-roadmaps-default-content {
    display: block;
}

.aios-roadmaps-default-wrapper .aios-roadmaps-default-content img {
    margin-bottom: 30px;
    margin-top: 30px
}

body .aios-roadmaps-default-wrapper .aios-roadmaps-default-content img.aligncenter {
    float: none;
    margin: 0 auto;
    display: block;
    padding: 0;
    width: auto;
}

.aios-roadmaps-default-content .buyers-contact-us {
    margin: 44px 0 0 25px;
    color: #000;
}

.aios-roadmaps-default-content .buyers-container-wrap:before {
    position: absolute;
    content: '';
    top: 0;
    left: 0;
    width: 100%;
    height: 120px;
    background: #fff;
    display: none;
}

.aios-roadmaps-default-content .ip-contact-info {
    background: #1b1b1b;
    position: relative;
    z-index: 2;
    padding: 43px 3% 44px;
}

.aios-roadmaps-default-content .ip-contact-info-logo {
    text-align: center;
    margin: 0 0 19px;
}

.aios-roadmaps-default-content .ip-contact-info-logo a {
    display: inline-block;
}

#content .aios-roadmaps-default-content .ip-contact-info ul {
    margin: 0;
    list-style: none;
    text-align: center;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
}

.aios-roadmaps-default-content .ip-contact-info ul li {
    color: #737373;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 20px;
    margin: 0 0 17px;
}

.aios-roadmaps-default-content .ip-contact-info ul li i {
    color: #737373;
    font-style: normal!important;
}

.aios-roadmaps-default-content .ip-contact-info ul li i.ai-font-envelope-f {
    font-size: 10px;
    margin-right: 10px;
}

.aios-roadmaps-default-content .ip-contact-info ul li i.ai-font-phone {
    font-size: 12px;
    margin-right: 10px;
}

.aios-roadmaps-default-content .ip-contact-info ul li i.ai-font-location-c {
    top: -9px;
    margin-right: 10px;
    font-size: 18px;
}

.aios-roadmaps-default-content .ip-contact-info ul li span {
    font-size: 15px;
    letter-spacing: 0.02em;
    color: #8c8c8c;
    line-height: 22px;
}

.aios-roadmaps-default-content .ip-contact-info ul li a {
    transition: color .4s ease;
}

.ip-contact-info ul li a:hover {
    color: var(--primary);
}

.aios-roadmaps-default-content .ip-contact-info ul li.address {
    width: 100%;
    padding: 0;
    margin: 0 0 25px;
}

.aios-roadmaps-default-content .ip-contact-info ul li.smi {
    width: 100%;
    padding: 0;
    margin: 0;
}

.aios-roadmaps-default-content .ip-contact-info ul li.smi a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 1px solid rgba(255,255,255,0.15);
    margin: 0 7px;
    color: #fff;
    transition: all .4s ease;
}

.aios-roadmaps-default-content .ip-contact-info ul li.smi a i {
    color: inherit;
    font-size: 15px;
}

.aios-roadmaps-default-content .ip-contact-info ul li.smi a:hover {
    background: var(--primary);
    border-color: var(--primary);
    color: #fff;
}

.aios-roadmaps-default-content .ip-contact-info ul li.smi a i.icon-email {
    width: 19px;
    height: 15px;
    background: url(images/contact/icon-email.png) center/contain no-repeat;
}

.aios-roadmaps-default-content .contact-us-info {
    width: 49%;
    float: right;
    margin-bottom: 30px;
    margin-top: 30px;
    padding-left: 5%;
}

.aios-roadmaps-default-content .ip-contact-info-logo img {
    display: block;
    padding: 0 !important;
    display: inline-block !important;
    float: none !important;
    width: 20vw !important;
    margin: 0 auto !important;
}

.aios-roadmaps-default-content .addtoany_content {
    display: none!important;
}

/*Roadmaps*/
#hp-our-projects {
    position: relative;
    padding: 0 10px 210px;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    z-index: 10;
}

#hp-our-projects {
    padding-bottom: 120px;
}

.sl-v2-text a.btn-a {
    width: calc(50% - 20px);
    max-width: 100%;
}

.sl-btns {
    display: flex;
    justify-content: space-between;
    align-items: center;
}



#agents-single .agents-contact li {
    display: none;
}

#agents-single .agents-contact li.agent-email-address.agent-contact-centered,
#agents-single .agents-contact li.agents-contact-office-address.agent-contact-centered,
#agents-single .agents-contact li.agent-contact-centered.agent-contact-short {
    display: block !important;
}

.jason-cta {
	display: flex;
justify-content: space-evenly;
flex-flow: row wrap;
}
.jason-cta a {
margin: 5px 0;
}

.properties-single-slideshow-info-extras li.buyer-comm {
	text-transform: uppercase;
  font-weight: 500;
  color: red;
  display: none;
}

.hp-philanthropy {
    position: relative;
    padding: 80px 0;
}

.hp-philanthropy .philanthropy-title {
    display: flex;
    justify-content: center;
    flex-flow: row wrap;
}
    .hp-philanthropy .philanthropy-title.section-title {
        position: relative;
    }
    .hp-philanthropy .philanthropy-title.section-title span {
        position: relative;
        margin-left: 0;
        line-height: 0.6;
    }
    .hp-philanthropy .philanthropy-title.section-title span div.line {
        width: 100vw;
        top: 50%;
        left: 100%;
        bottom: initial;
        transform: translateX(1%);
    }
.hp-philanthropy .philanthropy-content {
    font-size: 16px;
    font-weight: 300;
    line-height: 1.5;
    letter-spacing: 0.05em;
    text-align: center;
    max-width: 600px;
    margin: 50px auto 0;
}
.hp-philanthropy .philanthropy-image {
    margin-top: 50px;
}
.hp-philanthropy .philanthropy-buttons {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 40px;
    margin-top: 50px;
}
    .hp-philanthropy .philanthropy-buttons a.btn-a {
        margin: 0;
    }
























    .hp-philanthropy .philanthropy-title .site-section-number {
        text-align: left;
    }

    .hp-philanthropy:before {
        content: '';
        position: absolute;
        top: -276px;
        left: 0;
        right: 0;
        bottom: 0;
        background: url(/app/themes/ogroupcabostaging.com/images/bg-concierge-v2.jpg) center / cover no-repeat;
        z-index: -1;
    }



        .philanthropy-wrap .container {
            width: 100%;
        }


        .phil-text {
            width: 43.871%;
            padding-right: 7%;
        }

        .philanthropy-image {
            width: 56.129%;
        }
        .phil-wrap {
            position: relative;
            margin: 0 auto;
            display: flex;
            flex-flow: row wrap;
            align-items: center;
            width: 90.75%;
        }

        .hp-philanthropy .philanthropy-title.site-section-title span i.title-line {
            right: 50%;
            bottom: -14%;
            width: 100vw;
            left: initial;
            top: inherit;
        }

        .hp-philanthropy .philanthropy-content {
            text-align: left;
        }



        .hp-philanthropy .philanthropy-image {
            /* display: flex;
            flex-flow: row wrap;
            justify-content: center;
            gap: 20px; */
            display: block;
            position: relative;
        }

        .hp-philanthropy .philanthropy-image img {
            width: 100%;
            max-width: 48%;
        }

        .hp-philanthropy .philanthropy-content {
        width: 100%;
        text-align: left;
        margin-left: auto;
        max-width: 100%;
    }


    .hp-philanthropy .philanthropy-title.section-title span div.line {
        right: 50%;
        bottom: -14%;
        width: 100vw;
        left: initial;
        top: inherit;
    }



    .hp-philanthropy .philanthropy-title {
        justify-content: left;
    }


    .hp-philanthropy .philanthropy-buttons a {
        color: #000;
    }

    
    .hp-philanthropy .philanthropy-img img {
        width: 100%;
        max-width: 100%;
    }
    
    .philanthropy-img {
        display: inline-block;
        vertical-align: middle;
        width: 100%;
        position: relative;
    }
    
    .philanthropy-slider:not(.slick-initialized)  .philanthropy-img:nth-child(n+2) {
        display: none;
    }
    
    .philanthropy-slider {
        display: block;
        position: relative;
    }



.mc4wp-checkbox label input {
	width: auto;
	height: inherit;
	margin: 0 10px 0 0;
}

.mc4wp-checkbox label {
    display: flex !important;
    align-items: center;
    cursor: pointer;
    text-align: center; 
    padding: 20px 15px;
}

#wpcf7-f67-o3 .mc4wp-checkbox label, #wpcf7-f38-o2 .mc4wp-checkbox label {
    margin-top: 20px;
    padding: 10px;
}

.mc4wp-checkbox label span {
    display: block;
    font-size: 11px;
    letter-spacing: 0.07em;
    color: #fff !important;
    text-transform: uppercase;
    margin-top: 2px;
}
.page-id-13 .mc4wp-checkbox label span,
.single-listing .mc4wp-checkbox label span {
    color: #000 !important;
}

.single-listing .disclaimer .mc4wp-checkbox label span {
    color: #fff !important;
}

#wpcf7-f67-o3 .mc4wp-checkbox label,
#wpcf7-f38-o2 .mc4wp-checkbox label {
    margin-top: 20px;
    padding: 10px;
}

#wpcf7-f67-o3 .mc4wp-checkbox label span,
#wpcf7-f38-o2 .mc4wp-checkbox label span {
    color: #ffffff;
}

.mc4wp-checkbox label {
    display: flex !important;
    align-items: center;
    cursor: pointer;
    text-align: center;
}

.mc4wp-checkbox label input {
    width: auto;
    height: inherit;
    margin: 0 10px 0 0;
}

.mc4wp-checkbox label span {
    display: block;
    font-size: 11px;
    letter-spacing: 0.07em;
    color: #666666;
    text-transform: uppercase;
    margin-top: 2px;
}

#wpcf7-f67-o3 .mc4wp-checkbox label,
#wpcf7-f38-o2 .mc4wp-checkbox label {
    margin-top: 20px;
    padding: 10px;
}

#wpcf7-f67-o3 .mc4wp-checkbox label span,
#wpcf7-f38-o2 .mc4wp-checkbox label span {
    color: #ffffff !important;
}

#inner-page-wrapper .error-page-content-wrapper  .mc4wp-checkbox label span {
    color: #666666 !important;
}

#inner-page-wrapper #agents-single .agents-right .agents-name {
    font-size: 55px;
}
#inner-page-wrapper #agents-single .agents-right .agents-name span.text-top {
    font-size: 25px;
    margin-bottom: -10px;
}
#inner-page-wrapper #agents-single .agents-right .agents-name b {
    font-size: 50px;
}

/* MEDIA QUERIES ARE AUTOMATICALLY REMOVED FROM THIS FILE, they must be placed in style-media-queries.css */
