#normal-footer .terms-privacy,#normal-footer h3,#sticky-footer .terms-privacy,#sticky-footer h3,.alternative,.basic-theme,.clearfix:after,.clearfix:before,.footer-top-nav,.fp-header,.main-footer .footer-section:last-child,.mobile-address-search,.rg-footer,.rightColumn {
    display: none!important
}

.body-container {
    width: 100%!important
}

#dev-mode {
    display: none
}

body.vg-no-hero .miranda-wrapper {
    padding-top: 72px
}

@media (max-width: 768px) {
    body.vg-no-hero .miranda-wrapper {
        padding-top: 68px;
    }
}

body:not(:has(.vg-home-page)) div.hoz-inside {
    max-width: 750px!important
}

#proplist_disclaimer {
    padding: 0;
    display: none!important
}

#proplist_disclaimer img {
    display: none
}

.top-nav {
    width: 0!important;
    height: 0!important;
    overflow: visible!important;
    padding: 0!important;
    margin: 0!important;
    border: none!important;
    background: 0 0!important
}

nav.top-nav .nav-container>:not(.user-popup),nav.top-nav .user-info {
    display: none!important
}

nav.top-nav .user-popup .inner .fp-count {
    background-color: #000
}

nav.top-nav .user-popup .inner iframe.facebook-login-iframe {
    margin: 20px 0 0;
    border-radius: 20px
}

nav.top-nav .user-popup .inner .info-blob {
    margin-top: 0;
    color: #fff!important;
    font-weight: 700;
    background-color: #f1f1f1!important;
    border: none;
    border-radius: 4px
}

nav.top-nav .user-popup .inner h2 {
    color: #000;
    font-family: var(--font)!important;
    font-weight: 500!important;
    font-size: clamp(30px, 5vw, 41px)!important;
    line-height: 1!important;
    letter-spacing: -1px;
    text-transform: none;
    text-align: left
}

nav.top-nav .nav-container .user-popup.show {
    display: flex!important;
    width: 100%!important;
    right: 0!important;
    align-items: center;
    justify-content: center;
    top: 0!important;
    background-color: rgb(0 0 0 / 64%);
    position: fixed!important;
    backdrop-filter: blur(2px);
    -webkit-backdrop-filter: blur(2px);
    height: 100%!important;
    flex-direction: column;
    padding: 20px;
    left: 0;
    z-index: 9999
}

nav.top-nav .user-popup .inner .info-blob a {
    padding: 10px!important;
    width: 100%;
    height: 100%;
    color: #000!important;
    display: block
}

.js-user-signed-in,nav.top-nav .user-popup .inner {
    background-color: #fff!important;
    position: relative;
    margin: 0;
    padding: 20px;
    border-radius: 0!important;
    max-width: 700px;
    height: auto!important;
    width: 100%
}

nav.top-nav .user-popup .inner .popup-body,nav.top-nav .user-popup .inner form {
    background: 0 0!important;
    border-top: none!important
}

nav.top-nav .user-popup .inner .button-row h2 {
    float: none;
    color: #000!important;
    text-align: left;
    margin-bottom: 20px;
    text-overflow: ellipsis
}

nav.top-nav .user-popup .inner .button-row button:hover {
    background: #dedede!important
}

nav.top-nav .user-popup .inner .popup-body label,nav.top-nav .user-popup .inner form label {
    color: #000;
    font-size: 16px;
    font-weight: 500;
    padding-bottom: 2px
}

nav.top-nav .user-popup .inner input:focus,nav.top-nav .user-popup .inner input:hover {
    border-color: #000!important;
    box-shadow: none!important
}

nav.top-nav .user-popup .inner .popup-body button,nav.top-nav .user-popup .inner form button {
    background: #000!important;
    border: none;
    color: #fff;
    min-height: 46px;
    padding: 14px 24px;
    box-sizing: border-box;
    font-family: var(--fontheader)!important;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.2;
    border-radius: 0!important;
    letter-spacing: 2px;
    text-transform: uppercase;
    transition: none;
    margin-top: 0;
    margin-bottom: 0
}

nav.top-nav .user-popup .inner .popup-footer,nav.top-nav .user-popup .inner .popup-title {
    padding: 0;
    margin-top: 10px
}

nav.top-nav .user-popup .inner .ss-count {
    background-color: #000
}

nav.top-nav .user-popup .inner .form-row a {
    display: block;
    margin-top: 10px;
    font-size: 15px
}

.galleryOverlay,.galleryPopup {
    z-index: 500
}

#overlay-sidemenu-black,.inner-menu,.redesign.sidemenu__wrap,.sidemenu-area-card,.sidemenu-grid,.sidemenu-quicklinks-card {
    display: none!important
}

.body-container .property,.sidebar,.vg-sr-only {
    position: absolute!important;
    width: 1px!important;
    height: 1px!important;
    padding: 0!important;
    margin: -1px!important;
    overflow: hidden!important;
    clip: rect(0,0,0,0)!important;
    white-space: nowrap!important;
    border: 0!important
}

.miranda-lb h2 {
    color: #000;
    font-family: var(--font)!important;
    font-weight: 500!important;
    font-size: clamp(25px, 5vw, 27px)!important;
    line-height: 1!important;
    letter-spacing: -1px;
    text-transform: none;
    width: 100%;
    text-align: left!important;
    padding: 0;
}

.miranda-lb {
    padding: 35px 25px 15px!important;
    margin-bottom: 0!important;
    border-radius: 0;
    height: auto;
    min-height: auto;
    background: #fff
}

.miranda-lb h2.show-for-medium-up {
    color: #000;
    display: block!important
}

.miranda-lb .lb-content {
    padding: 0;
    background: 0 0;
    border: none;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%
}

.rg-modal .rag-modal {
    display: flex;
    align-items: baseline;
    justify-content: center;
    overflow: auto
}

.miranda-lb .lb-content p {
    margin-bottom: 20px!important;
    color: #595959;
    border-bottom: none;
    padding: 0;
    margin-top: 0!important;
    width: 100%;
    font-size: min(5vw, 15px);
    text-align: left
}

.miranda-lb .columns,.miranda-lb .firstName,.miranda-lb .lastName {
    float: none;
    padding: 0!important;
    width: 100%
}

.required span {
    color: #000!important;
    margin-right: 5px
}

.hitarea:not(.rg-modal-contact .rag-modal-close,.rg-modal-savesearch .rag-modal-close) {
    color: #000;
    text-decoration: underline
}

.miranda-lb input:not(.miranda-lb input[type=submit],input[type=checkbox]),.miranda-lb select,.miranda-lb textarea,.user-popup input {
    display: block;
    width: 100%;
    padding: 5px 9px!important;
    font-size: 16px!important;
    font-weight: 600;
    height: 50px!important;
    border: 1px solid #dedede!important;
    transition: .1s;
    box-shadow: 0 1px 6px #e0e0e0!important;
    background: #fff!important;
    border-radius: 0!important
}

.miranda-lb textarea#address {
    min-height: auto!important;
    height: 50px
}

.miranda-lb textarea {
    min-height: 150px
}

.lightbox input:focus,.lightbox input:hover,.miranda-lb input:not(.miranda-lb input[type=submit]):focus,.miranda-lb input:not(.miranda-lb input[type=submit]):hover,.miranda-lb select:focus,.miranda-lb select:hover,.miranda-lb textarea:focus,.miranda-lb textarea:hover,.user-popup input:focus,.user-popup input:hover {
    border: 2px solid #000!important
}

.miranda-lb .lightbox label {
    padding: 0!important;
    width: 100%!important;
    margin: 0!important
}

.miranda-lb .lightbox {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center
}

.miranda-lb .lightbox form,.miranda-lb form {
    margin-top: 20px;
    display: flex;
    flex-direction: column;
    grid-gap: 10px;
    width: 100%
}

.miranda-lb .contact input[type=submit],.miranda-lb .lb-content .signup-box input[type=submit],.miranda-lb input[type=submit] {
    background: #000!important;
    border: none!important;
    width: 100%!important;
    min-height: 46px!important;
    height: auto!important;
    padding: 14px 24px!important;
    box-sizing: border-box!important;
    font-family: var(--fontheader)!important;
    font-size: 13px!important;
    font-weight: 500;
    letter-spacing: 2px;
    line-height: 1.2;
    text-transform: uppercase;
    border-radius: 0!important;
    color: #fff!important;
    transform: none!important;
    margin: 0!important
}

.miranda-lb input[type=submit]:hover {
    opacity: .7!important
}

.rag-modal-backdrop {
    background-color: rgb(0 0 0 / 59%)!important;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px)
}

.rg-modal .rag-modal-window {
    width: 100%!important;
    max-width: 500px!important;
    max-height: max-content;
    margin-bottom: 50px!important;
    margin: 0;
    border-radius: 0!important;
    background: #fff;
    overflow: visible!important;
    z-index: 2099!important;
    box-shadow: 0 10px 20px rgb(0 0 0 / 30%);
    border: none
}

.rg-modal-contact .rag-modal-close,.rg-modal-reset .rag-modal-close,.rg-modal-savesearch .rag-modal-close,.rg-modal-signin .rag-modal-close,.rg-modal-signup .rag-modal-close {
    background: 0 0;
    border-radius: 8px;
    padding: 3px;
    display: flex;
    align-items: center;
    justify-content: center;
    top: 2px;
    right: 2px;
    color: #000!important
}

.icon-x:before,.rg-modal-contact .rag-modal-close:before,.rg-modal-reset .rag-modal-close:before,.rg-modal-savesearch .rag-modal-close:before,.rg-modal-signin .rag-modal-close:before,.rg-modal-signup .rag-modal-close:before {
    color: #000!important;
    font-size: min(7vw, 29px);
    font-weight: 200;
    line-height: 1;
    font-family: var(--fontawesome);
    position: relative
}

@media only screen and (max-width: 36em) {
    .rag-modal {
        padding:20px!important;
        position: fixed!important
    }

    .miranda-lb .firstName {
        padding-right: 5px
    }

    .miranda-lb .show-for-small-only {
        display: block!important
    }

    .miranda-lb {
        width: 100%!important;
        left: 0!important;
        right: 0!important;
        background: #fff;
        top: 20px;
        margin: auto!important;
        padding: 40px 25px 25px!important
    }
}

.body-content .sidebar-true {
    width: 100%;
    padding: 0!important
}

.body-content {
    max-width: none
}

.terms.body-content {
    padding: 50px!important
}

.blog .body-container {
    max-width: 1000px;
    float: none;
    margin: auto
}

button {
    margin-bottom: 0
}

:root {
    --logo: url(https://u.realgeeks.media/hgroupms/brand/logo.png);
    --clearnavlogo: url(https://u.realgeeks.media/hgroupms/brand/logo.png);
    --fontheader: "pacaembu", sans-serif;
    --fontbody: "pacaembu", sans-serif;
    --font: "pacaembu", sans-serif;
    --maincolor: #111111;
    --accentcolor: #0a0a0a;
    --red: #ce2424;
    --creambg: #f1f1f1;
    --pagebg: #ffffff;
    --mutedtext: #555555;
    --light-muted: #888888;
    --hairline: #eeeeee;
    --hairline-dark: #dddddd;
    --fontawesome: "Font Awesome 7 Pro"!important;
    --heroctabtnbg: var(--maincolor);
    --navbackground: #ffffff;
    --sidemenubackground: #ffffff;
    --sidemenuctabuttoncolor: var(--maincolor);
    --footerbgcolor: #0a0a0a;
    --footerinputbg: #ffffff;
    --footerunderlinecolor: rgba(255,255,255,0.2);
    --footerbtn: #ffffff;
    --footerbtntext: #111111;
    --navuserinfoborder: solid 1px rgba(0,0,0,0.15);
    --fullwidthpadding: 0 56px;
    --containerpadding: 0 40px;
    --containerpaddingmobile: 0 20px;
    --li-height: 2em;
    --vg-nav-height: 92px;
    --gs-filter: grayscale(100%) contrast(1.05)
}

@font-face {
    font-family: "Compass Serif Fallback";
    src: local("Cambria"),local("Georgia"),local("Times New Roman"),local("serif");
    font-style: normal;
    font-weight: 400;
    size-adjust:96%;ascent-override:90%;descent-override:30%;line-gap-override:0%}

@font-face {
    font-family: "Compass Serif Fallback";
    src: local("Cambria Italic"),local("Georgia Italic"),local("Times New Roman Italic"),local("serif");
    font-style: italic;
    font-weight: 400;
    size-adjust:96%;ascent-override:90%;descent-override:30%;line-gap-override:0%}

@font-face {
    font-family: "Compass Sans Fallback";
    src: local("Helvetica Neue"),local("Arial"),local("sans-serif");
    font-style: normal;
    font-weight: 100 900;
    size-adjust:109%;ascent-override:92%;descent-override:22%;line-gap-override:10%}

@font-face {
    font-family: "Compass Sans Fallback";
    src: local("Helvetica Neue Italic"),local("Arial Italic"),local("sans-serif");
    font-style: italic;
    font-weight: 100 900;
    size-adjust:109%;ascent-override:92%;descent-override:22%;line-gap-override:10%}

body,html {
    font-family: var(--fontbody);
    color: var(--maincolor);
    background: var(--pagebg);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

html {
    scroll-padding-top: var(--vg-nav-height);
    scroll-behavior: smooth
}

.vg-element h1,.vg-element h2,.vg-element h3,.vg-element h4 {
    font-family: var(--fontheader);
    font-weight: 400;
    color: var(--maincolor)
}

#global-sidemenu,#hamburger-toggle,#lux-navbar,#luxnavinner,#overlay-sidemenu,#overlay-sidemenu-black,#sidemenu,#sticky-nav,.hamburger,.header-wrap,.header:not(.galleryPopup .header),.header__container,.logo__wrap,.lux-sticky-nav,.luxnavinner,.main-menu,.mobile-menu,.nav-dropdown,.navbar-collapse,.navigation,.sidebarnavlinks,.sidemenu,.sidemenu-overlay,.sidenav,.top-nav-placeholder,body>nav:not(.vg-topnav):not(.top-nav),nav#lux-navbar {
    display: none!important;
    visibility: hidden!important;
    height: 0!important;
    width: 0!important;
    overflow: hidden!important;
    pointer-events: none!important
}

.body-container .property {
    position: absolute!important;
    width: 1px!important;
    height: 1px!important;
    overflow: hidden!important;
    clip: rect(0,0,0,0)!important
}

body #main,body .body-container,body .body-content,body main {
    max-width: none!important;
    width: 100%!important;
    padding: 0!important;
    margin: 0!important
}

.fullwidth,.vg-area-page>section,.vg-element>section,.vg-home-page>section,.vg-inner-page>section,.vg-subpage>section,.vg-visit-page>section,body section.fullwidth {
    position: relative;
    width: 100vw;
    max-width: 100vw;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
    box-sizing: border-box
}

.vg-element {
    width: 100%;
    max-width: none
}

.vg-element .inner-content {
    padding: 0 56px;
    max-width: 2000px;
    margin: 0 auto;
    width: 100%
}

body.vg-has-clear-nav {
    padding-top: 0!important
}

.vg-section-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 40px;
    flex-wrap: wrap;
    padding: 0;
    margin-bottom: 40px
}

.vg-section-title {
    margin: 0;
    font-family: var(--font)!important;
    font-weight: 500!important;
    font-size: clamp(30px, 5vw, 41px)!important;
    line-height: 1!important;
    letter-spacing: -1px;
    color: var(--maincolor);
    text-transform: none;
}

.vg-section-title em {
    font-style: normal;
    color: var(--red);
}

.vg-eyebrow {
    margin: 0 0 5px;
    font-family: var(--fontbody);
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--maincolor)
}

.vg-link-underline:not(.vg-agent-cta-section .vg-team-text .vg-link-underline) {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--maincolor);
    font-family: var(--fontbody);
    font-size: 11px;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--maincolor);
    text-decoration: none;
    width: fit-content;
    transition: gap .25s
}

.vg-agent-cta-section .vg-team-text .vg-link-underline {
    color: #ce2424;
    font-weight: 500;
    text-decoration: underline
}

.vg-agent-cta-section .vg-team-text .vg-link-underline:hover {
    color: #111
}

.vg-link-underline:hover {
    gap: 20px
}

.vg-link-underline.is-light {
    color: #fff;
    border-color: #fff
}

.vg-link-underline .arrow {
    font-size: 16px;
    line-height: 1
}

p {
    font-family: var(--font)!important
}

.vg-topnav {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 100;
    background: 0 0;
    border-bottom: 1px solid transparent;
    transition: background-color .18s,border-color .18s,color .18s;
    will-change: background-color,border-color
}

.vg-topnav-inner {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    padding: 25px 56px;
    gap: 20px;
    transition: padding .28s cubic-bezier(.22, 1, .36, 1)
}

.vg-topnav--light .vg-topnav-inner,.vg-topnav--scrolled .vg-topnav-inner {
    padding-top: 16px;
    padding-bottom: 16px
}

.vg-topnav-inner--search {
    padding: 16px 30px
}

.vg-topnav.vg-topnav--scrolled {
    background: #fff;
    border-bottom: 1px solid var(--hairline)
}

body:has(.betteridx) nav:not(.vg-topnav):not(.top-nav) {
    padding: 16px 23px!important
}

.vg-topnav--clear {
    color: #fff
}

.vg-topnav--clear .vg-topnav-btn {
    color: #fff;
    border-color: rgba(255,255,255,.4)
}

.vg-topnav--clear .vg-hamburger span {
    background: white;
}

.vg-topnav--light .vg-topnav-btn,.vg-topnav--scrolled .vg-topnav-btn {
    color: #111;
    border-color: rgba(17,17,17,.25)
}

.vg-nav-menu-btn:hover {
    transform: scale(.8);
    gap: 2px!;
}

.vg-topnav-logo {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 204px;
    height: 42px;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    line-height: 0
}

.vg-topnav-logo img {
    display: block;
    height: 42px;
    width: auto;
    margin: 0 auto;
    filter: none;
    transform: scale(1);
    transform-origin: center;
    transition: transform .28s cubic-bezier(.22, 1, .36, 1),filter .18s;
    will-change: transform
}

.vg-topnav-logo-img--white {
    display: none!important
}

.vg-topnav--clear .vg-topnav-logo img {
    filter: brightness(0) invert(1);
    transform: scale(1.428571)
}

.vg-topnav--light .vg-topnav-logo img,.vg-topnav--scrolled .vg-topnav-logo img {
    filter: none;
    transform: scale(1);
}

body.vg-no-hero .vg-topnav-inner {
    padding-top: 16px;
    padding-bottom: 16px;
    transition: none
}

body.vg-no-hero .vg-topnav-logo img {
    filter: none;
    transform: scale(1);
    transition: none
}

.vg-topnav-left,.vg-topnav-right {
    display: flex;
    align-items: stretch;
    gap: 10px
}

.vg-topnav-right {
    justify-content: flex-end
}

.vg-topnav-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-height: 46px;
    padding: 14px 24px;
    box-sizing: border-box;
    background: 0 0;
    border: 1px solid rgba(17,17,17,.25);
    color: #111;
    font-family: var(--fontheader);
    font-size: 11px;
    height: auto;
    font-weight: 500;
    letter-spacing: 2px;
    line-height: 1;
    text-transform: uppercase;
    text-decoration: none;
    cursor: pointer;
    transition: 300ms all;
    margin: 0
}

.vg-topnav-btn:hover {
    background: #111;
    color: #ffffff;
    border-color: #111
}
.vg-topnav-btn:hover .vg-hamburger {
    gap: 6px;
}
.vg-nav-menu-btn:hover {
    color:#111;
}
.vg-topnav--clear .vg-nav-menu-btn:hover {
    color:white!important;
                                         }

.vg-topnav--clear .vg-topnav-btn:hover {
    background: #fff;
    color: #111;
    border-color: #fff
}

.vg-topnav-btn .vg-btn-plus {
    font-size: 14px;
    line-height: 1;
    display: inline-block;
    transition: transform .2s
}

.vg-topnav-btn.is-open .vg-btn-plus {
    transform: rotate(45deg)
}

.vg-hamburger {
    display: inline-flex;
    flex-direction: column;
    gap: 7px;
    align-items: end;
}

.vg-nav-menu-btn .vg-topnav-btn-label {
    display:none;
}
.vg-nav-menu-btn {
    border: none;
    background: transparent!important;
    padding: 0!important;
    padding-left: 20px!important;
}

.vg-office-listings-hero {
    background-image: url(https://u.realgeeks.media/hgroupms/images/top-rated-central-mississippi-real-estate-team.jpg)
}
.vg-hamburger span {
    display: block;
    width: 37px;
    height: 2px;
    background: rgb(34 34 34);
}
.vg-hamburger span:nth-child(2) {
    width: 25px;
}
.vg-hamburger span:nth-child(3) {
    width: 19px;
}

.vg-contact-svg {
    width: 14px;
    height: 14px;
    stroke: currentColor;
    fill: none;
    stroke-width: 1
}

#video-hero,.vg-hero,.video-hero-section {
    position: relative;
    display: flex;
    flex-direction: column;
    height: 100vh;
    min-height: 760px;
    background: #000;
    color: #fff;
    padding: 0
}

.vg-hero-bg-img,.video-hero-background,.video-hero-background video {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%!important;
    object-fit: cover;
    opacity: 1;
    z-index: 0
}

.vg-hero-overlay,.video-hero-overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background: linear-gradient(180deg,rgba(0,0,0,.55) 0,rgba(0,0,0,.25) 25%,rgba(0,0,0,.1) 50%,rgba(0,0,0,.65) 100%)
}

.vg-hero-content,.video-hero-content {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-rows: 1fr auto auto auto;
    height: 100%;
    width: 100%;
    padding: 0 56px 56px;
    box-sizing: border-box;
    color: #fff;
    max-width: 2000px;
    margin: auto
}

.vg-hero-content>h1,.vg-hero-content>h3,.video-hero-content>h1 {
    grid-row: 2;
    align-self: end;
    margin: 0 0 24px!important;
    max-width: 1100px;
    font-family: var(--fontheader)!important;
    font-weight: 400!important;
    font-size: clamp(39px, 7.5vw, 70px)!important;
    line-height: 1!important;
    letter-spacing: 0!important;
    color: #fff!important;
    text-shadow: 0 2px 20px rgb(0 0 0 / 8%);
}

