.section-img img,.vg-hero-img img {
    object-fit: cover;
    position: absolute;
    width: 100%;
    top: 0
}

.arrow-link:after,.vg-market-report-btn:after {
    font-family: var(--fontawesome);
    font-weight: 300;
    margin-left: 10px
}

.map-flex .map-container,.splide__slide {
    overflow: hidden
}

#reviews,.area-dir .map-container,.min-50vh,.vg-hero {
    min-height: 50vh
}

.service-links ul,.ultimate-guide section.home-listings .featured-properties {
    grid-template-columns: repeat(4,1fr)
}

.custom-hero-content h3,.value-container h3,svg text {
    font-family: var(--font)!important
}

.blog-chapter,section.content-block {
    box-sizing: border-box
}
#link-nav {
    border-bottom: solid 1px #e0e0e0;
}
:root {
    --logo: url(https://u.realgeeks.media/grantf/logo-2020-white.png);
    --clearnavlogo: url(
    https://u.realgeeks.media/grantf/logo-2020-white.png);
    --font: raleway,sans-serif;
    --fontheader: pf-marlet-display,sans-serif;
    --maincolor: #000000;
    --accentcolor: #000000;
    --fontawesome: "Font Awesome 6 Pro"!important;
    --heroctabtnbg: var(--maincolor);
    --navbackground: var();
    --navlinkcolor: var();
    --navbackground: var(--maincolor);
    --sidemenubackground: var();
    --sidemenubackground: var(--accentcolor);
    --sidemenuctabuttoncolor: var(--maincolor);
    --footerbgcolor: var();
    --footerbgcolor: var(--maincolor);
    --footerinputbg: #ffffff;
    --footerunderlinecolor: #b4b4b4;
    --footerbtn: var(--maincolor);
    --footerbtntext: #000000;
    --navuserinfoborder: solid .5px #dadada;
    --fullwidthpadding: 0px 45px;
    --containerpadding: 0px 25px;
    --containerpaddingmobile: 0px 20px;
    --vg-anchor-offset: 0px;
    --content-tight-padding: 30px;
    --content-tight-padding-mobile: 28px;
    --li-height: 2em
}

[id] {
    scroll-margin-top: var(--vg-anchor-offset,0px)
}

body.vg-anchor-scrolling #lux-navbar,body.vg-anchor-scrolling #lux-navbar .header,body.vg-anchor-scrolling .banner-navbar--container {
    transition: none!important
}

.content-tight section.content-block,.landing-tight section.content-block,section.content-block.content-tight,section.content-block.landing-tight {
    padding-top: var(--content-tight-padding)!important;
    padding-bottom: var(--content-tight-padding)!important;
    margin-bottom: 0px!important;
    margin-top: 0px!important;
    min-height: auto!important;
}

@media (max-width: 737px) {
    .content-tight section.content-block,.landing-tight section.content-block,section.content-block.content-tight,section.content-block.landing-tight {
        padding-top: var(--content-tight-padding-mobile)!important;
        padding-bottom: var(--content-tight-padding-mobile)!important
    }
}

.map-container svg {
    height: auto;
    width: 100%
}

svg #land path:hover {
    filter: saturate(2.5)
}

svg #text {
    pointer-events: none!important
}

#area-top.area-header.home .value-header::before,#maps .pp-h .mobile-zoom,#proplist_disclaimer img,.mortgage-listing-results h3,.text-wrapper:not(.preview-mode) .text-preview,.vg-hero .vg-form .row:after,.vg-hero .vg-form .row:before {
    display: none
}

#diamond-search .advanced-search-btn {
    display: flex;
    width: 100%;
    justify-content: flex-end;
    margin-top: 3px
}

#diamond-search .advanced-search-btn button {
    margin: 0;
    border-radius: 0;
    background: var(--accentcolor);
    text-transform: uppercase;
    font-size: min(3.5vw,15px);
    letter-spacing: 3px
}

.light-bg {
    background: #5b5b5b0a
}

.vg-hero {
    padding-bottom: 0!important
}

.vg-hero .inner-content:not(#reviews .inner-content) {
    padding: 100px 15px!important;
    max-width: none;
    min-height: 50vh;
    margin: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    grid-gap: 40px;
    top: 0
}

.vg-hero-img img {
    height: 100%
}

#mobile-banner,#reviews .inner-content:after,.market-widgets .row:before {
    display: none!important
}

.vg-hero-img.white-back .inner-content:after {
    background: linear-gradient(180deg,#fff,#ffffffbd)
}

.vg-hero-img.white-back h2,.vg-hero-img.white-back p {
    color: #000
}

.vg-hero .section-info {
    z-index: 2;
    position: relative;
    align-items: center;
    padding: 20px!important
}

.form-wrapper {
    align-items: center;
    padding: 0!important
}

.vg-form-container {
    background: #eee;
    padding: 20px;
    border-radius: 0;
    width: 100%;
    max-width: 600px;
    box-shadow: 0 11px 9px #00000030
}

.vg-hero .form-wrapper header>* {
    color: #000;
    font-size: min(7vw, 24px)!important
}

.vg-hero .vg-form .row {
    display: flex;
    justify-content: space-between;
    grid-gap: 10px
}

#ab-section .section-info img,#custom-search-tabs a:hover:after,.vg-form,.vg-hero .vg-form .row div {
    width: 100%
}

.section-info .vg-sidebar {
    flex-direction: row;
    flex-wrap: wrap
}

.section-info .vg-sidebar .section {
    width: 100%;
    flex: 1 1 33%
}

.section-info .vg-sidebar .section li {
    text-align: left;
    padding: 0!important;
    width: 48%!important
}

.button:hover,.vg-form button,button:hover {
    background: var(--accentcolor)
}

.redesign button:hover, body>div.sidemenu .sidemenu__nav-link:hover {
    opacity:.6!important;
}

#mortgage-section button,.vg-form button:hover,button.alt-btn {
    background: var(--accentcolor)!important
}

.flex-side .about-info button,.lighter-bg button.alt-btn,.lighter-bg button.alt-btn:hover {
    background: #fff!important;
    color: #000!important
}

.vg-form label {
    color: #000;
    margin-bottom: 6px;
    font-size: min(6vw,17px)
}

.vg-sidebar h3 a {
    color: var(--maincolor)!important;
    font-weight: 600
}

.vg-sidebar h3 a:hover {
    border-bottom: solid 1px var(--maincolor)
}

.vg-sidebar h3 a:after {
    content: '\e0fc';
    font-family: var(--fontawesome);
    margin-left: 10px;
    color: var(--maincolor);
    text-decoration: none;
    font-weight: 100
}

.area-list li a:hover,.article-section a,.explore-links a,.value-header p a,.vg-area-page p a,.vg-guide .back-to-guide:hover,g.big-font:hover {
    text-decoration: underline
}

.vg-sidebar .section h3 {
    text-align: left!important;
    margin: 0!important;
    font-size: min(7vw,22px)
}

.vg-form .not-complete {
    background-color: #ff000008!important;
    border-color: red!important
}

.form-error {
    background: #fff9f8;
    color: #a00808;
    font-weight: 600;
    padding: 10px;
    width: 100%;
    display: block
}

#listing-slider {
    min-height: auto;
    margin-top: 75px;
    margin-bottom: 75px
}

#vg-market-report,.agent-circles {
    margin-bottom: 30px
}

.realtor-page #grid-listings-all h2,section.content-block h1 {
    margin-bottom: 20px
}

section.content-block.normal-section button {
    font-weight: 500;
    letter-spacing: 0;
    margin-top: 40px
}

button.alt-btn {
    color: #fff!important
}

.lighter-bg button.alt-btn {
    border: none!important;
    font-size: min(10vw,25px)
}

button.alt-btn:hover {
    background: #000!important
}

.vg-hero button:hover {
    opacity: .7;
    background: var(--maincolor)
}

section.content-block.big-header h1,section.content-block.big-header h2 {
    font-size: min(8vw,30px);
    font-weight: 600;
    line-height: 1.3;
    position: relative;
    margin-bottom: 20px!important
}

section.vg-hero h1,section.vg-hero h2 {
    color: #fff;
    font-family: var(--fontheader)!important
}

#reviews h2 {
    font-size: min(7vw,50px);
    line-height: 1
}

section#hero-section.vg-hero.big-header h3 {
    font-size: min(10vw,50px);
    line-height: 1;
    color: #fff;
    margin-bottom: 30px
}

section.vg-hero p {
    color: #fff;
    font-size: min(4vw,17px);
    line-height: 1.4;
    font-weight: 500
}

.sidebar-true section:not(section:first-child,section.mce-content) {
    display: flex;
    margin-top: 50px
}

section:not(section:first-child, .landing-tight, .content-tight):not(.sidebar-true section) {
    margin-top: 75px;
    display: flex;
    padding: 50px 0;
    min-height: 33vh
}

.about-nav,section.featured-img {
    display: flex
}

.min-75vh {
    min-height: 35vh!important
}

.flex-2-col {
    display: flex;
    grid-gap: 40px
}

.flex-2-col .section-img,.flex-2-col .section-info,.flex-side .about-info {
    flex: 1
}

#map-section .flex-2-col {
    display: flex;
    width: 100%;
    grid-gap: 50px;
    height: 100%;
    justify-content: space-between;
    align-items: stretch;
    flex-direction: column
}

.map-flex #map-section .inner-content {
    padding: 0;
    max-width: 750px
}

.map-container {
    display: flex;
    flex-direction: column;
    margin-top: 50px;
    padding-top: 50px;
    align-items: center
}

.vg-sidebar .map-container {
    background: 0 0;
    padding: 0
}

.area-dir .map-container {
    max-width: 1000px!important
}

#nyc.mobile svg {
    max-height: 1000px
}

#City_Group path,#City_Group polygon {
    stroke: #999999;
    stroke-width: 1px
}

#City_Group #Hoboken,#City_Group #Jersey_City,#City_Group #Manhattan,#City_Group #Queens {
    stroke: none
}

.section-img {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    min-height: 600px;
    width: 100%
}

#map-section .section-info {
    flex-direction: column;
    padding-bottom: 0;
    padding-top: 0
}

.map-flex #map-section .section-info {
    flex-direction: column;
    padding: 0;
    grid-gap: 50px;
    height: auto
}

.featured-img .flex-2-col {
    height: 100%
}

.featured-img .aligned-center {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center
}

.max-w-600 {
    max-width: 600px;
    width: 100%
}

.section-img img {
    height: 100%;
    left: 0
}

.flex-btns {
    display: flex!important;
    flex-direction: row!important;
    grid-gap: 10px;
    flex-wrap: wrap
}

.flex-btns button {
    margin: 0!important
}

#vg-market-report {
    display: flex;
    margin-top: 50px;
    grid-gap: 30px;
    justify-content: center;
    width: 100%
}