.vg-hero-content>h1 em,.vg-hero-content>h3 em,.video-hero-content>h1 em {
    font-style: italic!important;
    font-weight: 400!important;
    color: #fff!important
}

.vg-hero-content>p,.vg-hero-subhead,.video-hero-content>p {
    grid-row: 3;
    align-self: end;
    margin: 0 0 50px!important;
    padding: 0!important;
    max-width: 800px;
    font-family: var(--fontbody)!important;
    font-size: min(3vw,17px)!important;
    font-weight: 500!important;
    line-height: 1.2!important;
    color: rgba(255,255,255,.9)!important;
    text-transform: none!important;
    text-shadow: 0 2px 20px rgb(0 0 0 / 7%);
}

#vg-hero-search,.vg-hero-search {
    grid-row: 4;
    align-self: end;
    margin: 0;
    max-width: 960px;
    width: 100%
}

.vg-hero-tabs {
    display: flex;
    gap: 24px;
    font-weight: 500;
    color: #fff;
    font-family: var(--fontbody);
    font-size: 16px
}

.vg-hero-tab {
    padding-bottom: 10px;
    border-bottom: 1px solid transparent;
    color: #fff;
    opacity: .7;
    text-decoration: none;
    transition: .2s;
    cursor: pointer
}

.vg-hero-tab:hover {
    color: #fff;
    opacity: 1
}

.vg-hero-tab.active {
    border-bottom-color: #fff;
    opacity: 1;
    color: #fff
}

.vg-hero-search-row {
    display: grid;
    grid-template-columns: 1.8fr 1fr 1fr auto;
    align-items: stretch;
    min-height: 76px;
    background: rgba(255,255,255,.98);
    box-shadow: 0 20px 60px rgba(0,0,0,.25)
}

.vg-hero-search-field,.vg-hero-select-wrap {
    position: relative;
    display: flex;
    flex-direction: column;
    border-right: 1px solid rgba(0,0,0,.08);
    border-bottom: 1px solid #d2d2d2a8
}

.vg-hero-search-field::before,.vg-hero-select-wrap::before {
    content: attr(data-label);
    padding: 18px 24px 2px;
    font-family: var(--fontbody);
    font-size: 10px;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: var(--light-muted);
    pointer-events: none
}

.vg-hero-search-field input,.vg-hero-select {
    width: 100%!important;
    height: 40px!important;
    padding: 0 24px 18px!important;
    border: none!important;
    background: 0 0!important;
    font-family: var(--fontbody);
    font-size: 14px;
    color: var(--maincolor);
    outline: 0;
    appearance: none!important;
    -webkit-appearance: none;
    box-shadow: none!important;
    margin: 0!important
}

.vg-hero-search-btn {
    min-height: 46px;
    padding: 14px 24px;
    box-sizing: border-box;
    background: var(--red)!important;
    color: #fff;
    border: none;
    font-family: var(--fontheader);
    font-size: 13px;
    margin: 0;
    font-weight: 500;
    letter-spacing: 2px;
    line-height: 1.2;
    text-transform: uppercase;
    cursor: pointer;
    transition: 300ms all;
    min-width: 200px;
}

.vg-hero-search-btn:hover {
    background: #333
}

.vg-hero-location {
    position: relative
}

.vg-hero-dropdown {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 40;
    max-height: 320px;
    overflow-y: auto;
    background: #fff;
    border: 1px solid var(--hairline);
    border-top: none;
    box-shadow: 0 20px 40px rgba(0,0,0,.1)
}

.vg-hero-dropdown.vg-open {
    display: block
}

.vg-hero-dropdown-item {
    padding: 14px 24px;
    font-family: var(--fontbody);
    font-size: 14px;
    color: var(--maincolor);
    border-bottom: 1px solid var(--hairline);
    cursor: pointer;
    transition: background .15s
}

.vg-hero-dropdown-item:hover {
    background: var(--creambg)
}

.vg-hero-dropdown .vg-hero-dropdown-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px
}

.vg-hero-item-name {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}

.vg-hero-item-type {
    flex-shrink: 0;
    color: #777;
    font-size: 11px
}

.vg-hero-dropdown-group-label {
    padding: 7px 16px;
    background: #f4f1ec;
    border-bottom: 1px solid #eee;
    color: #777;
    font-family: var(--fontbody);
    font-size: 10px;
    letter-spacing: 1.6px;
    text-transform: uppercase
}

.vg-split {
    display: flex;
    min-height: 620px;
    background: 0 0
}

.vg-split--showcase .vg-split {
    border-top: none;
    border-bottom: none;
    gap: 100px;
    justify-content: center
}

.vg-split-image {
    position: relative;
    min-height: 620px;
    overflow: hidden;
    background: linear-gradient(180deg,#2a2a2a 0,#0a0a0a 100%)
}

.vg-split-image img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: var(--gs-filter)
}

.vg-split-text {
    display: flex;
    flex-direction: column;
    justify-content: center;
    flex: 1;
    border-right: 1px solid #0000001f;
    padding-right: 60px
}

.vg-split-text h1,.vg-split-text h2 {
    margin: 0;
    font-family: var(--font)!important;
    font-weight: 500!important;
    font-size: clamp(30px, 5vw, 41px)!important;
    line-height: 1!important;
    letter-spacing: -1px;
    text-transform: none;
    color: inherit
}

.vg-split-text h1 em,.vg-split-text h2 em {
    font-style: italic
}

.vg-split-text p {
    margin: 36px 0 0;
    max-width: 480px;
    font-family: var(--fontbody);
    font-size: 15px;
    font-weight: 300;
    line-height: 1.9;
    color: var(--mutedtext)
}

.vg-split--dark .vg-split-text p {
    color: rgba(255,255,255,.75)
}

.new-listings-section {
    padding: 80px 0!important;
    background: #ffffff;
}

.new-listings-section .inner-content {
    padding: 0 50px
}

.new-listings-section h1,.new-listings-section h2 {
    margin: 0 0 80px!important;
    font-family: var(--font)!important;
    font-weight: 500!important;
    font-size: clamp(30px, 5vw, 41px)!important;
    line-height: 1!important;
    color: var(--maincolor);
    letter-spacing: -1px;
}

.new-listings-section h1 em,.new-listings-section h2 em {
    font-style: italic
}

.new-listings-container {
    width: 100%;
    padding: 0;
    background: 0 0
}

.new-listings-grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 56px 32px;
    padding: 0;
    margin: 0;
    list-style: none
}

.view-more-container {
    grid-column: 1/-1;
    display: flex;
    justify-content: center;
    padding: 56px 0 0;
    width: 100%
}

.view-all-link {
    display: inline-block;
    text-decoration: none
}

.view-more-btn,button.view-more-btn {
    min-height: 46px;
    padding: 14px 24px;
    box-sizing: border-box;
    background: var(--maincolor);
    color: #fff;
    border: none;
    font-family: var(--fontheader);
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 2px;
    line-height: 1.2;
    text-transform: uppercase;
    cursor: pointer;
    transition: background .2s,transform .2s;
    margin: 0
}

.view-more-btn:hover {
    background: #333;
    transform: translateY(-1px);
    color: #fff
}

@keyframes vg-shimmer {
    0% {
        background-position: 200% 0
    }

    100% {
        background-position: -200% 0
    }
}

.vg-no-listings {
    grid-column: 1/-1;
    padding: 80px 40px;
    text-align: center;
    background: #fff;
    border: 1px solid #8e8e8e;
}

.vg-no-listings h3 {
    margin: 0 0 16px!important;
    font-family: var(--font)!important;
    font-weight: 500!important;
    font-size: clamp(30px, 5vw, 41px)!important;
    line-height: 1!important;
    letter-spacing: -1px;
    text-transform: none;
    color: var(--maincolor)
}

.vg-no-listings p {
    margin: 0 auto 32px!important;
    max-width: 480px;
    font-family: var(--fontbody)!important;
    font-size: 15px!important;
    font-weight: 300!important;
    line-height: 1.7!important;
    color: var(--mutedtext)!important
}

.vg-no-listings-actions {
    display: flex;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap
}

.vg-no-listings-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 46px;
    padding: 14px 24px;
    border: 1px solid var(--maincolor);
    box-sizing: border-box;
    font-family: var(--fontheader);
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 2px;
    line-height: 1.2;
    text-transform: uppercase;
    text-decoration: none;
    cursor: pointer;
    white-space: nowrap;
    margin: 0;
    color: #111
}

.vg-no-listings-btn:hover {
    color: #fff;
    background: #111
}

.vg-no-listings-btn i {
    font-size: 13px
}

.vg-no-listings-alert-btn {
    background: var(--maincolor);
    color: #fff
}

.vg-no-listings-contact-btn {
    background: #fff;
    color: #111;
    border-color: rgba(17,17,17,.25)
}

.vg-no-listings-contact-btn:hover {
    background: #f7f7f7;
    color: #111;
    border-color: rgba(17,17,17,.45)
}

.vg-no-listings-alert-btn:hover {
    background: #333;
    color: #fff
}

.vg-area-grid-section,.vg-neighborhoods {
    padding: 80px 0 0!important;
    background: #111;
    color: #fff
}

.vg-neighborhoods .inner-content {
    padding: 0 56px
}

.vg-neighborhoods .vg-section-header {
    padding: 0;
    margin-bottom: 64px
}

.vg-area-grid-section h2,.vg-neighborhoods .vg-section-title {
    max-width: none;
    color: #fff;
    font-family: var(--font)!important;
    font-weight: 500!important;
    font-size: clamp(30px, 5vw, 41px)!important;
    line-height: 1!important;
    letter-spacing: -1px;
    text-transform: none
}

.vg-area-grid {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 24px;
    padding: 0 56px;
    max-width: 2000px;
    margin: auto
}

.vg-area-card {
    position: relative;
    aspect-ratio: 3/4;
    overflow: hidden;
    background: linear-gradient(180deg,#2a2a2a 0,#0a0a0a 100%);
    color: #fff;
    cursor: pointer
}

.vg-area-card .vg-area-card-media {
    position: absolute;
    inset: 0;
    z-index: 1;
    overflow: hidden
}

.vg-area-card .vg-area-card-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .8s
}

.vg-area-card:hover .vg-area-card-media img {
    transform: scale(1.05)
}

.vg-area-card .vg-area-card-overlay {
    position: absolute;
    inset: 0;
    z-index: 2;
    pointer-events: none;
    background: linear-gradient(180deg,rgba(0,0,0,0) 40%,rgba(0,0,0,.85) 100%)
}

.vg-area-card .vg-area-card-content {
    position: absolute;
    right: 24px;
    bottom: 24px;
    left: 24px;
    z-index: 3;
    color: #fff
}

.vg-area-card .vg-area-card-content h3 {
    margin: 0 0 6px;
    font-family: var(--fontheader);
    font-weight: 400;
    font-size: 28px!important;
    letter-spacing: 0;
    color: #fff
}

.vg-area-card .vg-area-card-content .vg-blurb {
    margin: 0;
    font-family: var(--fontbody);
    font-size: 12px;
    opacity: .8;
    color: #fff
}

.vg-area-card-hit {
    position: absolute;
    inset: 0;
    z-index: 4;
    display: block;
    color: transparent!important;
    font-size: 0;
    line-height: 0;
    text-decoration: none;
    text-indent: -9999px;
    overflow: hidden
}

.vg-home-directory-section {
    padding: 96px 0;
    background: #ffffff;
    color: #111;
    border-top: solid 1px #ccc;
}

.vg-home-directory-section .vg-section-header {
    display: block;
    padding: 0;
    margin-bottom: 40px
}

.vg-home-directory-section .vg-section-title {
    color: #222222;
}

.vg-home-directory-section .vg-section-header p {
    margin: 18px 0 0;
    max-width: 820px;
    font-family: var(--fontbody);
    font-size: 16px;
    font-weight: 300;
    line-height: 1.8;
    color: rgb(34 34 34);
}

.vg-home-directory-section .vg-home-area-directory {
    margin: 0!important;
    max-width: none;
    background: 0 0;
    padding: 0 20px;
    border: 1px solid #222222;
}

.vg-home-link-list {
    border-top: 1px solid rgba(255,255,255,.18);
    padding-top: 34px
}

.vg-home-link-list-header {
    display: grid;
    grid-template-columns: minmax(180px,0.35fr) minmax(0,0.65fr);
    gap: 32px;
    align-items: center;
    margin-bottom: 26px
}

.vg-home-link-list h3 {
    margin: 0;
    font-family: var(--font)!important;
    font-weight: 500!important;
    font-size: clamp(30px, 5vw, 41px)!important;
    line-height: 1;
    letter-spacing: -1px;
    text-transform: none;
    color: #fff
}

.vg-home-link-list p {
    margin: 0;
    max-width: 700px;
    font-family: var(--fontbody);
    font-size: 15px;
    font-weight: 300;
    line-height: 1.8;
    color: rgba(255,255,255,.7)
}

.vg-home-directory-accordion {
    border-top: 0;
    padding: 0;
    border-bottom: 1px solid #222222;
}

.vg-home-directory-accordion:last-child {
    border: none
}

.vg-home-directory-accordion .vg-home-link-list-header {
    display: block;
    margin: 0
}

.vg-home-directory-accordion h3 {
    margin: 0!important
}

.vg-home-directory-toggle {
    width: 100%;
    max-width: 2000px;
    margin: auto;
    min-width: 0!important;
    padding: 18px 0;
    background: 0 0!important;
    border: none;
    color: #222222 !important;
    font-family: var(--font)!important;
    font-weight: 400!important;
    font-size: clamp(20px, 5vw, 21px)!important;
    line-height: 1;
    letter-spacing: -1px;
    text-transform: none;
    text-align: left;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px
}

.vg-home-directory-accordion h3:hover>.vg-home-directory-toggle {
    text-decoration: underline;
    text-decoration-thickness: 1px
}

.vg-home-directory-toggle[aria-expanded=true] {
    border: none!important
}

.vg-home-directory-accordion:last-child .vg-home-directory-toggle {
    border-bottom: none!important
}

.vg-home-directory-accordion.open:last-child .vg-home-directory-toggle {
    border-bottom: 0!important
}

.vg-home-directory-panel {
    max-height: 0;
    overflow: hidden;
    transition: max-height .35s,padding-bottom .35s
}

.vg-home-directory-accordion.open .vg-home-directory-panel {
    max-height: 20000px;
    padding: 8px 0 34px;
}

.vg-home-directory-panel .vg-truncate-list {
    max-height: none;
    overflow: visible;
    transition: none
}

.vg-home-directory-accordion.open .vg-faq-icon::after {
    transform: translateX(-50%) rotate(90deg)
}

.vg-home-directory-list,.vg-truncate-list {
    list-style: none;
    padding: 0;
    margin: 0!important;
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    column-gap: 40px;
    row-gap: 0;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box
}

.vg-truncate-list {
    max-height: 400px;
    overflow: hidden;
    transition: max-height .6s
}

.vg-truncate-list.expanded {
    max-height: 99999px
}

.vg-home-directory-list>li,.vg-truncate-list>li {
    display: block;
    min-width: 0;
    max-width: 100%;
    padding: 7px 0;
    overflow-wrap: anywhere
}

.vg-home-directory-list li a,.vg-truncate-list li a {
    color: #222222;
    font-family: var(--fontheader);
    font-weight: 300;
    font-size: 19px;
    line-height: 1.2;
    text-decoration: none;
    transition: color .2s
}

.vg-home-directory-list li a:hover,.vg-truncate-list li a:hover {
    color: #fff;
}

.vg-home-directory-section .vg-home-directory-list li a:hover,.vg-home-directory-section .vg-truncate-list li a:hover {
    color: #797979;
}

.vg-truncate-see-more {
    width: 100%;
    min-width: 0!important;
    margin: 30px 0 0!important;
    padding: 16px 0!important;
    background: 0 0!important;
    border: 0!important;
    border-top: 1px solid rgba(255,255,255,.18)!important;
    color: #fff!important;
    font-family: var(--fontbody);
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    text-align: left;
    cursor: pointer
}

.vg-truncate-see-more:hover {
    text-decoration: underline
}

.vg-truncate-see-more::after {
    content: '+';
    display: inline-block;
    margin-left: 10px
}

.vg-truncate-list.expanded+.vg-truncate-see-more::after {
    content: '-'
}

.vg-team-section {
    background: #fff
}

.vg-team-layout {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: stretch
}

.vg-team-photo {
    position: relative;
    min-height: 620px;
    overflow: hidden;
    background: linear-gradient(180deg,#2a2a2a 0,#0a0a0a 100%)
}

.vg-team-photo img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: var(--gs-filter);
    aspect-ratio: 1/1
}

.vg-team-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 30px;
    grid-column: span 3
}

.vg-team-label {
    margin: 0 0 20px;
    font-family: var(--fontbody);
    font-size: 11px!important;
    font-weight: 500;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--maincolor)
}

.vg-team-heading {
    margin: 0 0 32px;
    font-family: var(--font)!important;
    font-weight: 500!important;
    font-size: clamp(30px, 5vw, 41px)!important;
    line-height: 1!important;
    letter-spacing: -1px;
    text-transform: none;
    color: var(--maincolor)
}

.vg-team-heading em {
    font-style: normal;
}

.vg-team-text {
    margin: 0 0 40px;
    max-width: 480px;
    font-family: var(--fontbody);
    font-size: 15px;
    font-weight: 300;
    line-height: 1.9;
    color: var(--mutedtext)
}

.vg-team-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-height: 46px;
    padding: 14px 24px;
    box-sizing: border-box;
    border-bottom: 1px solid var(--maincolor);
    font-family: var(--fontheader);
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 2px;
    line-height: 1.2;
    text-transform: uppercase;
    color: var(--maincolor);
    text-decoration: none;
    transition: gap .25s;
    background: white;
}

.vg-team-btn:hover {
    gap: 20px
}

.vg-team-socials {
    display: flex;
    gap: 16px;
    align-items: center
}

.vg-team-socials a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    color: #ffffff;
    font-size: 18px;
    background: var(--maincolor);
    text-decoration: none;
    transition: .2s
}

.vg-team-socials a:hover {
    background: var(--maincolor);
    color: #fff;
    opacity: .6;
}

.vg-agent-cta-section {
    background: #fff;
    border-top: 1px solid #ccc;
}

.vg-agent-page .vg-agent-cta-section {
    /* border-top: none; */
}

.vg-agent-cta-section .vg-team-layout {
    margin: 0 auto;
    grid-template-columns: repeat(4,1fr);
    gap: 0;
    align-items: center
}

.vg-agent-cta-section .vg-team-photo {
    background: #eee;
    width: 100%;
    box-shadow: 0 18px 28px rgba(0,0,0,.18)
}

.vg-agent-cta-section .vg-team-photo img {
    filter: none
}

.vg-agent-cta-section .vg-team-content {
    padding: 30px 60px;
    min-height: 100%;
    border-right: 1px solid #ccc
}

.vg-agent-page .vg-agent-cta-section .vg-team-content {
    border-right: none
}

.vg-agent-cta-section .vg-team-label {
    margin-bottom: 14px;
    letter-spacing: 4px;
    color: #555
}

.vg-agent-cta-section .vg-team-heading {
    margin-bottom: 26px;
    font-family: var(--font)!important;
    font-weight: 500!important;
    font-size: clamp(30px, 5vw, 41px)!important;
    line-height: 1!important;
    letter-spacing: -1px;
    text-transform: none;
    max-width: 850px;
    margin-top: 0
}

.vg-agent-cta-section .vg-team-text {
    margin-bottom: 30px;
    max-width: 520px;
    font-size: 14px;
    line-height: 1.85
}

.vg-agent-cta-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin: 0 0 26px
}

.vg-agent-cta-actions .vg-team-btn {
    justify-content: center;
    min-width: 170px;
    min-height: 46px;
    padding: 14px 24px;
    border: 1px solid var(--maincolor);
    font-family: var(--fontheader);
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 2px;
    line-height: 1.2
}

.vg-agent-cta-actions .vg-team-btn:hover {
    gap: 14px
}

.vg-agent-cta-actions .vg-team-btn-solid {
    background: var(--maincolor);
    color: #fff
}

.vg-agent-cta-actions .vg-team-btn-outline {
    background: 0 0;
    color: var(--maincolor)
}

.vg-agent-cta-actions .vg-team-btn-solid:hover {
    background: #333;
    color: #fff
}

.vg-agent-cta-actions .vg-team-btn-outline:hover {
    background: var(--maincolor);
    color: #fff
}

.vg-agent-cta-section .vg-team-socials {
    gap: 12px
}

@media (max-width: 1200px) {
    .vg-agent-cta-section {
        padding:80px 0
    }

    .vg-agent-page .vg-agent-cta-section {
        padding-top: 0!important
    }

    .vg-agent-cta-section .vg-team-layout {
        grid-template-columns: repeat(1,1fr);
        gap: 38px;
        max-width: 680px
    }

    .vg-agent-cta-section .vg-team-photo {
        order: 1;
        width: 100%;
        margin: 0 auto;
        min-height: 0;
        aspect-ratio: 4/5
    }

    .vg-agent-page .vg-team-photo {
        width: 100vw;
        max-width: 100vw!important;
        margin-left: calc(50% - 50vw)!important;
        margin-right: calc(50% - 50vw)!important
    }

    .vg-agent-cta-section .vg-team-content {
        order: 2;
        padding: 0;
        grid-column: auto;
        border: none
    }

    .vg-agent-cta-section .vg-team-heading {
        font-size: clamp(30px, 5vw, 41px)!important
    }

    .vg-agent-cta-actions .vg-team-btn {
        flex: 1 1 150px;
        min-width: 0
    }
}

@media (max-width: 480px) {
    .vg-agent-cta-actions .vg-team-btn {
        flex-basis:100%
    }
}

.vg-action-cards-section {
    padding: 100px 0!important;
    background: #fff;
    border-top: 1px solid #eee
}

.vg-action-cards-section .inner-content {
    padding: 0 56px
}

.vg-action-cards-section .vg-section-header {
    padding: 0
}

.vg-reviews-section {
    padding: 140px 0;
    background: #222222;
    color: #fff;
    text-align: center
}

.vg-reviews-section .inner-content {
    padding: 0 56px;
    text-align: center
}

.vg-reviews-label {
    margin: 0 0 18px;
    font-family: var(--fontbody);
    font-size: 11px!important;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: rgba(255,255,255,.68)!important
}

.vg-reviews-section h1,.vg-reviews-section h2 {
    margin: 0 auto 64px;
    font-family: var(--font)!important;
    font-weight: 500!important;
    font-size: clamp(30px, 5vw, 41px)!important;
    line-height: 1;
    letter-spacing: -1px;
    text-transform: none;
    color: #fff;
    max-width: 1000px
}

.vg-reviews-section h1 em,.vg-reviews-section h2 em {
    font-style: italic
}

.vg-reviews-viewport {
    width: calc(100% - 112px);
    max-width: 1200px;
    margin: 0 auto 56px;
    overflow: hidden;
    padding: 0
}

.vg-reviews-track {
    display: flex;
    transition: transform .5s;
    width: 100%
}

.vg-review-card {
    flex: 0 0 100%;
    padding: 0;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center
}

.vg-review-quote {
    margin: 0 auto 40px;
    font-family: var(--fontheader);
    font-weight: 400;
    font-style: italic;
    font-size: clamp(28px, 3.4vw, 48px);
    line-height: 1.45;
    letter-spacing: 0;
    color: #fff!important;
    max-width: 1200px
}

.vg-review-author {
    margin: 0 0 18px;
    font-family: var(--fontheader)!important;
    font-size: 30px!important;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: rgb(255 255 255) !important;
}

.vg-review-link {
    color: #fff!important;
    font-family: var(--fontbody);
    font-size: 13px;
    font-weight: 500;
    text-decoration: underline;
    margin-top: 10px
}

.vg-reviews-nav {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 24px;
    margin-top: 20px
}

.vg-review-arrow {
    position: relative;
    width: 40px;
    height: 40px;
    background: 0 0;
    border: 1px solid rgba(255,255,255,.64);
    cursor: pointer;
    transition: .2s
}

.vg-review-arrow:hover {
    background: #fff
}

.vg-review-arrow::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 8px;
    height: 8px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    transform: translate(-50%,-50%) rotate(45deg);
    margin-left: -2px
}

.vg-review-arrow:hover::after {
    border-color: #111
}

.vg-review-prev::after {
    transform: translate(-50%,-50%) rotate(-135deg);
    margin-left: 2px
}

.vg-reviews-progress {
    position: relative;
    width: 200px;
    height: 1px;
    background: rgba(255,255,255,.26)
}

.vg-reviews-progress-bar {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 16%;
    background: #fff;
    transition: width .5s
}

.vg-home-blogs-section {
    padding: 80px 0;
    background: #fff;
    color: #111;
    overflow: hidden;
    border-bottom: 1px solid #111
}

.vg-home-blogs-section .inner-content {
    padding: 0 56px
}

.vg-home-blogs-section h1,.vg-home-blogs-section h2 {
    margin: 0;
    font-family: var(--font)!important;
    font-weight: 500!important;
    font-size: clamp(30px, 5vw, 41px)!important;
    line-height: 1!important;
    letter-spacing: -1px;
    text-transform: none;
    color: #111
}

.vg-home-blogs-section h1 em,.vg-home-blogs-section h2 em {
    font-style: italic
}

.vg-blog-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%
}

.vg-blog-controls {
    display: none!important
}

.vg-blog-slider {
    margin-top: 48px
}

.vg-blog-track {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 24px
}

.vg-blog-card {
    aspect-ratio: 3/4;
    overflow: hidden;
    position: relative;
    background: linear-gradient(180deg,#2a2a2a 0,#0a0a0a 100%)
}

.vg-blog-card a {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
    color: #fff;
    text-decoration: none
}

.vg-blog-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .6s;
    display: block
}

.vg-blog-card a::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 70%;
    background: linear-gradient(to top,rgba(0,0,0,.85) 0,rgb(0 0 0 / 46%) 55%,transparent 100%);
    transition: .4s;
    pointer-events: none;
    z-index: 1
}

.vg-blog-card:hover img {
    transform: scale(1.05)
}

.vg-blog-card-info {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 2;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 24px;
    pointer-events: none
}

.vg-blog-card-date {
    margin-bottom: 8px;
    font-family: var(--fontbody);
    font-size: 11px;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: rgba(255,255,255,.7)
}

.vg-blog-card-info h3 {
    margin: 0!important;
    padding: 0!important;
    font-family: var(--font)!important;
    font-weight: 400;
    font-size: 21px!important;
    line-height: 1.25;
    color: #fff!important;
    letter-spacing: 0
}

.vg-blog-readall {
    display: flex;
    justify-content: end;
    margin-top: 20px
}

.vg-blog-loader,.vg-infinite-loader {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 220px;
    padding: 40px 20px
}

.vg-loader-spinner {
    width: 36px;
    height: 36px;
    border: 3px solid rgba(0,0,0,.1);
    border-top-color: var(--maincolor);
    border-radius: 50%;
    animation: .75s linear infinite vg-spin
}

.vg-blog-loader .vg-loader-spinner,.vg-home-blogs-section .vg-loader-spinner {
    border-color: rgba(255,255,255,.18);
    border-top-color: #fff
}

@keyframes vg-spin {
    to {
        transform: rotate(360deg)
    }
}

.vg-blog-home>.body-container {
    display: grid!important;
    grid-template-columns: repeat(3,minmax(0,1fr))!important;
    gap: 40px!important;
    width: 100%!important;
    margin: 0 auto 90px!important;
    padding: 0 56px!important;
    box-sizing: border-box
}

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

.vg-blog-home .blog-post {
    width: 100%;
    margin: 0!important;
    overflow: hidden
}

.vg-blog-home .blog-post a,.vg-blog-home .blog-post>a {
    color: inherit;
    text-decoration: none!important
}

.vg-blog-home .category,.vg-blog-home .comments,.vg-blog-home .date {
    display: none!important
}

.vg-blog-home .post-content {
    display: flex;
    flex-direction: column;
    min-height: 100%;
    background: #fff!important;
    border: 1px solid var(--hairline);
    overflow: hidden;
    transition: transform .25s
}

.vg-blog-home .post-content:hover {
    transform: scale(.98)
}

.blog-post .blog-has-img {
    display: block;
    width: 100%
}

.blog-post .blog-has-img img {
    display: block;
    width: 100%;
    height: 260px;
    object-fit: cover
}

.blog-post .blog-no-img {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 220px;
    margin: 0!important;
    padding: 24px;
    background: #111;
    color: #fff!important;
    text-align: center
}

.vg-blog-box {
    display: flex;
    flex-direction: column;
    gap: 18px;
    height: 100%;
    padding: 24px
}

.vg-blog-box h2 {
    margin: 0!important;
    font-family: var(--font)!important;
    font-weight: 300!important;
    font-size: clamp(22px, 5vw, 21px)!important;
    line-height: 1.2!important;
    letter-spacing: -1px;
    text-transform: none;
    color: var(--maincolor)!important
}

.vg-blog-box p {
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin: 0;
    color: var(--mutedtext);
    font-family: var(--fontbody);
    font-size: 14px;
    line-height: 1.7
}

.vg-blog-box button {
    margin-top: auto;
    min-height: 46px;
    padding: 14px 24px;
    box-sizing: border-box;
    background: #111;
    color: #fff;
    border: 1px solid #111;
    font-family: var(--fontheader);
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 2px;
    line-height: 1.2;
    text-transform: uppercase;
    cursor: pointer
}

.vg-blog-box button:hover {
    background: #fff;
    color: #111
}

.market-stats-section {
    padding: 140px 0;
    background: #fff
}

.market-stats-section .inner-content {
    padding: 0 56px
}

.market-stats-section h1,.market-stats-section h2 {
    margin: 0 0 30px;
    font-family: var(--font)!important;
    font-weight: 500!important;
    font-size: clamp(30px, 5vw, 41px)!important;
    line-height: 1!important;
    letter-spacing: -1px;
    text-transform: none;
    color: var(--maincolor);
    max-width: 1300px
}

.market-stats-section h1 em,.market-stats-section h2 em {
    font-style: normal;
    color: var(--red);
}

.market-stats-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 40px
}

.market-stats-box {
    padding-top: 28px
}

.market-stats-box-combined {
    padding-top: 34px;
}

.market-stats-box.is-loading .stat-value {
    opacity: .32
}

.market-stats-box.is-loaded .stat-value {
    animation: vgStatPop .42s ease both
}

@keyframes vgStatPop {
    from {
        opacity: .25;
        transform: translateY(8px)
    }

    to {
        opacity: 1;
        transform: translateY(0)
    }
}

.market-stats-box h3 {
    margin: 0 0 20px;
    font-family: var(--font)!important;
    font-weight: 500!important;
    font-size: clamp(30px, 5vw, 41px)!important;
    line-height: 1!important;
    letter-spacing: -1px;
    text-transform: none;
    color: var(--maincolor)
}

.market-stats-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr));
    gap: 0
}

.market-stats-list li {
    padding: 18px 24px 18px 0;
    border-bottom: 0;
    font-family: var(--fontbody);
    font-size: 19px!important;
    font-weight: 300;
    line-height: 1.5;
    color: var(--mutedtext)
}

.market-stats-list li:last-child {
    border-bottom: 0
}

.market-stats-list a {
    color: var(--mutedtext);
    text-decoration: none;
    transition: .2s;
    display: block
}

.market-stats-list a:hover {
    color: var(--maincolor);
    transform: scale(.97);
    opacity: .4
}

.vg-market-stats-intro {
    max-width: 920px;
    margin: 0 0 34px;
    font-family: var(--fontbody);
    font-size: 15px!important;
    line-height: 1.75!important;
    color: var(--mutedtext)
}

.stat-value {
    display: block;
    margin: 0 0 8px;
    font-family: var(--fontheader);
    font-size: clamp(40px, 5vw, 95px);
    line-height: 1;
    color: var(--maincolor);
    font-weight: 400;
    letter-spacing: -4px;
}

.vg-faq {
    background: #fff;
    padding: 70px 0;
    padding-bottom: 7vh!important;
    margin-bottom: 0;
    color: #fff;
    border-top: 1px solid #000
}

.vg-faq .inner-content {
    padding: 0 56px
}

.vg-faq .inner-content>h1,.vg-faq .inner-content>h2 {
    margin: 0 0 36px!important;
    font-family: var(--font)!important;
    font-weight: 500!important;
    font-size: clamp(30px, 5vw, 41px)!important;
    line-height: 1!important;
    letter-spacing: -1px;
    text-transform: none;
    color: #111!important
}

.vg-faq .inner-content>h1 em,.vg-faq .inner-content>h2 em {
    font-style: italic
}

.vg-faq-list {
    width: 100%
}

.vg-faq-item {
    border-top: 1px solid #303030
}

.vg-faq-item:last-child {
    border-bottom: 1px solid #303030
}

.vg-faq-q {
    width: 100%;
    background: 0 0!important;
    border: none;
    text-align: left;
    padding: 20px 10px 20px 0!important;
    font-size: 17px;
    font-weight: 500;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    color: #111!important;
    font-family: var(--fontbody);
    line-height: 1.4
}

.vg-faq-icon {
    flex-shrink: 0;
    width: 20px;
    height: 20px;
    position: relative;
    right: 7px
}

.vg-faq-icon::after,.vg-faq-icon::before {
    content: '';
    position: absolute;
    background: #222222;
    border-radius: 2px;
    transition: transform .25s
}

.vg-faq-icon::before {
    width: 100%;
    height: 2px;
    top: 50%;
    transform: translateY(-50%)
}

.vg-faq-icon::after {
    width: 2px;
    height: 100%;
    left: 50%;
    transform: translateX(-50%)
}

.vg-faq-item.open .vg-faq-icon::after {
    transform: translateX(-50%) rotate(90deg)
}

.vg-faq-a {
    overflow: hidden;
    max-height: 0;
    transition: max-height .3s,padding-bottom .3s;
    padding-bottom: 0
}

.vg-faq-item.open .vg-faq-a {
    max-height: 5000px;
    padding-bottom: 22px
}

.vg-faq-a p {
    margin: 0 0 14px;
    color: #111;
    font-family: var(--fontbody);
    font-size: 15px;
    line-height: 1.75;
    max-width: 1100px;
    font-weight: 300;
}

.vg-faq-a p:last-child {
    margin-bottom: 0
}

.vg-faq-a strong {
    color: #111;
    font-weight: 600
}

.vg-faq-a a {
    color: #111!important;
    text-decoration: underline
}

#normal-footer,#sticky-footer,.main-footer,.vg-footer {
    padding: 0;
    background: #222222;
    color: #fff
}

.main-footer .footer-section,.main-footer .row {
    max-width: none;
    margin: 0;
    padding: 0;
    float: none;
    width: 100%
}

.vg-contact-modal {
    position: fixed;
    inset: 0;
    z-index: 250;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity .3s,visibility .3s
}

.vg-contact-modal.is-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto
}

.vg-contact-modal-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,.6);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px)
}

.vg-contact-modal-card {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: 50% 1fr;
    width: min(94vw,1520px);
    max-height: 92vh;
    background: #fff;
    box-shadow: 0 30px 80px rgba(0,0,0,.35);
    transform: translateY(16px) scale(.98);
    transition: transform .4s cubic-bezier(.16, 1, .3, 1);
    overflow: hidden
}

.vg-contact-modal.is-open .vg-contact-modal-card {
    transform: translateY(0) scale(1)
}

.vg-contact-modal-close {
    position: absolute;
    top: 14px;
    right: 14px;
    z-index: 5;
    width: 36px;
    height: 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,.92);
    border: 1px solid var(--hairline-dark);
    border-radius: 50%;
    color: var(--maincolor);
    font-size: 14px;
    cursor: pointer;
    transition: .2s;
    padding: 0
}

.vg-contact-modal-close:hover {
    background: var(--maincolor);
    color: #fff;
    border-color: var(--maincolor)
}

.vg-contact-modal-photo {
    position: relative;
    width: 100%;
    height: 100%;
    background: #111;
    overflow: hidden;
    aspect-ratio: 1/1
}

.vg-contact-modal-photo img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    object-position: bottom;
}

.vg-contact-modal-info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
    padding: 0;
    overflow-y: auto;
    justify-content: flex-start
}

.vg-contact-modal-upper {
    width: 100%;
    box-sizing: border-box;
    padding: 24px 44px 24px;
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.vg-contact-modal-lower {
    display: flex;
    flex: 1;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    box-sizing: border-box;
    padding: 34px 44px;
    background: #222222;
    color: #fff
}

.vg-contact-modal-eyebrow {
    margin: 0 0 14px;
    font-family: var(--fontbody);
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--light-muted)
}

.vg-contact-modal-name {
    margin: 0 0 6px;
    font-family: var(--fontheader)!important;
    font-weight: 400;
    font-size: 24px;
    line-height: 1.15;
    color: var(--maincolor)
}

.vg-contact-modal-role {
    margin: 0 0 24px;
    font-family: var(--fontbody);
    font-size: min(3vw,15px);
    line-height: 1.5;
    color: var(--mutedtext,#555)
}

.vg-contact-modal-phone {
    display: block;
    margin: 0 0 18px;
    font-family: var(--fontheader);
    font-weight: 400;
    font-size: clamp(26px, 3.4vw, 34px);
    letter-spacing: 0;
    color: var(--maincolor);
    text-decoration: none;
    transition: color .2s;
    background: transparent!important;
}

.vg-contact-modal-phone:hover {
    color: #555;
    background: none!important;
}

.vg-contact-modal-message {
    display: inline-block;
    min-height: 46px;
    padding: 14px 24px;
    box-sizing: border-box;
    margin: 0;
    background: var(--maincolor);
    color: #fff!important;
    border: none;
    font-family: var(--fontheader);
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 2px;
    line-height: 1.2;
    text-transform: uppercase;
    text-decoration: none;
    cursor: pointer;
    transition: background .2s,transform .2s
}

.vg-contact-modal-message:hover {
    background: #333;
    transform: translateY(-1px)
}

.vg-contact-modal-team {
    display: block;
    margin: 0 0 22px;
    font-family: var(--fontbody);
    font-size: 13px;
    font-weight: 300;
    letter-spacing: 1px;
    color: var(--maincolor);
    text-decoration: none;
    text-transform: uppercase;
    padding: 10px 20px;
    transition: color .2s,border-color .2s;
    margin-top: -20px;
    border: solid 1px!important;
}

.vg-contact-modal-team:hover {
    color: #555;
    border-bottom-color: #555
}

.vg-contact-modal-socials {
    display: flex;
    gap: 14px
}

.vg-contact-modal-socials a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border: 1px solid var(--hairline-dark);
    border-radius: 50%;
    color: var(--maincolor);
    font-size: 14px;
    text-decoration: none;
    transition: background .2s,color .2s,border-color .2s
}

.vg-contact-modal-socials a:hover {
    background: var(--maincolor);
    color: #fff;
    border-color: var(--maincolor)
}

.vg-contact-modal-lower .vg-home-valuation-agents {
    display: flex;
    margin: 0 0 24px
}

.vg-contact-modal-team-copy {
    max-width: 560px;
    margin: 0 0 20px;
    color: rgba(255,255,255,.82);
    font-family: var(--fontbody);
    font-size: 14px;
    font-weight: 300;
    line-height: 1.75;
    text-align: center;
}

.vg-contact-modal-lower .vg-contact-modal-team {
    margin-top: 0;
    color: #fff;
    border-bottom-color: rgba(255,255,255,.55)
}

.vg-contact-modal-lower .vg-contact-modal-team:hover {
    color: rgba(255,255,255,.68);
    border-bottom-color: rgba(255,255,255,.68)
}

.vg-contact-modal-lower .vg-contact-modal-socials a {
    border-color: rgba(255,255,255,.28);
    color: #fff
}

.vg-contact-modal-lower .vg-contact-modal-socials a:hover {
    background: #fff;
    border-color: #fff;
    color: #111
}

body.vg-modal-open {
    overflow: hidden
}

@media (max-width: 760px) {
    .vg-contact-modal-card {
        grid-template-columns:1fr;
        width: 100vw;
        height: 90vh;
        max-height: none;
        overflow-y: scroll
    }

    .vg-contact-modal-photo {
        min-height: 50vh
    }

    .vg-contact-modal-info {
        padding: 0;
        align-items: center;
        text-align: center;
        overflow: visible
    }

    .vg-contact-modal-upper,
    .vg-contact-modal-lower {
        padding-left: 28px;
        padding-right: 28px
    }

    .vg-contact-modal-name {
        font-size: 22px;
    }

}

.vg-menu-overlay {
    display: grid;
    position: fixed;
    inset: 0;
    z-index: 200;
    grid-template-columns: 1.25fr 2fr;
    overflow-y: auto;
    background: #fff;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity .45s,visibility .45s
}

.vg-menu-overlay.is-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto
}

body.vg-menu-open {
    overflow: hidden
}

.vg-menu-overlay .vg-menu-image-col {
    transform: translateX(-100%);
    transition: transform .6s cubic-bezier(.16, 1, .3, 1) 50ms
}

.vg-menu-overlay.is-open .vg-menu-image-col {
    transform: translateX(0)
}

.vg-menu-overlay .vg-menu-grid,.vg-menu-overlay .vg-menu-heading,.vg-menu-overlay .vg-menu-custom-search-btn {
    opacity: 0;
    transform: translateY(24px);
    transition: opacity .5s,transform .5s cubic-bezier(.16, 1, .3, 1)
}

.vg-menu-overlay.is-open .vg-menu-heading {
    transition-delay: 0.20s;
    opacity: 1;
    transform: translateY(0)
}

.vg-menu-overlay.is-open .vg-menu-grid {
    transition-delay: 0.30s;
    opacity: 1;
    transform: translateY(0)
}

.vg-menu-overlay.is-open .vg-menu-custom-search-btn {
    opacity: 1;
    transform: translateY(0)
}

.vg-menu-image-col {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
    padding: 40px 48px;
    overflow: hidden;
    gap: 40px;
    background: #000
}

.vg-menu-image-col>img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: .85;
    z-index: 0
}

.vg-menu-image-col::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 1;
    background: #00000052
}

.vg-menu-brand,.vg-menu-contact-block {
    position: relative;
    z-index: 2;
    color: #fff;
    width: 100%;
    max-width: 500px;
}

.vg-menu-brand img {
    height: 100px;
    width: auto
}

.vg-menu-contact-block .vg-eyebrow {
    margin-bottom: 10px;
    color: rgba(255,255,255,.6)
}

.vg-menu-contact-block .phone {
    display: block;
    margin-bottom: 6px;
    font-family: var(--fontheader);
    font-size: 24px;
    font-weight: 400;
    color: #fff;
    text-decoration: none
}

.vg-menu-body {
    position: relative;
    padding: 90px 72px 56px;
}

.vg-menu-custom-search-btn,.vg-sidemenu-search-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 50px;
    margin: 0 0 42px;
    padding: 16px 26px;
    box-sizing: border-box;
    background: var(--red);
    color: #fff!important;
    font-family: var(--fontheader);
    font-size: 17px;
    font-weight: 500;
    letter-spacing: 0px;
    line-height: 1.2;
    text-align: center;
    text-decoration: none!important;
    transition: opacity .2s;
}

.vg-menu-custom-search-btn:hover,.vg-menu-custom-search-btn:focus-visible,.vg-sidemenu-search-btn:hover,.vg-sidemenu-search-btn:focus-visible {
    color: #fff!important;
    opacity: .6!important;
}

.vg-sidemenu-search-btn {
    width: 100%;
    gap: 10px;
    margin: 0 0 24px
}

.vg-sidemenu-search-btn::before {
    content: "\f002";
    font-family: "Font Awesome 7 Pro","Font Awesome 6 Pro","Font Awesome 5 Pro","Font Awesome 5 Free";
    font-size: 15px;
    font-weight: 300;
    line-height: 1
}

.vg-menu-close {
    position: absolute;
    top: 24px;
    right: 24px;
    z-index: 10;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    background: #ffffff;
    color: #000000;
    border: solid 1px #e0e0e0;
    font-size: 16px;
    border-radius: 100%;
    cursor: pointer;
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    transition: .2s;
    padding: revert-layer
}

.vg-menu-close:hover {
    background: #ffffff;
    color: #000000;
    opacity: .6
}

.vg-menu-image-cta {
    position: relative;
    z-index: 3;
    display: flex;
    flex-direction: column;
    gap: 12px;
    width: 100%;
    max-width: 500px;
}

.vg-menu-image-cta .vg-menu-custom-search-btn {
    gap: 10px;
    width: 100%;
    margin: 0
}