.vg-market-report header h3 {
    font-size: min(5vw,22px)!important;
    color: var(--accentcolor);
    text-transform: none;
    letter-spacing: 0;
    display: flex;
    align-items: center;
    margin: 10px auto auto
}

@media (min-width: 1150px) {
    .vg-market-report header h3 {
        margin-left:0
    }
}

@media (max-width: 750px) {
    .vg-form-container {
        margin-bottom:0
    }

    #vg-market-report {
        flex-direction: column;
        align-items: center
    }

    .vg-active-market-report,.vg-sold-market-report,.vg-under-contract-market-report {
        width: 100%
    }
}

#vg-market-report .vg-market-container {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    grid-gap: 30px;
    justify-content: flex-start;
    align-items: baseline;
    text-align: center;
    padding: 30px
}

#vg-market-report .vg-market-container div {
    align-items: stretch;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    flex: 1 1 24%;
    justify-content: flex-start;
    align-items: flex-start
}

.vg-active-market-report div div span:not(.miranda-lb span),.vg-sold-market-report div div span:not(.miranda-lb span),.vg-under-contract-market-report div div span:not(.miranda-lb span) {
    font-size: min(10vw,25px);
    font-weight: 600
}

.fineprint-bottom span,.fineprint-top span {
    font-size: 12px!important
}

.vg-active-market-report h2,.vg-sold-market-report h2,.vg-under-contract-market-report h2 {
    margin: auto auto 30px!important;
    font-weight: 600;
    color: var(--accentcolor);
    text-align: center;
    min-height: 67px;
    font-size: min(5vw,17px)!important;
    max-width: 400px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 19px 30px;
    text-transform: none;
    font-family: var(--font)!important;
    width: 100%;
    border-bottom: 1px dashed #0000001f
}

.vg-active-market-report,.vg-sold-market-report,.vg-under-contract-market-report {
    border-radius: 0;
    flex-direction: column;
    overflow: hidden;
    width: 100%;
    background: #bcd9bc33
}

.vg-under-contract-market-report {
    background: #e9be7021
}

.vg-sold-market-report {
    background: #ef818117
}

@media (max-width: 1150px) {
    .vg-hero .inner-content {
        flex-direction:column;
        overflow: hidden
    }

    .flex-2-col {
        flex-direction: column;
        grid-gap: 0px;
        align-items: center
    }

    .map-container,.photo-ctas {
        width: 100%!important
    }

    .featured-img .flex-2-col {
        grid-gap: 40px
    }

    .reverse div:last-child {
        order: 1
    }

    .section-img {
        width: 100vw;
        position: relative;
        box-sizing: border-box;
        left: 0;
        max-width: 1000px;
        max-height: 500px;
        min-height: 500px
    }

    .reverse div:first-child {
        order: 2
    }

    .flex-2-col .section-img,.flex-2-col .section-info {
        padding-top: 40px;
        padding-bottom: 40px
    }

    .featured-img .inner-content {
        padding: var(--containerpadding)!important
    }

    .agent-circles {
        justify-content: center;
        align-items: center!important
    }

    .vg-neighborhood .text-center-mobile,.vg-neighborhood .text-center-mobile h1,.vg-neighborhood .text-center-mobile h2,.vg-neighborhood .text-center-mobile h3,.vg-neighborhood .text-center-mobile p {
        text-align: left!important;
        justify-content: start;
        align-items: flex-start
    }

    .vg-hero .section-info {
        padding: 0!important
    }

    .vg-hero .form-wrapper {
        top: 0
    }
}

.vg-area-page .text-center-mobile,.vg-area-page .text-center-mobile a,.vg-area-page .text-center-mobile h1,.vg-area-page .text-center-mobile h2,.vg-area-page .text-center-mobile h3,.vg-area-page .text-center-mobile p {
    text-align: left!important;
    justify-content: flex-start
}

.always-centered h1,.always-centered h2,.always-centered h3,.always-centered p {
    text-align: center;
    justify-content: center;
    display: flex;
    flex-direction: column
}

.agent-circles img {
    object-fit: contain
}

.listing-slogan {
    font-weight: 600!important;
    font-size: min(4vw,15px)!important;
    color: #000!important;
    line-height: 1.2!important
}

.section-info {
    width: 100%;
    padding: 50px 0;
    display: flex;
    justify-content: center
}

.vg-area-page .section-info {
    padding: 20px 0
}

.vg-search:after {
    content: '\f002';
    font-family: var(--fontawesome);
    margin-left: 10px;
    opacity: .6
}

.vg-market-report-btn:after {
    content: '\e0e5';
    color: #fff
}

.vg-view-all-btn:after {
    content: '\e1b2';
    font-family: var(--fontawesome);
    margin-left: 10px;
    opacity: .6
}

.arrow-link {
    font-weight: 600;
    border-bottom: solid;
    border-color: #0000001f;
    width: fit-content!important;
    color: #000
}

.arrow-link:after {
    content: '\f178';
    opacity: .6
}

.splide__arrow--next:after,.splide__arrow--prev:after {
    font-family: 'Font Awesome 6 Sharp'!important;
    line-height: 100%;
    font-weight: 100
}

.arrow-link:hover {
    border-color: var(--maincolor)
}

.section-cta-btn {
    margin-top: 20px;
    display: flex;
    width: 100%
}

.hug-top,.map-flex section {
    margin-top: 0!important
}

.extend-south {
    justify-content: space-around;
    position: absolute;
    z-index: 3
}

#agent-cta:not(.ultimate-guide #agent-cta) {
    border-top: 1px solid #e0e0e0
}

section.content-block button:not(.listing-slick-btns button) {
    letter-spacing: 0;
    font-weight: 600;
    padding: 10px 30px;
    min-width: 200px
}

section.content-block button:not(.listing-slick-btns button):hover {
    opacity: .4
}

.section-cta-btn button:hover {
    background: #000;
    border-color: #000
}

.button,button {
    background: var(--accentcolor);
    margin: 0;
    font-family: var(--font);
    transition: .3s;
    font-size: min(4vw,17px)
}

.multiSelectOptions label.checked,.sidebar .do_search {
    background: #000
}

svg#vg-map {
    height: 100%;
    width: 100%
}

#Small_Map path,#Small_Map polygon,#big_map path,#big_map polygon {
    cursor: pointer;
    opacity: .7;
    stroke: white;
    stroke-width: 1px!important
}

#Map,#Roads,.cls-1,.cls-4,g[id=text] g,svg text:not(g.big-font text) {
    pointer-events: none
}

svg text {
    stroke: none!important
}

.custom-hero-content {
    position: absolute;
    height: 100vh;
    width: 100%;
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
    padding: 40px 100px;
    z-index: 22;
    min-height: 100vh;
    margin: 0!important;
    top: 0;
    bottom: 0
}

#custom-hero {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 100vh;
    background: #2c2c2c
}

.custom-hero-content h1,.directory-text {
    flex-direction: column;
    text-align: center
}

#custom-hero video {
    min-height: 100vh!important;
    position: relative;
    min-width: 100vw;
    object-fit: cover;
    height: 100vh
}

.custom-hero-content:before {
    content: '';
    width: 100%;
    height: 100%;
    background: #0000005e;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1
}

.custom-hero-content h1 {
    color: #fff;
    font-size: min(7vw,80px);
    line-height: 1;
    font-weight: 500;
    display: flex;
    position: relative;
    text-shadow: 0 0 3px #0000003b;
    max-width: 1500px
}

@media (max-width: 948px) {
    .custom-hero-content {
        padding:70px 30px 0
    }
}

@media (max-width: 707px) {
    #custom-hero h1:after {
        left:60vw
    }
}

.custom-hero-content h3 {
    color: #fff;
    font-size: min(3vw,22px)!important;
    padding-left: 7px;
    display: block;
    font-weight: 700;
    text-align: center;
    max-width: 1000px
}

#custom-search-tabs a {
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-size: min(5vw,19px);
    position: relative;
    border: 1px solid #ffffff6b;
    transition: .3s;
    padding: 10px 40px;
    font-weight: 800
}

#custom-search-tabs a:first-child,.custom-area .area-img .area-btn:hover {
    background: #fff;
    color: #000
}

@media (max-width: 700px) {
    #custom-search-tabs a {
        text-align:center
    }

    #custom-search-tabs {
        left: 0!important;
        width: 100%;
        flex-direction: column;
        grid-gap: 10px!important
    }
}

.vg-active-market-report p,.vg-sold-market-report p,.vg-under-contract-market-report p {
    font-size: min(5vw,13px);
    font-weight: 500;
    max-width: 300px;
    text-align: left!important
}

#custom-search-tabs {
    display: flex;
    grid-gap: 30px;
    margin-top: 50px;
    position: relative
}

#custom-search-tabs a:after {
    content: "";
    position: absolute;
    bottom: -2px;
    left: 0;
    height: 1px;
    width: 0%;
    transition: .3s;
    background-color: #fff
}

.custom-area .area-img .area-btn {
    position: absolute;
    z-index: 3;
    top: 50%;
    display: none;
    left: 50%;
    transform: translate(-50%,-50%);
    color: #fff;
    background-color: var(--maincolor);
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: 2px;
    transition: .3s;
    opacity: 0;
    padding: 1em 2em
}

.custom-area:hover .area-btn,.team .splide__arrow {
    opacity: 1
}

.area-label {
    display: flex;
    font-weight: 500;
    position: absolute;
    z-index: 4;
    font-size: min(7vw,25px)!important;
    height: 100%;
    width: 100%;
    justify-content: end;
    color: #fff;
    padding: 20px;
    top: 0;
    flex-direction: column;
    line-height: 1.2;
    letter-spacing: 1px;
    pointer-events: none
}

.directory,.directory-blocks {
    display: grid;
    grid-gap: 20px;
    grid-template-columns: repeat(2,1fr)
}

h3.area-label span {
    font-size: min(4vw,15px);
    color: #ffffffde
}

.area-label::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(to top,rgb(0 0 0 / 82%),rgb(0 0 0 / 26%),#00000000);
    z-index: -1;
    pointer-events: none
}

.area-label,.area-label::after,.area-label::before {
    will-change: auto!important;
    transition: none!important;
    margin: 0!important
}

.team .area-label {
    color: #fff;
    padding: 20px
}

.area-label span {
    font-size: min(3vw,15px);
    color: #ffffffc4
}

.area-label h3 {
    color: #fff;
    font-size: min(9vw,20px)!important;
    margin-bottom: 10px
}

#reviews img {
    max-height: 18px;
    margin-top: 10px
}

.directory {
    margin-top: 20px
}

.directory-blocks {
    max-width: 1500px;
    margin: auto
}

.directory-item {
    min-height: 300px;
    width: auto;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    background: #222
}

.directory-text {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 30px;
    z-index: 2;
    max-width: 500px;
    pointer-events: none
}