.vg-menu-image-cta .vg-menu-custom-search-btn::before {
    content: "\f002";
    font-family: "Font Awesome 7 Pro","Font Awesome 6 Pro","Font Awesome 5 Pro","Font Awesome 5 Free";
    font-size: 14px;
    font-weight: 300;
    line-height: 1
}

.vg-menu-cta-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 46px;
    padding: 14px 24px;
    box-sizing: border-box;
    background: rgb(255 255 255 / 84%) !important;
    color: #111;
    font-family: var(--fontheader);
    font-size: 17px;
    font-weight: 500;
    line-height: 1.2;
    text-decoration: none;
    cursor: pointer;
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    transition: .2s;
    margin: 0;
    width: 100%
}

.vg-menu-cta-btn:hover {
    background: #222 !important;
    color: #ffffff;
    border-color: #fff;
    /* opacity: .6; */
}

.vg-menu-cta-btn .vg-contact-svg {
    width: 14px;
    height: 14px;
    stroke: currentColor
}

.vg-menu-cta-btn i {
    font-size: 14px
}

.vg-menu-account-btn .userSavedSearches {
    display: none!important
}

.vg-menu-heading {
    margin: 0 0 80px;
    font-family: var(--font)!important;
    font-weight: 500!important;
    font-size: clamp(30px, 5vw, 41px)!important;
    line-height: 1!important;
    letter-spacing: -1px;
    text-transform: none;
    color: #111
}

.vg-menu-heading em {
    font-style: italic
}

.vg-menu-grid {
    display: grid;
    grid-template-columns: repeat(2,1fr);
    gap: 56px 64px
}

.vg-menu-col-title {
    margin: 0 0 20px;
    padding-bottom: 14px;
    border-bottom: 1px solid var(--hairline-dark);
    font-family: var(--fontheader);
    font-weight: 400;
    font-size: min(5vw,19px);
    color: #111
}

.vg-menu-col ul {
    list-style: none;
    padding: 0;
    margin: 0
}

.vg-menu-col li {
    margin-bottom: 14px
}

.vg-menu-col a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: min(4.5vw,18px);
    font-weight: 200;
    color: #111;
    text-decoration: none;
    transition: 200ms all;
}

.vg-menu-col a:hover {transform: scale(.99);}

.vg-searchmore-popover {
    display: flex;
    flex-direction: column;
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    height: 100vh;
    width: 480px;
    max-width: 100vw;
    z-index: 250;
    background: #fff;
    color: #111;
    box-shadow: 0 0 60px rgba(0,0,0,.25);
    overflow: hidden;
    visibility: hidden;
    pointer-events: none;
    transform: translateX(-100%);
    transition: transform .45s cubic-bezier(.16, 1, .3, 1),visibility 0s linear .45s
}

.vg-searchmore-popover.is-open {
    visibility: visible;
    pointer-events: auto;
    transform: translateX(0);
    transition: transform .45s cubic-bezier(.16, 1, .3, 1),visibility linear
}

.vg-searchmore-close {
    position: absolute;
    top: 14px;
    right: 14px;
    z-index: 10;
    width: 40px;
    height: 40px;
    background: #fff;
    color: #111;
    font-size: 16px;
    cursor: pointer;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--hairline);
    transition: .2s
}

.vg-searchmore-close:hover {
    background: #111;
    color: #fff;
    border-color: #111
}

.vg-searchmore-overlay {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 240;
    background: rgba(0,0,0,.4);
    backdrop-filter: blur(1px);
    -webkit-backdrop-filter: blur(2px)
}

.vg-searchmore-overlay.is-open {
    display: block
}

.vg-searchmore-grid {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch
}

.vg-searchmore-left {
    padding: 64px 32px 32px;
    border-bottom: 1px solid var(--hairline);
    display: flex;
    flex-direction: column;
    gap: 10px;
    width: 100%
}

.vg-searchmore-right {
    padding: 32px;
    width: 100%
}

.vg-searchmore-title {
    margin: 0 0 24px;
    font-family: var(--font)!important;
    font-weight: 500!important;
    font-size: clamp(30px, 5vw, 41px)!important;
    line-height: 1!important;
    letter-spacing: -1px;
    text-transform: none;
    color: #111
}

.vg-searchmore-field {
    position: relative;
    margin-bottom: 18px
}

.vg-searchmore-input {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 0 9px;
    border: 1px solid #111;
    background: #fff
}

.vg-searchmore-input input {
    flex: 1;
    border: none;
    outline: 0;
    background: 0 0!important;
    color: #111;
    font-family: var(--fontbody);
    font-size: 14px;
    padding: 0;
    margin: 0;
    box-shadow: none!important
}

#vg-sm-ac {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 20;
    background: 0 0
}

#vg-sm-ac .vg-sc-desktop-location-dropdown {
    background: #fff;
    border: 1px solid var(--hairline);
    border-top: none;
    box-shadow: 0 20px 40px rgba(0,0,0,.12);
    max-height: 320px;
    overflow-y: auto
}

#vg-sm-ac .vg-hero-dropdown-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 14px;
    padding: 12px 14px;
    font-family: var(--fontbody);
    font-size: 13px;
    color: #111;
    border-bottom: 1px solid #eee;
    cursor: pointer
}

#vg-sm-ac .vg-hero-dropdown-item:hover {
    background: var(--creambg)
}

#vg-sm-ac .vg-hero-dropdown-group-label {
    padding: 7px 14px;
    background: #f4f1ec;
    border-bottom: 1px solid #eee;
    color: #777;
    font-family: var(--fontbody);
    font-size: 9px;
    letter-spacing: 2px;
    text-transform: uppercase
}

#vg-sm-ac .vg-hero-item-type {
    color: #888;
    font-size: 11px
}

.vg-searchmore-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px
}

.vg-searchmore-select {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 10px;
    background: #fff;
    border: 1px solid var(--hairline-dark);
    color: #111;
    font-family: var(--fontbody);
    font-size: 12px;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none
}

.vg-searchmore-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 24px
}

.vg-searchmore-chip {
    padding: 8px 14px;
    background: #fff;
    border: 1px solid var(--hairline-dark);
    color: #111;
    font-family: var(--fontbody);
    font-size: 13px;
    cursor: pointer;
    transition: .2s
}

.vg-searchmore-chip.is-active,.vg-searchmore-chip:hover {
    background: #111;
    color: #fff;
    border-color: #111
}

.vg-searchmore-submit {
    width: 100%;
    min-height: 46px;
    padding: 14px 24px;
    box-sizing: border-box;
    background: #111;
    color: #fff;
    border: none;
    font-family: var(--fontheader);
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 2px;
    line-height: 1.2;
    text-transform: uppercase;
    cursor: pointer
}

.vg-searchmore-hoods-head {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    margin-bottom: 20px;
    width: 100%
}

.vg-searchmore-hoods-head a {
    color: #000
}

.vg-searchmore-hoods-head h4 {
    margin: 0;
    font-family: var(--fontheader);
    font-weight: 400;
    font-size: 24px;
    color: #111
}

.vg-searchmore-hoods {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-bottom: 28px
}

.vg-searchmore-hood {
    position: relative;
    aspect-ratio: 16/6;
    width: 100%;
    overflow: hidden;
    background: #000;
    color: #fff;
    text-decoration: none;
    cursor: pointer
}

.vg-searchmore-hood img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: .8
}

.vg-searchmore-hood::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg,rgba(0,0,0,.1) 50%,rgba(0,0,0,.7) 100%)
}

.vg-searchmore-hood-label {
    position: absolute;
    right: 12px;
    bottom: 10px;
    left: 12px;
    z-index: 2;
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    color: #fff
}

.vg-searchmore-hood-label .name {
    font-size: 18px;
    font-weight: 500
}

.vg-searchmore-hood-label .c {
    font-family: var(--fontbody);
    font-size: 9px;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    opacity: .85
}

.vg-searchmore-quicklinks {
    display: flex;
    flex-direction: column;
    gap: 0;
    padding-top: 20px;
    border-top: 1px solid var(--hairline)
}

.vg-searchmore-quicklinks a {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    padding: 14px 0;
    border-bottom: 1px dashed var(--hairline);
    font-family: var(--fontheader);
    font-size: 18px;
    color: #111;
    text-decoration: none;
    transition: color .2s
}

.vg-searchmore-quicklinks a:last-child {
    border-bottom: none
}

.vg-searchmore-quicklinks a:hover {
    color: #555
}

.vg-searchmore-quicklinks a span.c {
    font-family: var(--fontbody);
    font-size: 10px;
    letter-spacing: 1.5px;
    color: var(--light-muted)
}

@media (max-width: 1100px) {
    .vg-area-grid {
        grid-template-columns:repeat(2,1fr)
    }

    .new-listings-grid {
        grid-template-columns: repeat(2,1fr);
        gap: 48px 24px
    }

    .market-stats-list {
        grid-template-columns: repeat(2,minmax(0,1fr));
        gap: 30px
    }

    .vg-blog-home>.body-container {
        grid-template-columns: repeat(2,minmax(0,1fr))!important
    }

    .vg-home-directory-list,.vg-truncate-list {
        grid-template-columns: repeat(2,minmax(0,1fr));
        column-gap: 24px
    }
}

@media (max-width: 900px) {
    .vg-topnav-inner {
        padding:16px 15px
    }

    .vg-topnav.vg-topnav--light .vg-topnav-inner,.vg-topnav.vg-topnav--scrolled .vg-topnav-inner {
        padding: 16px 15px!important
    }

    body:has(.betteridx) nav:not(.vg-topnav):not(.top-nav) {
        padding: 12px 15px!important
    }

    .vg-nav-account-btn,.vg-nav-contact-btn,.vg-topnav-btn-label {
        display: none
    }

    .vg-hamburger,.vg-nav-menu-btn {
        display: inline-flex
    }

    .vg-hamburger>span {
        display: block;
    }

    .vg-topnav-btn {
        min-height: 30px;
        padding: 10px 11px;
        font-size: 13px;
        letter-spacing: 2px;
        line-height: 1.2;
        background: transparent!important;
    }

    .vg-menu-account-btn {
        display: inline-flex
    }

    .vg-topnav-logo {
        width: 122px;
        height: 36px
    }

    .vg-topnav-logo img {
        height: 36px!important;
        transform: none!important;
        transition: filter .18s
    }

    #video-hero,.vg-hero {
        min-height: 100dvh;
        height: 100%;
    }

    .vg-hero-content,.video-hero-content {
        padding: 120px 15px 15px;
        margin-bottom: 0;
    }

    .vg-hero h1,.vg-hero-content>h1,.vg-hero-content>h3 {
        font-size: 44px
    }

    .vg-hero-search-row {
        grid-template-columns: 1fr
    }

    .vg-hero-search-row>.vg-hero-search-btn {
        grid-column: 1/-1;
        min-height: 60px;
        padding: 14px 24px;
        font-size: 13px;
        letter-spacing: 2px;
        line-height: 1.2
    }

    .vg-split,.vg-team-layout {
        grid-template-columns: 1fr
    }

    .vg-split-image,.vg-team-photo {
        min-height: 380px
    }

    .vg-split-text,.vg-team-content {
        padding: 0
    }

    .vg-section-header {
        padding: 0 20px;
        margin-bottom: 48px
    }

    .market-stats-section,.new-listings-section,.vg-action-cards-section,.vg-faq,.vg-home-blogs-section,.vg-home-directory-section,.vg-neighborhoods,.vg-reviews-section,.vg-team-section {
        padding-top: 80px!important;
        padding-bottom: 80px!important
    }

    .vg-split--showcase {
        padding-top: 0!important;
        margin-top: -33px
    }

    .vg-action-cards-section,.vg-neighborhoods {
        padding-bottom: 0!important
    }

    .inner-content {
        padding: 0 15px!important
    }

    .market-stats-grid,.new-listings-grid,.vg-area-grid {
        grid-template-columns: 1fr;
        padding: 0;
        gap: 20px
    }

    .vg-area-grid {
        gap: 1px
    }

    .market-stats-list {
        border-bottom: 0
    }

    .market-stats-list li {
        padding-right: 0;
        font-size: 12px!important
    }

    .vg-reviews-viewport {
        width: calc(100% - 30px);
        padding: 0
    }

    .vg-home-area-directory {
        padding: 15px 20px;
        gap: 0;
        margin: 0!important;
        border: none
    }

    .vg-home-directory-accordion {
        padding: 0
    }

    .vg-home-directory-list,.vg-truncate-list {
        grid-template-columns: repeat(2,minmax(0,1fr));
        column-gap: 15px
    }

    .vg-truncate-list {
        max-height: 300px
    }

    .vg-blog-track {
        grid-template-columns: repeat(2,1fr);
        gap: 16px
    }

    .vg-blog-controls {
        display: none
    }

    .vg-blog-home>.body-container {
        grid-template-columns: 1fr!important;
        gap: 28px!important;
        padding: 0 15px!important
    }

    .vg-area-card {
        aspect-ratio: 16/9
    }

    .vg-area-card .vg-area-card-overlay {
        background: linear-gradient(15deg,#000000a1,transparent)
    }

    .blog-post .blog-has-img img {
        height: 220px
    }

    #normal-footer,#sticky-footer,.main-footer,.vg-footer {
        padding: 64px 20px 32px
    }

    .vg-menu-overlay {
        grid-template-columns: 1fr
    }

    .vg-menu-image-col {
        padding: 32px 24px;
        min-height: auto;
        overflow: visible;
    }

    .vg-menu-body {
        padding: 32px 24px
    }

    .vg-menu-heading {
        font-size: clamp(30px, 5vw, 41px)!important;
        margin-bottom: 48px
    }

    .vg-menu-grid {
        grid-template-columns: 1fr;
        gap: 32px
    }

    .vg-searchmore-popover {
        width: 100vw
    }

    .vg-searchmore-left {
        padding: 60px 25px 28px
    }

    .vg-searchmore-right {
        padding: 28px 25px
    }

    .vg-menu-image-cta {
        flex-direction: column;
        width: 100%;
        max-width: none;
        margin-top: 40px;
    }
    .vg-menu-brand, .vg-menu-contact-block {
        max-width: none;
    }
.vg-menu-brand img {
    height: 50px;
}
    .vg-menu-cta-btn {
        min-height: 46px;
        padding: 14px 24px;
        font-size: 17px;
        line-height: 1.2
    }

    .vg-home-valuation-consult-btn, .vg-team-btn {
        width: 100%!important;
        text-align: center;
        justify-content: center;
        margin-bottom: 10px!important;
    }
}

@media (max-width: 700px) {
    .new-listings-grid {
        grid-template-columns:1fr;
        gap: 40px
    }

    .vg-blog-track {
        grid-template-columns: 1fr;
        gap: 14px
    }

    .vg-blog-card {
        aspect-ratio: 16/9
    }

    .vg-blog-card-info {
        padding: 16px
    }

    .vg-blog-card-info h3 {
        font-size: 19px!important
    }

    .view-more-btn {
        min-height: 46px;
        padding: 14px 24px!important;
        font-size: 13px;
        letter-spacing: 2px;
        line-height: 1.2;
        width: 100%!important
    }

    .view-all-link {
        width: 100%!important
    }
}

.vg-listings-header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 32px;
    margin: 0 0 30px;
    flex-wrap: wrap
}

.new-listings-section .vg-listings-header h1,.new-listings-section .vg-listings-header h2 {
    margin: 0!important;
    flex: 1 1 auto
}

.vg-listings-title {
    flex: 1 1 540px
}

.vg-listings-header-actions {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: flex-end
}

.vg-listings-save-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 14px 24px;
    background: #111;
    color: #fff;
    border: 1px solid #111;
    font-family: var(--fontheader)!important;
    font-size: 13px;
    font-weight: 500;
    margin: 0;
    letter-spacing: 2px;
    line-height: 1.2;
    text-transform: uppercase;
    cursor: pointer;
    transition: background .2s,color .2s;
    white-space: nowrap;
    min-height: 46px;
    box-sizing: border-box
}

.vg-listings-header-btn i,.vg-listings-save-btn i {
    font-size: 13px
}

.vg-listings-header-btn {
    display: none;
    align-items: center;
    gap: 10px;
    min-height: 46px;
    padding: 14px 24px;
    background: #fff;
    color: #111;
    border: 1px solid rgba(17,17,17,.25);
    box-sizing: border-box;
    font-family: var(--fontheader);
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 2px;
    line-height: 1.2;
    text-transform: uppercase;
    text-decoration: none;
    white-space: nowrap;
    transition: background .2s,border-color .2s
}

.vg-listings-header-btn.is-visible {
    display: inline-flex
}

.vg-listings-header-btn:hover {
    background: #f7f7f7;
    border-color: rgba(17,17,17,.45);
    color: #111
}

.vg-listings-header-actions.is-loading .vg-listings-save-btn {
    display: none
}

.vg-listings-header-skeleton {
    display: none;
    width: 118px;
    min-height: 46px;
    box-sizing: border-box;
    background: linear-gradient(90deg,rgba(255,255,255,.65) 0,rgba(0,0,0,.06) 50%,rgba(255,255,255,.65) 100%);
    background-size: 200% 100%;
    animation: 1.8s infinite vg-shimmer;
    border-radius: 0
}

.vg-listings-header-skeleton.is-visible {
    display: inline-flex
}

.vg-listings-save-btn.is-loading {
    cursor: progress
}

.vg-listings-save-btn.is-loading i {
    display: none
}

.vg-listings-save-btn.is-loading::before {
    content: '';
    width: 13px;
    height: 13px;
    border: 1px solid currentColor;
    border-top-color: transparent;
    border-radius: 50%;
    animation: .7s linear infinite vg-save-spin
}

@keyframes vg-save-spin {
    to {
        transform: rotate(360deg)
    }
}

.vg-listings-save-btn:hover {
    background: var(--maincolor);
    color: #fff
}

.vg-listings-modal-overlay {
    position: fixed;
    inset: 0;
    z-index: 9999;
    background: rgba(0,0,0,.55);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
    opacity: 0;
    transition: opacity .3s
}

.vg-listings-modal-overlay.is-visible {
    opacity: 1
}

.vg-listings-modal-box {
    position: relative;
    width: 100%;
    max-width: 440px;
    background: #fff;
    padding: 48px 40px 40px;
    transform: translateY(20px);
    transition: transform .3s
}

.vg-listings-modal-overlay.is-visible .vg-listings-modal-box {
    transform: translateY(0)
}

.vg-listings-modal-close {
    position: absolute;
    top: 14px;
    right: 16px;
    width: 32px;
    height: 32px;
    background: 0 0!important;
    color: var(--maincolor)!important;
    border: none;
    font-size: 26px;
    line-height: 1;
    cursor: pointer;
    padding: 0
}

.vg-listings-modal-box h2 {
    margin: 0 0 12px;
    font-family: var(--font)!important;
    font-weight: 500!important;
    font-size: clamp(30px, 5vw, 41px)!important;
    line-height: 1!important;
    letter-spacing: -1px;
    text-transform: none;
    color: var(--maincolor)
}

.vg-listings-modal-sub {
    margin: 0 0 24px;
    font-family: var(--fontbody);
    font-size: 14px;
    font-weight: 300;
    line-height: 1.6;
    color: var(--mutedtext)
}

.vg-listings-modal-box label {
    display: block;
    margin: 14px 0 6px;
    font-family: var(--fontbody);
    font-size: 11px;
    font-weight: 400;
    letter-spacing: 1.4px;
    text-transform: uppercase;
    color: var(--mutedtext)
}

.vg-listings-modal-box input,.vg-listings-modal-box select {
    width: 100%;
    padding: 0 10px;
    background: #fff;
    border: 1px solid var(--hairline-dark,#ddd);
    font-family: var(--fontbody);
    font-size: 14px;
    color: var(--maincolor)
}

.vg-listings-modal-box input:focus,.vg-listings-modal-box select:focus {
    outline: 0;
    border-color: var(--maincolor)
}

.vg-listings-modal-submit {
    width: 100%;
    margin-top: 22px;
    min-height: 46px;
    padding: 14px 24px;
    box-sizing: border-box;
    background: var(--maincolor);
    color: #fff;
    border: none;
    font-family: var(--fontheader);
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 2px;
    line-height: 1.2;
    text-transform: uppercase;
    cursor: pointer;
    transition: background .2s
}

.vg-listings-modal-submit:hover {
    background: #333
}

.vg-listings-modal-error {
    display: none;
    margin-top: 14px;
    padding: 10px 12px;
    background: #fdecec;
    color: #b71c1c;
    font-family: var(--fontbody);
    font-size: 13px;
    line-height: 1.4
}

.vg-listings-modal-error a {
    color: #b71c1c;
    font-weight: 600;
    text-decoration: underline
}

.vg-listings-modal-success {
    display: none;
    margin-top: 14px;
    padding: 10px 12px;
    background: #e8f5e9;
    color: #1b5e20;
    font-family: var(--fontbody);
    font-size: 13px;
    line-height: 1.4
}

.vg-listings-modal-foot {
    margin: 24px 0 0;
    font-family: var(--fontbody);
    font-size: 13px;
    color: var(--mutedtext);
    text-align: center
}

.vg-listings-modal-foot a {
    color: var(--maincolor);
    text-decoration: underline;
    cursor: pointer
}

.vg-auth-view {
    display: block
}

@media (max-width: 700px) {
    .vg-listings-header {
        gap: 20px;
        margin-bottom: 20px
    }

    .vg-listings-header-actions {
        width: 100%;
        justify-content: space-between;
        flex-wrap: nowrap
    }

    .vg-listings-header-btn,.vg-listings-save-btn {
        padding: 10px 17px;
        font-size: 10px;
        min-height: 36px;
        letter-spacing: 2px;
        line-height: 1.2;
        width: 100%;
        justify-content: center
    }

    .vg-listings-header-skeleton {
        width: 104px;
        min-height: 42px
    }

    .vg-listings-modal-box {
        padding: 40px 24px 28px
    }
}

.new-listings-grid>.bidx-card {
    width: 100%;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 20px
}

.bidx-card {
    position: relative;
    border-radius: 0;
    box-shadow: none;
    transition: opacity .4s,transform .4s,filter .4s;
    opacity: 0;
    transform: translateY(20px);
    overflow: hidden;
    min-width: 0;
    max-width: 100%;
    cursor: pointer
}

.bidx-card.card-revealed {
    opacity: 1;
    transform: translateY(0)
}

.bidx-card:hover {
    box-shadow: none;
    transform: scale(.98)
}

.bidx-card-photo-wrap {
    position: relative;
    z-index: 4;
    aspect-ratio: 3/2;
    overflow: hidden;
    background: #edeae4;
    flex-shrink: 0;
    width: 100%
}

.bidx-card-photo-wrap img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%!important;
    object-fit: cover;
    opacity: 0;
    transition: opacity .3s;
    min-width: auto!important
}