.directory-item a {
    position: absolute;
    left: 0;
    width: 100%;
    height: 100%;
    top: 0
}

.directory-item a:before {
    content: '';
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 1;
    background: #0000006e;
    transition: .3s
}

.directory-item:hover>a:before {
    background: #00000038
}

.directory-item img {
    FONT-WEIGHT: 200;
    width: 100%;
    object-fit: cover;
    height: 100%
}

#directory-blocks .directory-blocks .directory-item h2 {
    z-index: 2;
    position: relative;
    font-size: min(6.5vw, 46px)!important;
    color: #fff!important;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    pointer-events: none;
    text-align: center;
    justify-content: center;
    padding: 20px;
    transition: .3s;
    font-weight: 600;
    line-height: 1.1
}

.directory-item h2:hover {
    background: #00000030!important
}

.directory-item h2 span {
    color: #ffffffba;
    font-weight: 400;
    font-size: min(4vw,16px)
}

.directory-item:hover>h2:after {
    content: '';
    width: 50%;
    border-bottom: 1px solid #fff;
    position: relative;
    margin-top: 10px
}

.map-flex {
    display: flex;
    align-items: baseline;
    padding: 75px 30px;
    grid-gap: 100px;
    justify-content: center
}

.map-flex svg {
    border: 1px solid #e0e0e0
}

.map-flex section {
    background: #fff
}

.map-img {
    margin-bottom: 0;
    max-width: 500px!important;
    width: fit-content;
    max-height: 100%;
    object-fit: cover;
    border: 1px solid;
    padding: 3px
}

.map-flex .map-img {
    max-width: 100%!important;
    max-height: 300px;
    width: 100%
}

.map-info-container {
    display: flex;
    align-items: stretch;
    grid-gap: 75px
}

@media (min-width: 737px) {
    .map-container.mobile,.mobile-zoom {
        display:none
    }
}

@media (max-width: 737px) {
    .home-sections section:not(#custom-hero) {
        margin-top:75px
    }

    #area-top.home,.vg-main-areas #grid-listings-all {
        padding-top: 30px!important
    }

    #nyc.map-container:not(#nyc.mobile) {
        display: none
    }

    .mobile-zoom {
        margin-left: 15px;
        margin-right: 15px;
        margin-top: 20px
    }

    .area-header.explore-section .inner-content .value-header {
        align-items: flex-start!important
    }

    .all-maps {
        position: relative;
        padding-bottom: 48px;
        width: 100%
    }

    .mobile-zoom h3 {
        font-size: min(5vw,15px);
        margin: 0!important;
        color: #343434!important;
        display: flex;
        align-items: center;
        grid-gap: 10px;
        justify-content: center
    }

    .mobile-zoom h3:before {
        content: '\f31d';
        font-family: var(--fontawesome);
        font-weight: 300;
        font-size: 28px
    }

    .mobile-zoom-container {
        padding: 7px;
        background: #fff;
        box-shadow: 0 0 10px #0000001a
    }

    .mobile-zoom p {
        font-size: min(4vw,13px);
        color: #cdcdcd;
        line-height: 1.2
    }
}

.home-about {
    background-color: #000;
    position: relative
}

.flex-side {
    display: flex;
    grid-gap: 30px
}

.flex-side .about-huge {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center
}

.flex-side .about-huge img {
    max-width: 300px;
    width: 100%
}

.area-alert p a,.article-cta .inner-content h2,.article-cta .inner-content p,.blog-chapter.agent-cta>.blog-chapter-text h1,.flex-side .about-info a,.flex-side .about-info h2,.flex-side .about-info p,.lighter-bg strong,.sidebar .pp-h h3,.vg-hero .blog-socials a,.vg-hero .blog-socials h4,.vg-hero-img strong {
    color: #fff
}

.flex-side .about-info h2 {
    font-size: min(10vw,30px)!important
}

.map-container span {
    background: #000;
    padding: 4px 10px 7px;
    display: inline-block;
    width: fit-content;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    font-size: min(3vw,17px);
    color: #fff
}

#market-section header h2,.home-market .vg-active-market-report div div span:not(.miranda-lb span),.home-market .vg-sold-market-report div div span:not(.miranda-lb span),.home-market .vg-under-contract-market-report div div span:not(.miranda-lb span) {
    font-size: min(7vw,40px)
}

.vg-area-page p a {
    color: var(--accentcolor);
    font-weight: 500
}

.vg-s li {
    font-size: min(7vw,20px);
    line-height: 1
}

.about-nav .nav-ink {
    padding: 10px;
    background: 0 0;
    border: 1px solid #ffffff9c
}

.clearnav .about-nav .nav-ink:hover {
    opacity: .6;
    border-color: #fff
}

.about-nav .nav-ink:hover {
    opacity: .5
}

.mobile-about .about-nav .nav-ink {
    background: 0 0;
    color: #fff!important;
    letter-spacing: 2px;
    font-size: min(3vw, 10px);
    border: none
}

.blog-chapter.agent-cta .blog-chapter-text .social-links a,.blog-chapter.agent-cta>.blog-chapter-text h3,.blog-chapter.agent-cta>.blog-chapter-text p,.blog-chapter.agent-cta>.blog-chapter-text strong,.first-item a,.noclearnav .mobile-about .about-nav .nav-ink,.vg-sidebar .first-item h3 a,nav .navshadow .mobile-about .about-nav .nav-ink,nav.clearnav .mobile-about .about-nav .nav-ink {
    color: #fff!important
}

.mobile-about {
    padding-right: 5px!important
}

.splide__arrow svg {
    width: 20px;
    height: 20px;
    fill: none!important;
    display: none
}

.splide__slide a img {
    min-height: 300px;
    object-fit: cover;
    transition: .5s;
    position: relative;
    width: 100%
}

.pop-searches .splide__slide a img {
    min-height: 100px
}

.pop-searches .area-label {
    justify-content: flex-end;
    padding: 10px
}

.pop-searches .area-label h3 {
    background: #000;
    width: fit-content;
    padding: 3px 10px;
    color: #fff;
    margin: 0
}

.pop-searches .splide__track {
    height: 200px
}

.splide__arrows {
    display: flex;
    justify-content: center;
    gap: 20px;
    align-items: flex-start;
    position: absolute;
    z-index: 3;
    right: 0;
    bottom: 0
}

#carousel .splide__arrows button {
    position: relative;
    left: auto!important;
    padding: 0!important;
    margin: 0!important;
    right: auto!important;
    transform: none!important;
    border-radius: 0;
    transition: .3s;
    border: none!important;
    min-width: auto!important;
    background: 0 0!important;
    height: 40px;
    width: 40px!important
}

.splide__arrow--next:after {
    opacity: 1;
    color: #000;
    content: '\f054'
}

.splide__arrow--prev:after {
    opacity: 1;
    color: #000;
    content: '\f053'
}

.splide__arrow:after {
    background: #ebebeb;
    width: 40px;
    height: 40px;
    color: #000;
    display: flex;
    align-items: center;
    font-weight: 400;
    font-size: min(6vw,23px)!important;
    justify-content: center;
    border-radius: 100%
}

#diamond-mls,.area-list,.splide,.team .splide__arrows {
    width: 100%
}

.loading-splide {
    visibility: hidden!important
}

.splide {
    padding-bottom: 4rem;
    max-width: 1500px!important;
    margin-top: 20px
}

.team .splide,.vg-main-areas section#about-text h2:not(h2:first-of-type)+h3 {
    margin-top: 0
}

.team .splide__slide {
    margin-right: 0!important
}

.team .splide__arrow:after,.team .splide__arrow:before {
    background: #000;
    opacity: 1;
    color: #fff
}

.splide__slide:hover {
    transform: scale(.98)
}

.splide__slide {
    transition: .3s;
    border-radius: 0
}

.review,.review-slider {
    transition: transform .6s ease-in-out
}

.pop-searches .splide__slide {
    overflow: visible
}

.splide__list {
    transform-style: flat!important
}

.splide__track {
    overflow: visible!important;
    height: 33vh
}

.team .splide__track {
    height: 600px
}

strong {
    font-weight: 600;
    color: var(--maincolor)
}

.home-market #vg-market-report {
    flex-direction: row;
    grid-gap: 0
}

#market-section.home-market header h2 {
    font-size: min(10vw,28px)
}

.home-market .vg-active-market-report,.home-market .vg-sold-market-report,.home-market .vg-under-contract-market-report {
    background: 0 0;
    box-shadow: none;
    border-right: 1px solid #183f49;
    padding: 0 100px;
    justify-content: space-between
}

.home-market .vg-sold-market-report,.vg-custom-blog .agent-section {
    border: none!important
}

.home-market .inner-content {
    max-width: 2500px
}

.home-market .vg-active-market-report h2,.home-market .vg-sold-market-report h2,.home-market .vg-under-contract-market-report h2 {
    background: 0 0!important;
    border: none;
    padding: 0;
    color: var(--maincolor);
    text-align: center!important;
    font-size: min(10vw,28px);
    margin-bottom: 50px!important
}

.home-market .vg-active-market-report p,.home-market .vg-sold-market-report p,.home-market .vg-under-contract-market-report p {
    padding: 0;
    background: 0 0
}

.home-market #vg-market-report .vg-market-container {
    padding: 0;
    grid-gap: 42px;
    flex-wrap: wrap
}

@media (min-width: 700px) {
    .area-agent-mobile {
        display:none
    }
}

.dots,.photo-ctas,.review,.review p {
    display: flex
}

.vg-area-page section header .large-agent {
    margin-bottom: 10px!important;
    font-size: min(15vw,25px);
    line-height: 1;
    border-bottom: 1px solid;
    width: fit-content;
    padding-bottom: 10px
}

#head-section .section-info,.vg-area-page #about-section .section-info {
    padding-top: 0
}

.vg-hero-img:before {
    content: '';
    background: #0000004a;
    position: absolute;
    width: 100%;
    min-height: 100%;
    z-index: 1;
    top: 0
}

.vg-hero-img.lighter-bg:before {
    background: #0000001a;
    height: 100%;
    top: 0
}

.first-item {
    background: var(--maincolor);
    padding: 20px;
    border-bottom: none;
    border-top: 1px solid #ffffff1c;
    width: 100%
}

.first-item.top-item {
    box-shadow: 0 -8px 13px #0000004d
}

@media (max-width: 1200px) {
    .home-market #vg-market-report {
        flex-direction:column;
        grid-gap: 0
    }

    .home-market .vg-active-market-report,.home-market .vg-sold-market-report,.home-market .vg-under-contract-market-report {
        border-right: none;
        border-bottom: 1px solid #5b5b5b;
        padding: 50px 0;
        max-width: none
    }

    .home-market .vg-sold-market-report {
        border: none
    }

    .vg-sidebar {
        margin-top: 0
    }

    .first-item {
        box-shadow: none;
        border: none;
        max-width: none
    }
}

.vg-sidebar .first-item h3 a {
    font-weight: 700
}

.vg-sidebar .first-item h3 a:after,label.checked>span {
    color: #fff;
    font-weight: 600
}

.pp-h {
    background: var(--accentcolor);
    padding: 10px 20px;
    max-width: none
}

.pp-h h3 {
    color: #5b5b5b
}

.vg-sidebar.home-directory {
    display: grid;
    grid-template-columns: repeat(2,1fr);
    margin-bottom: 75px;
    margin-top: -50px
}

@media (max-width: 670px) {
    .vg-sidebar.home-directory {
        grid-template-columns:repeat(1,1fr);
        margin-top: -20px
    }
}

.vg-sidebar.home-directory li {
    padding: 0!important
}

g[id="_Ð¡Ð»Ð¾Ð¹_2"] path,g[id="_Ð¡Ð»Ð¾Ð¹_2"] polygon,g[id=areas] path,g[id=areas] polygon {
    pointer-events: all
}

g[id="_Ð¡Ð»Ð¾Ð¹_2"] path:hover,g[id="_Ð¡Ð»Ð¾Ð¹_2"] polygon:hover,g[id=areas] path:hover,g[id=areas] polygon:hover {
    opacity: .4!important
}

g[id=small_text] a:hover g>path {
    fill: #ffffff!important
}

g[id=text] path {
    stroke: none;
    fill: #000000
}

#maps .pp-h {
    background: #aeb7a830
}

.blank-page #maps .pp-h {
    background: #fff!important
}

#mortgage-section button {
    margin-top: 30px
}

#total-payment-amount {
    color: var(--accentcolor)!important
}

.review-slider {
    display: flex;
    width: 100%;
    position: relative
}

.review {
    min-width: 100%;
    text-align: center;
    font-size: 1.2rem;
    padding: 20px;
    z-index: 333;
    align-items: center;
    justify-content: center;
    flex-direction: column
}

.dots {
    justify-content: center;
    margin-top: 10px
}

.dot {
    width: 10px;
    height: 10px;
    margin: 0 5px;
    background: #ffffff5c;
    border-radius: 50%;
    cursor: pointer;
    transition: background .3s
}

.dot.active {
    background: #fff
}

#reviews .inner-content {
    width: 100%;
    overflow: hidden
}

.review p {
    font-size: min(4vw,20px)!important;
    max-width: 750px;
    margin: 0;
    font-weight: 600;
    align-items: center;
    justify-content: center
}

.header-container,.photo-ctas {
    flex-direction: column;
    width: 100%
}

.review h4 {
    color: #fff;
    font-size: min(7vw,34px);
    margin-top: 50px
}

#reviews {
    margin: 0;
    z-index: 2;
    height: 100%;
    position: relative
}

rect:hover {
    fill: #dbdbdb!important
}

.service-links li::marker {
    display: none!important;
    font-size: 0
}

.service-links ul {
    margin-left: 0;
    display: grid;
    grid-gap: 20px
}

@media (max-width: 800px) {
    .service-links ul {
        grid-template-columns:repeat(2,1fr)
    }
}

@media (max-width: 400px) {
    .service-links ul {
        grid-template-columns:repeat(1,1fr)
    }
}

.area-directory,.area-list ul {
    grid-template-columns: repeat(2,1fr)
}

.service-links ul li {
    flex: 1 1 20%;
    min-height: 12vh;
    display: flex;
    background: #fff;
    text-align: left;
    box-shadow: 0 0 9px #0000000d;
    border: 1px solid #e0e0e0;
    transition: .3s
}

.service-links ul li:hover {
    border-color: #00f
}

.service-links,.vg-guide .back-to-guide,.vg-guide header span {
    border-bottom: 1px solid #e0e0e0
}

.service-links {
    margin: 30px 0;
    border-top: 1px solid #e0e0e0;
    padding-top: 20px;
    padding-bottom: 20px
}

.service-links a {
    display: flex;
    align-items: flex-start;
    text-align: left;
    justify-content: center!important;
    padding: 20px;
    flex-direction: column;
    font-size: min(5vw,20px)
}

.acct-nav a,.vg-directory section {
    padding: 0!important
}

.service-links a span {
    color: #000;
    font-size: min(4vw,11px);
    transition: .3s;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-top: 5px
}

.service-links a span:after {
    transition: .2s;
    content: '\f178';
    font-family: "Font Awesome 6 Sharp";
    font-weight: 400;
    margin-left: 10px;
    display: inline-block;
    transform: translateX(-10px);
    opacity: 0;
    transition: transform .3s,opacity .3s
}

.service-links a:hover span:after {
    transform: translateX(0);
    opacity: 1
}

.service-links a,.service-links a strong {
    color: #000!important;
    font-weight: 600;
    height: 100%;
    width: 100%
}

.service-links a strong:hover,.service-links a:hover {
    color: #000!important
}

.acct-nav a {
    display: flex;
    border: none!important
}

.acct-nav a:before {
    font-family: "Font Awesome 6 Pro";
    content: "\f007";
    font-weight: 400;
    font-size: 17px;
}

.vg-guide .back-to-guide {
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: #00f;
    display: block;
    1px:#;padding-bottom: 30px
}

.vg-guide .back-to-guide:before {
    font-family: "Font Awesome 6 Sharp";
    content: '\f177';
    margin-right: 8px;
    transition: content .3s,transform .3s
}

.vg-guide header span {
    font-size: min(10vw,26px);
    text-transform: uppercase;
    font-weight: 700;
    color: #8e8e8e;
    margin-bottom: 30px;
    display: block;
    padding-bottom: 10px;
    padding-top: 10px;
    background: #f9f9f9;
    text-align: center
}

.vg-guide header h1 {
    font-size: min(7vw,29px)
}

.comparison-section {
    border: 1px solid #bbb;
    overflow: hidden;
    font-family: sans-serif;
    margin-bottom: 30px
}

.comparison-header-wrap {
    display: flex;
    background: #00f;
    color: #fff;
    text-align: center;
    font-weight: 700;
    align-items: stretch
}

.comparison-row-wrap {
    display: flex;
    border-top: 1px solid #d4d4d4
}

.comparison-col {
    flex: 1;
    padding: 15px
}

.comparison-col.competitor {
    background: #ffffff45
}

.program {
    background: #0000ff0d
}

.comparison-header-wrap .program {
    background: #00f;
    font-size: min(10vw,23px);
    text-align: left;
    display: flex;
    align-items: center
}

.comparison-header-wrap .competitor {
    height: auto;
    display: flex;
    color: #000;
    background: #fff;
    text-align: left;
    align-items: center
}

.highlight-row .program {
    background: #00f;
    font-weight: 700;
    display: flex;
    align-items: center
}

.vg-directory .section-info,.vg-directory section,.vg-neighborhood .section-info {
    display: block!important
}

.highlight-row .program strong {
    color: #fff;
    font-weight: 700
}

.highlight-row .competitor {
    background: #f9f9f9;
    font-weight: 700
}

@media (max-width: 768px) {
    .splide__slide.is-active .area-label {
        opacity:1;
        transition: opacity ease-in
    }

    .splide__slide a img {
        min-height: 33vh
    }

    .team .splide__slide a img,.team .splide__track {
        min-height: 50vh;
        max-height: 70vh;
        object-position: top
    }

    #carousel .splide__slide,.team #carousel .splide__slide {
        width: 95%!important
    }

    .comparison-header-wrap,.comparison-row-wrap {
        flex-direction: column
    }
}

.vg-neighborhood li {
    min-height: auto!important
}

.vg-neighborhood li h3 {
    margin: 0!important;
    width: 100%;
    height: 100%
}

#head-section header {
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    margin-bottom: 0;
    background: #000;
    position: relative;
    min-height: 200px
}

#head-section header img {
    object-fit: cover;
    min-height: 400px;
    max-height: 600px;
    width: 100%;
    padding-bottom: 62px
}

.header-container {
    position: absolute;
    z-index: 2;
    padding: 53px 20px 20px;
    background: linear-gradient(0deg,#022349,#022349,#0223498c,transparent);
    left: 0;
    bottom: 0;
    display: flex;
    align-items: baseline
}

.header-container a {
    width: 100%;
    max-width: 303px
}

.header-container button {
    margin: 0!important;
    width: 100%;
    background: #fff;
    color: #000;
    font-size: min(4vw,18px);
    font-weight: 700!important
}

.header-container button:after {
    color: #000;
    opacity: 1;
    content: '\f08e';
    font-weight: 900;
    font-family: 'Font Awesome 6 Sharp'
}

.header-container h1 {
    color: #fff;
    font-size: min(10vw,40px);
    font-weight: 600;
    line-height: 1
}

.area-alert {
    background: var(--accentcolor);
    padding: 20px;
    border-bottom: 1px solid #fff
}

.area-alert p {
    color: #fff;
    font-size: min(6vw,15px);
    max-width: 700px;
    font-weight: 300
}

.area-alert h2 {
    color: #fff;
    font-size: min(7vw,22px)!important;
    font-weight: 500!important
}

.vg-area-page .vg-element {
    display: flex;
    flex-direction: column;
    grid-gap: 50px
}

.area-description {
    max-height: 300px;
    overflow: hidden;
    transition: max-height .5s;
    position: relative;
    background: #eeeeee00;
    padding: 50px 20px;
    border-left: 1px solid #e0e0e0;
    border-right: 1px solid #e0e0e0;
    border-bottom: 1px solid #e0e0e0
}

.read-more-toggle {
    display: inline-block;
    margin-top: -1px!important;
    cursor: pointer;
    background: #fff!important;
    border: 1px solid #e0e0e0;
    opacity: 1!important;
    font-size: 17px;
    border-top: none!important;
    position: absolute;
    color: var(--accentcolor)!important;
    z-index: 2;
    left: 0
}

.area-description.expanded {
    max-height: 2000px
}

.area-description.fade-gradient::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 200px;
    background: linear-gradient(to bottom,rgba(255,255,255,0),#ffffff9e,#fff);
    pointer-events: none;
    transition: opacity .3s
}

.area-description.expanded::after {
    opacity: 0
}

section.home-listings .listing-h h1,section.home-listings .listing-h h2 {
    margin-bottom: 0!important;
    font-size: min(6vw,35px)!important
}

.listing-h span {
    padding: 2px 8px;
    background: #000;
    display: block;
    width: fit-content;
    margin-bottom: 10px;
    color: #fff;
    border: 1px solid;
    font-size: min(2.2vw,11px);
    text-transform: uppercase;
    letter-spacing: 2px;
    font-weight: 800
}

.value-container:last-of-type .listing-h span {
    background: #11f;
    border: none;
    color: #fff
}

.ultimate-guide section.home-listings h2 {
    font-size: min(8vw,30px)
}

section.home-listings {
    padding-top: 50px!important;
    margin-top: 0!important
}

.ultimate-guide section.home-listings {
    border-top: solid;
    border-color: #e0e0e0;
    margin: 0!important;
    padding: 100px 0!important;
    left: 0;
    right: 0;
    width: 100%
}

section.home-listings:nth-child(4) {
    background: #e0e0e04d;
    margin-top: 0!important;
    padding-top: 100px!important;
    padding-bottom: 100px!important
}

section.home-listings .featured-properties {
    margin-bottom: 0!important
}

.featured-properties.extra-properties {
    margin-top: 15px
}

.listing-ctas {
    display: flex;
    align-items: end;
    grid-gap: 15px;
    margin-bottom: 15px;
    justify-content: space-between
}

#agent-cta .listing-ctas {
    margin-bottom: 50px
}