.bidx-card-photo-wrap img.loaded {
    opacity: 1
}

.bidx-card-photo-wrap img[style*=opacity] {
    transition: opacity .15s
}

.bidx-card-swipe-track {
    display: flex;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 4;
    will-change: transform;
    transition: transform .25s ease-out;
    touch-action: pan-y;
    background: #e5e5e5;
}

.bidx-card-slide {
    position: static!important;
    flex: 0 0 100%;
    width: 100%!important;
    min-width: 100%!important;
    height: 100%!important;
    object-fit: cover;
    opacity: 1!important;
    transition: none!important
}

.bidx-card-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    pointer-events: auto;
    background: #00000054;
    border: none;
    border-radius: 50%;
    width: 28px;
    height: 28px;
    cursor: pointer;
    opacity: 0;
    transition: opacity .6s;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    color: #fff;
    padding: 0
}

.bidx-card:hover .bidx-card-arrow {
    opacity: 1
}

.bidx-card-arrow:hover {
    background: #fff;
    color: #000
}

.bidx-card-arrow-left {
    left: 8px
}

.bidx-card-arrow-right {
    right: 8px
}

@media (max-width: 768px) {
    .bidx-card-arrow {
        display:none
    }
}

.bidx-card-no-image {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    background: #303030;
    color: #fff;
    font-size: 13px;
    font-weight: 500
}

.bidx-card-dots {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 5;
    display: flex;
    gap: 5px;
    pointer-events: none;
    opacity: 0;
    transition: opacity .5s
}

.bidx-card-dots.visible {
    opacity: 1;
    transition: opacity .3s
}

.bidx-card-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: rgba(255,255,255,.5);
    transition: background .2s
}

.bidx-card-dot.active {
    background: #fff
}

.bidx-card-badges {
    position: absolute;
    top: 15px;
    left: 15px;
    display: flex;
    gap: 4px;
    z-index: 5;
    pointer-events: none
}

.bidx-card-badge {
    background: rgb(255 255 255);
    color: #111;
    font-family: var(--fontbody, sans-serif);
    font-size: 11px;
    font-weight: 400;
    padding: 3px 8px;
    text-transform: uppercase;
    letter-spacing: 2px;
    line-height: 1.2;
    white-space: nowrap
}

.bidx-card-badge.badge-sold {
    background: #e74c3c;
    color: #fff
}

.bidx-card-badge.badge-pending {
    background: #e9880c;
    color: #fff
}

.bidx-card-badge.bidx-card-badge-type {
    background: rgba(255,255,255,.85);
    color: #222;
    font-weight: 400;
    text-transform: none;
    letter-spacing: 0;
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px)
}

.bidx-card-actions {
    position: absolute;
    top: 15px;
    right: 15px;
    z-index: 10;
    display: flex;
    gap: 6px;
    pointer-events: auto
}

.bidx-card-actions a,.bidx-card-actions button {
    background: rgba(0,0,0,.45)!important;
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    border: none;
    border-radius: 50%;
    width: 34px;
    height: 34px;
    min-width: 34px;
    flex-shrink: 0;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    color: #fff;
    padding: 0;
    text-decoration: none;
    transition: background .15s;
    line-height: 1
}

.bidx-card-actions a:hover,.bidx-card-actions button:hover {
    opacity: .7
}

.bidx-card-actions .bidx-fav {
    color: #fff
}

.bidx-card-actions .bidx-fav.bidx-favorited {
    color: #e74c3c;
    background: #fff!important
}

.bidx-card-body {
    padding: 0
}

.bidx-card-price {
    font-size: min(8vw,24px);
    font-weight: 600;
    letter-spacing: -1px;
    color: #222;
    line-height: 1.2;
    display: flex;
    align-items: center;
    gap: 6px;
    font-family: var(--fontheader)
}

.bidx-card-price-drop {
    font-size: 11px;
    font-weight: 600;
    color: #16a34a;
    display: inline-flex;
    align-items: center;
    gap: 3px
}

.bidx-card-price-up {
    font-size: 11px;
    font-weight: 600;
    color: #e74c3c;
    display: inline-flex;
    align-items: center;
    gap: 3px
}

.bidx-icon-arrow-down::before,.bidx-icon-arrow-up::before {
    display: inline-block;
    line-height: 1
}

.bidx-icon-arrow-down::before {
    content: "\2193";
    color: #16a34a;
    font-size: 13px;
    font-weight: 900
}

.bidx-icon-arrow-up::before {
    content: "\2191";
    color: #e74c3c;
    font-size: 13px;
    font-weight: 900
}

.bidx-card-stats {
    font-size: 13px;
    color: #555;
    margin-top: 3px
}

.bidx-card-address {
    font-size: 13px;
    color: #555;
    margin-top: 2px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

.bidx-card-extras {
    font-size: 11px;
    color: #999;
    margin-top: 4px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

.bidx-card-type-row {
    line-height: 1
}

.bidx-card-type-row .bidx-card-badge {
    display: inline-flex;
    position: static;
    color: #555;
    background: 0 0;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    padding: 0
}

.bidx-card>a {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 0;
    overflow: hidden;
    font-size: 0;
    color: transparent;
    text-decoration: none
}

.bidx-fav {
    transition: transform .15s cubic-bezier(.34, 1.56, .64, 1),background .2s;
    -webkit-tap-highlight-color: transparent
}

.bidx-fav i {
    font-size: 16px;
    font-family: 'Font Awesome 7 Pro'!important;
    line-height: 1;
    font-weight: 900;
    -webkit-text-stroke: 0;
    color: #fff!important;
    transition: color .2s,transform .25s cubic-bezier(.34, 1.56, .64, 1);
    display: inline-block;
    transform-origin: center center
}

.bidx-fav.bidx-favorited {
    background: rgba(0,0,0,.45)
}

.bidx-fav.bidx-favorited i {
    color: #e74c3c!important
}

@media (hover: hover) {
    .bidx-fav:hover {
        opacity:.7
    }
}

.bidx-fav:active {
    transform: scale(.85)
}

.bidx-fav:active i {
    transform: scale(.9)
}

.bidx-fav.bidx-fav-pop i {
    animation: .45s cubic-bezier(.34,1.56,.64,1) bidx-fav-pop
}

@keyframes bidx-fav-pop {
    0%,100% {
        transform: scale(1)
    }

    20% {
        transform: scale(.7)
    }

    45% {
        transform: scale(1.45)
    }

    70% {
        transform: scale(.9)
    }
}

.bidx-card.bidx-skeleton {
    opacity: 1;
    transform: none;
    cursor: default;
    pointer-events: none
}

.bidx-card.bidx-skeleton .bidx-sk-photo {
    aspect-ratio: 3/2;
    background: linear-gradient(90deg,rgba(0,0,0,.04) 0,rgba(0,0,0,.08) 50%,rgba(0,0,0,.04) 100%);
    background-size: 200% 100%;
    animation: 1.8s infinite vg-shimmer
}

.bidx-card.bidx-skeleton .bidx-sk-line {
    height: 14px;
    margin-top: 6px;
    background: linear-gradient(90deg,rgba(0,0,0,.04) 0,rgba(0,0,0,.08) 50%,rgba(0,0,0,.04) 100%);
    background-size: 200% 100%;
    animation: 1.8s infinite vg-shimmer
}

.bidx-card.bidx-skeleton .bidx-sk-price {
    width: 35%;
    height: 18px;
    margin-top: 10px
}

.bidx-card.bidx-skeleton .bidx-sk-stats {
    width: 60%
}

.bidx-card.bidx-skeleton .bidx-sk-address {
    width: 80%
}

.bidx-card.bidx-skeleton,.bidx-card.bidx-skeleton .bidx-sk-line,.bidx-card.bidx-skeleton .bidx-sk-photo {
    border-radius: 0!important
}

body.vg-scroll-lock {
    position: fixed!important;
    left: 0;
    right: 0;
    width: 100%;
    overflow: hidden;
    overscroll-behavior: none
}

.bidx-mob-loc-overlay,.vg-cr-mob-loc-overlay {
    overscroll-behavior: contain;
    touch-action: pan-y
}

.bidx-mob-loc-overlay-dropdown,.vg-cr-mob-loc-overlay-dropdown {
    overscroll-behavior: contain
}

.vg-cr-mob-loc-overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 10000;
    background: #fff;
    display: flex;
    flex-direction: column
}

.vg-cr-mob-loc-overlay-header {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 12px 8px;
    border-bottom: 1px solid #eee;
    flex-wrap: wrap;
    flex-shrink: 0
}

.vg-cr-mob-loc-overlay-back {
    background: 0 0;
    border: none;
    font-size: 18px;
    cursor: pointer;
    padding: 0;
    color: #000;
    flex-shrink: 0
}

.vg-cr-mob-loc-overlay-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    flex: 1;
    min-width: 0
}

.vg-cr-tb-loc-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    max-width: 100%;
    background: #f4f1ec;
    border: 1px solid rgba(0,0,0,.08);
    border-radius: 999px;
    color: #111;
    font-size: 13px;
    line-height: 1;
    padding: 7px 9px 7px 12px
}

.vg-cr-tb-loc-pill-text {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}

.vg-cr-tb-loc-pill-x {
    cursor: pointer;
    font-size: 14px;
    line-height: 1;
    color: #666
}

.vg-cr-mob-loc-overlay-pills .vg-cr-tb-loc-pill {
    font-size: 14px;
    padding: 5px 10px 5px 12px
}

.vg-cr-mob-loc-overlay-clear {
    background: 0 0;
    border: none;
    color: #c51313;
    font-weight: 600;
    font-size: 14px;
    cursor: pointer;
    white-space: nowrap;
    flex-shrink: 0;
    padding: 0
}

.vg-cr-mob-loc-overlay-input-wrap {
    padding: 8px 12px;
    border-bottom: 1px solid #eee;
    flex-shrink: 0
}

.vg-cr-mob-loc-overlay-input {
    width: 100%;
    border: 1px solid #ddd!important;
    border-radius: 8px!important;
    padding: 10px 12px!important;
    font-size: 15px;
    outline: 0;
    box-shadow: none!important;
    margin: 0!important
}

.vg-cr-mob-loc-overlay-input:focus {
    border-color: var(--brandblue,#2a7f8e)!important
}

.vg-cr-mob-loc-overlay-dropdown {
    flex: 1;
    min-height: 0;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch
}

.vg-cr-tb-loc-section-header {
    padding: 7px 16px;
    background: #f4f1ec;
    border-bottom: 1px solid #eee;
    color: #777;
    font-family: var(--fontbody);
    font-size: 10px;
    letter-spacing: 1.6px;
    text-transform: uppercase
}

.vg-cr-tb-loc-item {
    padding: 12px 16px;
    border-bottom: 1px solid #f5f5f5;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 14px;
    transition: background .1s
}

.vg-cr-tb-loc-item:hover {
    background: #f5f5f5
}

.vg-cr-tb-loc-item-name {
    min-width: 0;
    color: #111;
    font-size: 14px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}

.vg-cr-tb-loc-item-type {
    color: #777;
    font-size: 12px;
    white-space: nowrap
}

.vg-reviews-section .vg-reviews-grid {
    display: grid;
    grid-template-columns: minmax(0,1fr) minmax(0,1.1fr);
    gap: 80px;
    align-items: center;
    text-align: left
}

.vg-reviews-section .vg-reviews-grid .vg-reviews-header {
    border: 1px solid rgba(255,255,255,.24);
    padding: 30px;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: left
}

.vg-reviews-section .vg-reviews-grid .vg-reviews-label {
    margin: 0 0 18px
}

.vg-reviews-section .vg-reviews-grid h1,.vg-reviews-section .vg-reviews-grid h2 {
    margin: 0 0 30px;
    max-width: none;
    text-align: left
}

.vg-reviews-section .vg-reviews-grid .vg-reviews-body {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    min-width: 0;
    text-align: left
}

.vg-reviews-section .vg-reviews-grid .vg-reviews-viewport {
    width: 100%;
    max-width: none;
    margin: 0 0 32px
}

.vg-reviews-section .vg-reviews-grid .vg-review-card {
    align-items: flex-start;
    text-align: left
}

.vg-reviews-section .vg-reviews-grid .vg-review-quote {
    margin: 0 0 32px;
    font-size: clamp(18px, 1.8vw, 17px);
    line-height: 1.55;
    max-width: none
}

.vg-reviews-section .vg-reviews-grid .vg-review-author {
    margin: 0 0 14px
}

.vg-reviews-section .vg-reviews-grid .vg-review-link {
    margin-top: 6px
}

.vg-reviews-section .vg-reviews-grid .vg-reviews-nav {
    justify-content: flex-start;
    margin-top: 0
}

@media (max-width: 900px) {
    .vg-reviews-section .vg-reviews-grid {
        grid-template-columns:1fr;
        gap: 40px;
        text-align: center
    }

    .vg-reviews-section .vg-reviews-grid .vg-reviews-header {
        text-align: center
    }

    .vg-reviews-section .vg-home-valuation-consult-btn {
        width: 100%
    }

    .vg-reviews-section .vg-reviews-grid h1,.vg-reviews-section .vg-reviews-grid h2 {
        text-align: center
    }

    .vg-reviews-section .vg-reviews-grid .vg-review-card,.vg-reviews-section .vg-reviews-grid .vg-reviews-body {
        align-items: center;
        text-align: center
    }

    .vg-reviews-section .vg-reviews-grid .vg-reviews-nav {
        justify-content: center
    }
}

.vg-reviews-page,.vg-whyus-page {
    background: #fff
}

.vg-whyus-tabs-wrap {
    background: #f1f1f1;
    border-bottom: 1px solid rgba(17,17,17,.14);
    position: relative;
    z-index: 5;
    padding: 9px 0;
    border-top: 1px solid rgba(17,17,17,.14);
}

.vg-whyus-tabs-wrap .inner-content {
    display: flex
}

.vg-whyus-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 3px;
    margin-bottom: -1px;
    align-items: stretch;
}

.vg-whyus-tab {
    display: inline-flex;
    align-items: center;
    padding: 18px 26px;
    font-family: var(--fontbody);
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 2.6px;
    text-transform: uppercase;
    color: #666!important;
    text-decoration: none!important;
    border: 1px solid transparent;
    border-bottom: none;
    background: 0 0;
    transition: color .18s,background .18s;
    white-space: nowrap;
    background: white;
}

.vg-whyus-tab:hover {
    color: #111!important;
    background: rgba(17,17,17,.03)
}

.vg-whyus-tab.is-active {
    color: #111!important;
    background: #fff;
    border-color: rgba(17,17,17,.14);
    position: relative
}

.vg-whyus-tab.is-active::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: -1px;
    height: 2px;
    background: #fff
}

.vg-reviews-hero {
    background: #0a0a0a;
    color: #fff;
    padding: 140px 0 120px
}

.vg-reviews-hero .inner-content {
    text-align: left
}

.vg-reviews-hero-eyebrow {
    margin: 0 0 28px!important;
    font-family: var(--fontbody);
    font-size: 11px!important;
    font-weight: 500;
    letter-spacing: 4px;
    text-transform: uppercase;
    color: rgba(255,255,255,.7)!important
}

.vg-reviews-hero-h1 {
    margin: 0 0 36px!important;
    max-width: 1100px!important;
    font-family: var(--font)!important;
    font-weight: 500!important;
    font-size: clamp(30px, 5vw, 41px)!important;
    line-height: 1!important;
    letter-spacing: -1px;
    text-transform: none;
    color: #fff!important
}

.vg-reviews-hero-h1 em {
    font-style: italic
}

.vg-reviews-hero-lead {
    margin: 0 0 80px!important;
    max-width: 820px;
    font-family: var(--fontbody);
    font-size: 17px!important;
    font-weight: 300;
    line-height: 1.85!important;
    color: rgba(255,255,255,.86)!important
}

.vg-reviews-hero-lead strong {
    color: #fff;
    font-weight: 500
}

.vg-reviews-hero-stats {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 0;
    border-top: 1px solid rgba(255,255,255,.18);
    border-bottom: 1px solid rgba(255,255,255,.18)
}

.vg-stat {
    display: flex;
    flex-direction: column;
    gap: 14px;
    padding: 48px;
    border-right: 1px solid rgb(0 0 0);
    background: white;
}

.vg-stat:last-child {
    border-right: none
}

.vg-stat-num {
    font-family: var(--fontheader);
    font-weight: 400;
    font-size: clamp(40px, 4.4vw, 38px);
    line-height: 1;
    letter-spacing: -.5px;
    color: #000000;
}

.vg-stat-plus {
    display: inline-block;
    margin-left: 2px;
    font-size: .55em;
    vertical-align: super;
    color: rgba(255,255,255,.7);
    font-weight: 400
}

.vg-stat-label {
    font-family: var(--fontbody);
    font-size: 17px;
    font-weight: 500;
    color: rgb(0 0 0 / 62%);
    line-height: 1.55;
    max-width: 220px
}

.vg-reviews-page .vg-agent-cta-section,.vg-whyus-page .vg-agent-cta-section {
    padding: 120px 0
}

.vg-reviews-page-section {
    padding: 110px 0;
    background: #fff
}

.vg-reviews-page-section.is-cream {
    background: var(--creambg)
}

.vg-reviews-page-section .inner-content {
    text-align: left
}

.vg-reviews-page-eyebrow {
    margin: 0 0 18px!important;
    font-family: var(--fontbody);
    font-size: 11px!important;
    font-weight: 500;
    letter-spacing: 4px;
    text-transform: uppercase;
    color: var(--light-muted)!important
}

.vg-reviews-page-h2 {
    margin: 0 0 32px!important;
    max-width: 920px!important;
    font-family: var(--font)!important;
    font-weight: 500!important;
    font-size: clamp(30px, 5vw, 41px)!important;
    line-height: 1!important;
    letter-spacing: -1px!important;
    text-transform: none;
    color: var(--maincolor)!important
}

.vg-reviews-page-h2 em {
    font-style: normal!important;
    color: var(--red);
}

.vg-reviews-page-intro {
    margin: 0 0 64px!important;
    max-width: 820px;
    font-family: var(--fontbody);
    font-size: 16px!important;
    line-height: 1.85!important;
    color: var(--mutedtext)!important
}

.vg-reviews-page-intro strong {
    color: var(--maincolor);
    font-weight: 500
}

.vg-reviews-page-grid {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 28px;
    align-items: stretch
}

.vg-review-card-static {
    display: flex;
    flex-direction: column;
    gap: 22px;
    padding: 36px 32px 32px;
    background: #fff;
    border: 1px solid rgba(17,17,17,.1);
    transition: border-color .2s,transform .2s
}

.vg-reviews-page-section:nth-of-type(2n) .vg-review-card-static {
    background: #fff
}

.vg-review-card-static:hover {
    border-color: rgba(17,17,17,.28);
    transform: translateY(-2px)
}

.vg-review-card-quote {
    margin: 0;
    font-weight: 300!important;
    font-size: 15px!important;
    line-height: 1.55!important;
    color: var(--maincolor)!important;
    flex: 1
}

.vg-review-card-meta {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-top: auto;
    padding-top: 14px;
    border-top: 1px solid rgba(17,17,17,.08)
}

.vg-review-card-author {
    margin: 0;
    font-family: var(--fontbody);
    font-size: 13px;
    font-weight: 500;
    color: var(--maincolor);
    letter-spacing: .2px
}

.vg-review-card-role {
    margin: 0;
    font-size: 10px!important;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--light-muted)!important;
}

.vg-review-card-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-family: var(--fontbody);
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 1.6px;
    text-transform: uppercase;
    color: var(--maincolor)!important;
    text-decoration: none;
    border-bottom: 1px solid var(--maincolor);
    padding-bottom: 4px;
    align-self: flex-start;
    transition: gap .2s
}

.vg-review-card-link:hover {
    gap: 14px
}

.vg-reviews-final-cta {
    padding: 130px 0;
    background: #0a0a0a;
    color: #fff;
    text-align: center
}

.vg-reviews-final-cta .inner-content {
    text-align: center
}

.vg-reviews-final-cta .vg-reviews-final-actions,.vg-reviews-final-cta .vg-reviews-final-h2,.vg-reviews-final-cta .vg-reviews-final-text {
    max-width: 880px;
    margin-left: auto;
    margin-right: auto
}

.vg-reviews-final-h2 {
    margin: 0 0 28px;
    font-family: var(--font)!important;
    font-weight: 500!important;
    font-size: clamp(30px, 5vw, 41px)!important;
    line-height: 1!important;
    letter-spacing: -1px;
    text-transform: none;
    color: #fff
}

.vg-reviews-final-h2 em {
    font-style: italic
}

.vg-reviews-final-text {
    margin: 0 auto 44px;
    max-width: 700px;
    font-family: var(--fontbody);
    font-size: 16px;
    font-weight: 300;
    line-height: 1.85;
    color: rgba(255,255,255,.86)
}

.vg-reviews-final-text strong {
    color: #fff;
    font-weight: 500
}

.vg-reviews-final-actions {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 36px;
    justify-content: center
}

.vg-reviews-final-cta .vg-team-btn {
    color: #fff;
    border-bottom-color: rgba(255,255,255,.6)
}

.vg-reviews-final-cta .vg-team-btn:hover {
    border-bottom-color: #fff
}

@media (max-width: 1100px) {
    .vg-reviews-page-grid {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }

    .vg-reviews-hero-stats {
        grid-template-columns: repeat(2,1fr)
    }

    .vg-stat:nth-child(2) {
        border-right: none
    }

    .vg-stat:first-child,.vg-stat:nth-child(2) {
        border-bottom: 1px solid rgba(255,255,255,.12)
    }

    .vg-stat:nth-child(3),.vg-stat:nth-child(4) {
        padding-top: 48px
    }
}