.listing-ctas button {
    margin: 0!important;
    background: #fff;
    border: 1px solid #e0e0e0;
    color: var(--maincolor);
    border-radius: 4;
    width: 100%
}

.listing-ctas button:before {
    font-family: 'Font Awesome 6 Sharp';
    font-weight: 100;
    margin-right: 10px
}

.listing-ctas button#viewmap:before {
    content: '\f5a0'
}

.listing-ctas button#alllistings:before {
    content: '\f4d9'
}

.listing-cta-btns {
    display: flex;
    grid-gap: 10px
}

.flex-btns a,.flex-btns button {
    max-width: 600px!important
}

#ready-section .flex-btns button,#value-section .flex-btns button {
    background: #00f;
    color: #fff
}

@media (min-width: 600px) {
    #market-section .flex-btns a,#market-section .flex-btns button {
        max-width:fit-content!important
    }
}

.area-directory header {
    position: relative
}

.area-directory header h2 {
    color: #fff!important;
    margin-bottom: 10px!important
}

.area-directory .area-description {
    padding: 20px!important
}

.area-directory section {
    margin: 0!important;
    height: auto
}

.area-directory {
    display: grid;
    align-items: baseline;
    grid-gap: 30px
}

.article-section a {
    font-weight: 500
}

.article-section {
    margin-top: 0!important;
    background: #d6d6d60f
}

.article-section .inner-content {
    display: grid;
    padding-bottom: 75px;
    max-width: 1500px;
    grid-gap: 30px
}

.vg-article-section h2:not(.title-section h2) {
    font-size: min(7vw,32px)!important;
    font-weight: 500
}

.vg-article-section h3 {
    font-size: min(6vw,23px)!important;
    font-weight: 400
}

.vg-article-section.title-section {
    grid-column: 1/-1;
    display: flex;
    flex-direction: column;
    grid-gap: 30px;
    align-items: center;
    justify-content: center;
    min-height: 33vh;
    overflow: hidden;
    position: relative;
    padding: 50px 100px;
    margin-bottom: 60px
}

.article-section .vg-article-section.title-section img {
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    min-height: 100%;
    max-height: 33vh;
    width: 100%
}

.article-section:nth-child(2n) .vg-article-section.title-section img {
    box-shadow: 10px 10px 0 #82c34173
}

@media (max-width: 850px) {
    .vg-article-section.title-section {
        width:100vw;
        position: relative;
        left: 0;
        right: 0;
        margin-left: calc(-50vw + 50%);
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        text-align: center;
        padding: 75px 20px
    }

    .vg-article-section:not(.vg-article-section.title-section) {
        padding: 0
    }
}

.article-section .vg-article-section.title-section::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,.4);
    z-index: 1;
    pointer-events: none
}

.vg-article-section.title-section h2 {
    font-size: min(8vw,50px)!important;
    text-align: center;
    color: #fff;
    z-index: 2;
    max-width: 1000px;
    line-height: 1
}

.vg-article-section.title-section p {
    color: #fff;
    z-index: 2;
    font-weight: 700;
    font-size: min(4vw,19px);
    text-align: center;
    max-width: 1000px
}

.article-cta {
    padding-bottom: 75px;
    padding-top: 75px;
    background: #343434;
    margin-top: 0!important
}

.area-links,.area-links a {
    border-radius: 10px;
    width: 100%
}

.area-links {
    display: grid;
    background: #0000000d;
    padding: 10px;
    margin-top: 30px;
    grid-gap: 5px;
    grid-template-columns: repeat(auto-fit,minmax(200px,1fr))
}

.area-links h3 {
    font-size: min(7vw,19px);
    margin-bottom: 10px;
    grid-column: 1/-1
}

.area-links a {
    color: var(--maincolor);
    font-weight: 500;
    background: #fff;
    padding: 5px 19px;
    border: 1px solid #e0e0e0;
    display: flex;
    align-items: center
}

.home-listings .property {
    opacity: 0;
    transform: translateX(-30px);
    transition: opacity .4s,transform .4s
}

.home-listings .property.visible {
    opacity: 1;
    transform: translateX(0)
}

.blog-home-intro,.vg-blog-home .title {
    grid-column: 1/-1
}

#diamond-search.whitebar form {
    background: #fff;
    border-radius: 3px
}

#diamond-search.whitebar form input,#diamond-search.whitebar form input::placeholder {
    color: var(--maincolor)!important
}

.vg-valuation .autocomplete-form {
    max-width: none!important;
    display: flex;
    align-items: stretch;
    box-shadow: 0 9px 8px #00000012;
    border-radius: 3px;
    min-width: 100%;
    position: relative
}

.vg-valuation input {
    height: 60px;
    box-shadow: none;
    border: 1px solid #aeaeae;
    border-right: none;
    border-radius: 0;
    font-size: min(7vw,18px);
    font-weight: 600;
    color: var(--maincolor);
    margin: 0;
    text-overflow: ellipsis;
    width: 100%;
    position: relative
}

.vg-valuation form button {
    margin: 0!important;
    height: 100%;
    padding: 10px 15px!important;
    min-width: auto!important
}

.vg-valuation button:not(form button) {
    margin: 0!important;
    height: 60px;
    padding: 10px 15px!important;
    background: #fff;
    color: var(--maincolor);
    border: 1px solid #121212
}

.cta .inner-content {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    flex-wrap: wrap;
    grid-gap: 50px;
    justify-content: space-between
}

.vg-valuation {
    width: 100%;
    min-width: 100%
}

.value-header {
    flex: 1 1 100%;
    flex-direction: column;
    align-items: center
}

#about-text .value-header a {
    color: #00f!important
}

.area-header .value-header {
    width: 100%;
    flex: 1;
    position: relative;
    z-index: 1;
    padding: 30px 120px 30px 70px;
    display: flex;
    align-items: baseline;
    height: 100%;
    justify-content: center;
    max-width: 1000px;
    margin: 0
}

#area-top .value-header {
    min-height: 50vh;
    width: 40%;
    max-width: 40%
}

.area-header.explore-section .inner-content .value-header {
    max-width: none;
    align-items: center;
    padding: 20px 0
}

.area-header.explore-section .inner-content {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: auto;
    padding: 0;
    width: 100%
}

.area-img {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    min-height: 100%
}

.area-img img {
    height: 100%!important;
    width: 100%!important;
    object-fit: cover!important;
    object-position: center
}

@media (min-width: 1000px) and (max-width:1400px) {
    .area-header .value-header {
        max-width:50%!important;
        padding: 30px 60px 30px 30px
    }
}

@media (max-width: 1000px) {
    .flex-side {
        flex-direction:column;
        align-items: center;
        justify-content: center;
        text-align: center;
        padding: 100px 0 250px
    }

    .flex-side .social-links {
        justify-content: center
    }

    .home-about::before {
        background-size: 40%
    }

    .home-about::after {
        background-position: bottom center
    }

    .listing-cta-btns,.listing-cta-btns a {
        width: 100%
    }

    .listing-ctas button {
        font-size: min(3.5vw,15px);
        white-space: nowrap;
        padding: 10px!important
    }

    .listing-ctas {
        flex-direction: column;
        align-items: center;
        margin-bottom: 20px;
        justify-content: center!important
    }

    .listing-ctas:not(#agent-cta .listing-ctas) {
        align-items: baseline
    }

    .area-top .flex-btns {
        flex-direction: column!important;
        align-items: center!important;
        justify-content: center;
        width: 100%;
        margin: auto
    }

    .value-header .flex-btns a {
        max-width: none!important;
        flex: 0 0 auto
    }

    .ultimate-guide section.home-listings {
        border: none!important;
        padding: 30px 0 0!important;
        box-shadow: none;
        border-top: 1px solid!important
    }

    #area-top.home .value-header {
        align-items: baseline!important;
        text-align: left!important;
        padding: 20px!important
    }

    .area-header .inner-content {
        grid-template-columns: repeat(1,1fr)!important
    }

    .area-header .value-header {
        max-width: 600px;
        margin: auto;
        padding: 30px 15px
    }

    #area-top .value-header {
        margin-top: 25vh;
        width: 100%;
        max-width: 100%;
        min-height: auto;
        margin-bottom: 0;
        padding-bottom: 7px;
        border-top-left-radius: 20px;
        border-top-right-radius: 20px;
        overflow: hidden;
        bottom: 0
    }

    .flex-btn-wrapper {
        position: relative;
        max-width: 100%;
        margin-top: 30px;
        width: 100%
    }

    .flex-btn-wrapper::after {
        content: "\f178";
        font-family: "Font Awesome 6 Sharp";
        font-weight: 900;
        position: absolute;
        right: 0;
        top: 50%;
        transform: translateY(-50%);
        font-size: 1.25rem;
        color: #222;
        padding-bottom: 10px;
        z-index: 10;
        pointer-events: none;
        opacity: 0
    }

    #area-top .value-header::after {
        content: "";
        position: absolute;
        background: linear-gradient(0deg,#0000001f,transparent);
        pointer-events: none;
        z-index: 1;
        width: 100%;
        right: 0;
        display: block;
        height: 15px;
        bottom: 0
    }

    .area-header h1 {
        text-shadow: 0 0 40px #000
    }

    .area-img::after {
        background: 0 0!important
    }

    .area-header,.area-header .inner-content {
        padding-bottom: 0!important
    }

    #area-top {
        border-bottom-left-radius: 20px;
        border-bottom-right-radius: 20px;
        box-shadow: 0 4px 14px #0000004a;
        z-index: 2
    }

    .area-header .inner-content .flex-btns:after,.area-header .inner-content .flex-btns:before {
        display: none!important
    }

    .area-header .inner-content .flex-btns {
        display: flex;
        flex-direction: row!important;
        justify-content: flex-start;
        flex-wrap: nowrap!important;
        overflow-x: scroll;
        overflow-y: hidden;
        white-space: nowrap;
        -webkit-overflow-scrolling: touch;
        max-width: 100%;
        padding-bottom: 20px!important;
        margin-top: 0!important;
        padding-top: 0!important;
        border: none!important
    }
    .area-header .inner-content .flex-btns.about-page-links {
        flex-direction: column!important;
        padding-top: 30px!important;
    }
    .area-header .inner-content .flex-btns.about-page-links a {
        width: 100%!important;
        max-width: none!important;
    }
    .area-header .inner-content .flex-btns.about-page-links button {
        width: 100%;
        max-width: none!important;
    }
    .about-detail-hero__content {
        padding: 0!important;
        padding-top: 40px!important;
    }

    #area-top .inner-content {
        padding: var(--containerpaddingmobile)!important;
        align-items: end;
        justify-content: normal;
        overflow: hidden;
        border-bottom-left-radius: 20px;
        border-bottom-right-radius: 20px
    }
}

@media (min-width: 1000px) {
    .flex-btns.home {
        justify-content:center!important
    }
}

@media (max-width: 1500px) {
    .agent-section .inner-content {
        flex-direction:column-reverse;
        align-items: center;
        justify-content: center;
        grid-gap: 0
    }

    .agent-section .value-container:before {
        content: '';
        display: block;
        position: absolute;
        width: 100vw;
        height: 1px;
        background: var(--accentcolor);
        top: 0;
        left: 50%;
        transform: translateX(-50%)
    }

    .agent-section .listing-ctas {
        max-width: 600px;
        margin: 30px auto
    }

    .agent-section .social-links {
        justify-content: center!important
    }
}

@media (max-width: 1100px) {
    .map-info-container {
        flex-direction:column;
        grid-gap: 20px
    }

    .map-img {
        max-width: 100%!important;
        max-height: 220px!important;
        height: 100%!important;
        min-height: 220px;
        min-width: 100%
    }

    .neighborhoods .value-header {
        margin-bottom: -30px!important
    }
}

.value-container {
    width: 100%;
    position: relative;
    z-index: 2;
    background: #fff;
    padding: 30px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    flex: 1;
    border: 1px solid #e0e0e0;
    height: auto;
    box-shadow: 0 13px 8px #00000008
}

.area-header .inner-content {
    display: flex;
    max-height: fit-content;
    overflow: hidden;
    position: relative;
    height: 100%;
    align-items: center;
    max-width: none;
}

.area-header .inner-content .flex-btns {
    margin-top: 20px;
    flex-wrap: wrap;
    padding-bottom: 30px;
    padding-top: 30px;
    position: relative
}

.area-header .inner-content .flex-btns:before {
    content: '';
    display: inline-flex;
    width: 25%;
    position: absolute;
    height: 3px;
    background: #fff;
    top: 0
}

.area-header .inner-content .flex-btns:after {
    content: '';
    display: inline-flex;
    width: 100%;
    position: absolute;
    height: 1px;
    background: #ffffff5e;
    top: 0
}

.area-header .flex-btns a {
    width: fit-content;
    text-decoration: none!important
}

.area-header .inner-content .flex-btns a:first-child button {
    background: #fff!important;
    color: #000!important;
    text-decoration: none!important
}

.area-header .inner-content .flex-btns button {
    background: linear-gradient(0deg,#ffffff1f,transparent);
    white-space: nowrap;
    border: 1px solid #ffffff94;
    border-radius: 3px!important;
    font-size: min(3vw,15px);
    min-width: auto;
    color: #fff!important;
    padding: 10px 20px
}

#area-top .area-img::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg,#00000057,#00000000,transparent);
    z-index: 1
}

#area-top.area-header .value-header::before {
    content: "";
    position: absolute;
    top: -20%;
    left: -20px;
    width: 120%;
    height: 300%;
    background: rgb(0 0 0 / 54%);
    backdrop-filter: blur(30px);
    -webkit-backdrop-filter: blur(30px);
    z-index: -1;
    pointer-events: none;
    overflow: hidden;
    transform: rotate3d(1,1,1,346deg)
}

#carousel .area-img::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(0deg,#0000004d,#00000000,transparent)!important;
    z-index: 1
}

.pop-searches #carousel .area-img::after {
    background: #00000038!important
}

.pop-searches .area-label::before {
    background: 0 0!important
}

.agent-section .value-container {
    border: none;
    padding: 0;
    background: 0 0;
    box-shadow: none;
    width: 100%;
    max-width: none
}

.toggle-extra-btn,.value-container img {
    border-radius: 5px
}

.agent-section .value-container h2 {
    font-size: min(23vw,30px)!important;
    white-space: nowrap
}

.value-container h3 {
    font-size: min(5vw,25px)!important;
    margin: 0;
    font-weight: 600
}

#agent-cta .value-container h3 {
    font-size: min(7vw,45px)!important;
    font-family: var(--fontheader)!important;
    line-height: 1.2!important;
}

.value-header p a {
    font-weight: 600;
    color: #fff
}

#area-top .read-toggle {
    font-weight: 800;
    color: #fff;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: 10px;
    background: #ffffff30;
    padding: 4px 10px;
    border-radius: 20px;
    line-height: 1
}

.long-arrow:after {
    font-family: 'Font Awesome 6 Sharp';
    content: '\f0e7';
    font-weight: 800;
    margin-left: 10px;
    color: #11f
}

.toggle-extra-btn {
    font-size: min(5vw,17px);
    background: #e5e5e5!important;
    color: #000!important
}

.toggle-extra-btn::after {
    font-family: "Font Awesome 6 Sharp";
    font-weight: 200;
    margin-left: .4em;
    transition: transform .3s
}

.toggle-extra-btn.closed-listings::after {
    content: "\f078"
}

.toggle-extra-btn.opened-listings::after {
    content: "\f077"
}

.fa-circle-z:before {
    content: '\e130'!important;
    font-family: "Font Awesome 6 Pro";
    font-weight: 600!important
}

.slide-from-left,.slide-from-left-last {
    opacity: 0;
    transform: translateX(-40px);
    transition: opacity 1s,transform 1s
}

.slide-from-left.visible {
    opacity: 1;
    transform: translateX(0);
    transition-delay: 0s
}

.agent-section img {
    width: 100%;
    object-fit: contain;
    object-position: bottom
}

.slide-from-left-last.visible {
    opacity: 1;
    transform: translateX(0);
    transition-delay: 0.1s
}

.bottom-wrapper {
    width: 100%;
    display: flex;
    justify-content: end
}

#diamond-search .advanced-btn {
    position: relative;
    z-index: 0;
    border-right: 1px solid #ffffff61;
    border-bottom: 1px solid #ffffff61;
    border-left: 1px solid #ffffff61
}

#diamond-search .advanced-btn button {
    border-bottom-left-radius: 3px!important;
    border-bottom-right-radius: 3px!important;
    background: rgb(0 0 0)!important;
    color: #fff!important;
    margin: 0!important;
    z-index: 3;
    padding: 8px 30px!important;
    border-top: 1px solid #ffffff2b;
    position: relative
}

#diamond-search.whitebar .advanced-btn button {
    background: var(--maincolor)!important;
    border: 1px solid #ffffff1f!important;
    border-top: none!important;
    border-bottom: none!important
}

.area-header h1 {
    font-size: min(6vw,50px);
    color: #fff;
    z-index: 2;
    margin-bottom: 0!important;
    line-height: 1.1
}

.area-header h2 {
    color: #000;
    font-size: min(7vw,22px)!important;
    padding-bottom: 10px;
    margin-top: 0!important
}

.area-header p {
    color: #fff;
    z-index: 3;
    position: relative;
    font-weight: 600;
    font-size: min(3vw,14px)
}

.directory-item p {
    color: #fff!important;
    font-size: min(3vw,16px)!important
}

.area-list h3,.testimonial h3 {
    font-size: min(6vw,22px)!important
}

.area-header {
    background: var(--maincolor)
}

.area-header.explore-section {
    padding-top: 0!important;
    min-height: auto!important;
    background: url('https://u.realgeeks.media/grantf/brand/granite.jpg') center left/cover no-repeat #fff;
    padding-bottom: 0!important;
    overflow: hidden
}

.area-header.explore-section::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg,#fff,#ffffff6e);
    z-index: 1;
    pointer-events: none;
    overflow: hidden
}

.vg-neighborhoods {
    display: flex;
    width: 100%;
    grid-gap: 30px
}

.area-list ul {
    margin: 0;
    display: grid;
    grid-row-gap: 15px;
    grid-column-gap: 40px
}

.area-list li a {
    color: #00f;
    font-weight: 500;
    font-size: min(3.5vw,16px);
    line-height: 1
}

.area-list li {
    line-height: 1.2!important
}

.area-list li::marker {
    font-size: 0
}

.market-widgets .row:not(.hero-search-submit) {
    display: flex;
    flex-direction: column;
    padding: 0!important
}

.market-widgets .row .columns {
    padding: 0;
    float: none;
    width: 100%
}

#market-report .row {
    max-width: none
}

.market-widgets {
    max-width: 500px
}

.market-widgets .row .columns .search-container {
    width: 100%;
    padding: 20px!important;
    border: 1px solid #e0e0e0;
    border-radius: 5px
}

.market-widgets .search-column .search-section {
    padding: 0
}

.no-listings {
    background: #fff;
    border: 1px solid #e0e0e0;
    margin-top: 30px;
    padding: 30px
}

.no-listings a {
    font-weight: 500!important;
    color: #00f!important
}

.testimonial {
    background: #f9f9f9;
    padding: 50px 30px;
    position: relative
}

.testimonial h3 {
    font-weight: 300
}

.testimonial p {
    font-size: min(7vw,20px);
    font-style: italic;
    font-weight: 300
}

.testimonial p strong {
    font-weight: 400
}

.client-name strong {
    margin-top: 25px;
    font-family: var(--fontheader)!important;
    display: block;
    font-size: min(10vw,18px)
}

.testimonial::before {
    content: "\f10d";
    font-family: "Font Awesome 6 Sharp";
    font-weight: 900;
    font-size: min(5vw,39px);
    color: #dbdbdb;
    display: block;
    margin-bottom: .5rem
}

.explore-links {
    display: flex;
    grid-gap: 10px;
    margin-top: 10px;
    flex-wrap: wrap;
    justify-content: center
}

.explore-links a {
    color: #000;
    font-weight: 500;
    border-radius: 0;
    text-decoration-color: grey;
    font-size: min(3vw,15px)
}

.spotlight-grid {
    display: flex;
    gap: 2rem;
    margin: 20px auto 0;
    justify-content: center
}

.spotlight-box {
    background: #fff;
    box-shadow: 0 2px 14px 0 rgba(0,0,0,.07);
    flex: 1 1 0;
    display: flex;
    flex-direction: column;
    min-width: 260px
}

.spotlight-box img {
    width: 100%;
    height: 220px;
    object-fit: cover;
    display: block
}

.spotlight-info {
    padding: 2rem 1.3rem 1.8rem;
    text-align: center
}