@media (max-width: 700px) {
    .vg-reviews-hero {
        padding:110px 0 80px
    }

    .vg-reviews-hero-eyebrow {
        letter-spacing: 3px;
        margin-bottom: 18px
    }

    .vg-reviews-hero-h1 {
        font-size: clamp(30px, 5vw, 41px)!important;
        margin-bottom: 28px
    }

    .vg-reviews-hero-lead {
        font-size: 15px;
        margin-bottom: 56px
    }

    .vg-reviews-hero-stats {
        grid-template-columns: 1fr;
        padding: 20px;
        background: white;
    }

    .vg-stat {
        padding: 32px 0;
        border-right: none;
        border-bottom: 1px solid rgba(255,255,255,.12)
    }

    .vg-stat:last-child {
        border-bottom: none
    }

    .vg-stat-num {
        font-size: clamp(36px, 12vw, 52px)
    }

    .vg-stat-label {
        max-width: none
    }

    .vg-reviews-page .vg-agent-cta-section {
        padding: 80px 20px
    }

    .vg-reviews-page-section {
        padding: 80px 0
    }

    .vg-reviews-page-h2 {
        font-size: clamp(30px, 5vw, 41px)!important;
        margin-bottom: 22px!important
    }

    .vg-reviews-page-intro {
        font-size: 15px;
        margin-bottom: 44px
    }

    .vg-reviews-page-grid {
        grid-template-columns: 1fr;
        gap: 16px
    }

    .vg-review-card-static {
        padding: 28px 24px;
        gap: 18px
    }

    .vg-review-card-quote {
        font-size: 16px
    }

    .vg-reviews-final-cta {
        padding: 80px 20px
    }

    .vg-reviews-final-h2 {
        font-size: clamp(30px, 5vw, 41px)!important
    }

    .vg-reviews-final-text {
        font-size: 15px;
        margin-bottom: 32px
    }

    .vg-reviews-final-actions {
        gap: 24px;
        flex-direction: column;
        align-items: center
    }
}

.vg-whyus-hub-grid-section {
    padding: 110px 0 130px;
    background: #fff
}

.vg-whyus-hub-eyebrow {
    margin: 0 0 18px!important;
    font-family: var(--fontbody);
    font-size: 11px!important;
    font-weight: 500;
    letter-spacing: 4px;
    text-transform: uppercase;
    color: var(--light-muted)!important;
    display: none;
}

.vg-whyus-hub-h2 {
    margin: 0 0 28px!important;
    max-width: 920px!important;
    font-family: var(--font)!important;
    font-weight: 500!important;
    font-size: clamp(30px, 5vw, 41px)!important;
    line-height: 1!important;
    letter-spacing: -1px;
    text-transform: none;
    color: var(--maincolor)!important
}

.vg-whyus-hub-h2 em {
    font-style: italic!important
}

.vg-whyus-hub-intro {
    margin: 0 0 64px;
    max-width: 820px;
    font-family: var(--fontbody);
    font-size: 16px;
    font-weight: 300;
    line-height: 1.85;
    color: var(--mutedtext)
}

.vg-whyus-hub-grid {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 50px;
    margin-top: 30px
}

.vg-whyus-hub-card {
    position: relative;
    display: flex;
    flex-direction: column;
    text-decoration: none!important;
    background: #fff;
    color: #111;
    overflow: hidden
}

.vg-whyus-hub-card-bg {
    width: 100%;
    aspect-ratio: 3/2;
    object-fit: cover;
    display: block;
    transition: transform .6s
}

.vg-whyus-hub-card:hover .vg-whyus-hub-card-bg {
    transform: scale(1.04)
}

.vg-whyus-hub-card-hit {
    position: absolute;
    inset: 0;
    z-index: 4;
    display: block;
    color: transparent!important;
    font-size: 0;
    line-height: 0;
    text-decoration: none;
    text-indent: -9999px;
    overflow: hidden
}

.vg-whyus-hub-card-body {
    display: flex;
    flex-direction: column;
    padding: 24px 0 0;
    color: #111;
    height: auto
}

.vg-whyus-hub-card-eyebrow {
    margin: 0 0 12px!important;
    font-family: var(--fontbody);
    font-size: 11px!important;
    font-weight: 500;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: var(--light-muted)!important
}

.vg-whyus-hub-card-title {
    margin: 0 0 12px!important;
    font-family: var(--font)!important;
    font-weight: 500!important;
    font-size: clamp(30px, 5vw, 41px)!important;
    line-height: 1!important;
    letter-spacing: -1px;
    text-transform: none;
    color: #111
}

.vg-whyus-hub-card-title em {
    font-style: italic
}

.vg-whyus-hub-card-text {
    margin: 0 0 18px;
    font-family: var(--fontbody);
    font-size: 14px;
    font-weight: 300;
    line-height: 1.7;
    color: #111
}

.vg-whyus-hub-card-arrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-family: var(--fontbody);
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 2.4px;
    text-transform: uppercase;
    color: #111;
    border-bottom: 1px solid rgba(17,17,17,.7);
    padding-bottom: 6px;
    align-self: flex-start;
    transition: gap .25s,border-color .25s;
    margin-top: 30px;
    margin-bottom: 30px
}

.vg-whyus-hub-card:hover .vg-whyus-hub-card-arrow {
    gap: 18px;
    border-color: #111
}

#team-grid .vg-whyus-hub-grid {
    grid-template-columns: repeat(3,minmax(0,1fr))
}

#team-grid .vg-whyus-hub-card-bg {
    aspect-ratio: 1/1
}

@media (max-width: 1100px) {
    #team-grid .vg-whyus-hub-grid {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
}

.vg-whyus-subhero {
    position: relative;
    overflow: hidden;
    background: #222;
    color: #fff;
    padding: 100px 0 50px;
}

.vg-whyus-subhero--image {
    min-height: 540px;
    display: flex;
    align-items: center;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat
}

.vg-whyus-subhero--image::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 0;
    background: linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.58) 46%,rgba(0,0,0,.35))
}

.vg-whyus-subhero .inner-content {
    position: relative;
    z-index: 1;
    text-align: left
}

.vg-whyus-subhero-eyebrow {
    margin: 0 0 24px!important;
    font-family: var(--fontbody);
    font-size: 11px!important;
    font-weight: 500;
    letter-spacing: 4px;
    text-transform: uppercase;
    color: rgba(255,255,255,.7)!important
}

.vg-whyus-subhero-h1 {
    margin: 0 0 32px!important;
    max-width: 1100px;
    font-family: var(--font)!important;
    font-weight: 500!important;
    font-size: clamp(30px, 5vw, 55px)!important;
    line-height: 1.2!important;
    letter-spacing: -1px;
    text-transform: none;
    color: #fff!important
}

.vg-whyus-subhero-h1 em {
    font-style: italic
}

.vg-whyus-subhero-lead {
    margin: 0!important;
    max-width: 800px!important;
    font-family: var(--fontbody);
    font-size: 16px!important;
    line-height: 1.85!important;
    color: rgba(255,255,255,.86)!important
}

.vg-whyus-section {
    padding: 110px 0;
    background: #fff
}

.vg-whyus-section.is-cream {
    background: var(--creambg)
}

.vg-whyus-section .inner-content {
    text-align: left
}

.vg-whyus-eyebrow {
    margin: 0 0 18px!important;
    font-family: var(--fontbody);
    font-size: 11px!important;
    font-weight: 500!important;
    letter-spacing: 4px;
    text-transform: uppercase;
    color: var(--light-muted)!important
}

.vg-whyus-h2 {
    margin: 0 0 28px!important;
    max-width: 920px!important;
    font-family: var(--font)!important;
    font-weight: 500!important;
    font-size: clamp(30px, 5vw, 41px)!important;
    line-height: 1!important;
    letter-spacing: -1px;
    text-transform: none;
    color: var(--maincolor)!important
}

.vg-whyus-h2 em {
    font-style: italic!important
}

.vg-whyus-body {
    max-width: 820px;
    font-family: var(--fontbody);
    font-size: 16px;
    font-weight: 300;
    line-height: 1.85;
    color: var(--mutedtext)
}

.vg-whyus-body p {
    margin: 0 0 18px
}

.vg-whyus-body p:last-child {
    margin: 0
}

.vg-whyus-body strong {
    color: var(--maincolor);
    font-weight: 500
}

.vg-whyus-body a {
    color: var(--maincolor);
    text-decoration: underline
}

.vg-whyus-steps {
    display: grid;
    grid-template-columns: 280px minmax(0,1fr);
    gap: 60px;
    align-items: flex-start;
    margin-top: 32px
}

.vg-whyus-steps-nav {
    display: flex;
    flex-direction: column;
    gap: 0;
    border-left: 1px solid rgba(17,17,17,.12)
}

.vg-whyus-step-tab {
    text-align: left;
    background: 0 0;
    border: none;
    padding: 18px 24px;
    font-family: var(--fontbody);
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    color: #777;
    cursor: pointer;
    border-left: 2px solid transparent;
    margin-left: -1px;
    transition: color .2s,border-color .2s
}

.vg-whyus-step-tab:hover {
    color: #111
}

.vg-whyus-step-tab.is-active {
    color: var(--maincolor);
    border-left-color: var(--maincolor)
}

.vg-whyus-step-panel {
    display: none
}

.vg-whyus-step-panel.is-active {
    display: block
}

.vg-whyus-step-panel h3 {
    margin: 0 0 18px;
    font-family: var(--font)!important;
    font-weight: 500!important;
    font-size: clamp(30px, 5vw, 41px)!important;
    line-height: 1!important;
    letter-spacing: -1px;
    text-transform: none;
    color: var(--maincolor)
}

.vg-whyus-step-panel a {
    color: #111;
    text-decoration: underline
}

.vg-whyus-step-panel p {
    margin: 0 0 16px;
    font-family: var(--fontbody);
    font-size: 16px;
    font-weight: 300;
    line-height: 1.85;
    color: var(--mutedtext)
}

.vg-whyus-step-panel ul {
    margin: 0 0 18px;
    padding: 0;
    list-style: none
}

.vg-whyus-step-panel li {
    position: relative;
    padding-left: 22px;
    margin: 0 0 10px;
    font-family: var(--fontbody);
    font-size: 15px;
    font-weight: 300;
    line-height: 1.7;
    color: var(--mutedtext)
}

.vg-whyus-step-panel li::before {
    content: '\2713';
    position: absolute;
    left: 0;
    top: 0;
    color: var(--maincolor);
    font-weight: 600
}

.vg-whyus-pillars {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 24px;
    margin-top: 40px
}

.vg-whyus-pillar {
    padding: 40px 32px;
    background: #fff;
    color: #fff
}

.vg-whyus-pillar-eyebrow {
    margin: 0 0 14px!important;
    font-family: var(--fontbody);
    font-size: 11px!important;
    font-weight: 500;
    letter-spacing: 2.4px;
    text-transform: uppercase;
    color: rgb(10 10 10)!important
}

.vg-whyus-pillar-title {
    margin: 0 0 14px!important;
    font-family: var(--font)!important;
    font-weight: 500!important;
    font-size: clamp(30px, 5vw, 41px)!important;
    line-height: 1!important;
    color: #0a0a0a!important;
    letter-spacing: -1px!important;
    text-transform: none
}

.vg-whyus-pillar-text {
    margin: 0;
    font-family: var(--fontbody);
    font-size: 14px!important;
    font-weight: 300;
    line-height: 1.7;
    color: rgb(10 10 10)!important
}

@media (max-width: 900px) {
    .vg-whyus-tabs-wrap .inner-content {
        overflow-x:auto;
        -webkit-overflow-scrolling: touch
    }

    .vg-whyus-tabs {
        flex-wrap: nowrap
    }

    .vg-whyus-tab {
        padding: 14px 18px;
        font-size: 10px;
        letter-spacing: 1.8px
    }

    .vg-whyus-hub-grid {
        grid-template-columns: repeat(2,minmax(0,1fr));
        gap: 16px
    }

    .vg-whyus-pillars {
        grid-template-columns: 1fr;
        gap: 14px
    }

    .vg-whyus-pillar {
        padding: 32px 26px
    }

    .vg-whyus-steps {
        grid-template-columns: 1fr;
        gap: 28px
    }

    .vg-whyus-steps-nav {
        flex-direction: row;
        overflow-x: auto;
        border-left: none;
        border-bottom: 1px solid rgba(17,17,17,.12);
        -webkit-overflow-scrolling: touch
    }

    .vg-whyus-step-tab {
        border-left: none;
        border-bottom: 2px solid transparent;
        margin-left: 0;
        margin-bottom: -1px;
        white-space: nowrap
    }

    .vg-whyus-step-tab.is-active {
        border-left-color: transparent;
        border-bottom-color: var(--maincolor)
    }
}

@media (max-width: 700px) {
    #team-grid .vg-whyus-hub-grid {
        grid-template-columns:1fr
    }

    .vg-whyus-hub-grid-section {
        padding: 70px 0 90px
    }

    .vg-whyus-hub-grid {
        grid-template-columns: 1fr;
        gap: 16px
    }

    .vg-whyus-hub-h2 {
        font-size: clamp(30px, 5vw, 41px)!important
    }

    .vg-whyus-hub-intro {
        margin-bottom: 44px
    }

    .vg-whyus-subhero {
        padding: 180px 0 64px;
    }

    .vg-whyus-subhero--image {
        min-height: 520px;
        background-position: center
    }

    .vg-whyus-subhero--image::before {
        background: rgba(0,0,0,.7)
    }

    .vg-whyus-subhero-h1 {
        font-size: clamp(36px, 5vw, 41px)!important;
    }

    .vg-whyus-section {
        padding: 70px 0
    }

    .vg-whyus-h2 {
        font-size: clamp(30px, 5vw, 41px)!important;
        margin-bottom: 22px!important
    }

    .vg-whyus-body {
        font-size: 15px
    }

    .vg-whyus-step-panel h3 {
        font-size: clamp(30px, 5vw, 41px)!important
    }

    .vg-reviews-page .vg-agent-cta-section,.vg-whyus-page .vg-agent-cta-section {
        padding: 70px 0
    }
}

.vg-home-valuation {
    position: relative;
    padding: 140px 0!important;
    background-image: url('https://u.realgeeks.media/santacruz11/images/santa-cruz-ca-official-home-valuation.jpg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    color: #fff;
    overflow: hidden;
    min-height: 50vh;
    display: flex;
    align-items: center;
    justify-content: center
}

.vg-home-valuation-overlay {
    position: absolute;
    inset: 0;
    background: rgb(0 0 0 / 23%);
    z-index: 0;
    pointer-events: none
}

.vg-home-valuation-inner {
    position: relative;
    z-index: 1;
    text-align: center;
    width: 100%;
    /* background: #ffffffcc; */
    color: #111;
    padding: 60px
}

.vg-home-valuation-inner:before {
    content: "";
    position: absolute;
    inset: 0;
    /* backdrop-filter: blur(10px); */
    -webkit-backdrop-filter: blur(10px);
    z-index: -2
}

.vg-home-valuation-title {
    margin: 0 auto 40px!important;
    font-family: var(--font)!important;
    font-weight: 500!important;
    font-size: clamp(30px, 5vw, 41px)!important;
    line-height: 1!important;
    letter-spacing: -1px;
    text-transform: none;
    color: #ffffff !important;
    max-width: 900px
}

.vg-home-valuation-title em {
    font-style: italic
}

.vg-home-valuation-form {
    display: flex;
    align-items: stretch;
    max-width: 1000px;
    margin: 0 auto;
    background: 0 0;
    box-shadow: 0 20px 60px rgb(0 0 0 / 11%);
    height: 70px;
}

.vg-home-valuation-input {
    flex: 1 1 auto;
    min-width: 0;
    padding: 22px 26px!important;
    border: none!important;
    outline: 0;
    font-family: var(--fontbody)!important;
    font-size: 16px!important;
    font-weight: 400;
    color: #111!important;
    background: #fff;
    margin: 0!important;
    height: 100%!important;
    box-shadow: none!important
}

.vg-home-valuation-input::placeholder {
    color: #888;
    font-weight: 300
}

.vg-home-valuation-btn {
    flex: 0 0 auto;
    min-height: 46px;
    padding: 14px 24px;
    box-sizing: border-box;
    background: #111;
    color: #fff;
    border: 0;
    font-family: var(--fontheader);
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 2px;
    line-height: 1.2;
    text-transform: uppercase;
    cursor: pointer;
    transition: background .25s
}

.vg-home-valuation-btn:hover {
    background: #111;
    opacity: .7
}

.pac-container {
    border: 0;
    border-radius: 0;
    box-shadow: 0 20px 60px rgba(0,0,0,.18);
    font-family: var(--fontbody);
    margin-top: 0
}

.pac-item {
    padding: 10px 16px;
    font-size: 14px;
    cursor: pointer
}

@media (max-width: 768px) {
    .vg-home-valuation {
        padding:80px 0!important;
        background-attachment: scroll
    }

    .vg-home-valuation-title {
        margin-bottom: 28px
    }

    .vg-home-valuation-form {
        flex-direction: column;
        box-shadow: 0 12px 32px rgba(0,0,0,.25);
        height: 100%;
    }

    .vg-home-valuation-input {
        padding: 18px 15px!important;
        border-bottom: 1px solid #eee
    }

    .vg-home-valuation-btn {
        min-height: 46px;
        padding: 14px 24px;
        font-size: 13px;
        letter-spacing: 2px;
        line-height: 1.2;
    }
}

.vg-home-valuation-divider {
    display: flex;
    align-items: center;
    width: 100%;
    margin: 56px auto 36px;
    font-family: var(--fontbody);
    font-size: 13px;
    letter-spacing: 4px;
    text-transform: uppercase;
    color: rgb(113 113 113);
    max-width: 1000px
}

.vg-home-valuation-divider::after,.vg-home-valuation-divider::before {
    content: "";
    flex: 1 1 auto;
    height: 1px;
    background: rgb(169 169 169 / 49%);
}

.vg-home-valuation-divider span {
    padding: 0 18px
}

.vg-home-valuation-cta {
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center
}

.vg-home-valuation-cta-heading {
    margin: 0 auto 28px!important;
    font-family: var(--font)!important;
    font-weight: 300!important;
    font-size: clamp(26px, 5vw, 29px)!important;
    line-height: 1!important;
    color: #ffffff !important;
    max-width: 720px;
    letter-spacing: -1px!important;
    text-transform: none
}

.vg-home-valuation-cta-heading em {
    font-style: italic
}

.vg-home-valuation-agents {
    display: inline-flex;
    align-items: center;
    margin: 0 0 40px;
}

.vg-home-valuation-agents img {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    object-fit: cover;
    border: 1px solid #fff;
    box-shadow: 0 6px 16px rgba(0,0,0,.18);
    background: #f4f1ec;
    display: block;
    opacity: 0;
    transform: translateX(-32px) scale(.96);
    transition: opacity .45s,transform .62s cubic-bezier(.22, 1, .36, 1);
    will-change: opacity,transform
}

.vg-home-valuation-agents.is-visible img {
    opacity: 1;
    transform: translateX(0) scale(1)
}

.vg-home-valuation-agents.is-visible img:first-child {
    transition-delay: 40ms
}

.vg-home-valuation-agents.is-visible img:nth-child(2) {
    transition-delay: 0.18s
}

.vg-home-valuation-agents.is-visible img:nth-child(3) {
    transition-delay: 0.32s
}

.vg-home-valuation-agents.is-visible img:nth-child(4) {
    transition-delay: 0.46s
}

.vg-home-valuation-agents.is-visible img:nth-child(5) {
    transition-delay: 0.6s
}

.vg-home-valuation-agents img+img {
    margin-left: -18px
}

.vg-home-valuation-consult-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    margin: 0;
    padding: 14px 24px;
    box-sizing: border-box;
    background: #fff;
    color: #111;
    border: 1px solid #111;
    font-family: var(--fontheader);
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 2px;
    line-height: 1.2;
    width: fit-content;
    text-transform: uppercase;
    text-decoration: none;
    cursor: pointer;
    transition: background .25s,color .25s
}

.vg-home-valuation-consult-btn:hover {
    background: #2b2b2b;
    color: #fff
}

.vg-home-valuation-stars {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 30px auto 22px;
    text-decoration: none;
    color: #fff;
    flex-direction: column
}

.vg-home-valuation-stars:hover {
    color: #fff;
    opacity: .7
}

.vg-home-valuation-stars-icons {
    color: #e8b545;
    font-size: 18px;
    letter-spacing: 2px;
    line-height: 1
}

.vg-home-valuation-stars-icons::before {
    content: "\2605\2605\2605\2605\2605"
}

.vg-home-valuation-stars-icons i {
    display: none
}

.vg-home-valuation-stars-text {
    font-family: var(--fontbody);
    font-size: min(2.3vw,13px);
    letter-spacing: 2px;
    text-transform: uppercase;
    border-bottom: 1px solid rgb(255 255 255 / 55%);
    padding-bottom: 3px;
    color: white;
}

.vg-home-valuation-blurb {
    max-width: 640px;
    margin: 0 auto!important;
    font-size: 16px!important;
    line-height: 1.7!important;
    color: white!important;
    font-weight: 300!important;
}

.vg-home-valuation-blurb strong {
    font-weight: 600;
    color: #ffffff;
}

@media (max-width: 768px) {
    .vg-home-valuation-inner {
        padding:36px 22px;
    }

    .vg-home-valuation-divider {
        margin: 36px 0 24px;
    }

    .vg-home-valuation-cta-heading {
        margin-bottom: 22px!important;
        font-size: clamp(30px, 5vw, 41px)!important
    }

    .vg-home-valuation-agents img {
        width: 54px;
        height: 54px
    }

    .vg-home-valuation-agents img+img {
        margin-left: -16px
    }

    .vg-home-valuation-blurb {
        font-size: 14px;
        line-height: 1.65
    }
}

.vg-split--showcase {
    background: #f4f1ec;
    min-height: auto;
    padding: 56px 0
}

.vg-split-image--showcase {
    min-height: auto;
    overflow: visible;
    display: flex;
    align-items: center;
    background: 0 0;
    justify-content: center;
    flex: 1;
    border-left: 1px solid #0000001f
}

.vg-split-image--showcase img {
    position: static;
    inset: auto;
    width: auto;
    height: auto;
    filter: none
}

.vg-showcase-grid {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 24px;
    width: 100%;
    flex-wrap: wrap;
    justify-content: center
}

.vg-showcase-img {
    width: 100%;
    height: auto;
    border-radius: 12px;
    box-shadow: 0 14px 40px rgba(0,0,0,.12);
    display: block;
    max-height: 238px;
    max-width: 548px!important
}

.vg-showcase-img--a {
    max-width: 200px;
    justify-self: center
}

.vg-showcase-img--c {
    grid-column: 1/-1;
    margin-top: 8px
}