.spotlight-info h3 {
    margin-bottom: .6rem
}

.spotlight-info p {
    color: #444;
    font-size: 1.05rem;
    line-height: 1.6;
    margin: 0
}

.info-flex {
    display: flex;
    gap: 2rem;
    width: 100%;
    justify-content: center
}

.info-box {
    background: #f9f9f9;
    flex: 1 1 0;
    padding: 3rem 2.5rem;
    min-width: 260px
}

.info-box h2 {
    font-size: min(10vw,44px)!important;
    font-weight: 400;
    margin-bottom: 2rem
}

.info-box p {
    line-height: 1.3
}

.info-box p b {
    font-weight: 600
}

@media (max-width: 1000px) {
    #area-top.area-header .value-header::before {
        border-top-left-radius:20px;
        border-top-right-radius: 20px;
        top: 0;
        left: 0;
        transform: none;
        width: 100%;
        height: 100%
    }

    .spotlight-grid {
        flex-direction: column;
        max-width: 600px;
        gap: 1.5rem
    }

    .spotlight-box img {
        height: 200px
    }

    .info-flex {
        flex-direction: column;
        gap: 1.5rem
    }

    .info-box {
        padding: 2.3rem 1.5rem
    }

    .info-box h2 {
        font-size: 2.2rem
    }

    .info-box p {
        font-size: 1.2rem
    }
}

.vg-main-areas section h2:not(#market-section h2) {
    font-size: min(6vw,35px)!important;
    margin-top: 0
}

.vg-main-areas section#about-text h2:first-of-type {
    color: #000;
    margin-bottom: 30px
}

.vg-main-areas section#about-text h2:not(h2:first-of-type) {
    color: #000;
    margin-bottom: 20px!important;
    display: block;
    font-family: var(--font)!important;
    font-size: min(6vw,21px)!important;
    margin-top: 30px;
    font-weight: 700;
    border-bottom: 1px solid;
    width: fit-content;
    padding-bottom: 20px
}

.horiz-feature {
    display: flex;
    margin-bottom: 2rem;
    box-shadow: 0 2px 14px 0 rgba(0,0,0,.06);
    overflow: hidden;
    align-items: stretch;
    background: #fff
}

.horiz-feature-img {
    flex: 0 0 410px;
    width: 35%;
    min-width: 180px;
    display: flex;
    align-items: stretch
}

.horiz-feature-img img {
    width: 100%;
    height: 100%;
    min-height: 350px;
    object-fit: cover;
    max-height: 350px;
    display: block
}

.horiz-feature-info {
    flex: 1 1 0;
    padding: 2.2rem 2rem 2.2rem 2.3rem;
    display: flex;
    flex-direction: column;
    justify-content: center
}

.horiz-feature-info h3 {
    margin: 0 0 1rem;
    font-size: 1.6rem;
    color: #444;
    font-weight: 600
}

.horiz-feature-info p {
    margin: 0;
    font-size: 1.1rem;
    color: #444;
    line-height: 1.6
}

@media (max-width: 900px) {
    .area-directory,.directory,.directory-blocks {
        grid-template-columns:repeat(1,1fr)
    }

    .review p {
        max-width: 300px
    }

    .horiz-feature {
        flex-direction: column;
        text-align: center
    }

    .horiz-feature-img,.horiz-feature-img img {
        width: 100%;
        max-width: 100%;
        min-width: 0;
        min-height: 120px
    }

    .horiz-feature-info {
        padding: 1.2rem 1.2rem 1.8rem
    }
}

.text-wrapper.preview-mode .text-full {
    max-height: 0;
    overflow: hidden;
    transition: max-height .3s
}

.text-wrapper.preview-mode .text-preview {
    display: block
}

.text-wrapper:not(.preview-mode) .text-full {
    max-height: 9999px;
    overflow: visible
}

.generated-blogs {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    grid-gap: 30px;
    margin-top: 30px;
    padding-bottom: 30px
}

.generated-blogs article {
    display: flex;
    flex-direction: column-reverse;
    justify-content: space-between;
    background: #e0e0e0;
    height: 100%
}

.generated-blogs .post {
    box-shadow: 0 8px 20px #0000000f;
    border-radius: 3px;
    overflow: hidden;
    border: 1px solid #00000012;
    transition: .3s
}

.generated-blogs .post:hover {
    border-color: #00f;
    transform: scale(.98)
}

.generated-blogs .post-info {
    padding: 20px;
    height: auto;
    display: flex;
    flex-direction: column-reverse;
    justify-content: space-between;
    background: #fff;
    flex: 1
}

.generated-blogs .date {
    color: #fff;
    border-top: 1px solid #e0e0e0;
    margin-top: 15px;
    font-size: 11px;
    background: #5a5a5a;
    width: fit-content;
    padding: 4px 6px;
    font-weight: 600;
    line-height: 1;
    border-radius: 2px
}

.generated-blogs h3 {
    margin: 0;
    font-size: min(4vw,21px)!important;
    font-family: var(--font)!important;
    font-weight: 700;
    color: #5a5a5a
}

.generated-blogs .blog-image {
    position: relative;
    width: 100%;
    aspect-ratio: 16/9;
    overflow: hidden;
    background-color: #eee;
    height: auto
}

.generated-blogs .blog-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    border-bottom: 1px solid #00000005
}

.generated-blogs .all-posts button {
    margin: 0!important;
    background: #fff;
    color: #000;
    border: 1px solid #e0e0e0
}

.generated-blogs .all-posts {
    grid-column: 1/-1;
    display: flex;
    align-items: center;
    justify-content: end;
    width: fit-content
}

.generated-blogs-empty {
    grid-column: 1/-1;
    min-height: 220px;
    background: #f4f4f4;
    color: #555;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 40px 20px;
    text-align: center;
    font-weight: 700;
}

@media (max-width: 800px) {
    .value-container {
        flex:1 1 100%;
        padding: 15px
    }

    .agent-section img {
        max-width: 450px!important
    }

    .agent-section .value-container {
        padding-top: 40px
    }

    .agent-section .social-links {
        justify-content: center!important
    }

    #value-section .inner-content {
        grid-gap: 25px
    }

    .value-header {
        text-align: left
    }

    .vg-neighborhoods {
        flex-direction: column
    }

    .generated-blogs {
        grid-template-columns: repeat(2,1fr)
    }
}

@media (max-width: 500px) {
    .directory,.directory-blocks,.generated-blogs {
        grid-template-columns:repeat(1,1fr)
    }

    .directory-item {
        min-height: 200px
    }
}

.vg-custom-blog {
    display: flex;
    flex-direction: column;
    gap: 20px
}

.vg-custom-blog .blog-hero img {
    width: 100%;
    aspect-ratio: 16/9;
    object-fit: cover
}

.vg-custom-blog .blog-hero .blog-hero-intro>* {
    color: #737373!important;
    font-weight: 500
}

.vg-custom-blog .blog-hero .blog-hero-intro {
    padding: 30px 20px
}

.vg-custom-blog .blog-hero .blog-hero-intro>p a {
    color: #000;
    text-decoration: underline
}

.blog-chapter.agent-cta button:hover,.vg-custom-blog .blog-hero .blog-hero-intro>p a:hover {
    opacity: .7
}

.vg-custom-blog .blog-hero {
    padding-bottom: 20px;
    background: #f8f8f8;
    box-shadow: 0 20px 12px #0000001c;
    margin-bottom: 50px
}

.blog-chapter {
    border-bottom: 1px solid;
    padding-bottom: 40px;
    display: flex;
    flex-direction: row-reverse;
    gap: 50px;
    width: 100%;
    justify-content: flex-end
}

.blog-chapter a {
    color: #00f;
    font-weight: 600
}

.blog-chapter.agent-cta {
    background: #000;
    padding: 0!important;
    border-radius: 0!important;
    overflow: hidden
}

.blog-chapter.agent-cta a:first-child button {
    background: #00f!important;
    color: #fff!important
}

.blog-chapter.agent-cta button {
    background: #fff!important;
    color: #000!important;
    font-weight: 700
}

.blog-chapter img {
    width: 400px;
    max-width: 400px
}

.blog-chapter-img {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-end
}

.agent-cta .blog-chapter-img {
    align-items: baseline
}

.agent-cta .blog-chapter-text {
    padding: 30px
}

.blog-logo {
    border-radius: 0;
    max-width: 188px!important;
    margin-bottom: 30px;
    width: 100%;
    box-shadow: none;
    border: none
}

.blog-chapter-text>p {
    word-wrap: break-word
}

.vg-custom-blog .blog-chapter.conclusion {
    border: none;
    padding: 30px;
    background: #f4f4f4;
    margin-bottom: -20px;
    border-radius: 20px 20px 0 0
}

.agent-cta .blog-chapter-img img {
    border-bottom-left-radius: 20px
}

@media (max-width: 1500px) {
    .vg-custom-blog .blog-chapter.agent-cta {
        flex-direction:column
    }

    .agent-cta .blog-chapter-img img {
        max-width: none!important;
        width: 100%;
        border-radius: 0
    }
}

@media (min-width: 1200px) and (max-width:1600px) {
    .vg-custom-blog .blog-chapter {
        flex-direction:column
    }

    .blog-chapter-img img {
        width: 100%;
        max-width: none
    }
}

@media (max-width: 950px) {
    #ab-section .section-info,.vg-custom-blog .blog-chapter {
        flex-direction:column
    }

    #ab-section .section-info img {
        order: 1
    }

    #ab-section .section-info div {
        order: 2
    }

    .ab-mob {
        margin-top: 0!important
    }

    .map-flex {
        flex-direction: column;
        padding-left: 0;
        padding-right: 0
    }

    .map-flex section {
        width: 100%;
        min-height: 50vh
    }

    .map-flex #map-section.inner-content {
        padding: 0 50px 75px
    }

    .map-flex #map-section .flex-2-col {
        grid-gap: 50px
    }

    .map-flex .map-container {
        border-left: none;
        border-right: none;
        border-bottom: none;
        overflow: hidden;
        display: flex;
        flex-direction: column;
        align-items: center
    }

    .map-flex #map-section .section-info {
        padding: 0 30px
    }

    .blog-chapter-img img {
        width: 100%;
        max-width: none
    }
}

@media (max-width: 600px) {
    .section-cta-btn,.section-info .vg-sidebar {
        flex-direction:column
    }

    .section-info .vg-sidebar .section {
        flex: 1
    }

    .section-cta-btn a,.section-cta-btn button,section.content-block button:not(.listing-slick-btns button) {
        width: 100%!important;
        display: block;
        min-width: auto
    }

    .home-market #vg-market-report .vg-market-container {
        flex-direction: row
    }

    .home-market #vg-market-report .vg-market-container div {
        flex: 1 40%
    }

    .listing-ctas {
        flex-direction: column;
        align-items: baseline
    }

    .agent-cta .flex-btns a,.agent-cta .flex-btns button {
        width: 100%
    }
}

.agent-cta .flex-btns {
    margin-top: 30px
}

.realtor-page #grid-listings-all {
    border-top: 1px solid;
    padding-top: 30px;
    margin-top: 30px
}

@media(max-width: 1000px) {
    .about-area {
        visibility:hidden;
        opacity: 0;
        transition: opacity 2s
    }

    .about-area.visible {
        visibility: visible;
        opacity: 1
    }
}

#area-top .about-area p strong {
    color: #fff;
    font-weight: 700!important
}

#diamond-mls .address_search_inside,#diamond-mls .twitter-typeahead,#diamond-mls form input {
    width: 100%;
    height: 100%
}

/* Building navigation generated from condo sidebar links */
.building-nav-item, .about-nav-menu {
    position: relative;
}

#lux-navbar .navigation, #lux-navbar .navigation ul {
    overflow: visible;
}

.building-nav-trigger::after, .about-nav-trigger::after {
    content: "\f078";
    font-family: var(--fontawesome);
    font-weight: 300;
    font-size: 10px;
}

.building-nav-item::after, .about-nav-menu::after {
    content: "";
    position: absolute;
    left: -18px;
    right: -18px;
    top: 100%;
    height: 18px;
    display: block;
}

.building-dropdown, .about-dropdown {
    position: absolute;
    top: calc(100% + 8px);
    left: 50%;
    transform: translate(-50%, 8px);
    width: min(760px, calc(100vw - 40px));
    max-height: min(70vh, 520px);
    overflow: auto;
    display: grid;
    grid-template-columns: repeat(2, minmax(190px, 1fr));
    gap: 0;
    padding: 18px;
    background: #fff;
    border: 1px solid #dedede;
    box-shadow: 0 18px 45px rgba(0, 0, 0, 0.18);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    z-index: 9999;
    transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
}

.building-dropdown::before, .about-dropdown::before {
    content: "";
    position: absolute;
    top: -8px;
    left: 50%;
    width: 16px;
    height: 16px;
    background: #fff;
    border-left: 1px solid #dedede;
    border-top: 1px solid #dedede;
    transform: translateX(-50%) rotate(45deg);
}

.building-nav-item:hover .building-dropdown, .building-nav-item:focus-within .building-dropdown, .about-nav-menu:hover .about-dropdown, .about-nav-menu:focus-within .about-dropdown {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translate(-50%, 0);
}

.building-dropdown__link, .about-dropdown__link {
    color: #111;
    display: block;
    padding: 10px 12px;
    font-size: 13px;
    line-height: 1.25;
    font-weight: 600;
    text-decoration: none;
    border-bottom: 1px solid #eeeeee;
}

.building-dropdown__link:hover, .about-dropdown__link:hover {
    background: #f6f6f6;
    color: #000!important;
}

.about-dropdown {
    width: min(390px, calc(100vw - 40px));
    grid-template-columns: 1fr;
}

.building-sidemenu-toggle {
    appearance: none;
    border: 0;
    padding: 0!important;
    width: 100%!important;
    background: transparent;
    color: inherit;
    display: flex!important;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    font: inherit;
    margin: 0;
    text-align: left;
}

.building-sidemenu-chevron::before {
    content: "\f078";
    font-family: var(--fontawesome);
    font-weight: 300;
    display: inline-block;
    transition: transform .18s ease;
}

.building-sidemenu-item.is-open .building-sidemenu-chevron::before {
    transform: rotate(180deg);
}

.building-sidemenu-panel {
    display: none;
    list-style: none;
    margin: 0;
    margin-top: -10px!important;
}

.building-sidemenu-item.is-open .building-sidemenu-panel {
    display: block;
}

.building-sidemenu-panel a {
    display: block;
    padding: 8px 0;
    color: #ffffff;
    font-size: 14px;
    line-height: 1.25;
    text-decoration: none;
}

.building-sidemenu-panel a:hover {
    text-decoration: underline;
}

@media (max-width: 1100px) {
    .building-nav-item, .about-nav-menu {
        display: none;
    }
}

@media (max-width: 700px) {
    .building-dropdown, .about-dropdown {
        grid-template-columns: 1fr;
    }
}

/* Building page photo + jump link layout */
#link-nav.building-photo-links .inner-content {
    display: grid;
    grid-template-columns: minmax(280px, .9fr) minmax(300px, 1fr);
    gap: clamp(24px, 4vw, 56px);
    align-items: center;
}

#link-nav.building-photo-links .building-photo-links__image,
#link-nav.building-photo-links .building-photo-links__nav {
    min-width: 0;
    height: 100%;
}

#link-nav.building-photo-links .building-photo-links__nav  {
    border: solid 1px #dfdfdf;
    padding: 20px;
    background: #fbfbfb;
}

#link-nav.building-photo-links .building-photo-links__image img {
    display: block;
    width: 100%;
    height: 100%;
    max-height: 400px;
    object-fit: cover;
    object-position: center;
}

#link-nav.building-photo-links .building-photo-links__nav h2 {
    margin-top: 0;
    text-transform: uppercase;
    font-size: min(6vw,19px)!important;
    margin-bottom: 10px;
}

#link-nav.building-photo-links .building-photo-links__nav h2 strong {
    font-weight: 700;
    letter-spacing: 2px;
}

#link-nav.building-photo-links .building-photo-links__nav ul {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr));
    gap: 8px 10px;
    margin: 0;
    padding: 0;
    list-style: none;
}

#link-nav.building-photo-links .building-photo-links__nav li {
    margin: 0!important;
    line-height: 1;
    list-style: none;
}

#link-nav.building-photo-links .building-photo-links__nav li::marker {
    content: "";
}

#link-nav.building-photo-links .building-photo-links__nav a {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 7px 42px 7px 14px;
    color: #111;
    background: #fff;
    border: 1px solid #dfdfdf;
    text-decoration: 6px;
    font-weight: 500;
    line-height: 1.25;
    transition: background-color .18s ease, border-color .18s ease, color .18s ease, transform .18s ease;
}

#link-nav.building-photo-links .building-photo-links__nav a::after {
    content: "\f178";
    position: absolute;
    right: 16px;
    top: 50%;
    font-family: var(--fontawesome);
    font-weight: 300;
    line-height: 1;
    transform: translateY(-50%);
    transition: transform .18s ease;
}

#link-nav.building-photo-links .building-photo-links__nav a:hover,
#link-nav.building-photo-links .building-photo-links__nav a:focus {
    color: #fff;
    background: #111;
    border-color: #111;
    transform: translateX(3px);
}

#link-nav.building-photo-links .building-photo-links__nav a:hover::after,
#link-nav.building-photo-links .building-photo-links__nav a:focus::after {
    transform: translate(4px, -50%);
}

@media (max-width: 900px) {
    #link-nav.building-photo-links .inner-content {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    #link-nav.building-photo-links .building-photo-links__image img {
        height: auto;
        aspect-ratio: 4 / 3;
    }

    #link-nav.building-photo-links .building-photo-links__nav a {
        min-height: 42px;
        padding: 10px 42px 10px 14px;
        font-size: 15px;
    }
}

/* About page hub + detail accordions */
.about-detail-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
    width: 100%;
    margin: 42px auto 0;
}

.about-detail-card {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 28px;
    min-height: 240px;
    padding: clamp(28px, 4vw, 48px);
    color: #fff;
    text-decoration: none;
    background: #000;
    border: 1px solid #000;
    border-radius: 6px;
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.about-detail-card::after {
    content: "\f178";
    font-family: var(--fontawesome);
    font-weight: 300;
    color: #fff;
    line-height: 1;
    font-size: 24px;
}

.about-detail-card span {
    display: block;
    font-size: min(8vw, 34px);
    line-height: 1.05;
    font-weight: 800;
}

.about-detail-card small {
    display: block;
    color: #ffffffc9;
    font-size: min(4.5vw, 17px);
    line-height: 1.45;
}

.about-detail-card:hover {
    color: #fff;
    border-color: #111;
    box-shadow: 0 18px 40px rgba(0, 0, 0, .18);
    transform: translateY(-2px);
}

.about-hero-inner {
    height: auto;
    min-height: auto;
    padding: 0!important;
    border-radius: 0;
}

.about-hero-content {
    width: 100%;
    max-width: 1500px!important;
    margin: auto;
    min-height: 25vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 30px;
}

.about-detail-hero__content {
    position: relative;
    z-index: 2;
    padding-top: 50px;
    padding-bottom: 50px;
}

.about-detail-hero__content h1 {
    color: #fff;
    margin-bottom: 18px;
}

.about-detail-hero__content p {
    max-width: 1000px;
}

.area-header .inner-content .about-page-links a:first-child button {
    background: linear-gradient(0deg,#ffffff1f,transparent)!important;
    color: #fff!important;
}

.area-header .inner-content .about-page-links a.is-active button, .area-header .inner-content .about-page-links a.is-active:first-child button {
    background: #fff!important;
    color: #000!important;
    border-color: #fff!important;
}

.area-header .inner-content .about-page-links button {
    white-space: normal;
}

.about-detail-kicker {
    margin-bottom: 12px;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-size: 12px!important;
    font-weight: 800!important;
}

.about-detail-content .inner-content {
    max-width: 1080px;
}

.about-detail-text-list {
    display: grid;
    gap: 12px;
}

.about-detail-text-list p {
    margin-bottom: 0;
}

.about-accordion {
    display: grid;
    gap: 12px;
    margin-top: 30px;
}

.about-accordion details {
    overflow: hidden;
    background: #fff;
    border: 1px solid #dedede;
    border-radius: 6px;
    box-shadow: 0 10px 24px rgba(0, 0, 0, .05);
}

.about-accordion summary {
    position: relative;
    display: block;
    padding: 18px 56px 18px 20px;
    color: #111;
    cursor: pointer;
    list-style: none;
    font-weight: 800;
    line-height: 1.25;
}

.about-accordion summary::-webkit-details-marker {
    display: none;
}

.about-accordion summary::after {
    content: "\f078";
    position: absolute;
    top: 50%;
    right: 20px;
    font-family: var(--fontawesome);
    font-weight: 300;
    line-height: 1;
    transform: translateY(-50%);
    transition: transform .18s ease;
}

.about-accordion details[open] summary {
    border-bottom: 1px solid #eeeeee;
}

.about-accordion details[open] summary::after {
    transform: translateY(-50%) rotate(180deg);
}

.about-accordion details > div {
    padding: 18px 20px 22px;
}

.about-accordion details > div > :last-child {
    margin-bottom: 0;
}

@media (max-width: 700px) {
    .about-detail-grid {
        grid-template-columns: 1fr;
    }

    .about-detail-card {
        min-height: 0;
    }
}