@keyframes vgShowcaseFloat {
    0%,100% {
        transform: translateY(0)
    }

    50% {
        transform: translateY(-10px)
    }
}

@media (prefers-reduced-motion:no-preference) {
    .vg-showcase-img--a {
        animation: 6.5s ease-in-out infinite vgShowcaseFloat
    }

    .vg-showcase-img--b {
        animation: 7.5s ease-in-out .6s infinite vgShowcaseFloat
    }

    .vg-showcase-img--c {
        animation: 8s ease-in-out 1.1s infinite vgShowcaseFloat
    }
}

@media (max-width: 1368px) {
    .vg-split--showcase .vg-split {
        flex-direction:column;
        gap: 20px;
        align-items: center;
        justify-content: center
    }

    .vg-split-text {
        padding: 0;
        border: none
    }

    .vg-split-image--showcase {
        padding: 0;
        min-height: auto;
        border: none
    }

    .vg-showcase-grid {
        gap: 14px;
        align-items: center;
        justify-content: center;
        max-width: 700px
    }

    .vg-split-image--showcase img {
        width: auto;
        max-height: 165px;
        max-width: 100%!important;
        border: 1px solid #00000012
    }

    .vg-split--showcase {
        padding-top: 80px!important;
        padding-bottom: 80px!important
    }
}

.vg-area-breadcrumb-section {
    padding: 40px 0 0!important
}

.vg-area-breadcrumb-section--dark {
    background: #111;
    padding: 40px 0 0!important
}

.vg-breadcrumb--dark {
    color: #fff
}

.vg-breadcrumb--dark a {
    color: #fff!important
}

.vg-breadcrumb--dark .vg-breadcrumb-sep {
    color: rgb(255 255 255)
}

.vg-breadcrumb--dark .vg-breadcrumb-current {
    color: rgba(255,255,255,.7)
}

.vg-breadcrumb--dark .vg-breadcrumb-caret {
    color: rgba(255,255,255,.6)
}

.vg-breadcrumb--dark .vg-breadcrumb-menu {
    background: #1a1a1a;
    border-color: rgba(255,255,255,.15)
}

.vg-breadcrumb--dark .vg-breadcrumb-menu a {
    color: #fff
}

.vg-breadcrumb--dark .vg-breadcrumb-menu a.is-active,.vg-breadcrumb--dark .vg-breadcrumb-menu a:hover {
    background: rgba(255,255,255,.08)
}

.vg-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px 8px;
    font-family: var(--fontbody);
    font-size: 12px;
    color: var(--maincolor);
    margin-bottom: 30px
}

.vg-breadcrumb a {
    color: inherit;
    text-decoration: none
}

.vg-breadcrumb a:hover {
    text-decoration: underline;
    text-underline-offset: 4px
}

.vg-breadcrumb-sep {
    opacity: .4
}

.vg-breadcrumb-current {
    opacity: .7
}

.vg-breadcrumb-dd {
    display: inline;
    position: relative
}

.vg-breadcrumb-dd>summary {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    list-style: none;
    cursor: pointer
}

.vg-breadcrumb-dd>summary::-webkit-details-marker {
    display: none
}

.vg-breadcrumb-caret {
    font-size: 10px;
    opacity: .5
}

.vg-breadcrumb-dd[open] .vg-breadcrumb-caret {
    opacity: 1
}

.vg-breadcrumb-menu {
    position: absolute;
    top: calc(100% + 5px);
    margin: 0!important;
    left: 0;
    z-index: 50;
    min-width: 220px;
    max-width: calc(100vw - 24px);
    max-height: 360px;
    overflow-y: auto;
    overflow-x: hidden;
    padding: 8px 0;
    list-style: none;
    background: #fff;
    border: 1px solid var(--hairline-dark,#ddd);
    box-shadow: 0 12px 32px rgba(0,0,0,.12);
    box-sizing: border-box
}

.vg-breadcrumb-menu li {
    margin: 0;
    padding: 0
}

.vg-breadcrumb-menu a {
    display: block;
    padding: 8px 16px;
    font-size: 12px;
    color: var(--maincolor);
    text-decoration: none;
    white-space: normal;
    overflow-wrap: anywhere
}

.vg-breadcrumb-menu a:hover {
    background: var(--creambg,#f6f3ec)
}

.vg-breadcrumb-menu a.is-active {
    font-weight: 500;
    background: var(--creambg,#f6f3ec)
}

.vg-area-about {
    background: #fff;
    color: #111;
    padding: 100px 0!important;
    border-top: solid 1px #ccc;
}

.vg-area-about .vg-section-header {
    padding: 0;
    margin-bottom: 32px;
    max-width: 880px
}

.vg-area-about .vg-section-title {
    color: #111
}

.vg-area-about-body {
    max-width: 880px;
    font-family: var(--fontbody);
    font-size: 16px;
    font-weight: 300;
    line-height: 1.85;
    color: #111
}

.vg-area-about-body a {
    color: #111;
    font-weight: 500;
    text-decoration: underline
}

.vg-area-about-body p+p {
    margin-top: 1.2em
}

.vg-top-level-list {
    background: #fff;
    padding: 80px 0!important
}

.vg-top-level-list .vg-home-directory-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(auto-fill,minmax(240px,1fr));
    gap: 14px
}

.vg-top-level-list .vg-home-directory-list li {
    margin: 0;
    padding: 0;
}

.vg-top-level-list .vg-home-directory-list a {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    padding: 20px 22px 18px;
    background: #fff;
    border: 1px solid rgba(17,17,17,.14);
    box-shadow: 0 10px 28px rgba(0,0,0,.04);
    font-family: var(--fontbody);
    font-size: 16px;
    font-weight: 500;
    text-decoration: none;
    color: #111;
    transition: background .18s,color .18s,border-color .18s,box-shadow .18s,transform .18s;
    height: 100%;
    line-height: 1.35;
    overflow: hidden;
    gap: 6px;
}
.vg-top-level-list .vg-home-directory-list a::after {
    content: "View listings";
    margin-top: 1px;
    color: rgba(17,17,17,.52);
    font-size: 10px;
    font-weight: 500;
    letter-spacing: 2px;
    line-height: 1;
    text-transform: uppercase;
    transition: color .18s
}

.vg-top-level-list .vg-home-directory-list a:hover,.vg-top-level-list .vg-home-directory-list a:focus-visible {
    background: var(--red);
    border-color: var(--red);
    box-shadow: 0 18px 36px rgba(0,0,0,.14);
    color: #fff;
    outline: 0;
    transform: translateY(-2px)
}

.vg-top-level-list .vg-home-directory-list a:hover::before,.vg-top-level-list .vg-home-directory-list a:focus-visible::before {
    transform: scaleY(1)
}

.vg-top-level-list .vg-home-directory-list a:hover::after,.vg-top-level-list .vg-home-directory-list a:focus-visible::after {
    color: rgba(255,255,255,.72)
}

@media (max-width: 768px) {
    .vg-area-breadcrumb-section {
        padding:24px 0 0!important
    }

    .vg-breadcrumb {
        font-size: 11px
    }

    .vg-area-about {
        padding: 64px 0!important
    }

    .vg-area-about-body {
        font-size: 15px;
        line-height: 1.7
    }

    .vg-top-level-list {
        padding: 56px 0!important
    }

    .vg-top-level-list .vg-home-directory-list {
        grid-template-columns: repeat(auto-fill,minmax(190px,1fr));
        gap: 10px
    }

    .vg-top-level-list .vg-home-directory-list li,.vg-top-level-list .vg-home-directory-list a {
        min-height: 78px
    }

    .vg-top-level-list .vg-home-directory-list a {
        padding: 17px 18px;
        font-size: 15px
    }

    .vg-top-level-list .vg-home-directory-list a::after {
        margin-top: 12px;
        font-size: 9px;
        letter-spacing: 1.6px
    }
}

.body-content.blog .body-container {
    max-width: 880px!important;
    padding: 56px 28px 96px!important;
    margin: 0 auto!important
}

.blog .vg-agent-cta-section {
    width: 100%;
    max-width: 100%;
    margin: auto auto 50px;
    left: auto;
    right: auto;
    border-bottom: none;
    padding-top: 30px!important
}

.blog .inner-content {
    max-width: 880px!important;
    padding: 0!important
}

.blog .vg-team-layout {
    display: flex;
    flex-direction: column-reverse
}

.blog .vg-agent-cta-section .vg-team-content {
    border: none;
    padding: 30px 0;
    width: 100%
}

.blog .vg-agent-cta-section .vg-team-photo {
    aspect-ratio: 1/1
}

.vg-agent-page .vg-team-photo {
    aspect-ratio: 1/1;
    min-height: 100%;
    max-width: 600px;
    margin: 0 auto
}

.vg-agent-page .vg-agent-cta-section--no-photo .vg-team-content {
    border-right: none;
    padding: 30px 0
}

.vg-agent-contact {
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin: 0 0 26px;
    font-family: var(--fontbody);
    font-size: 14px
}

.vg-agent-contact a {
    color: var(--maincolor);
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
    text-decoration-color: rgba(17,17,17,0.35);
    transition: text-decoration-color .2s
}

.vg-agent-contact a:hover {
    text-decoration-color: var(--maincolor)
}

.body-content.blog.vg-blog-home .body-container,.vg-blog-home>.body-container {
    max-width: 1500px!important
}

.body-content.blog .blog-post {
    border: none!important;
    background: 0 0!important;
    margin: 0!important
}

.body-content.blog .blog-post .title,.body-content.blog .blog-post h1.title {
    margin: 0 0 16px!important;
    padding: 0!important;
    font-family: var(--font)!important;
    font-weight: 500!important;
    font-size: clamp(30px, 5vw, 41px)!important;
    line-height: 1!important;
    letter-spacing: -1px!important;
    color: var(--maincolor)!important;
    text-transform: none!important;
    text-align: left!important;
    max-width: 100%!important
}

.body-content.blog .blog-post .title a,.body-content.blog .blog-post h1.title a {
    color: var(--maincolor)!important;
    text-decoration: none!important
}

.body-content.blog .blog-post .title em,.body-content.blog .blog-post h1.title em {
    font-style: italic
}

.body-content.blog .blog-post .date {
    display: block;
    margin: 0 0 28px!important;
    padding: 0!important;
    background: 0 0!important;
    border: none!important;
    border-radius: 0!important;
    box-shadow: none!important;
    width: auto!important;
    float: none!important;
    font-family: var(--fontbody);
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 2.5px;
    text-transform: uppercase;
    color: var(--light-muted,#888);
    line-height: 1
}

.body-content.blog .blog-post .post-content,.body-content.blog .blog-post .user-content {
    font-family: var(--fontbody);
    font-size: 17px;
    font-weight: 300;
    line-height: 1.85;
    color: #111
}

.body-content.blog .blog-post .post-content p,.body-content.blog .blog-post .user-content p {
    margin: 0 0 1.4em!important;
    font-weight: 300;
}

.body-content.blog .blog-post .post-content h2:not(.vg-agent-cta-section h2,.vg-blog-box h2),.body-content.blog .blog-post .user-content h2 {
    margin: 56px 0 18px!important;
    padding: 0!important;
    font-family: var(--font)!important;
    font-weight: 500!important;
    font-size: clamp(30px, 5vw, 41px)!important;
    line-height: 1!important;
    letter-spacing: -1px!important;
    color: var(--maincolor)!important;
    text-transform: none!important
}

.body-content.blog .blog-post .post-content h3,.body-content.blog .blog-post .user-content h3 {
    margin: 40px 0 14px!important;
    padding: 0!important;
    font-family: var(--font)!important;
    font-weight: 500!important;
    font-size: clamp(30px, 5vw, 41px)!important;
    line-height: 1!important;
    letter-spacing: -1px!important;
    color: var(--maincolor)!important;
    text-transform: none!important
}

.body-content.blog .blog-post .post-content h2 em,.body-content.blog .blog-post .post-content h3 em {
    font-style: italic
}

.body-content.blog .blog-post .post-content ol,.body-content.blog .blog-post .post-content ul,.body-content.blog .blog-post .user-content ol,.body-content.blog .blog-post .user-content ul {
    margin: 0 0 1.4em!important;
    padding: 0 0 0 1.4em!important
}

.body-content.blog .blog-post .post-content li,.body-content.blog .blog-post .user-content li {
    margin: 0 0 .6em!important;
    padding: 0!important;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit
}

.body-content.blog .blog-post .post-content li strong {
    font-weight: 600
}

.body-content.blog .blog-post .post-content a:not(.vg-agent-cta-section a),.body-content.blog .blog-post .user-content a {
    color: var(--maincolor)!important;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
    text-decoration-color: rgba(17,17,17,0.35);
    transition: text-decoration-color .2s
}

.body-content.blog .blog-post .post-content a:hover,.body-content.blog .blog-post .user-content a:hover {
    text-decoration-color: var(--maincolor)
}

.body-content.blog .blog-post .post-content img:not(.blog-post .blog-has-img img),.body-content.blog .blog-post .user-content img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 0 0 32px
}

.body-content.blog .blog-post .post-content blockquote {
    margin: 32px 0!important;
    padding: 4px 0 4px 28px!important;
    border-left: 2px solid var(--maincolor);
    font-style: italic;
    color: #444
}

.body-content.blog .blog-post .category,.body-content.blog .blog-post .comments {
    font-size: 12px;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: var(--light-muted,#888)
}

.body-content.blog .blog-post .shareWrapper {
    display: none!important
}

.vg-blog-share {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0 0 48px;
    padding: 18px 0;
    border-top: 1px solid var(--hairline,rgba(17,17,17,.12));
    border-bottom: 1px solid var(--hairline,rgba(17,17,17,.12));
    font-family: var(--fontbody)
}

.vg-blog-share-label {
    margin-right: 8px;
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 2.5px;
    text-transform: uppercase;
    color: var(--light-muted,#888)
}

.vg-blog-share-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    margin: 0!important;
    padding: 0!important;
    background: 0 0;
    border: 1px solid var(--hairline,rgba(17,17,17,.18));
    border-radius: 50%;
    color: var(--maincolor)!important;
    font-size: 14px;
    text-decoration: none!important;
    cursor: pointer;
    transition: background .2s,color .2s,border-color .2s;
    position: relative
}

.vg-blog-share-link:hover {
    background: var(--maincolor);
    color: #fff!important;
    border-color: var(--maincolor)
}

.vg-blog-share-link i {
    margin: 0!important;
    line-height: 1
}

.vg-blog-share-copy {
    font-size: 14px
}

.vg-blog-share-copied {
    position: absolute;
    top: -32px;
    left: 50%;
    transform: translateX(-50%);
    padding: 4px 10px;
    background: var(--maincolor);
    color: #fff;
    font-size: 11px;
    letter-spacing: 1px;
    text-transform: uppercase;
    border-radius: 3px;
    opacity: 0;
    pointer-events: none;
    transition: opacity .2s;
    white-space: nowrap
}

.vg-blog-share.vg-blog-share-just-copied .vg-blog-share-copied {
    opacity: 1
}

@media (max-width: 768px) {
    .body-content.blog .body-container {
        padding:32px 20px 64px!important
    }

    .body-content.blog .blog-post .title {
        font-size: clamp(30px, 5vw, 41px)!important
    }

    .body-content.blog .blog-post .post-content,.body-content.blog .blog-post .user-content {
        font-size: 16px;
        line-height: 1.8
    }

    .body-content.blog .blog-post .post-content h2 {
        margin: 40px 0 14px!important
    }

    .vg-blog-share {
        gap: 8px;
        margin-bottom: 32px
    }

    .vg-blog-share-label {
        display: none
    }
}

.vg-hero-agent-cta {
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: 10px 20px;
    margin-top: 30px;
    padding: 0;
    width: 100%;
    z-index: 5;
    position: relative;
}

.vg-hero-agent-cta-photos {
    display: inline-flex;
    align-items: center;
    grid-column: 1;
    grid-row: 1 / span 2;
    flex-shrink: 0
}

.vg-hero-agent-cta-photos img {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    object-fit: cover;
    border: 1px solid;
    background: 0 0;
    box-shadow: 0 2px 8px rgba(0,0,0,.25);
    opacity: 0;
    transform: translateX(-32px) scale(.96);
    transition: opacity .45s,transform .62s cubic-bezier(.22, 1, .36, 1);
    will-change: opacity,transform
}

.vg-hero-agent-cta-photos.is-visible img {
    opacity: 1;
    transform: translateX(0) scale(1)
}

.vg-hero-agent-cta-photos.is-visible img:first-child {
    transition-delay: 40ms
}

.vg-hero-agent-cta-photos.is-visible img:nth-child(2) {
    transition-delay: 0.18s
}

.vg-hero-agent-cta-photos.is-visible img:nth-child(3) {
    transition-delay: 0.32s
}

.vg-hero-agent-cta-photos.is-visible img:nth-child(4) {
    transition-delay: 0.46s
}

.vg-hero-agent-cta-photos.is-visible img:nth-child(5) {
    transition-delay: 0.6s
}

.vg-hero-agent-cta-photos img+img {
    margin-left: -14px
}

.vg-hero-agent-cta-meta {
    display: flex;
    flex-direction: column;
    align-items: baseline;
    justify-content: flex-start;
    gap: 8px;
    grid-column: 2;
    grid-row: 1;
    flex: 1 1 auto;
    opacity: 0;
    overflow: hidden;
    clip-path: inset(0 100% 0 0);
    transition: clip-path 1.75s cubic-bezier(.22, 1, .36, 1) .48s,opacity .28s .48s;
    will-change: clip-path,opacity
}

.vg-hero-agent-cta-actions {
    display: flex;
    align-items: center;
    gap: 12px;
    grid-column: 2;
    grid-row: 2;
    opacity: 0;
    overflow: hidden;
    clip-path: inset(0 100% 0 0);
    transition: clip-path 1.75s cubic-bezier(.22, 1, .36, 1) .58s,opacity .28s .58s;
    will-change: clip-path,opacity
}

.vg-hero-agent-cta-photos.is-visible+.vg-hero-agent-cta-meta,
.vg-hero-agent-cta-photos.is-visible~.vg-hero-agent-cta-actions {
    opacity: 1;
    clip-path: inset(0 0 0 0)
}

@supports ((-webkit-mask-image: linear-gradient(90deg,#000,transparent)) or (mask-image:linear-gradient(90deg,#000,transparent))) {
    .vg-hero-agent-cta-meta,
    .vg-hero-agent-cta-actions {
        clip-path:none;
        -webkit-mask-image: linear-gradient(90deg,#000 0%,#000 72%,transparent 100%);
        mask-image: linear-gradient(90deg,#000 0%,#000 72%,transparent 100%);
        -webkit-mask-size: 0% 100%;
        mask-size: 0% 100%;
        -webkit-mask-repeat: no-repeat;
        mask-repeat: no-repeat;
        transition: -webkit-mask-size 1.8s cubic-bezier(.22, 1, .36, 1) .48s,mask-size 1.8s cubic-bezier(.22, 1, .36, 1) .48s,opacity .28s .48s;
        will-change: mask-size,opacity
    }

    .vg-hero-agent-cta-photos.is-visible+.vg-hero-agent-cta-meta,
    .vg-hero-agent-cta-photos.is-visible~.vg-hero-agent-cta-actions {
        -webkit-mask-size: 145% 100%;
        /* mask-size: 145% 100%; */
    }
}

.vg-hero-agent-cta-stars {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
    text-decoration: none;
    color: #fff;
    transition: opacity .2s
}

.vg-hero-agent-cta-stars:hover {
    opacity: .8;
    color: #fff
}

.vg-hero-agent-cta-stars-icons {
    color: #f5b301;
    font-size: 13px;
    letter-spacing: 1px
}

.vg-hero-agent-cta-stars-icons::before {
    content: "\2605\2605\2605\2605\2605"
}

.vg-hero-agent-cta-stars-icons i {
    display: none
}

.vg-hero-agent-cta-stars-text {
    font-family: var(--fontbody);
    font-size: 11px;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: rgba(255,255,255,.9)
}

.vg-hero-agent-cta-btn {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 46px;
    padding: 14px 24px;
    box-sizing: border-box;
    margin-left: 0;
    border-radius: 0;
    background: rgb(85 85 85 / 78%) !important;
    /* border: 1px solid #ffffff8c; */
    color: #fff;
    font-family: var(--fontheader);
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 2px;
    line-height: 1.2;
    text-transform: uppercase;
    text-decoration: none;
    cursor: pointer;
    white-space: nowrap;
    overflow: hidden;
    isolation: isolate;
    z-index: 0;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.14);
    transition: 300ms all;
}

.vg-hero-agent-cta-btn::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    background: linear-gradient(135deg,rgba(255,255,255,.16),rgba(255,255,255,.03));
    pointer-events: none
}

.vg-hero-agent-cta-btn::before {
    content: "\f27a";
    display: inline-block;
    flex: 0 0 auto;
    position: relative;
    z-index: 1;
    font-family: var(--fontawesome),"Font Awesome 6 Pro","Font Awesome 5 Pro","Font Awesome 5 Free";
    font-size: 14px;
    font-weight: 300;
    line-height: 1;
    letter-spacing: 0;
    text-transform: none
}

.vg-hero-agent-cta-btn {
    text-shadow: 0 1px 10px rgba(0,0,0,.28)
}

.vg-hero-agent-cta-btn:hover {
    border-color: #fff;
    color: #111;
    background: white!important;
}

.vg-hero-agent-cta-btn--secondary {
    border-color: rgba(255,255,255,.55)
}

.vg-hero-agent-cta-btn--secondary::before {
    content: "\f0c0"
}

@media (max-width: 700px) {
    .vg-hero-agent-cta {
        margin-top:18px;
        width: 100%;
        grid-template-columns: auto 1fr;
        align-items: center;
        gap: 14px 16px;
    }

    .vg-hero-agent-cta-photos {
        grid-column: 1;
        grid-row: 1;
        align-self: center
    }

    .vg-hero-agent-cta-photos img {
        width: 48px;
        height: 48px
    }

    .vg-hero-agent-cta-photos img+img {
        margin-left: -12px
    }

    .vg-hero-agent-cta-meta {
        align-items: flex-end;
        grid-column: 2;
        grid-row: 1;
        width: 100%;
        min-width: 0
    }

    .vg-hero-agent-cta-actions {
        grid-column: 1/-1;
        grid-row: 2;
        flex-direction: row;
        align-items: stretch;
        gap: 10px;
        width: 100%
    }

    .vg-hero-agent-cta-stars {
        align-items: end;
    }

    .vg-hero-agent-cta-stars-text {
        font-size: 10.7px;
        text-align: right;
    }

    .vg-hero-agent-cta-btn {
        margin-left: 0;
        min-height: auto;
        padding: 14px 24px;
        font-size: min(2.5vw,10px);
        letter-spacing: 2px;
        line-height: 1.2;
        width: 100%;
    }
}

@media (max-width: 390px) {
    .vg-hero-agent-cta {
        gap: 12px 12px
    }

    .vg-hero-agent-cta-photos img {
        width: 42px;
        height: 42px
    }

    .vg-hero-agent-cta-photos img+img {
        margin-left: -11px
    }

    .vg-hero-agent-cta-stars-text {
        font-size: 10px;
        letter-spacing: 1.2px
    }
}

@media (prefers-reduced-motion:reduce) {
    .vg-hero-agent-cta-meta,.vg-hero-agent-cta-actions,.vg-hero-agent-cta-photos img,.vg-home-valuation-agents img {
        opacity: 1;
        clip-path: none;
        -webkit-mask-image: none;
        mask-image: none;
        transform: none;
        transition: none;
        will-change: auto
    }
}

.vg-sc-footer {
    background: #222;
    color: rgba(255,255,255,.72);
    padding: 80px 0 40px;
    font-family: var(--fontbody)
}

.vg-sc-footer-inner {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 56px
}

.vg-sc-footer a {
    color: #fff!important;
    text-decoration: none!important;
    font-size: 12px
}

.vg-sc-footer a:hover {
    color: rgba(255,255,255,.7)
}

.vg-sc-footer-top {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 22px;
    padding-bottom: 60px;
    border-bottom: 1px solid rgba(255,255,255,.12)
}

.vg-sc-footer-logo img {
    display: block;
    height: 64px;
    width: auto;
    max-width: 100%;
    margin: 0 auto 30px
}

.vg-sc-footer-socials {
    display: inline-flex;
    gap: 12px
}

.vg-sc-footer-socials a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border: 1px solid rgba(255,255,255,.25);
    border-radius: 50%;
    color: #fff;
    font-size: 14px;
    transition: background .2s,color .2s,border-color .2s
}

.vg-sc-footer-socials a:hover {
    background: #fff;
    color: #111!important;
    border-color: #fff
}

.vg-sc-footer-contact {
    display: flex;
    flex-direction: column;
    gap: 6px;
    align-items: center;
    font-size: 13px;
    line-height: 1.55;
    color: rgba(255,255,255,.78)
}

.vg-sc-footer-name {
    margin: 0;
    font-family: var(--fontheader)!important;
    font-size: 18px!important;
    color: #fff!important;
    letter-spacing: .3px
}

.vg-sc-footer-address,.vg-sc-footer-license {
    margin: 0;
    font-size: 12px!important;
    letter-spacing: .4px;
    color: rgba(255,255,255,.62)!important
}

.vg-sc-footer-meta {
    margin: 0;
    display: inline-flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px
}

.vg-sc-footer-meta a {
    border-bottom: 1px solid rgba(255,255,255,.25);
    padding-bottom: 1px;
    transition: border-color .2s,color .2s
}

.vg-sc-footer-meta a:hover {
    border-color: rgba(255,255,255,.6)
}

.vg-sc-footer-sep {
    color: rgba(255,255,255,.4)
}

.vg-sc-footer-links {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 36px 32px;
    padding: 56px 0;
    border-bottom: 1px solid rgba(255,255,255,.12)
}

.vg-sc-footer-col h4 {
    margin: 0 0 16px;
    font-family: var(--fontbody);
    font-size: 15px;
    font-weight: 500;
    letter-spacing: 0;
    text-transform: none;
    color: rgb(244 241 236)
}

.vg-sc-footer-col ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 10px
}

.vg-sc-footer-col li {
    margin: 0;
    width: 100%
}

.vg-sc-footer-col a {
    display: inline-block;
    font-family: var(--fontbody);
    font-size: 14px;
    color: rgb(255 255 255 / 70%)!important;
    transition: color .2s
}

.vg-sc-footer-col a:hover {
    color: #fff!important
}

.vg-sc-footer-disclaimer {
    display: flex;
    flex-direction: column;
    gap: 18px;
    padding: 40px 0 0;
    text-align: center
}

.vg-sc-footer-team-logo {
    display: none;
    margin: 0 auto;
    width: auto;
    height: 56px!important;
    max-width: 100%!important;
    filter: brightness(0) invert(1);
    opacity: .85
}

.vg-sc-footer-legal {
    margin: 0 auto;
    max-width: 880px;
    font-size: 11.5px!important;
    line-height: 1.7!important;
    color: rgba(255,255,255,.55)!important
}

.vg-sc-footer-bottom {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    margin-top: 18px;
    padding-top: 24px;
    border-top: 1px solid rgba(255,255,255,.1)
}

.vg-sc-footer-housing {
    display: inline-flex;
    align-items: center;
    gap: 14px
}

.vg-sc-footer-housing img {
    height: 26px;
    width: auto;
    filter: brightness(0) invert(1);
    opacity: .65
}

.vg-sc-footer-credit {
    margin: 0;
    font-size: 11.5px!important;
    color: rgba(255,255,255,.55)!important
}

.vg-sc-footer-credit a {
    font-weight: 400;
    color: rgba(255,255,255,.85);
    border-bottom: 1px solid rgba(255,255,255,.25);
    padding-bottom: 1px
}

.vg-sc-footer-credit a:hover {
    color: #fff;
    border-color: #fff
}

.vg-sc-footer-copy {
    margin: 0;
    font-size: 11.5px!important;
    color: rgba(255,255,255,.5)!important
}

.vg-sc-footer-copy a {
    color: rgba(255,255,255,.7);
    border-bottom: 1px solid rgba(255,255,255,.25);
    padding-bottom: 1px
}

.vg-sc-footer-copy a:hover {
    color: #fff;
    border-color: #fff
}

@media (max-width: 1100px) {
    .vg-sc-footer-links {
        grid-template-columns:repeat(2,1fr)
    }
}

@media (max-width: 700px) {
    .vg-sc-footer {
        padding:56px 0 32px
    }

    .vg-sc-footer-inner {
        padding: 0 20px
    }

    .vg-sc-footer-top {
        padding-bottom: 40px;
        gap: 18px
    }

    .vg-sc-footer-logo img {
        height: 52px
    }

    .vg-sc-footer-links {
        grid-template-columns: 1fr;
        gap: 28px;
        padding: 36px 0
    }

    .vg-sc-footer-col h4 {
        margin-bottom: 12px
    }

    .vg-sc-footer-team-logo {
        height: 44px
    }

    .vg-sc-footer-legal {
        font-size: 11px
    }
}

.vg-area-cta-bar {
    position: fixed;
    top: var(--vg-nav-height,64px);
    left: 0;
    right: 0;
    z-index: 95;
    display: none;
    padding: 12px 16px;
    background: #fff;
    border-bottom: 1px solid var(--hairline);
    opacity: 0;
    pointer-events: none;
    transition: opacity .28s
}

.vg-area-cta-bar.is-visible {
    opacity: 1;
    pointer-events: auto
}

.vg-area-cta-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    min-height: 46px;
    padding: 14px 24px;
    box-sizing: border-box;
    background: #fff;
    color: #111;
    border: 1px solid #c3c3c3;
    font-family: var(--fontheader);
    font-size: 13px;
    letter-spacing: 2px;
    line-height: 1.2;
    text-transform: uppercase;
    font-weight: 500;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    transition: background .2s
}

.vg-area-cta-btn .vg-contact-svg {
    width: 16px;
    height: 16px;
    flex-shrink: 0
}

.vg-area-cta-btn:hover {
    background: #333;
    color: #fff
}

@media (max-width: 900px) {
    body.vg-has-area-cta .vg-area-cta-bar {
        display:block
    }
}

body.vg-about-page-active .old-content,
body.vg-agent-page-active .old-content {
    display: none!important
}

body.vg-about-page-active #quicksearch-section,
body.vg-about-page-active .sidebar,
body.vg-about-page-active .f2-header,
body.vg-agent-page-active #quicksearch-section,
body.vg-agent-page-active .sidebar,
body.vg-agent-page-active .f2-header {
    display: none!important
}

body.vg-about-page-active .body-container,
body.vg-agent-page-active .body-container {
    padding-bottom: 0!important
}

body.vg-about-page-active .body-content,
body.vg-agent-page-active .body-content {
    padding-top: 0!important;
    padding-bottom: 0!important
}

.realtor-list {
    position: absolute!important;
    left: -10000px!important;
    top: auto!important;
    width: 1px!important;
    height: 1px!important;
    overflow: hidden!important;
    clip: rect(1px,1px,1px,1px)!important;
    white-space: nowrap!important
}

.vg-about-page .vg-whyus-subhero--image {
    position: relative;
    overflow: hidden;
    min-height: 100vh;
    display: flex;
    align-items: center;
    background-size: cover!important;
    background-position: center!important;
    background-repeat: no-repeat!important
}

.vg-about-page .vg-whyus-subhero--image:before {
    content: '';
    position: absolute;
    inset: 0;
    background: #00000096;
    z-index: 0
}

.vg-about-page .vg-whyus-subhero--image .inner-content {
    position: relative;
    z-index: 1
}

.vg-about-page #about-hero {
    background-image: url(https://u.realgeeks.media/hgroupms/images/top-rated-central-mississippi-real-estate-team.jpg)
}

.vg-about-page .vg-about-hero-links {
    margin-top: 32px;
}

.vg-about-page .vg-about-hero-links .vg-team-btn,
.vg-agent-profile-actions .vg-team-btn + .vg-team-btn {
    background: #fff!important;
    color: #111!important;
    gap: 10px;
    opacity: 1!important;
    transition: opacity .2s!important
}

.vg-about-page .vg-about-hero-links .vg-team-btn:hover,
.vg-agent-profile-actions .vg-team-btn + .vg-team-btn:hover {
    background: #fff!important;
    border-color: #fff!important;
    color: #111!important;
    gap: 10px;
    opacity: .6!important
}

.vg-about-page #about-story {
    padding: 100px 0!important;
    background: #fff
}

.vg-about-page #about-story h2 {
    margin: 44px 0 18px!important;
    font-family: var(--font)!important;
    font-weight: 200!important;
    font-size: clamp(30px,5vw,41px)!important;
    line-height: 1!important;
    letter-spacing: 0!important;
    text-transform: none!important;
    color: var(--maincolor,#111)!important
}

.vg-about-page #about-story h2:first-child {
    margin-top: 0!important
}

.vg-about-page #about-story p {
    font-family: var(--fontbody);
    font-size: 17px;
    line-height: 1.9;
    color: var(--mutedtext,#555)
}

.vg-about-page #team-grid {
    background: #222;
    color: #fff;
    padding: 100px 0;
}

.vg-about-page #team-grid h2 {
    color: #fff;
    font-size: min(9vw,50px);
    font-weight: 300;
    margin-bottom: 50px!important;
    display: block;
    line-height: 1;
}

.vg-about-page #team-wrapper {
    display: grid;
    grid-template-columns: repeat(auto-fit,minmax(370px,1fr));
    gap: 30px;
    position: relative;
    z-index: 1;
    margin-top: 34px
}

.vg-about-page .vg-agent {
    position: relative;
    overflow: hidden;
    aspect-ratio: 2/3;
    transform: translateX(-40px);
    opacity: 0;
    transition: transform .6s ease,opacity 1s ease,filter .5s ease;
    background: #111
}

.vg-about-page .vg-agent.visible {
    transform: translateX(0);
    opacity: 1
}

.vg-about-page .vg-agent:hover {
    filter: none
}

.vg-about-page .vg-agent a {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
    text-decoration: none;
    color: #fff
}

.vg-about-page .vg-agent img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .4s ease
}

.vg-about-page .vg-agent:hover img {
    transform: scale(1.02)
}

.vg-about-page .vg-agent h3 {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0;
    padding: 80px 16px 18px;
    background: linear-gradient(0deg, #222, #222222e3, #2228, transparent);
    color: #fff;
    text-align: center;
    font-family: var(--font)!important;
    font-weight: 200!important;
    font-size: clamp(22px,4vw,20px)!important;
    line-height: 1.05!important;
    text-transform: uppercase;
    letter-spacing: 2px!important;
}

body.vg-agent-page-active .contact-information,
body.vg-agent-page-active h2.agent-name {
    position: absolute!important;
    width: 1px!important;
    height: 1px!important;
    overflow: hidden!important;
    clip: rect(0,0,0,0)!important;
    white-space: nowrap!important;
    border: 0!important
}

.vg-agent-page {
    background: #fff;
    color: var(--maincolor,#111)
}

.vg-agent-profile-hero {
    padding: 150px 0 40px!important;
    background: #222222;
    color: #fff
}

.vg-agent-profile-hero .inner-content {
    display: grid;
    grid-template-columns: minmax(260px,420px) 1fr;
    gap: 70px;
    align-items: center
}

.vg-agent-profile-photo {
    aspect-ratio: 4/5;
    background: #161616;
    overflow: hidden;
    box-shadow: 0 22px 38px rgba(0,0,0,.28)
}

.vg-agent-profile-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block
}

.vg-agent-profile-kicker {
    margin: 0 0 14px!important;
    font-family: var(--fontheader);
    font-size: 11px!important;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: rgba(255,255,255,.72)!important;
}

.vg-agent-profile-hero h1 {
    margin: 0 0 18px!important;
    font-family: var(--font)!important;
    font-weight: 500!important;
    font-size: clamp(42px,7vw,86px)!important;
    line-height: .95!important;
    letter-spacing: 0!important;
    color: #fff!important;
    text-transform: none!important
}

.vg-agent-profile-title {
    margin: 0 0 28px!important;
    max-width: 620px;
    font-family: var(--fontbody);
    font-size: 16px!important;
    line-height: 1.8;
    color: rgba(255,255,255,.78)!important;
}

.vg-agent-profile-contact {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin: 0 0 30px
}

.vg-agent-profile-contact a {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    padding: 12px 18px;
    border: 1px solid rgba(255,255,255,.25);
    color: #fff;
    text-decoration: none;
    font-family: var(--fontheader);
    font-size: 12px;
    letter-spacing: 1.5px;
    text-transform: uppercase
}

.vg-agent-profile-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px
}

.vg-agent-profile-actions .vg-team-btn {
    justify-content: center;
    min-width: 160px;
    min-height: 46px;
    padding: 14px 24px;
    border: 1px solid #fff;
    font-family: var(--fontheader);
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 2px;
    line-height: 1.2;
    text-decoration: none
}

.vg-agent-profile-actions .vg-team-btn:first-child {
    background: #fff;
    color: #111
}

.vg-agent-bio-section {
    padding: 100px 0!important;
    background: #fff;
    border-top: solid 1px #ccc;
}

.vg-agent-bio-section h2 {
    margin: 0 0 34px!important;
    font-family: var(--font)!important;
    font-weight: 500!important;
    font-size: clamp(30px,5vw,41px)!important;
    line-height: 1!important;
    text-transform: none!important;
    letter-spacing: 0!important
}

.vg-agent-bio-section p,
.vg-agent-bio-section li {
    font-family: var(--fontbody);
    font-size: 16px;
    line-height: 1.9;
    color: var(--mutedtext,#555)
}

.vg-agent-search-section {
    padding: 70px 0!important;
    background: #222;
    color: #fff;
    border-top: solid 1px #595959;
}

.vg-agent-search-section .inner-content {
    /* max-width: 1060px!important; */
}

.vg-agent-search-section h2 {
    margin: 0 0 28px!important;
    font-family: var(--font)!important;
    font-weight: 500!important;
    font-size: clamp(30px,5vw,41px)!important;
    line-height: 1!important;
    text-transform: none!important;
    letter-spacing: 0!important;
    color: #fff!important
}

.vg-agent-search-section #vg-hero-search,
.vg-agent-search-section .vg-hero-search {
    margin: 0;
}

.vg-agent-profile-listings {
    padding: 80px 0!important;
    background: #fff
}

.vg-agent-profile-listings .inner-content {
    max-width: 2000px!important;
    padding: 0 56px!important
}

.vg-agent-profile-listings h2 {
    margin: 0!important;
    font-family: var(--font)!important;
    font-weight: 500!important;
    font-size: clamp(30px,5vw,41px)!important;
    line-height: 1!important;
    text-transform: none!important;
    letter-spacing: 0!important
}

.vg-agent-profile-listings .agent-properties h2.fp-header {
    display: none!important
}

.vg-agent-profile-listings .agent-properties {
    margin: 0!important
}

.vg-agent-profile-listings .vg-listings-header-actions,
.vg-agent-profile-listings .view-more-container,
.vg-agent-profile-listings .vg-no-listings-actions,
.vg-agent-profile-listings .vg-home-valuation-divider {
    display: none!important
}

.vg-agent-profile-listings .vg-no-listings {
    padding: 48px 28px
}

.vg-agent-profile-listings.vg-listings-fallback-active .view-more-container {
    display: flex!important
}

@media (max-width: 900px) {
    .vg-agent-profile-hero {
        padding:90px 0 60px!important
    }

    .vg-agent-profile-hero .inner-content {
        grid-template-columns: 1fr;
        gap: 34px;
        justify-content: center;
        display: flex;
        flex-direction: column;
    }

    .vg-agent-profile-photo {
        max-width: 420px
    }

    .vg-agent-profile-listings .inner-content {
        padding: 0 15px!important
    }
}

@media (max-width: 700px) {
    .vg-about-page #team-wrapper {
        grid-template-columns:repeat(auto-fit,minmax(155px,1fr));
        gap: 14px
    }

    .vg-about-page .vg-agent h3 {
        font-size: 22px!important;
        padding: 70px 10px 14px
    }
}


/* Havard Real Estate Group market overrides */
.vg-topnav--clear .vg-topnav-logo-img,
.vg-menu-brand img,
.vg-sc-footer-logo img,
.vg-sc-footer-team-logo {
    filter: brightness(0) invert(1)
}

.vg-topnav--light .vg-topnav-logo-img,
.vg-topnav--scrolled .vg-topnav-logo-img {
    filter: none
}

.vg-searchmore-submit,
.vg-cta-btn,
.vg-listings-save-btn,
.vg-listings-header-btn,
.vg-no-listings-alert-btn,
.view-more-btn,
button.view-more-btn,
.vg-home-valuation-btn,
.vg-home-valuation-consult-btn,
.vg-team-btn-solid,
.vg-agent-cta-actions .vg-team-btn-solid,
.vg-contact-modal-message,
.vg-area-cta-btn {
    background: var(--red)!important;
    border-color: var(--red)!important;
    color: #fff!important
}

.vg-hero-search-btn:hover,
.vg-searchmore-submit:hover,
.vg-cta-btn:hover,
.vg-listings-save-btn:hover,
.vg-listings-header-btn:hover,
.vg-no-listings-alert-btn:hover,
.view-more-btn:hover,
button.view-more-btn:hover,
.vg-home-valuation-btn:hover,
.vg-home-valuation-consult-btn:hover,
.vg-team-btn-solid:hover,
.vg-agent-cta-actions .vg-team-btn-solid:hover,
.vg-contact-modal-message:hover{
    background: var(--red)!important;
    border-color: var(--red)!important;
    color: #fff!important;
    opacity: .7!important
}

.vg-listings-header-btn,
.vg-listings-header-btn:hover {
    background: #222222 !important;
    border-color: #111!important;
    color: #fff!important
}

.vg-listings-header-btn:hover {
    opacity: .72!important
}

.vg-county-map-section {
    background: #222222;
    padding: 40px 0 110px;
    z-index: 1;
}

.vg-county-map-layout {
    display: grid;
    grid-template-columns: minmax(280px, .72fr) minmax(360px, 1fr);
    gap: clamp(34px,5vw,72px);
    align-items: center
}

.vg-county-map-copy .vg-eyebrow {
    margin-bottom: 18px
}

.vg-county-map-copy h2 {
    font-family: var(--font)!important;
    font-weight: 500!important;
    font-size: clamp(30px, 5vw, 41px)!important;
    line-height: 1!important;
    margin: 0 0 24px!important;
    letter-spacing: -1px;
    text-transform: none;
    color: white;
    max-width: 600px;
}

.vg-county-map-copy p {
    max-width: 520px;
    color: #ffffffa8;
    font-size: 14px!important;
    line-height: 1.8;
    margin-bottom: 30px;
}

.vg-county-map-frame {
    margin-top: -190px;
    margin-bottom: 0;
    position: relative;
    z-index: 2;
}

.vg-county-map-mount {
    min-height: 360px
}

.vg-county-map {
    width: 100%;
    height: auto;
    display: block
}

.vg-county-map .vg-backing {
    fill: #525252
}

.vg-county-map .vg-county {
    fill: #d8d8d8;
    stroke: none;
    transition: fill 220ms ease;
    cursor: pointer
}

.vg-county-map a:hover .vg-county,
.vg-county-map a:focus-visible .vg-county {
    fill: var(--red)
}

.vg-county-map .vg-county-label {
    font-family: var(--fontbody);
    font-size: 17px;
    font-weight: 500;
    fill: #404040;
    pointer-events: none;
    text-anchor: middle;
    letter-spacing: .5px;
    transition: fill 220ms ease
}

.vg-county-map a:hover .vg-county-label,
.vg-county-map a:focus-visible .vg-county-label {
    fill: #fff
}

.vg-county-map .vg-highway-outer {
    fill: none;
    stroke: #991b1b;
    stroke-width: 4.5;
    stroke-linecap: round;
    stroke-linejoin: round;
    pointer-events: none
}

.vg-county-map .vg-highway-inner {
    fill: none;
    stroke: var(--red);
    stroke-width: 3;
    stroke-linecap: round;
    stroke-linejoin: round;
    pointer-events: none
}

.vg-county-map a {
    outline: none;
    text-decoration: none
}

@media (max-width: 900px) {
    .vg-county-map-section {
        padding: 20px 0 80px;
    }

    .vg-county-map-layout {
        grid-template-columns: 1fr
    }

    .vg-county-map-copy {
        order: 1
    }

    .vg-county-map-frame {
        order: 2;
        margin: 0;
        margin-bottom: -150px;
    }

    .vg-county-map-mount {
        min-height: 260px
    }
}
