PageSourceSearch

https://kinokorealestate.com/

html kinokorealestate.com collected 2026-09-29 21:46:03 UTC 529,636 bytes, 6,153 lines download raw bytes

1<!DOCTYPE html>
2<html class="no-js" lang=en>
3<head>
4    <meta charset="utf-8">
5    <meta http-equiv="x-ua-compatible" content="ie=edge">
6    <meta name="viewport" content="width=device-width, initial-scale=1.0">
7    <meta name="twitter:card" content="summary_large_image">
8    <meta property="og:type" content="website">
9        <title>San Francisco Real Estate Agents | Kinoko Real Estate</title>
10        <meta property="og:title" content="San Francisco Real Estate Agents | Kinoko Real Estate">
11        <meta name="twitter:title" content="San Francisco Real Estate Agents | Kinoko Real Estate">
12        <meta name="description" content="Kevin &amp; Nini Gueco lead Kinoko Real Estate, San Francisco real estate agents with 500+ transactions and $734M+ in sales. Buy or sell your home with us.">
13        <meta property="og:description" content="Kevin &amp; Nini Gueco lead Kinoko Real Estate, San Francisco real estate agents with 500+ transactions and $734M+ in sales. Buy or sell your home with us.">
14        <meta name="twitter:description" content="Kevin &amp; Nini Gueco lead Kinoko Real Estate, San Francisco real estate agents with 500+ transactions and $734M+ in sales. Buy or sell your home with us.">
15        <meta property="og:image" content="https://media-production.lp-cdn.com/media/0764f1ce-af37-488d-a174-0efe8f742479">
16        <meta name="twitter:image" content="https://media-production.lp-cdn.com/media/0764f1ce-af37-488d-a174-0efe8f742479">
17        <meta property="og:url" content="https://kinokorealestate.com/">
18        <link rel="canonical" href="https://kinokorealestate.com/">
19    
19<script>(function(html){html.className = html.className.replace(/\bno-js\b/,'js')})(document.documentElement);</script>
19
20    <link rel="preconnect" href="https://fonts.googleapis.com">
21    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
22    <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Inter:100,200,300,400,500,600,700,800,900"><link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Lato:100,100i,300,300i,400,400i,700,700i,900,900i">
23    <link rel="preload" href="https://cdnjs.cloudflare.com/ajax/libs/ion-rangeslider/2.3.1/css/ion.rangeSlider.min.css" as="style" onload="this.onload=null;this.rel='stylesheet'">
24    <noscript><link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/ion-rangeslider/2.3.1/css/ion.rangeSlider.min.css"></noscript>
25    <link rel="icon" type="image/x-icon" href="/favicon.ico">
26    <link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
27    <link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
28    <link rel="icon" type="image/png" sizes="48x48" href="/favicon-48x48.png">
29    <style id="global-css">:root{--global-primary-font-family:Inter,sans-serif;--global-primary-font-family-short:Inter;--global-secondary-font-family:Lato,sans-serif;--global-secondary-font-family-short:Lato;--global-body-padding:0px;--global-background-color:#fff;--global-body-font-size:16px;--global-h1-font-size:65px;--global-h2-font-size:43px;--global-h3-font-size:31px;--global-h4-font-size:21px;--global-h5-font-size:17px;--global-h6-font-size:16px;--global-section-padding:96px;}@media (max-width: 768px){:root{--global-section-padding:64px;}}body{padding:0px;background-color:#fff;font-family:Lato,sans-serif;font-size:16px;}@media (min-width: 768px){body{padding:0px 0px 0px 0px;}}h1,h2,h3,h4,h5,h6,button{font-family:Inter,sans-serif;}h1{font-size:65px;}h2{font-size:43px;}h3{font-size:31px;}h4{font-size:21px;}h5{font-size:17px;}h6{font-size:16px;}</style>
30        <link rel="stylesheet" type="text/css" href="https://styles.luxurypresence.com/producer/index.css" />
31    <style id="website-css">@font-face{font-family:'Helvetica Neue LT Std';src:url('https://d1e1jt2fj4r8r.cloudfront.net/fonts/HelveticaNeueLT/HelveticaNeueLTStd-BdEx.woff2') format('woff2'),url('https://d1e1jt2fj4r8r.cloudfront.net/fonts/HelveticaNeueLT/HelveticaNeueLTStd-BdEx.woff') format('woff');font-weight:bold;font-style:normal;}@font-face{font-family:'NeueHaasGroteskText Pro';src:url('https://d1e1jt2fj4r8r.cloudfront.net/fonts/NHaasGroteskTXPro/NHaasGroteskTXPro-55Rg.woff2') format('woff2'),url('https://d1e1jt2fj4r8r.cloudfront.net/fonts/NHaasGroteskTXPro/NHaasGroteskTXPro-55Rg.woff') format('woff');font-weight:normal;font-style:normal;}:root{--global-primary-font-family:"Helvetica Neue LT Std",sans-serif;--global-primary-font-family-short:"Helvetica Neue LT Std";--global-secondary-font-family:"NeueHaasGroteskText Pro",sans-serif;--global-secondary-font-family-short:"NeueHaasGroteskText Pro";}footer#global-footer h3:before{content:'';background-image:url(https://res.cloudinary.com/luxuryp/images/f_auto,q_auto/fca8lyef3opuxjqid13h/kinoko-footer-resized-small-1);content:"";width:200px!important;height:50px;display:block;-webkit-background-size:contain;-webkit-background-size:contain;background-size:contain;white-space:pre;background-repeat:no-repeat;}@media only screen and (max-width: 820px){#modal-global-contact-us .close{margin-top:-30px;}}nav#global-navbar .header .navigation .sub-nav ul{background-color:transparent;}nav#global-navbar .header .navigation .sub-nav ul li{background-color:#fff;}nav#global-navbar .header .navigation .sub-nav ul li:hover{background-color:#F9F3F0;}nav#global-navbar .header .navigation .sub-nav ul a{color:#000;}nav#global-navbar.scroll{background-color:#fff!important;}nav#global-navbar.scroll li.navigation__item a.navigation__link{color:#000;}nav#global-navbar.scroll li.navigation__item a.navigation__link span:after{background-color:#000;}nav#global-navbar.scroll button.hamburger-component.hamburger{color:#354764;}nav#global-navbar .header .logo img{max-height:40px;}#global-navbar.scroll .header a.logo__link img:last-child{display:block!important;}#global-navbar.scroll .header a.logo__link img:first-child{display:none!important;}div#modal-global-contact-us div.modal-content div.contact-form.redesign:after{background-color:#354764!important;}div#modal-global-contact-us .contact-form .section-message label{color:#fff;}footer#global-footer .footer.no_newsletter .info-wrap-contact{padding-left:0;}footer#global-footer .footer.no_newsletter .info-wrap-contact h4{display:none!important;}footer#global-footer div.info-wrap{padding-top:40px;}@media only screen and (max-width: 767px){footer#global-footer div.info-wrap{padding-top:55px;}}footer#global-footer h3{font-size:0px;}footer#global-footer h3:after{font-family:var(--global-secondary-font-family);position:relative;line-height:25px;top:30px;font-size:14px;white-space:pre-wrap;text-transform:none;margin-top:40px;padding-top:40px;content:"\a We are guided by connection, collaboration, and consciousness. Our long term success depends on being \a more than transactional, and our goal at Kinoko is to establish clients for life. It's that simple.";}footer#global-footer .lp-link:after{background-color:#C44628;}
31#global-footer div.footer .info-wrap-contact_zone svg path{fill:#354764;}#global-footer div.footer .info-wrap-contact_title{color:#354764;}#global-footer div.footer .info-wrap .contact_title{color:#354764;}@media only screen and (min-width: 769px){#global-footer .footer .info-privacy{border-top:1px solid #354764;}}@media only screen and (max-width: 768px){#global-footer .footer .info-privacy .socials_zone{margin-top:25px;}#global-footer .footer .info-privacy .copy_zone{border-top:1px solid #354764;}}div#global-mobile-contact .buttons-holder a{background:#C44628;border:2px solid #a6a6a6!important;}div#global-mobile-contact .buttons-holder a i{color:#fff;}footer#global-footer .footer.no_newsletter .info-wrap-contact_zone:first-of-type{margin-bottom:21px;}footer#global-footer .info-wrap-contact_zone{margin-bottom:21px;}@media only screen and (max-width: 768px){footer#global-footer .footer.no_newsletter .info-wrap-contact_zone:first-of-type{margin-bottom:20px;}}@media only screen and (max-width: 768px){footer#global-footer .info-wrap-contact_zone{margin-bottom:0;}}@media only screen and (max-width: 768px){footer#global-footer .footer.no_newsletter h3{margin-bottom:20px;}}div#modal-global-contact-us .contact-form .section-message textarea{border:solid 1px #fff;}div#modal-global-contact-us .contact-form .lp-input{border-color:#fff;}div#modal-global-contact-us .contact-form .section-message:after{background:#fff;}div#modal-global-contact-us .contact-form .info-zone .info-zone_contact_cell{margin-bottom:21px;}div#modal-global-contact-us .contact-form .info-zone .type_user:nth-of-type(2){margin-bottom:21px;}@media only screen and (max-width: 768px){div#modal-global-contact-us .contact-form .info-zone .type_user{margin-bottom:25px;}}div#modal-global-contact-us .contact-form .info-zone_contact{margin-bottom:14px;}div#modal-global-contact-us .contact-form .section-message h2{font-size:38px;}@media only screen and (max-width: 768px){div#modal-global-contact-us .contact-form .section-message h2{font-size:28px;}}div#modal-global-contact-us .contact-form h2{font-size:38px;}@media only screen and (max-width: 768px){div#modal-global-contact-us .contact-form h2{font-size:28px;}}div#modal-global-contact-us .contact-form .section-message form{max-width:490px;}@media only screen and (max-width:1080px){div#modal-global-contact-us .contact-form h2{font-size:37px;}}@media only screen and (max-width:925px){div#modal-global-contact-us .contact-form h2{font-size:28px;}}div#modal-global-contact-us .close{top:7vh;}div#modal-global-contact-us div.modal-content div.contact-form.redesign:after{background-color:rgba(0, 0, 0, 0.75);}.redesign .btn--small{padding:20px 46px!important;}.lp-btn{padding:20px 46px!important;}button.newsletter-signup__form-item{line-height:1;font-weight:700;}#modal-global-contact-us .contact-form .section-message form .submitButton{padding:14px 20px;}#modal-global-contact-us .redesign .link:after{background-color:#fff;}footer#global-footer .footer .info-privacy .copy_zone a,footer#global-footer .footer .info-privacy .powered_zone a{font-weight:400;}#modal-global-contact-us .section-message:after{background:#fff!important;}#modal-global-contact-us .lp-input-group .lp-input{border-color:#fff!important;}#modal-global-contact-us .lp-input-group .lp-label{text-transform:uppercase;}#modal-global-contact-us .lp-input-group textarea{border:solid 1px #fff!important;}@media (max-width: 560px){#modal-global-contact-us .contact-form .info-zone .type_user:nth-of-type(2){margin-bottom:22px;}#modal-global-contact-us .contact-form .info-zone .type_user{margin-bottom:22px!important;}}#global-footer .info-wrap-contact_zone h4{line-height:.8;}@media (max-width: 768px){#global-footer .info-wrap-contact_zone h4{line-height:1.5;}}#global-navbar .navbar .navigation ul .sub-nav-container .sub-nav ul li a{color:#C44628;}nav#global-navbar .header .navigation__link{font-size:11px;}h1{font-size:50px!important;}h2{font-size:30px!important;}h3{font-size:27px!important;}h4{font-size:16px!important;}h5{font-size:11px!important;}div#global-sidemenu a{font-size:16px;}.custom-intro h1.custom-intro__title{font-size:40px!important;}.custom-intro .custom-intro__subtitle{font-size:17px!important;}nav .header .navigation .sub-nav__link{font-size:11px!important;}footer .footer.no_newsletter h3{color:#fff;}footer .footer.no_newsletter h3:after{color:#354864!important;}</style>
32    <style id="wow-hide-elements">.wow{visibility:hidden!important}</style>
33        <style id="page-css">
34            #section-bcabfae8-4664-4efa-a488-eceb5362ee27{color:#ffffff;--fontColor:#ffffff;--fontColor_H:0;--fontColor_S:0%;--fontColor_L:100%;--fontColor_A:1;--fontColor_darkenDir:-1;--bgColor:#fff;--bgColor_H:0;--bgColor_S:0%;--bgColor_L:100%;--bgColor_A:1;--bgColor_darkenDir:-1;}@media (max-width: 560px){#section-bcabfae8-4664-4efa-a488-eceb5362ee27 div.collection .btn-container{padding-bottom:50px;}}#section-bcabfae8-4664-4efa-a488-eceb5362ee27 .collection .item{-webkit-align-items:flex-start;-webkit-box-align:flex-start;-ms-flex-align:flex-start;align-items:flex-start;}#section-bcabfae8-4664-4efa-a488-eceb5362ee27 .lp-title-group{text-align:left;margin:0px 0 0px;}#section-bcabfae8-4664-4efa-a488-eceb5362ee27 .lp-text--pretitle{font-size:30px;}#section-bcabfae8-4664-4efa-a488-eceb5362ee27 .video-wrapper video,#section-bcabfae8-4664-4efa-a488-eceb5362ee27 .video-wrapper div.poster{z-index:0!important;}#section-bcabfae8-4664-4efa-a488-eceb5362ee27>.video-wrapper>.full-screen-video-component>.video-wrapper::before{content:'';position:absolute;width:100%;height:100%;top:0;left:0;background-color:#000;z-index:-1000;}#section-bcabfae8-4664-4efa-a488-eceb5362ee27>.video-wrapper>.full-screen-video-component>.video-wrapper >video{-webkit-transition:opacity 2s cubic-bezier(0.835, 0, 0.19, 1);transition:opacity 2s cubic-bezier(0.835, 0, 0.19, 1);opacity:0;}#section-bcabfae8-4664-4efa-a488-eceb5362ee27>.video-wrapper>.full-screen-video-component>.video-wrapper.playing>
34video{opacity:1;}#section-bcabfae8-4664-4efa-a488-eceb5362ee27 .collection{padding:120px 0 0;min-height:100vh;margin:0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;}@media (max-width: 768px){#section-bcabfae8-4664-4efa-a488-eceb5362ee27 .collection.slick-initialized{pointer-events:none;}}#section-bcabfae8-4664-4efa-a488-eceb5362ee27 .collection .item{text-align:center;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;min-height:calc(100vh - 240px);}#section-bcabfae8-4664-4efa-a488-eceb5362ee27 .collection .btn-container{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;gap:23px;margin-top:32px;}@media(max-width: 560px){#section-bcabfae8-4664-4efa-a488-eceb5362ee27 .collection .btn-container{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:10px;}}@media (max-width: 768px){#section-bcabfae8-4664-4efa-a488-eceb5362ee27 .collection .lp-btn{pointer-events:initial;}}#section-bcabfae8-4664-4efa-a488-eceb5362ee27 .collection .slick-active .animation{-webkit-transform:translateX(0);-moz-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0);opacity:1;}#section-bcabfae8-4664-4efa-a488-eceb5362ee27 .collection .animation{-webkit-transition:all .6s;transition:all .6s;-webkit-transform:translateX(-100px);-moz-transform:translateX(-100px);-ms-transform:translateX(-100px);transform:translateX(-100px);opacity:0;}#section-bcabfae8-4664-4efa-a488-eceb5362ee27 .collection .lp-title-group,#section-bcabfae8-4664-4efa-a488-eceb5362ee27 .collection .lp-text--pretitle{max-width:100%;}#section-bcabfae8-4664-4efa-a488-eceb5362ee27 .collection .slick-dots{margin:30px auto 85px;padding:0;position:relative;top:0;bottom:0;left:0;right:0;list-style-type:none;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;width:360px;max-width:100%;}#section-bcabfae8-4664-4efa-a488-eceb5362ee27 .collection .slick-dots li{margin:0;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;width:auto;height:auto;position:static;display:block;}#section-bcabfae8-4664-4efa-a488-eceb5362ee27 .collection .slick-dots li.slick-active button:after{opacity:1;}#section-bcabfae8-4664-4efa-a488-eceb5362ee27 .collection .slick-dots button{display:block;font-size:0;color:inherit;border-radius:0;border:none;width:100%;height:30px;cursor:pointer;position:relative;background-color:transparent;padding:0;}#section-bcabfae8-4664-4efa-a488-eceb5362ee27 .collection .slick-dots button:before{display:none;}#section-bcabfae8-4664-4efa-a488-eceb5362ee27 .collection .slick-dots button:after{display:block;content:'';width:100%;position:absolute;left:0;top:50%;height:1px;background-color:currentColor;opacity:0.5;}#section-bcabfae8-4664-4efa-a488-eceb5362ee27 .collection:not(.slick-initialized) .item{margin-bottom:145px;}#section-bcabfae8-4664-4efa-a488-eceb5362ee27 .collection:not(.slick-initialized) .item:nth-child(n + 2){display:none;}#section-bcabfae8-4664-4efa-a488-eceb5362ee27 >*:last-child{position:relative;}#section-bcabfae8-4664-4efa-a488-eceb5362ee27 .overlay-component{position:absolute;top:0;bottom:0;left:0;right:0;background-color:var(--overlay-color, var(--section-overlay, rgba(0, 0, 0, 0.3)));transition-property:opacity;transition-timing-function:linear;}#section-bcabfae8-4664-4efa-a488-eceb5362ee27 .video-wrapper{position:absolute;top:0;left:0;height:100%;width:100%;}@media screen and (max-width: 900px){#section-bcabfae8-4664-4efa-a488-eceb5362ee27 .video-wrapper.hidable{display:none;}}#section-bcabfae8-4664-4efa-a488-eceb5362ee27 .full-screen-video-component{position:relative;height:100%;overflow:hidden;}#section-bcabfae8-4664-4efa-a488-eceb5362ee27 video{position:absolute;z-index:-1000;width:100%;object-fit:cover;}@media all and (-ms-high-contrast: none),(-ms-high-contrast: active){#section-bcabfae8-4664-4efa-a488-eceb5362ee27 video{overflow:hidden;top:50%;left:50%;-webkit-transform:translateX(-50%) translateY(-50%);-moz-transform:translateX(-50%) translateY(-50%);-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%);min-width:100%;min-height:100%;width:auto;height:auto!important;}}#section-bcabfae8-4664-4efa-a488-eceb5362ee27 .poster{display:none;position:absolute;top:0;left:0;bottom:0;right:0;z-index:-1000;background:center center/cover;}@media screen and (max-width: 900px){#section-bcabfae8-4664-4efa-a488-eceb5362ee27 .poster{display:block;}}#section-951a1889-3429-42e7-8d93-31df407aeb20{color:#354764;--fontColor:#354764;--fontColor_H:217;--fontColor_S:31%;--fontColor_L:30%;--fontColor_A:1;--fontColor_darkenDir:1;--bgColor:#fff;--bgColor_H:0;--bgColor_S:0%;--bgColor_L:100%;--bgColor_A:1;--bgColor_darkenDir:-1;background-color:#fff;}#section-951a1889-3429-42e7-8d93-31df407aeb20 .hoverable-section--full-bleed{padding-top:0;}@media (min-width: 993px){#section-951a1889-3429-42e7-8d93-31df407aeb20 .hoverable-section--full-bleed{padding-bottom:0;}}#section-951a1889-3429-42e7-8d93-31df407aeb20 .hoverable-image{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}@media (max-width: 992px){#section-951a1889-3429-42e7-8d93-31df407aeb20 .hoverable-image{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}}#section-951a1889-3429-42e7-8d93-31df407aeb20 .hoverable-image--reverse{-webkit-flex-direction:row-reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse;}@media (max-width: 992px){#section-951a1889-3429-42e7-8d93-31df407aeb20 .hoverable-image--reverse{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}}#section-951a1889-3429-42e7-8d93-31df407aeb20 .hoverable-image--reverse .hoverable-image__text-col{padding-right:120px;padding-left:0;}@media (max-width: 992px){#section-951a1889-3429-42e7-8d93-31df407aeb20 .hoverable-image--reverse .hoverable-image__text-col{padding:0;margin-top:29px;margin-bottom:0;}}#section-951a1889-3429-42e7-8d93-31df407aeb20 .hoverable-image__img-col{-webkit-flex:50%;-ms-flex:50%;flex:50%;z-index:1;}#section-951a1889-3429-42e7-8d93-31df407aeb20 .hoverable-image__img-col>div{width:100%;height:100%;position:relative;padding-bottom:79%;}#section-951a1889-3429-42e7-8d93-31df407aeb20 .hoverable-image__img-col>div img{-webkit-transition:visibility 5s,opacity 0.5s linear;transition:visibility 5s,opacity 0.5s linear;position:absolute;object-fit:cover;width:100%;height:100%;}#section-951a1889-3429-42e7-8d93-31df407aeb20 .hoverable-image__img-col>div .main-image{visibility:visible;opacity:1;}#section-951a1889-3429-42e7-8d93-31df407aeb20 .hoverable-image__img-col>div .secondary-image{visibility:hidden;opacity:0;}@media (hover: hover) and (pointer: fine){#section-951a1889-3429-42e7-8d93-31df407aeb20 .hoverable-image__img-col--on-hover:hover .main-image{visibility:hidden;opacity:0;}#section-951a1889-3429-42e7-8d93-31df407aeb20 .hoverable-image__img-col--on-hover:hover .
34secondary-image{visibility:visible;opacity:1;}}#section-951a1889-3429-42e7-8d93-31df407aeb20 .hoverable-image__img-col--on-hover.active .main-image{visibility:hidden;opacity:0;}#section-951a1889-3429-42e7-8d93-31df407aeb20 .hoverable-image__img-col--on-hover.active .secondary-image{visibility:visible;opacity:1;}#section-951a1889-3429-42e7-8d93-31df407aeb20 .hoverable-image__text-col{-webkit-flex:50%;-ms-flex:50%;flex:50%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding-left:120px;padding-right:0;}@media (max-width: 992px){#section-951a1889-3429-42e7-8d93-31df407aeb20 .hoverable-image__text-col{padding-left:0;margin-top:29px;margin-bottom:0;}}#section-951a1889-3429-42e7-8d93-31df407aeb20 .hoverable-image__text-col .lp-text--subtitle{max-width:100%;}#section-951a1889-3429-42e7-8d93-31df407aeb20 .hoverable-image__text-col .buttons-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-flex-wrap:wrap;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;margin:0 -12px;}@media (max-width: 560px){#section-951a1889-3429-42e7-8d93-31df407aeb20 .hoverable-image__text-col .buttons-wrapper{margin:0;}}@media (max-width: 576px){#section-951a1889-3429-42e7-8d93-31df407aeb20 .hoverable-image__text-col .buttons-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;}}#section-951a1889-3429-42e7-8d93-31df407aeb20 .hoverable-image__text-col .buttons-wrapper .lp-btn{vertical-align:top;margin:24px 12px 0;}@media (max-width: 560px){#section-951a1889-3429-42e7-8d93-31df407aeb20 .hoverable-image__text-col .buttons-wrapper .lp-btn{margin-left:0;margin-right:0;}}#section-951a1889-3429-42e7-8d93-31df407aeb20 .hoverable-image__text-wrap{-webkit-flex:1;-ms-flex:1;flex:1;}#section-951a1889-3429-42e7-8d93-31df407aeb20 .hoverable-image__text-wrap p:last-child{margin-bottom:0;}#section-951a1889-3429-42e7-8d93-31df407aeb20 .full-bleed-container{padding:0;}#section-951a1889-3429-42e7-8d93-31df407aeb20 .full-bleed-container .hoverable-image__text-col{padding:69px;}@media (max-width: 992px){#section-951a1889-3429-42e7-8d93-31df407aeb20 .full-bleed-container .hoverable-image__text-col{padding:0;}}#section-951a1889-3429-42e7-8d93-31df407aeb20 .full-bleed-container .hoverable-image__text-col .lp-container{position:absolute;left:50%;-webkit-transform:translateX(-50%);-moz-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);}@media (max-width: 992px){#section-951a1889-3429-42e7-8d93-31df407aeb20 .full-bleed-container .hoverable-image__text-col .lp-container{position:static;-webkit-transform:translateX(0);-moz-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0);left:0;}}#section-951a1889-3429-42e7-8d93-31df407aeb20 .full-bleed-container .hoverable-image__img-col>div{max-height:none;}#section-951a1889-3429-42e7-8d93-31df407aeb20 .full-bleed-container .hoverable-image--straight .hoverable-image__text-wrap{padding-left:calc(50% + 69px);}@media (max-width: 992px){#section-951a1889-3429-42e7-8d93-31df407aeb20 .full-bleed-container .hoverable-image--straight .hoverable-image__text-wrap{padding-left:0;}}#section-951a1889-3429-42e7-8d93-31df407aeb20 .full-bleed-container .hoverable-image--reverse .hoverable-image__text-wrap{padding-right:calc(50% + 69px);}@media (max-width: 992px){#section-951a1889-3429-42e7-8d93-31df407aeb20 .full-bleed-container .hoverable-image--reverse .hoverable-image__text-wrap{padding-right:0;}}#section-951a1889-3429-42e7-8d93-31df407aeb20 .lp-h2{margin-bottom:16px;}@media (max-width: 992px){#section-951a1889-3429-42e7-8d93-31df407aeb20 .lp-h2{margin-bottom:8px;}}#section-951a1889-3429-42e7-8d93-31df407aeb20 .redesign p{margin-bottom:1.666rem;text-transform:none;}#section-21378400-f49d-4db7-a004-7a7eafce8687{color:#354764;--fontColor:#354764;--fontColor_H:217;--fontColor_S:31%;--fontColor_L:30%;--fontColor_A:1;--fontColor_darkenDir:1;--bgColor:rgba(255, 255, 255, 0.2);--bgColor_H:0;--bgColor_S:0%;--bgColor_L:100%;--bgColor_A:0.2;--bgColor_darkenDir:-1;background-color:rgba(255, 255, 255, 0.2);}#section-21378400-f49d-4db7-a004-7a7eafce8687 a[href*="/neighborhoods/"]{border:none!important;box-shadow:none!important;}#section-21378400-f49d-4db7-a004-7a7eafce8687 a[href*="/neighborhoods/"]:not(:has(img)){background:transparent!important;background-color:transparent!important;border:2px solid #C44628!important;color:#C44628!important;box-shadow:none!important;}#section-21378400-f49d-4db7-a004-7a7eafce8687 a[href*="/neighborhoods/"]:not(:has(img)) *{color:#C44628!important;}#section-21378400-f49d-4db7-a004-7a7eafce8687 .featured-neighborhoods-grid{text-align:center;}#section-21378400-f49d-4db7-a004-7a7eafce8687 .featured-neighborhoods-grid .items{display:-ms-gri
34d;display:grid;-ms-grid-columns:1fr 1fr;grid-template-columns:1fr 1fr;gap:0px 0px;}@media (min-width: 769px){#section-21378400-f49d-4db7-a004-7a7eafce8687 .featured-neighborhoods-grid .items.three-columns{-ms-grid-columns:1fr 1fr 1fr;grid-template-columns:1fr 1fr 1fr;}}@media(max-width: 768px){#section-21378400-f49d-4db7-a004-7a7eafce8687 .featured-neighborhoods-grid .items{-ms-grid-columns:1fr;grid-template-columns:1fr;}}#section-21378400-f49d-4db7-a004-7a7eafce8687 .featured-neighborhoods-grid .items .grid-item{width:100%;overflow:hidden;}#section-21378400-f49d-4db7-a004-7a7eafce8687 .featured-neighborhoods-grid .items .grid-item h3{margin-bottom:1.666rem;}@media (max-width: 768px){#section-21378400-f49d-4db7-a004-7a7eafce8687 .featured-neighborhoods-grid .items .grid-item h3{margin-bottom:0;}}#section-21378400-f49d-4db7-a004-7a7eafce8687 .featured-neighborhoods-grid .items .grid-item .item-wrapper{padding-bottom:70%;position:relative;display:block;width:100%;}#section-21378400-f49d-4db7-a004-7a7eafce8687 .featured-neighborhoods-grid .items .grid-item .item-wrapper .image-holder{-webkit-transition:all .4s ease-in-out;transition:all .4s ease-in-out;position:absolute;left:0;right:0;top:0;bottom:0;background:center no-repeat;-webkit-background-size:cover;background-size:cover;}#section-21378400-f49d-4db7-a004-7a7eafce8687 .featured-neighborhoods-grid .items .grid-item .item-wrapper .image-holder img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;}#section-21378400-f49d-4db7-a004-7a7eafce8687 .featured-neighborhoods-grid .items .grid-item .item-wrapper .overlay{position:absolute;left:0;right:0;top:0;bottom:0;background-color:rgba(0, 0, 0, 0.3);-webkit-transition:all .4s ease-in-out;transition:all .4s ease-in-out;}#section-21378400-f49d-4db7-a004-7a7eafce8687 .featured-neighborhoods-grid .items .grid-item .item-wrapper .content-container{color:white;position:absolute;left:50%;top:50%;-webkit-transform:translate(-50%, -50%);-moz-transform:translate(-50%, -50%);-ms-transform:translate(-50%, -50%);transform:translate(-50%, -50%);max-width:600px;width:70%;}#section-21378400-f49d-4db7-a004-7a7eafce8687 .featured-neighborhoods-grid .items .grid-item .item-wrapper .content-container .button-wrapper{-webkit-transition:all linear 0.4s;transition:all linear 0.4s;}@media (min-width: 1025px){#section-21378400-f49d-4db7-a004-7a7eafce8687 .featured-neighborhoods-grid .items .grid-item .item-wrapper .content-container .button-wrapper{max-height:0;opacity:0;}}@media (max-width: 768px){#section-21378400-f49d-4db7-a004-7a7eafce8687 .featured-neighborhoods-grid .items .grid-item .item-wrapper .content-container .button-wrapper{display:none;}}@media (min-width: 1025px){#section-21378400-f49d-4db7-a004-7a7eafce8687 .featured-neighborhoods-grid .items .grid-item:hover .item-wrapper .image-holder,#section-21378400-f49d-4db7-a004-7a7eafce8687 .featured-neighborhoods-grid .items .grid-item:hover .item-wrapper .overlay{-webkit-transform:scale(1.1);-moz-transform:scale(1.1);-ms-transform:scale(1.1);transform:scale(1.1);}}@media (min-width: 1025px){#section-21378400-f49d-4db7-a004-7a7eafce8687 .featured-neighborhoods-grid .items .grid-item:hover .item-wrapper .content-container .button-wrapper{max-height:90px;opacity:1;}}#section-21378400-f49d-4db7-a004-7a7eafce8687 .featured-neighborhoods-grid .lp-pagination{margin-top:60px;}@media(max-width: 768px){#section-21378400-f49d-4db7-a004-7a7eafce8687 .featured-neighborhoods-grid .lp-pagination{margin-top:40px;}}#section-21378400-f49d-4db7-a004-7a7eafce8687 .lp-text--subtitle,#section-21378400-f49d-4db7-a004-7a7eafce8687 .lp-text--pretitle{margin-left:auto;margin-right:auto;}#section-fc696d32-3cf4-47d5-9539-22cb97d1c7a4{color:#ffffff;--fontColor:#ffffff;--fontColor_H:0;--fontColor_S:0%;--fontColor_L:100%;--fontColor_A:1;--fontColor_darkenDir:-1;--bgColor:rgba(0, 0, 0, 0.52);--bgColor_H:0;--bgColor_S:0%;--bgColor_L:0%;--bgColor_A:0.52;--bgColor_darkenDir:1;background-color:rgba(0, 0, 0, 0.52);}#section-fc696d32-3cf4-47d5-9539-22cb97d1c7a4>.double-image-grid:last-child{padding-top:0!important;padding-bottom:0!important;}#section-fc696d32-3cf4-47d5-9539-22cb97d1c7a4 .Half-Screen{min-height:50vh;}#section-fc696d32-3cf4-47d5-9539-22cb97d1c7a4 .Three-Quarters{min-height:75vh;}#section-fc696d32-3cf4-47d5-9539-22cb97d1c7a4 .Full-Bleed{min-height:100vh;}#section-fc696d32-3cf4-47d5-9539-22cb97d1c7a4 .double-image-grid{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-flex-wrap:wrap;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;overflow:hidden;}@media (max-width: 768px){#section-fc696d32-3cf4-47d5-9539-22cb97d1c7a4 .double-image-grid{min-height:auto;}}#section-fc696d32-3cf4-47d5-9539-22cb97d1c7a4 .cta-section{position:relative;width:100%;padding-left:15px;padding-right:15px;background:center/cover no-repeat;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;padding-top:var(--section-padding-top, var(--global-section-padding));padding-bottom:var(--section-padding-bottom, var(--global-section-padding));-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;
34-webkit-justify-content:center;justify-content:center;}@media (min-width: 769px){#section-fc696d32-3cf4-47d5-9539-22cb97d1c7a4 .cta-section{max-width:50%;-webkit-flex-basis:50%;-ms-flex-preferred-size:50%;flex-basis:50%;}}#section-fc696d32-3cf4-47d5-9539-22cb97d1c7a4 .cta-section__content{position:relative;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;z-index:1;}#section-fc696d32-3cf4-47d5-9539-22cb97d1c7a4 .cta-section__overlay{position:absolute;left:0;right:0;bottom:0;top:0;background:#000;}#section-fc696d32-3cf4-47d5-9539-22cb97d1c7a4 .cta-section__text-block{width:100%;margin-left:auto;margin-right:auto;text-align:center;}@media (min-width: 769px){#section-fc696d32-3cf4-47d5-9539-22cb97d1c7a4 .cta-section__text-block{max-width:500px;}}#section-fc696d32-3cf4-47d5-9539-22cb97d1c7a4 .cta-section h2{margin-bottom:15px;}#section-fc696d32-3cf4-47d5-9539-22cb97d1c7a4 .cta-section__lead{margin-bottom:40px;white-space:pre-line;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;max-width:100%;}#section-fc696d32-3cf4-47d5-9539-22cb97d1c7a4 .cta-section__btn-wrap{margin-top:40px;}#section-fc696d32-3cf4-47d5-9539-22cb97d1c7a4 .image-back{position:absolute;width:100%;height:100%;left:0;top:0;z-index:0;}#section-fc696d32-3cf4-47d5-9539-22cb97d1c7a4 .image-back:after{content:"";position:absolute;display:block;width:100%;height:100%;top:0;left:0;}#section-fc696d32-3cf4-47d5-9539-22cb97d1c7a4 .image-back img{height:100%;width:100%;object-fit:cover;}#section-fc696d32-3cf4-47d5-9539-22cb97d1c7a4 .background{width:100%;height:100%;}#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e{color:#000000;--fontColor:#000000;--fontColor_H:0;--fontColor_S:0%;--fontColor_L:0%;--fontColor_A:1;--fontColor_darkenDir:1;--bgColor:#ffffff;--bgColor_H:0;--bgColor_S:0%;--bgColor_L:100%;--bgColor_A:1;--bgColor_darkenDir:-1;background-color:#ffffff;}#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e div.testimonials.redesign .custom-arrows--dark.arrows button.slick-arrow{background-color:#D5A390;border-color:#D5A390;}#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e div.testimonials.redesign .custom-arrows--dark.arrows button.slick-arrow:before{color:#fff;opacity:1;}#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e div.testimonials.redesign .custom-arrows--dark.arrows button.slick-arrow:hover{background-color:#C44628;border-color:#C44628;}#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e div.testimonials.redesign .custom-arrows--dark.arrows button.slick-arrow:hover:before{color:#fff;}#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e div.slick-center.sl-active .userpic{background-color:#354764;}#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e div.slick-center.sl-active .userpic .userpic-initials{color:#fff;}#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e div.testimonials .userpic{background-color:#354764;}#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e div.testimonials .userpic .userpic-initials{color:#fff;}#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e>div:last-child{margin-top:96px;margin-bottom:96px;padding-top:0px!important;padding-bottom:0px!important;}@media only screen and (max-width:768px){#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e>div:last-child{margin-top:64px;margin-bottom:64px;}}#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e h1,#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e h2,#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e h3{color:#354764;}#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials{--animTime:.3s;--slidePads:285px;padding:80px 0;}@media (max-width: 1340px){#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials{--slidePads:160px;}}@media (max-width: 991px){#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials{--slidePads:0;}}@media (max-width: 768px){#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials{padding:50px 0;}}#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .title{text-align:center;margin:0 0 20px;}#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .subtitle{width:100%;max-width:640px;text-align:center;margin:0 auto 50px;}@media (max-width: 768px){#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .subtitle{margin-bottom:30px;}}#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .title+.items-slider{margin-top:50px;}@media (max-width: 768px){#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .title+.items-slider{margin-top:30px;}}@media (max-width: 767px){#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .slider-container{padding:0;}}#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .top-block{z-index:2;-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 0 auto;margin:0 auto;text-align:center;max-width:540px;
34display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;}#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .userpic{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;width:104px;height:104px;margin:0 auto 25px;border-radius:50%;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;background-color:#000000;color:#fff;overflow:hidden;}#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .userpic img{display:block;width:100%;height:100%;object-fit:cover;}#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .userpic .userpic-initials{font-size:36px;line-height:1.3;font-weight:normal;text-align:center;margin:0 0 0.14em;display:inline;}#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .card-button{-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto;z-index:3;}#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .author{margin-bottom:20px;}#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .card{padding:50px 20px;box-shadow:0 2px 4px 0 rgba(0, 0, 0, 0.15);display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;width:100%;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;position:relative;}@media (max-width: 767px){#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .card{padding:30px 20px;}}#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .card .video-wrapper,#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .card .overlay-component,#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .card .poster{position:absolute;top:0;left:0;width:100%;height:100%;}#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .card .poster{background-repeat:no-repeat;-webkit-background-size:cover;background-size:cover;z-index:-1;}#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .item{padding:3px;position:relative;}#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .item,#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .item.slick-slide{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;height:auto;-webkit-transition:all var(--animTime) ease;transition:all var(--animTime) ease;}@media (min-width: 992px){#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .item.sl-next,#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .item.slick-slide.sl-next,#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .item.sl-prev,#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .item.slick-slide.sl-prev{opacity:0.5;}#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .item.sl-next .card,#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .item.slick-slide.sl-next .card,#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .item.sl-prev .card,#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .item.slick-slide.sl-prev .card{padding-top:30px;padding-bottom:30px;margin:20px 0;}#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .item.sl-prev .card,#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .item.slick-slide.sl-prev .card{-webkit-transform:translateX(calc(100% - var(--slidePads)));-moz-transform:translateX(calc(100% - var(--slidePads)));-ms-transform:translateX(calc(100% - var(--slidePads)));transform:translateX(calc(100% - var(--slidePads)));}#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .item.sl-next .card,#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .item.slick-slide.sl-next .card{-webkit-transform:translateX(calc(var(--slidePads) - 100%));-moz-transform:translateX(calc(var(--slidePads) - 100%));-ms-transform:translateX(calc(var(--slidePads) - 100%));transform:translateX(calc(var(--slidePads) - 100%));}#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .item.sl-active,#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .item.slick-slide.sl-active{z-index:1;}}#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .items-slider .slick-track,#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .items-slider .slick-list{height:100%;}#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .items-slider .slick-track{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .items-slider:not(.slick-slider){display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;overflow:hidden;}#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .items-slider:not(.slick-slider) .item{opacity:1;-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto;width:100%;padding-left:var(--slidePads);padding-right:var(--slidePads);}#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .in-transition .card{-webkit-transition:all var(--animTime) ease;transition:all var(--animTime) ease;}#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .arrows{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;
34-webkit-justify-content:center;justify-content:center;margin-top:30px;}#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .testimonials .arrows .slick-arrow{margin:0 13px;position:relative;top:auto;left:auto;bottom:auto;right:auto;}#section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e .description{margin-bottom:15px;}#section-a1b98f91-47eb-47b4-bb02-5c2c74f6f975{color:#000;--fontColor:#000;--fontColor_H:0;--fontColor_S:0%;--fontColor_L:0%;--fontColor_A:1;--fontColor_darkenDir:1;--bgColor:#fff;--bgColor_H:0;--bgColor_S:0%;--bgColor_L:100%;--bgColor_A:1;--bgColor_darkenDir:-1;background-color:#fff;}#section-da5a7210-1edb-47e6-b554-6eb250d17dad{color:#354764;--fontColor:#354764;--fontColor_H:217;--fontColor_S:31%;--fontColor_L:30%;--fontColor_A:1;--fontColor_darkenDir:1;--bgColor:#FFF;--bgColor_H:0;--bgColor_S:0%;--bgColor_L:100%;--bgColor_A:1;--bgColor_darkenDir:-1;background-color:#FFF;}#section-da5a7210-1edb-47e6-b554-6eb250d17dad h1,#section-da5a7210-1edb-47e6-b554-6eb250d17dad h2,#section-da5a7210-1edb-47e6-b554-6eb250d17dad h3,#section-da5a7210-1edb-47e6-b554-6eb250d17dad h4,#section-da5a7210-1edb-47e6-b554-6eb250d17dad h5,#section-da5a7210-1edb-47e6-b554-6eb250d17dad h6,#section-da5a7210-1edb-47e6-b554-6eb250d17dad p,#section-da5a7210-1edb-47e6-b554-6eb250d17dad a{color:#354764!important;}#section-da5a7210-1edb-47e6-b554-6eb250d17dad [class*="sold" i],#section-da5a7210-1edb-47e6-b554-6eb250d17dad [class*="status" i],#section-da5a7210-1edb-47e6-b554-6eb250d17dad [class*="badge" i],#section-da5a7210-1edb-47e6-b554-6eb250d17dad [class*="label" i]{background-color:#C44628!important;color:#FFFFFF!important;}#section-da5a7210-1edb-47e6-b554-6eb250d17dad [class*="sold" i] *,#section-da5a7210-1edb-47e6-b554-6eb250d17dad [class*="status" i] *,#section-da5a7210-1edb-47e6-b554-6eb250d17dad [class*="badge" i] *,#section-da5a7210-1edb-47e6-b554-6eb250d17dad [class*="label" i] *{color:#FFFFFF!important;}@media (max-width: 768px){#section-da5a7210-1edb-47e6-b554-6eb250d17dad .btn{width:100%;}}#section-da5a7210-1edb-47e6-b554-6eb250d17dad .redesign .feature h4{text-transform:initial;}#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section{padding-bottom:140px;}@media (max-width: 991px){#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section{padding-bottom:100px;}}@media (max-width: 768px){#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section{padding-bottom:40px;}}#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section h2{text-align:center;margin-bottom:0;}#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section .title-container{padding-top:100px;}@media (max-width: 768px){#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section .title-container{padding-top:60px;}}#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section .title-container +.search-container{margin-top:40px;}#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section .description-container{padding-top:32px;max-width:70%;margin:0 auto;text-align:center;}@media (max-width: 768px){#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section .description-container{max-width:100%;}}#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section .search-container{color:black;padding:25px 30px;background-color:white;display:-ms-grid;display:grid;-ms-grid-columns:1fr 1fr 1fr auto;grid-template-columns:1fr 1fr 1fr auto;-ms-grid-rows:1fr;grid-template-rows:1fr;gap:0px 15px;grid-template-areas:". . . . .";}#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section .search-container.show-neighborhood-select{-ms-grid-columns:1fr 1fr 1fr 1fr auto;grid-template-columns:1fr 1fr 1fr 1fr auto;}@media(max-width: 950px){#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section .search-container.show-neighborhood-select{-ms-grid-columns:1fr;grid-template-columns:1fr;-ms-grid-rows:auto auto auto auto;grid-template-rows:auto auto auto auto;grid-template-areas:"." "." "." ".";gap:25px;}}@media(max-width: 950px){#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section .search-container{-ms-grid-columns:1fr;grid-template-columns:1fr;-ms-grid-rows:auto auto auto auto;grid-template-rows:auto auto auto auto;grid-template-areas:"." "." "." ".";gap:25px;}}#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section .search-container input[name="area-slider"],#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section .search-container input[name="price-slider"]{position:absolute!important;display:block!important;top:0!important;left:0!important;width:0!important;height:0!important;font-size:0!important;line-height:0!important;padding:0!important;margin:0!important;overflow:hidden;outline:none!important;z-index:-9999!important;background:none!important;border-style:solid!important;border-color:transparent!important;}#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section .search-container select{line-height:1.2!important;width:100%;border:none;border-bottom:1px solid;padding:5px 0;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;appearance:none;border-radius:0px;background-color:transparent;outline:none;background:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9Ii01NDAgLTMyMCA4MDAgODAwIj48cGF0aCBkPSJNMjI1LjgxMyA0OC45MDdMMTI4IDE0Ni43MiAzMC4xODcgNDguOTA3IDAgNzkuMDkzbDEyOCAxMjggMTI4LTEyOHoiLz48L3N2Zz4K) no-repeat 100% 50%;}#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section .search-container .text-search-input{border:none;border-bottom:1px solid;padding:5px 0;width:100%;border-radius:0;}#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section .search-container .irs--round{height:38px;}@media(max-width: 950px){#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section .search-container .irs--round{height:50px;}}
34#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section .search-container .irs--round .irs-handle{width:10px;height:10px;border-width:1px;border-color:black;top:32px;box-shadow:none;}#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section .search-container .irs--round .irs-bar{background-color:black;height:1px;}#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section .search-container .irs--round .irs-line{height:1px;}#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section .search-container .irs--round .irs-min,#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section .search-container .irs--round .irs-max{display:none;}#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section .search-container .irs--round .irs-from:before,#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section .search-container .irs--round .irs-to:before,#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section .search-container .irs--round .irs-single:before{display:none;}#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section .search-container .irs--round .irs-from,#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section .search-container .irs--round .irs-to,#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section .search-container .irs--round .irs-single{font-size:13px;}#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section .search-container .irs--round .irs-from{left:0!important;visibility:visible!important;}#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section .search-container .irs--round .irs-to{right:0!important;left:auto!important;visibility:visible!important;}#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section .search-container .irs--round .irs-single{display:none;}#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section .search-container .irs--round .irs-from,#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section .search-container .irs--round .irs-to,#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section .search-container .irs--round .irs-single{background-color:transparent;color:gray;}#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section .search-container .irs-from,#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section .search-container .irs-to,#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section .search-container .irs-single{top:10px;}#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section .search-container .search-item{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:justify;-webkit-justify-content:space-between;justify-content:space-between;}#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section .search-container .search-item .search-title{font-weight:700;}#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section .search-container .btn-item{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:flex-end;-webkit-box-align:flex-end;-ms-flex-align:flex-end;align-items:flex-end;}@media(max-width: 950px){#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list-section .search-container .btn-item{display:none;}}#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list{display:-ms-grid;display:grid;-ms-grid-columns:1fr 1fr;grid-template-columns:1fr 1fr;-ms-grid-rows:1fr;grid-template-rows:1fr;gap:55px 80px;grid-template-areas:". .";padding:0;color:#000;list-style:none;}@media (max-width: 991px){#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list{gap:55px 25px;}}@media (max-width: 768px){#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list{-ms-grid-columns:1fr;grid-template-columns:1fr;grid-template-areas:".";gap:35px 25px;justify-items:center;}}#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list.three-items{-ms-grid-columns:1fr 1fr 1fr;grid-template-columns:1fr 1fr 1fr;grid-template-areas:". . .";gap:55px 40px;}@media (max-width: 1200px){#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list.three-items{-ms-grid-columns:1fr 1fr;grid-template-columns:1fr 1fr;grid-template-areas:". .";gap:55px 80px;}}@media (max-width: 991px){#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list.three-items{gap:55px 25px;}}@media (max-width: 768px){#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list.three-items{-ms-grid-columns:1fr;grid-template-columns:1fr;grid-template-areas:".";gap:35px 25px;justify-items:center;}}#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list.property-list--share .property-list__share{display:inline-block;}#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list .property-list__item{background-color:#fff;text-align:center;font-weight:bold;position:relative;min-height:500px;}@media (max-width: 768px){#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list .property-list__item{min-height:1px;height:calc(100% - 1px);max-width:325px;width:99%;}}#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list .property-list__item:hover .property-list__hover{opacity:1;}#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list .property-list__item h4{margin:0 0 7px;}#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list .property-list__item p{white-space:normal;margin:0 0 7px;}@media (max-width: 768px){#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list .property-list__item p{margin-bottom:3px;}}#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list .property-list__item h5{text-transform:none;margin:0;font-family:var(--global-secondary-font-family);}#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list .property-list__item-link{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;height:100%;width:100%;}@media (max-width: 768px){#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list .property-list__item-link{height:auto;}}#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list .property-list__img{width:100%;height:315px;vertical-align:top;background-color:gray;position:relative;}@media (max-width: 768px){#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list .property-list__img{height:200px;}}#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list .property-list__img img{width:100%;height:100%;object-fit:cover;}#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list .property-list__text{background-color:#fff;padding:25px 15px 15px;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;}@media (max-width: 768px){#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list .property-list__text{margin-bottom:15px;}}#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list .property-list__label{position:absolute;top:0;right:0;background:#000;color:#fff;
34padding:4px 35px;z-index:2;}#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list .hover-link{position:absolute;top:0;left:0;width:100%;height:100%;}@media (max-width: 768px){#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list .hover-link{display:none;}}#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list .property-list__hover{position:absolute;top:0;left:0;width:100%;height:100%;background-color:rgba(255, 255, 255, 0.75);opacity:0;-webkit-transition:opacity .2s linear;transition:opacity .2s linear;z-index:3;cursor:pointer;}@media (max-width: 768px){#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list .property-list__hover{opacity:1;background-color:var(--bgColor);position:static;padding:15px 0 0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column-reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse;height:auto;margin:0 -2px;width:calc(100% + 4px);}}#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list .property-list__hover h4{text-transform:none;}@media(max-width: 768px){#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list .property-list__hover h4{display:none;}}@media (min-width: 769px){#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list .property-list__buttons{position:absolute;top:50%;left:50%;width:100%;-webkit-transform:translate(-50%, -50%);-moz-transform:translate(-50%, -50%);-ms-transform:translate(-50%, -50%);transform:translate(-50%, -50%);}}#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list .property-list__view .btn{margin-bottom:20px;}@media (max-width: 768px){#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list .property-list__view .btn{margin-bottom:0;}}#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list .btn{vertical-align:top;margin:0 10px;display:none;}@media(max-width: 768px){#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list .btn{margin:0;}}@media(min-width: 769px){#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list .btn.btn--primary-dark{display:inline-block;}}@media(max-width: 768px){#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list .btn.btn--primary-light{display:inline-block;}}#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list .property-list__share{position:relative;display:none;}@media(max-width: 768px){#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list .property-list__share{margin-bottom:25px;margin-top:15px;width:100%;}}#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list .property-list__share.property-list__share--opened .socials{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list .property-list__share .socials{-webkit-box-flex-wrap:nowrap;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap;position:absolute;top:100%;left:50%;-webkit-transform:translateX(-50%);-moz-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);display:none;}#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list .property-list__share .socials .socials__link{width:70px;}#section-da5a7210-1edb-47e6-b554-6eb250d17dad .is-background-color-light ul.property-list .btn.btn--primary-dark{display:inline-block;}#section-da5a7210-1edb-47e6-b554-6eb250d17dad .is-background-color-light ul.property-list .btn.btn--primary-light{display:none;}#section-da5a7210-1edb-47e6-b554-6eb250d17dad .redesign ul.property-list{margin-bottom:60px;margin-top:60px;margin-left:0;}@media (max-width: 768px){#section-da5a7210-1edb-47e6-b554-6eb250d17dad .redesign ul.property-list{margin-bottom:30px;}}#section-da5a7210-1edb-47e6-b554-6eb250d17dad .empty-result{text-align:center;}#section-da5a7210-1edb-47e6-b554-6eb250d17dad .label-house{bottom:0;position:absolute;width:100%;padding:8px 0;background:rgba(255, 255, 255, 0.7);}@media (max-width: 768px){#section-da5a7210-1edb-47e6-b554-6eb250d17dad .label-house{font-size:12px;}}#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list .property-list__item .property-list__mls-attribution{text-shadow:none;width:calc(100% - 200px);margin:0;}@media (max-width: 1024px){#section-da5a7210-1edb-47e6-b554-6eb250d17dad ul.property-list .property-list__item .property-list__mls-attribution{width:100%;}}#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list__item .property-list__mls-attribution+.property-list__mls-logo{position:absolute!important;right:15px!important;bottom:15px!important;}@media (max-width: 1024px){#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list__item .property-list__mls-attribution+.property-list__mls-logo{position:relative!important;right:unset!important;bottom:unset!important;}}@media (max-width: 768px){#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list__item .property-list__mls-logo{display:inline-block!important;}}#section-da5a7210-1edb-47e6-b554-6eb250d17dad .property-list__item:has(.mls-compliance-container) .property-list__text{padding-bottom:0;}#section-da5a7210-1edb-47e6-b554-6eb250d17dad .mls-compliance-container{margin-top:auto;padding:0 15px 15px;}#section-ba43671b-3100-4991-8247-7989a4b81495{color:#354764;--fontColor:#354764;--fontColor_H:217;--fontColor_S:31%;--fontColor_L:30%;--fontColor_A:1;--fontColor_darkenDir:1;--bgColor:#ffffff;--bgColor_H:0;--bgColor_S:0%;--bgColor_L:100%;--bgColor_A:1;--bgColor_darkenDir:-1;--section-padding-top:calc(4 / 4 * var(--global-section-padding));--section-padding-bottom:calc(4 / 4 * var(--global-section-padding));background-color:#ffffff;}#section-ba43671b-3100-4991-8247-7989a4b81495 .slick-dots .slick-active a{border-radius:0px!important;}#section-ba43671b-3100-4991-8247-7989a4b81495 span.lp-play:after{border-left:10px solid #C44628;}#section-ba43671b-3100-4991-8247-7989a4b81495 .slick-slide>div{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;
34-webkit-justify-content:center;justify-content:center;}#section-ba43671b-3100-4991-8247-7989a4b81495 .slick-slide>div:not(:last-child){margin-bottom:50px;}@media (max-width: 767px){#section-ba43671b-3100-4991-8247-7989a4b81495 .slick-slide>div:not(:last-child){margin-bottom:0;}}#section-ba43671b-3100-4991-8247-7989a4b81495 .slick-dotted.slick-slider{margin-bottom:0;}#section-ba43671b-3100-4991-8247-7989a4b81495 .lp-pagination.pagination-container .carousel-controls{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-top:30px;}#section-ba43671b-3100-4991-8247-7989a4b81495 .lp-pagination.pagination-container .paginationjs ul{width:auto;}#section-ba43671b-3100-4991-8247-7989a4b81495 .lp-pagination.pagination-container .paginationjs li{cursor:pointer;}#section-ba43671b-3100-4991-8247-7989a4b81495 .lp-pagination.pagination-container .paginationjs li.active,#section-ba43671b-3100-4991-8247-7989a4b81495 .lp-pagination.pagination-container .paginationjs li.disabled{cursor:default;}@media (max-width: 575px){#section-ba43671b-3100-4991-8247-7989a4b81495 .lp-pagination.pagination-container .paginationjs .paginationjs-pages li.paginationjs-prev{margin-right:3px;margin-left:3px;}#section-ba43671b-3100-4991-8247-7989a4b81495 .lp-pagination.pagination-container .paginationjs .paginationjs-pages li.paginationjs-next{margin-left:3px;margin-right:3px;}}#section-ba43671b-3100-4991-8247-7989a4b81495 .lp-pagination.pagination-container .slick-dots{position:static;-webkit-transform:translate(0,0);-moz-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0);-webkit-order:2;-ms-flex-order:2;order:2;width:auto;}#section-ba43671b-3100-4991-8247-7989a4b81495 .lp-pagination.pagination-container .slick-dots li{width:auto;height:auto;}#section-ba43671b-3100-4991-8247-7989a4b81495 .lp-pagination.pagination-container .slick-arrow:first-child{-webkit-order:1;-ms-flex-order:1;order:1;}#section-ba43671b-3100-4991-8247-7989a4b81495 .lp-pagination.pagination-container .slick-arrow:nth-child(2){-webkit-order:3;-ms-flex-order:3;order:3;}#section-ba43671b-3100-4991-8247-7989a4b81495 .video-gallery{position:relative;padding-top:80px;padding-bottom:80px;}@media (max-width: 767px){#section-ba43671b-3100-4991-8247-7989a4b81495 .video-gallery{padding-top:30px;padding-bottom:30px;}}#section-ba43671b-3100-4991-8247-7989a4b81495 .video-gallery__header{margin-bottom:2em;max-width:640px;margin-left:auto;margin-right:auto;text-align:center;}#section-ba43671b-3100-4991-8247-7989a4b81495 .video-gallery__row{margin-left:-15px;margin-right:-15px;}#section-ba43671b-3100-4991-8247-7989a4b81495 .video-gallery__slide{padding:20px 15px;display:-webkit-box!important;display:-webkit-flex!important;display:-ms-flexbox!important;display:flex!important;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}#section-ba43671b-3100-4991-8247-7989a4b81495 .video-gallery__dots{position:relative;display:inline-block;}#section-ba43671b-3100-4991-8247-7989a4b81495 .video-card{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-align-items:stretch;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;-webkit-text-decoration:none;text-decoration:none;cursor:pointer;}#section-ba43671b-3100-4991-8247-7989a4b81495 .video-card:hover .video-card__preview img{-webkit-transform:scale(1.1);-moz-transform:scale(1.1);-ms-transform:scale(1.1);transform:scale(1.1);}#section-ba43671b-3100-4991-8247-7989a4b81495 .video-card:hover .video-card__preview:after{opacity:.5;}#section-ba43671b-3100-4991-8247-7989a4b81495 .video-card__header{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;margin-bottom:10px;}#section-ba43671b-3100-4991-8247-7989a4b81495 .video-card__title,#section-ba43671b-3100-4991-8247-7989a4b81495 .video-card h6{margin-bottom:0px;font-family:var(--global-primary-font-family);text-transform:uppercase;letter-spacing:4px;}#section-ba43671b-3100-4991-8247-7989a4b81495 .video-card__description{margin-bottom:0;cursor:pointer;}#section-ba43671b-3100-4991-8247-7989a4b81495 .video-card__preview{position:relative;width:100%;height:245px;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;
34-webkit-justify-content:center;justify-content:center;}#section-ba43671b-3100-4991-8247-7989a4b81495 .video-card__preview:after{content:"";position:absolute;left:0;top:0;width:100%;height:100%;background-color:#000;opacity:.3;-webkit-transition:all .25s;transition:all .25s;}#section-ba43671b-3100-4991-8247-7989a4b81495 .video-card__preview>img{width:100%;height:100%;object-fit:cover;-webkit-transition:-webkit-transform 1s ease-out;transition:transform 1s ease-out;position:absolute;left:0;top:0;}#section-ba43671b-3100-4991-8247-7989a4b81495 .video-card__btn-play{position:relative;z-index:1;}#section-ba43671b-3100-4991-8247-7989a4b81495 .li-hidden{display:none!important;border:none!important;}#section-ba43671b-3100-4991-8247-7989a4b81495 li:not(.li-hidden)+.li-hidden{display:block!important;}#section-ba43671b-3100-4991-8247-7989a4b81495 li:not(.li-hidden)+.li-hidden button,#section-ba43671b-3100-4991-8247-7989a4b81495 li:not(.li-hidden)+.li-hidden a{display:none!important;--aColor:currentColor;}#section-ba43671b-3100-4991-8247-7989a4b81495 li:not(.li-hidden)+.li-hidden button+li:after,#section-ba43671b-3100-4991-8247-7989a4b81495 li:not(.li-hidden)+.li-hidden a+li:after{color:var(--aColor);}#section-ba43671b-3100-4991-8247-7989a4b81495 li:not(.li-hidden)+.li-hidden:after{content:"...";display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;height:100%;-webkit-align-items:flex-end;-webkit-box-align:flex-end;-ms-flex-align:flex-end;align-items:flex-end;}@media (min-width: 575px){#section-ba43671b-3100-4991-8247-7989a4b81495 .video-gallery .carousel-container:not(.slick-slider){display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-flex-wrap:wrap;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;}#section-ba43671b-3100-4991-8247-7989a4b81495 .video-gallery .carousel-container:not(.slick-slider).centered{-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;}}#section-ba43671b-3100-4991-8247-7989a4b81495 .video-gallery .carousel-container>.video-gallery__slide{width:33%;}#section-ba43671b-3100-4991-8247-7989a4b81495 .video-gallery .carousel-container>.video-gallery__slide:nth-child(n + 10){display:none!important;}@media (max-width: 990px){#section-ba43671b-3100-4991-8247-7989a4b81495 .video-gallery .carousel-container>.video-gallery__slide{width:50%;}#section-ba43671b-3100-4991-8247-7989a4b81495 .video-gallery .carousel-container>.video-gallery__slide:nth-child(n + 7){display:none!important;}}@media (max-width: 574px){#section-ba43671b-3100-4991-8247-7989a4b81495 .video-gallery .carousel-container>.video-gallery__slide{width:100%;}#section-ba43671b-3100-4991-8247-7989a4b81495 .video-gallery .carousel-container>.video-gallery__slide:nth-child(n + 7){display:block!important;}}#section-ba43671b-3100-4991-8247-7989a4b81495 .video-gallery__modals{position:fixed;inset:0;width:100vw;height:100vh;z-index:9999;pointer-events:none;}#section-ba43671b-3100-4991-8247-7989a4b81495 .video-gallery__modal{display:none;}#section-ba43671b-3100-4991-8247-7989a4b81495 .video-gallery__modal.visible{position:absolute;inset:0;display:block;background-color:rgba(0, 0, 0, 0.35);pointer-events:auto;}#section-ba43671b-3100-4991-8247-7989a4b81495 .video-gallery__modal-content{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%, -50%);-moz-transform:translate(-50%, -50%);-ms-transform:translate(-50%, -50%);transform:translate(-50%, -50%);width:calc(100% - 40px);max-width:600px;max-height:80vh;padding:50px 40px 40px;background-color:#fff;color:#000;text-align:left;white-space:normal;overflow-y:auto;cursor:auto;}@media (max-width: 767px){#section-ba43671b-3100-4991-8247-7989a4b81495 .video-gallery__modal-content{width:calc(100% - 40px);max-width:none;max-height:calc(100% - 40px);padding:50px 20px 20px;}}#section-ba43671b-3100-4991-8247-7989a4b81495 .video-gallery__modal-close{position:absolute;top:8px;right:12px;background:transparent;border:0;padding:4px 10px;font-size:32px;line-height:1;color:#000;cursor:pointer;}#section-ba43671b-3100-4991-8247-7989a4b81495 .video-gallery__modal-close
34:hover,#section-ba43671b-3100-4991-8247-7989a4b81495 .video-gallery__modal-close:focus{opacity:0.7;}#section-ba43671b-3100-4991-8247-7989a4b81495>div:last-child{padding-top:calc(4 / 4 * var(--global-section-padding))!important;padding-bottom:calc(4 / 4 * var(--global-section-padding))!important;}#section-26ef12a8-1616-4b4e-a92a-f7e63cf93b7a{color:#354764;--fontColor:#354764;--fontColor_H:217;--fontColor_S:31%;--fontColor_L:30%;--fontColor_A:1;--fontColor_darkenDir:1;--bgColor:#e8e8e8;--bgColor_H:0;--bgColor_S:0%;--bgColor_L:91%;--bgColor_A:1;--bgColor_darkenDir:-1;background-color:#e8e8e8;}#section-26ef12a8-1616-4b4e-a92a-f7e63cf93b7a .media-text{position:relative;}@media (max-width: 768px){#section-26ef12a8-1616-4b4e-a92a-f7e63cf93b7a .media-text{background-color:var(--bgColor);}}@media (max-width: 768px){#section-26ef12a8-1616-4b4e-a92a-f7e63cf93b7a .media-text.lp-vertical-paddings{padding-top:0!important;}}#section-26ef12a8-1616-4b4e-a92a-f7e63cf93b7a .media-text .lp-text--subtitle{max-width:100%;}#section-26ef12a8-1616-4b4e-a92a-f7e63cf93b7a .media-text.right-to-left .media-text__image{left:auto;right:0;}#section-26ef12a8-1616-4b4e-a92a-f7e63cf93b7a .media-text.right-to-left .media-text__content{margin-left:0;margin-right:auto;}#section-26ef12a8-1616-4b4e-a92a-f7e63cf93b7a .media-text .lp-description a{color:currentColor;-webkit-text-decoration:underline;text-decoration:underline;}#section-26ef12a8-1616-4b4e-a92a-f7e63cf93b7a .media-text .lp-description a:hover{-webkit-text-decoration:none;text-decoration:none;}#section-26ef12a8-1616-4b4e-a92a-f7e63cf93b7a .media-text__image{position:absolute;left:0;top:0;height:100%;width:70%;z-index:1;object-fit:cover;display:block;}@media (max-width: 768px){#section-26ef12a8-1616-4b4e-a92a-f7e63cf93b7a .media-text__image{width:100%;height:332px;position:static;}}#section-26ef12a8-1616-4b4e-a92a-f7e63cf93b7a .media-text__container{position:relative;z-index:2;}#section-26ef12a8-1616-4b4e-a92a-f7e63cf93b7a .media-text__content{width:100%;max-width:745px;padding:77px 60px 77px 86px;margin-left:auto;background-color:var(--bgColor, #fff);}@media (max-width: 768px){#section-26ef12a8-1616-4b4e-a92a-f7e63cf93b7a .media-text__content{padding:24px 0;}}#section-26ef12a8-1616-4b4e-a92a-f7e63cf93b7a .media-text__buttons-group{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}@media (max-width: 580px){#section-26ef12a8-1616-4b4e-a92a-f7e63cf93b7a .media-text__buttons-group{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}}#section-26ef12a8-1616-4b4e-a92a-f7e63cf93b7a .media-text__buttons-group .lp-btn+.lp-btn{margin-left:24px;}@media (max-width: 580px){#section-26ef12a8-1616-4b4e-a92a-f7e63cf93b7a .media-text__buttons-group .lp-btn+.lp-btn{margin-left:0;margin-top:24px;}}#section-26ef12a8-1616-4b4e-a92a-f7e63cf93b7a .lp-title-group.text-left{text-align:left;}#section-26ef12a8-1616-4b4e-a92a-f7e63cf93b7a .redesign .description p{margin-bottom:1.666rem;}#section-97efe40a-6bdb-4a9e-87bc-c47975e11673{color:#354764;--fontColor:#354764;--fontColor_H:217;--fontColor_S:31%;--fontColor_L:30%;--fontColor_A:1;--fontColor_darkenDir:1;--bgColor:#ffffff;--bgColor_H:0;--bgColor_S:0%;--bgColor_L:100%;--bgColor_A:1;--bgColor_darkenDir:-1;--section-padding-top:calc(2 / 4 * var(--global-section-padding));--section-padding-bottom:calc(4 / 4 * var(--global-section-padding));background-color:#ffffff;}#section-97efe40a-6bdb-4a9e-87bc-c47975e11673 .v-carousel__list{display:none;}#section-97efe40a-6bdb-4a9e-87bc-c47975e11673 div.f-video-carousel{padding-top:96px;padding-bottom:76px;}@media only screen and (max-width: 767px){#section-97efe40a-6bdb-4a9e-87bc-c47975e11673 div.f-video-carousel{padding-top:64px;padding-bottom:64px;}}#section-97efe40a-6bdb-4a9e-87bc-c47975e11673 div.v-carousel{height:600px;}@media only screen and (max-width: 767px){#section-97efe40a-6bdb-4a9e-87bc-c47975e11673 div.v-carousel{height:308px;}}#section-97efe40a-6bdb-4a9e-87bc-c47975e11673 span.v-carousel__button:after{border-left:7px solid #C44628;}#section-97efe40a-6bdb-4a9e-87bc-c47975e11673 .f-video-carousel{padding-top:70px;padding-bottom:70px;position:relative;}@media(min-width: 769px){#section-97efe40a-6bdb-4a9e-87bc-c47975e11673 .f-video-carousel{padding-top:130px;padding-bottom:130px;}}
34#section-97efe40a-6bdb-4a9e-87bc-c47975e11673 .v-carousel{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}@media(min-width: 769px){#section-97efe40a-6bdb-4a9e-87bc-c47975e11673 .v-carousel{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;height:384px;}}#section-97efe40a-6bdb-4a9e-87bc-c47975e11673 .v-carousel__preview{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;background:#eeeeee;position:relative;margin-bottom:30px;height:280px;}@media(min-width: 769px){#section-97efe40a-6bdb-4a9e-87bc-c47975e11673 .v-carousel__preview{margin-bottom:0;height:auto;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;-webkit-flex-basis:50%;-ms-flex-preferred-size:50%;flex-basis:50%;}}#section-97efe40a-6bdb-4a9e-87bc-c47975e11673 .v-carousel__preview button{padding:0;border:none;display:block;position:absolute;left:0;top:0;cursor:pointer;height:100%;width:100%;background-color:transparent;}@media (min-width: 769px){#section-97efe40a-6bdb-4a9e-87bc-c47975e11673 .v-carousel__preview button:hover .v-carousel__button{background-color:rgba(255,255,255,0.3);}}#section-97efe40a-6bdb-4a9e-87bc-c47975e11673 .v-carousel__preview-item{height:100%;width:100%;position:absolute;left:0;top:0;}#section-97efe40a-6bdb-4a9e-87bc-c47975e11673 .v-carousel__cover{display:block;width:100%;height:100%;object-fit:cover;}#section-97efe40a-6bdb-4a9e-87bc-c47975e11673 .v-carousel__button{-webkit-transition:all .2s;transition:all .2s;cursor:pointer;background-color:rgba(255,255,255,0.16);border-radius:50%;width:89px;height:89px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;position:relative;border:none;position:absolute;left:50%;top:50%;-webkit-transform:translate(-50%, -50%);-moz-transform:translate(-50%, -50%);-ms-transform:translate(-50%, -50%);transform:translate(-50%, -50%);}#section-97efe40a-6bdb-4a9e-87bc-c47975e11673 .v-carousel__button:before{content:'';background-color:#fff;border-radius:50%;-webkit-transition:0.2s all;transition:0.2s all;width:44px;height:44px;}#section-97efe40a-6bdb-4a9e-87bc-c47975e11673 .v-carousel__button:after{content:'';width:0;height:0;border-top:4px solid transparent;border-bottom:4px solid transparent;border-left:7px solid #000;position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%, -50%);-moz-transform:translate(-50%, -50%);-ms-transform:translate(-50%, -50%);transform:translate(-50%, -50%);}@media (min-width: 769px){#section-97efe40a-6bdb-4a9e-87bc-c47975e11673 .v-carousel__button{width:127px;height:127px;}#section-97efe40a-6bdb-4a9e-87bc-c47975e11673 .v-carousel__button:before{width:63px;height:63px;}#section-97efe40a-6bdb-4a9e-87bc-c47975e11673 .v-carousel__button:after{border-width:6px 0 6px 11px;}}#section-97efe40a-6bdb-4a9e-87bc-c47975e11673 .v-carousel__list{list-style-type:none;margin:0;padding:0 26px 0 0;overflow:auto;max-height:480px;}#section-97efe40a-6bdb-4a9e-87bc-c47975e11673 .v-carousel__list::-webkit-scrollbar{width:6px;}#section-97efe40a-6bdb-4a9e-87bc-c47975e11673 .v-carousel__list::-webkit-scrollbar-track{background-color:rgba(32, 32, 32, 0.05);}#section-97efe40a-6bdb-4a9e-87bc-c47975e11673 .v-carousel__list::-webkit-scrollbar-button{background-color:transparent;height:0;}#section-97efe40a-6bdb-4a9e-87bc-c47975e11673 .v-carousel__list::-webkit-scrollbar-thumb{background-color:#535353;border-radius:3px;}@media(min-width: 769px){#section-97efe40a-6bdb-4a9e-87bc-c47975e11673 .v-carousel__list{padding:0 50px;height:auto;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;-webkit-flex-basis:50%;-ms-flex-preferred-size:50%;flex-basis:50%;}}#section-97efe40a-6bdb-4a9e-87bc-c47975e11673 .v-carousel__list-item{position:relative;-webkit-transition:0.4s all;transition:0.4s all;padding-right:30px;margin-bottom:0;padding-top:26px;padding-bottom:26px;cursor:pointer;}@media (min-width: 769px){#section-97efe40a-6bdb-4a9e-87bc-c47975e11673 .v-carou
34sel__list-item:hover{background-color:rgba(196, 196, 196, 0.1);padding-left:20px;}}#section-97efe40a-6bdb-4a9e-87bc-c47975e11673 .v-carousel__list-item+.v-carousel__list-item:after{content:'';display:block;position:absolute;top:0;left:0;right:0;background-color:currentColor;height:1px;opacity:0.2;}#section-97efe40a-6bdb-4a9e-87bc-c47975e11673 .v-carousel__list-item:first-child{padding-top:0;}#section-97efe40a-6bdb-4a9e-87bc-c47975e11673 .v-carousel__list-item:last-child{padding-bottom:0;}#section-97efe40a-6bdb-4a9e-87bc-c47975e11673 .v-carousel__list-item h3{font-size:20px;line-height:1.33;margin-bottom:10px;}@media(min-width: 769px){#section-97efe40a-6bdb-4a9e-87bc-c47975e11673 .v-carousel__list-item h3{font-size:24px;}}#section-97efe40a-6bdb-4a9e-87bc-c47975e11673 .v-carousel__list-item p{font-size:14px;line-height:1.57;margin-bottom:0;}#section-97efe40a-6bdb-4a9e-87bc-c47975e11673>div:last-child{padding-top:calc(2 / 4 * var(--global-section-padding))!important;padding-bottom:calc(4 / 4 * var(--global-section-padding))!important;}#section-c00cff8c-7bf7-439f-a337-b3977159e28e{color:#ffffff;--fontColor:#ffffff;--fontColor_H:0;--fontColor_S:0%;--fontColor_L:100%;--fontColor_A:1;--fontColor_darkenDir:-1;--bgColor:#fff;--bgColor_H:0;--bgColor_S:0%;--bgColor_L:100%;--bgColor_A:1;--bgColor_darkenDir:-1;background-color:#fff;--gradient-color:var(--overlay-color, rgba(0, 0, 0, 0.4));background-image:linear-gradient(var(--gradient-color), var(--gradient-color)),url('https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=1280/https://media-production.lp-cdn.com/media/j3dpehsnikjllclawuua');background-repeat:no-repeat;-webkit-background-position:center;background-position:center;-webkit-background-size:cover;background-size:cover;}#section-c00cff8c-7bf7-439f-a337-b3977159e28e.parallax-enabled{-webkit-clip-path:polygon(0px 0px, 100% 0%, 100% 100%, 0% 100%);clip-path:polygon(0px 0px, 100% 0%, 100% 100%, 0% 100%);}#section-c00cff8c-7bf7-439f-a337-b3977159e28e.parallax-enabled>div.video-wrapper{position:fixed;left:0;top:0;width:100vw;height:100vh;z-index:-9999;}#section-c00cff8c-7bf7-439f-a337-b3977159e28e.parallax-enabled .work-with-us:before{display:block;content:'';left:0;top:0;width:100%;background:var(--sectionBackground) center no-repeat;-webkit-background-size:cover;background-size:cover;position:fixed;z-index:-1;height:100%;}#section-c00cff8c-7bf7-439f-a337-b3977159e28e .redesign.work-with-us{position:relative;color:var(--fontColor, #ffffff);}#section-c00cff8c-7bf7-439f-a337-b3977159e28e .redesign.work-with-us .container{text-align:center;max-width:750px;min-height:689px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding-top:50px;padding-bottom:50px;position:relative;z-index:1;}@media (max-width: 768px){#section-c00cff8c-7bf7-439f-a337-b3977159e28e .redesign.work-with-us .container{min-height:auto;padding-top:100px;padding-bottom:100px;}}#section-c00cff8c-7bf7-439f-a337-b3977159e28e .redesign.work-with-us h2{position:relative;padding-bottom:28px;margin:0 0 30px;}@media(max-width: 768px){#section-c00cff8c-7bf7-439f-a337-b3977159e28e .redesign.work-with-us h2{padding-bottom:40px;}}#section-c00cff8c-7bf7-439f-a337-b3977159e28e .redesign.work-with-us h2:after{content:'';position:absolute;bottom:0;left:50%;margin-left:-55px;width:110px;height:1px;background-color:var(--fontColor, #ffffff);}#section-c00cff8c-7bf7-439f-a337-b3977159e28e .redesign.work-with-us .description{margin:0 0 30px;}@media(max-width: 768px){#section-c00cff8c-7bf7-439f-a337-b3977159e28e .redesign.work-with-us .description{margin-bottom:40px;}}#section-c00cff8c-7bf7-439f-a337-b3977159e28e .redesign.work-with-us .btn-container{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;
34-webkit-justify-content:center;justify-content:center;gap:23px;margin-top:32px;}@media(max-width: 560px){#section-c00cff8c-7bf7-439f-a337-b3977159e28e .redesign.work-with-us .btn-container{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:10px;}}@media (min-width: 960px) and (orientation: landscape){#section-c00cff8c-7bf7-439f-a337-b3977159e28e{background-image:linear-gradient(var(--gradient-color), var(--gradient-color)),url('https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=1280/https://media-production.lp-cdn.com/media/j3dpehsnikjllclawuua');}}@media (min-width: 1280px) and (orientation: landscape){#section-c00cff8c-7bf7-439f-a337-b3977159e28e{background-image:linear-gradient(var(--gradient-color), var(--gradient-color)),url('https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/j3dpehsnikjllclawuua');}}@media (min-width: 1920px) and (orientation: landscape){#section-c00cff8c-7bf7-439f-a337-b3977159e28e{background-image:linear-gradient(var(--gradient-color), var(--gradient-color)),url('https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/j3dpehsnikjllclawuua');}}@media (min-width: 2560px) and (orientation: landscape){#section-c00cff8c-7bf7-439f-a337-b3977159e28e{background-image:linear-gradient(var(--gradient-color), var(--gradient-color)),url('https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/j3dpehsnikjllclawuua');}}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d{color:#354764;--fontColor:#354764;--fontColor_H:217;--fontColor_S:31%;--fontColor_L:30%;--fontColor_A:1;--fontColor_darkenDir:1;--bgColor:#f8f8f8;--bgColor_H:0;--bgColor_S:0%;--bgColor_L:97%;--bgColor_A:1;--bgColor_darkenDir:-1;background-color:#f8f8f8;}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d a.slick-arrow{border-width:2px!important;}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .ig-feed{padding:80px 0;}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .title{margin:0 20px 0 0;}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .instagram-link{display:block;margin:0 20px 0 0;color:var(--global-primary-font-color);}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .instagram-link .instagram-name{display:inline;margin:0;}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .title+.instagram-link{margin-top:5px;}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .top-wrapper{margin-bottom:20px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-flex-wrap:wrap;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-align-items:flex-end;-webkit-box-align:flex-end;-ms-flex-align:flex-end;align-items:flex-end;}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .top-right{margin-left:auto;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:stretch;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .follow-button{margin:20px 0 0 0;display:block;}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .nav-button{margin-top:20px;-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;width:42px;color:#1a1a1a;border:1px solid currentColor;cursor:pointer;transition-property:color,background-color,border-color;transition-duration:.3s;transition-timing-function:ease;}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .nav-button.slick-disabled{opacity:0.6;pointer-events:none;cursor:default;}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .nav-button:not(.slick-disabled):hover{background-color:#1a1a1a;border-color:#1a1a1a;color:#fff;}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .top-nav-prev{margin-left:30px;}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .top-nav-next{margin-left:10px;}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .hidden-control{display:none;}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .slide-single,#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .slide-multi{position:relative;-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto;width:calc(100% / 3);padding:10px;}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .slide-single:first-child,#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .slide-multi:first-child{margin-left:auto;}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .slide-single:last-child,#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .slide-multi:last-child{margin-right:auto;}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .slide-single.type2,#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .slide-multi.type2{width:calc(100% / 5 * 2);}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .slide-single.type3,#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .slide-multi.type3{width:calc(100% / 2);}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .slide-single.type4,#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .slide-multi.type4{width:calc(100% / 2);}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .slide-single.type5,#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .slide-multi.type5{width:100%;}@media (max-width: 440px){#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .ig-feed-container{padding:0;width:100%;}}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .ig-feed-feed{width:calc(100% + 20px);position:relative;
34left:-10px;overflow:hidden;}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .ig-feed-slider{width:100%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .ig-feed-item__img{position:absolute;left:-1px;top:-1px;bottom:-1px;right:-1px;background:center/cover no-repeat;}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .ig-feed-item__info{position:absolute;top:0;left:0;bottom:0;right:0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;padding:10%;overflow:hidden;color:#fff;text-align:center;background-color:rgba(0, 0, 0, 0.8);opacity:0;-webkit-transition:opacity .3s ease;transition:opacity .3s ease;}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .ig-feed-item:hover .ig-feed-item__info{opacity:1;}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .ig-feed-item__caption{text-overflow:ellipsis;-webkit-line-clamp:4;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .video-icon{position:absolute;width:50px;height:50px;background-color:#fff;left:50%;top:50%;-webkit-transform:translate(-50%, -50%);-moz-transform:translate(-50%, -50%);-ms-transform:translate(-50%, -50%);transform:translate(-50%, -50%);border-radius:50%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;-webkit-transition:opacity .2s ease;transition:opacity .2s ease;opacity:1;}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .video-icon::before{content:'';display:block;width:0px;height:0px;border-style:solid;position:relative;left:1px;border-width:7.5px 0px 7.5px 11px;border-color:transparent transparent transparent #292826;}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .ig-feed-item:hover .video-icon{opacity:0;}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .slide-single .ig-feed-item__info{padding:15%;}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .slide-single .ig-feed-item__caption{-webkit-line-clamp:7;}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .ig-feed-item{background-color:var(--tileColor, #000);display:block;width:100%;padding-bottom:125%;overflow:hidden;position:relative;}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .slide-multi::before{content:'';display:block;width:100%;padding-bottom:125%;}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .slide-multi-content{padding:10px;position:absolute;width:100%;height:100%;left:0;top:0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-box-flex-wrap:wrap;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:justify;-webkit-justify-content:space-between;justify-content:space-between;-webkit-align-items:flex-start;-webkit-box-align:flex-start;-ms-flex-align:flex-start;align-items:flex-start;overflow:hidden;}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .slide-multi-content .ig-feed-item{width:calc(50% - 10px);padding-bottom:calc(62.5% - 12.5px);}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .slide-multi-content .ig-feed-item:nth-child(n + 3){-webkit-align-self:flex-end;-ms-flex-item-align:end;align-self:flex-end;}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .bottom-controls{width:100%;display:none;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .bottom-nav-button{-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto;margin:20px 10px 0;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;
34-webkit-justify-content:center;justify-content:center;width:48px;height:48px;color:#1a1a1a;border:1px solid currentColor;cursor:pointer;}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .bottom-nav-button.slick-disabled{opacity:0.6;pointer-events:none;cursor:default;}@media (max-width: 767px){#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .top-right,#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .top-left{width:100%;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .title,#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .instagram-link{margin-right:0;text-align:center;}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .top-nav-prev,#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .top-nav-next{display:none;}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .bottom-controls{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .ig-feed{display:none;}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d .has-data .ig-feed{display:block;}#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d.has-data .ig-feed,#section-1f1e0e09-5bb1-47a1-9029-aeb58682521d#section-temp .ig-feed{display:block;}#section-8e3e63d5-35c9-455d-980c-9828b97d610d{color:#000;--fontColor:#000;--fontColor_H:0;--fontColor_S:0%;--fontColor_L:0%;--fontColor_A:1;--fontColor_darkenDir:1;--bgColor:#fff;--bgColor_H:0;--bgColor_S:0%;--bgColor_L:100%;--bgColor_A:1;--bgColor_darkenDir:-1;background-color:#fff;}#section-8e3e63d5-35c9-455d-980c-9828b97d610d .container{padding:110px;}#section-8e3e63d5-35c9-455d-980c-9828b97d610d .container img{max-width:100%;}@media(max-width: 768px){#section-8e3e63d5-35c9-455d-980c-9828b97d610d .container ul li p{word-break:break-word;}}@media(max-width: 768px){#section-8e3e63d5-35c9-455d-980c-9828b97d610d .container a[onmouseover]{width:100%;}}@media (max-width: 992px){#section-8e3e63d5-35c9-455d-980c-9828b97d610d .container{padding:40px;}}#modal-global-contact-us .close{z-index:11;}#modal-global-contact-us .description{margin-bottom:15px;}#modal-global-contact-us .close:focus{outline:0;}#modal-global-contact-us .contact-form{padding:70px 0;width:100%;min-height:100vh;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;position:relative;color:var(--colorTxt, #ffffff);-webkit-background-size:cover;background-size:cover;}#modal-global-contact-us .contact-form:after{content:'';position:absolute;display:block;background-color:rgba(2, 5, 7, 0.85);height:100%;width:100%;z-index:0;}#modal-global-contact-us .contact-form.loading textarea,#modal-global-contact-us .contact-form.loading input,#modal-global-contact-us .contact-form.loading label,#modal-global-contact-us .contact-form.loading button{pointer-events:none;opacity:.5;}#modal-global-contact-us .contact-form.loading .submit-icon{display:inline-block;}#modal-global-contact-us .contact-form .submit-icon{display:none;}#modal-global-contact-us .contact-form .contact-form-close{width:40px;height:50px;display:block;padding:0;border:none;background-color:transparent;cursor:pointer;position:absolute;right:50px;top:50px;z-index:110;}@media (max-width: 560px){#modal-global-contact-us .contact-form .contact-form-close{right:20px;top:20px;width:30px;height:40px;}}#modal-global-contact-us .contact-form .contact-form-close:before,#modal-global-contact-us .contact-form .contact-form-close:after{content:'';display:block;width:40px;height:1px;background-color:#fff;position:absolute;left:50%;top:50%;}@media (max-width: 560px){#modal-global-contact-us .contact-form .contact-form-close:before,#modal-global-contact-us .contact-form .contact-form-close:after{width:30px;}}#modal-global-contact-us .contact-form .contact-form-close:before{-webkit-transform:translate(-50%, -50%) rotate(45deg);-moz-transform:translate(-50%, -50%) rotate(45deg);-ms-transform:translate(-50%, -50%) rotate(45deg);transform:translate(-50%, -50%) rotate(45deg);}#modal-global-contact-us .contact-form .contact-form-close:after{-webkit-transform:translate(-50%, -50%) rotate(-45deg);-moz-transform:translate(-50%, -50%) rotate(-45deg);-ms-transform:translate(-50%, -50%) rotate(-45deg);transform:translate(-50%, -50%) rotate(-45deg);}#modal-global-contact-us .contact-form .container{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;max-width:1440px;width:100%;padding:0 160px;margin:0 auto;z-index:10;}@media (max-width: 1320px){#modal-global-contact-us .contact-form .container{padding:0 80px;}}@media (max-width: 1200px){#modal-global-contact-us .contact-form .container{padding:0 30px;}}@media (max-width: 900px){#modal-global-contact-us .contact-form .container{-webkit-box-flex-wrap:wrap;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;}}
34@media (max-width: 560px){#modal-global-contact-us .contact-form .container{padding:0 20px;}}#modal-global-contact-us .contact-form h2{margin:0 0 18px 0;padding:0;}@media (max-width: 560px){#modal-global-contact-us .contact-form h2{margin:0 0 24px 0;}}#modal-global-contact-us .contact-form .section-details{width:50%;}@media (max-width: 1200px){#modal-global-contact-us .contact-form .section-details{padding-right:30px;}}@media (max-width: 900px){#modal-global-contact-us .contact-form .section-details{width:100%;padding-right:0;max-width:700px;margin-bottom:38px;}}#modal-global-contact-us .contact-form .section-message{width:50%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-ms-flex-pack:end;-webkit-justify-content:flex-end;justify-content:flex-end;position:relative;}@media (max-width: 1200px){#modal-global-contact-us .contact-form .section-message{padding-left:30px;}}@media (max-width: 900px){#modal-global-contact-us .contact-form .section-message{width:100%;padding-left:0;-webkit-box-pack:start;-ms-flex-pack:start;-webkit-justify-content:flex-start;justify-content:flex-start;}}#modal-global-contact-us .contact-form .section-message:after{content:'';position:absolute;display:block;width:1px;background:#999999;height:calc(100% + 50px);left:0;top:-20px;}@media (max-width: 900px){#modal-global-contact-us .contact-form .section-message:after{display:none;}}#modal-global-contact-us .contact-form .section-message form{max-width:435px;width:100%;}#modal-global-contact-us .contact-form .section-message form .submitButton{width:auto;}@media (max-width: 560px){#modal-global-contact-us .contact-form .section-message form .submitButton{width:100%;}}@media (max-width: 900px){#modal-global-contact-us .contact-form .section-message form{max-width:700px;}}#modal-global-contact-us .contact-form .section-message form.loading textarea,#modal-global-contact-us .contact-form .section-message form.loading input,#modal-global-contact-us .contact-form .section-message form.loading label,#modal-global-contact-us .contact-form .section-message form.loading button{pointer-events:none;opacity:.5;}#modal-global-contact-us .contact-form .section-message form.loading .label-loading{display:inline;}#modal-global-contact-us .contact-form .section-message form.loading .label-success,#modal-global-contact-us .contact-form .section-message form.loading .label-initial{display:none;}#modal-global-contact-us .contact-form .section-message form.loading .submit-icon{display:inline-block;}#modal-global-contact-us .contact-form .section-message form.success .label-loading,#modal-global-contact-us .contact-form .section-message form.success .label-initial{display:none;}#modal-global-contact-us .contact-form .section-message form.success .label-success{display:inline;}#modal-global-contact-us .contact-form .section-message .label-loading,#modal-global-contact-us .contact-form .section-message .label-success{display:none;}#modal-global-contact-us .contact-form .section-message .submit-icon{display:none;}#modal-global-contact-us .contact-form .section-message h2{margin-bottom:28px;}#modal-global-contact-us .contact-form .section-message .form-group_modal{-webkit-box-flex-wrap:wrap;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-bottom:39px;}#modal-global-contact-us .contact-form .section-message .form-group_modal input{border:none;border-bottom:1px solid #c0c0c0;display:block;width:100%;background:transparent;color:#ffffff;height:22px;font-size:16px;}@media (max-width: 560px){#modal-global-contact-us .contact-form .section-message .form-group_modal input{height:25px;}}#modal-global-contact-us .contact-form .section-message .form-group-textarea{margin-bottom:30px;}@media (max-width: 560px){#modal-global-contact-us .contact-form .section-message .form-group-textarea{margin-bottom:23px;}}#modal-global-contact-us .contact-form .section-message label{display:block;width:100%;line-height:1.63;letter-spacing:1px;color:#c0c0c0;font-weight:bold;text-transform:uppercase;}#modal-global-contact-us .contact-form .section-message textarea{resize:none;height:105px;width:100%;background:transparent;border:solid 1px #ffffff;margin:23px 0 0 0;color:#ffffff;padding:10px;font-size:16px;}@media (max-width: 560px){#modal-global-contact-us .contact-form .section-message textarea{margin:10px 0 0 0;height:89px;}}#modal-global-contact-us .contact-form .info-zone h4{margin:0 0 16px 0;}@media (max-width: 560px){#modal-global-contact-us .contact-form .info-zone h4{margin:0 0 13px 0;}}#modal-global-contact-us .contact-form .info-zone .type_user:nth-of-type(2){margin-bottom:30px;}@media (max-width: 560px){#modal-global-contact-us .contact-form .info-zone .type_user{margin-bottom:58px;}}#modal-global-contact-us .contact-form .info-zone_contact{margin-bottom:23px;}#modal-global-contact-us .contact-form .info-zone_contact:nth-last-child(2){margin-bottom:30px;}#modal-global-contact-us .contact-form .info-zone_contact_cell{position:relative;padding-left:45px;margin-bottom:22px;font-weight:bold;font-size:14px;max-width:90%;letter-spacing:1.5px;text-transform:uppercase;}@media (max-width: 560px){#modal-global-contact-us .contact-form .info-zone_contact_cell{padding-left:0;}}#modal-global-contact-us .contact-form .info-zone_contact_cell:last-of-type{margin-bottom:0;}#modal-global-contact-us .contact-form .info-zone_contact_cell i{position:absolute;
34left:0;top:0;display:block;}@media (max-width: 560px){#modal-global-contact-us .contact-form .info-zone_contact_cell i{position:relative;margin-bottom:7px;}}#modal-global-contact-us .contact-form .info-zone_contact_cell i svg path{fill:var(--colorTxt);}#modal-global-contact-us .contact-form .info-zone_contact_cell div{padding:0;}#modal-global-contact-us .contact-form .info-zone_contact_cell .contact_title{line-height:1;margin-bottom:5px;}#modal-global-contact-us .contact-form .info-zone_contact_link{color:var(--colorTxt);}@media (max-width: 560px){#modal-global-contact-us .contact-form .info-zone .type_user:nth-of-type(2){margin-bottom:58px;}}@media (max-width: 560px){#modal-global-contact-us .contact-form .hours_box{margin-bottom:52px;}}#modal-global-contact-us .contact-form .socials_zone{padding-left:45px;}@media (max-width: 560px){#modal-global-contact-us .contact-form .socials_zone{padding-left:0;}}#modal-global-contact-us .contact-form .socials_zone li{margin-bottom:10px;}#modal-global-contact-us .contact-form .socials_zone li:not(:last-child){padding-right:34px;}@media (max-width: 560px){#modal-global-contact-us .contact-form .socials_zone li:not(:last-child){padding-right:12px;}}#modal-global-contact-us .contact-form .success-message.success{margin-top:15px;color:var(--colorTxt);position:absolute;}#modal-global-contact-us .contact-form .success-message.hide{opacity:0;}#modal-global-contact-us .contact-form.one_contact .info-zone .type_user{margin-bottom:73px;}@media (max-width: 768px){#modal-global-contact-us .contact-form.one_contact .info-zone .type_user{margin-bottom:51px;}}@media (max-width: 560px){#modal-global-contact-us .contact-form.one_contact .info-zone .type_user{margin-bottom:40px;}}#modal-global-contact-us .contact-form.one_contact .hours_box{margin-bottom:38px;}#modal-global-contact-us .contact-form.no_icon .info-zone_contact_cell{padding-left:0;}#modal-global-contact-us .contact-form.no_icon .info-zone_contact_cell i{display:none;}#modal-global-contact-us .contact-form.no_icon .socials_zone{padding-left:0;}#modal-global-contact-us .contact-form .pre-line{white-space:pre-line;}#modal-global-contact-us .lp-input-group{margin-bottom:40px;}#modal-global-contact-us .lp-input-group.m16{margin-bottom:16px;}#modal-global-contact-us .lp-disclaimer{margin-top:0;}#modal-global-contact-us .lp-input{border-color:#ffffff;}#modal-global-contact-us .lp-input:focus,#modal-global-contact-us .lp-input:active{border-color:#5e5e5e;}nav{color:#fff;-webkit-transition:0.2s -webkit-transform ease;transition:0.2s transform ease;z-index:102;}nav.scroll .logo .logo__img.light{display:block;}nav.scroll .logo .logo__img.dark{display:none;}nav .header{height:100px;-webkit-transform:translateY(24px);-moz-transform:translateY(24px);-ms-transform:translateY(24px);transform:translateY(24px);}@media (max-width: 768px){nav .header{-webkit-transform:translateY(0);-moz-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0);}}nav .header .container{max-width:1440px;padding:0 15px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;height:100%;}@media (max-width: 1024px){nav .header .container{padding:0 15px;}}nav .header .navbar{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-webkit-justify-content:space-between;justify-content:space-between;min-height:70px;padding:8px 0 7px;width:100%;}nav .header .logo{z-index:911;position:relative;margin-right:10px;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;max-width:300px;}nav .header .logo a{overflow:hidden;display:inline-block;}nav .header .logo img{max-width:100%;max-height:52px;vertical-align:top;object-fit:contain;}@media (max-width: 1024px){nav .header .logo img{max-height:50px;}}nav .header .logo img.dark{display:none;}@media(max-width: 1024px){nav .header .logo img.dark{display:none!important;}}nav .header .logo img.light{display:block;}@media(max-width: 1024px){nav .header .logo img.light{display:inline-block!important;}}
34nav .header .logo__link{-webkit-animation-duration:1s;animation-duration:1s;overflow:hidden;}nav .header .logo__img.light{display:block;}nav .header .logo__img.dark{display:none;}nav .header .navigation{margin-left:auto;color:inherit;}@media (max-width: 1024px){nav .header .navigation{display:none;}}nav .header .navigation ul{position:relative;list-style-type:none;padding-left:0;margin-bottom:0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-ms-flex-pack:end;-webkit-justify-content:flex-end;justify-content:flex-end;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}nav .header .navigation ul li a span,nav .header .navigation ul li button span{position:relative;white-space:nowrap;}nav .header .navigation ul li a span:after,nav .header .navigation ul li button span:after{content:'';position:absolute;display:block;height:1px;background-color:#c6c6c6;width:0;bottom:0;left:0;-webkit-transition:all .2s ease;transition:all .2s ease;}nav .header .navigation ul li a:hover span:after,nav .header .navigation ul li button:hover span:after{width:100%;-webkit-transition:all .2s ease;transition:all .2s ease;}nav .header .navigation__item{padding:0;margin:0;}nav .header .navigation__link{display:block;padding:12px 13px;color:inherit;position:relative;font-size:13px;line-height:1.08;font-weight:700;letter-spacing:1.5px;background-color:transparent;border:none;cursor:pointer;text-align:left;text-transform:uppercase;}@media (max-width: 1280px){nav .header .navigation__link{padding:19px 10px;font-size:11.5px;}}nav .header .navigation__link .sub-nav-container .navigation__link:hover{background:#000000;}nav .header .navigation .sub-nav{position:absolute;bottom:0;padding:0;opacity:0;visibility:hidden;-webkit-transition:all .2s ease;transition:all .2s ease;-webkit-transform:translate(0, calc(100% + -10px));-moz-transform:translate(0, calc(100% + -10px));-ms-transform:translate(0, calc(100% + -10px));transform:translate(0, calc(100% + -10px));}nav .header .navigation .sub-nav ul{margin:0;padding:12px 0;display:block;background-color:rgba(26, 26, 26, .75);max-width:300px;}nav .header .navigation .sub-nav__item{position:relative;display:block;margin:0;text-align:left;}nav .header .navigation .sub-nav__item:last-child{border-bottom-color:transparent;}nav .header .navigation .sub-nav__link{display:block;max-width:300px;color:#ffffff;margin:0;line-height:1;letter-spacing:1.5px;padding:19px 13px;-webkit-transition:all .2s ease;transition:all .2s ease;}nav .header .navigation .sub-nav.visible{opacity:1;visibility:visible;-webkit-transform:translate(0, 100%);-moz-transform:translate(0, 100%);-ms-transform:translate(0, 100%);transform:translate(0, 100%);}nav .header .navigation .sub-nav.visible+.navigation__link{background:#000000;}nav .header .hamburger{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;border:none;padding:28px 13px;background-color:transparent;color:inherit;vertical-align:middle;cursor:pointer;outline:none;z-index:915;opacity:1;}nav .header .hamburger__bars{position:relative;display:block;width:26px;height:2px;background-color:currentColor;-webkit-transition:0.2s -webkit-transform ease;transition:0.2s transform ease;}nav .header .hamburger__bars:before,nav .header .hamburger__bars:after{content:'';display:block;width:26px;height:2px;background-color:currentColor;position:absolute;left:0;top:0;-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);transform:translate3d(0,0,0);-webkit-transition:0.2s -webkit-transform ease;transition:0.2s transform ease;}nav .header .hamburger__bars:before{-webkit-transform:translateY(-9px);-moz-transform:translateY(-9px);-ms-transform:translateY(-9px);transform:translateY(-9px);}nav .header .hamburger__bars:after{-webkit-transform:translateY(9px);-moz-transform:translateY(9px);-ms-transform:translateY(9px);transform:translateY(9px);}nav .header .hamburger:hover{text-shadow:.5px 0 0,-.5px 0 0;}nav .header .hamburger:hover .hamburger__bars:before{-webkit-transform:translateY(-7px);-moz-transform:translateY(-7px);-ms-transform:translateY(-7px);transform:translateY(-7px);}nav .header .hamburger:hover .hamburger__bars:after{-webkit-transform:translateY(7px);-moz-transform:translateY(7px);-ms-transform:translateY(7px);transform:translateY(7px);}nav .header .hamburger.active .hamburger__bars{-webkit-transform:rotate(135deg);-moz-transform:rotate(135deg);-ms-transform:rotate(135deg);transform:rotate(135deg);opacity:0;}nav .header .hamburger.active .hamburger__bars:before{display:none;}nav .header .hamburger.active .hamburger__bars:after{-webkit-transform:rotate(270deg);-moz-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg);}nav .content-container{-webkit-transition:0.2s all ease;transition:0.2s all ease;}nav.scroll .content-container,nav .scroll .content-container{-webkit-transform:translateY(0);-moz-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0);}nav.scroll .content-container .navigation__link,nav .scroll .content-container .navigation__link{visibility:visible!important;}nav.scroll .content-container .navigation .sub-nav,nav .scroll .content-container .navigation .sub-nav{-webkit-transform:translate(0, calc(100% + -10px));-moz-transform:translate(0, calc(100% + -10px));-ms-transform:translate(0, calc(100% + -10px));transform:translate(0, calc(100% + -10px));}nav.scroll .content-container .navigation .sub-nav ul,nav .scroll .content-container .navigation .sub-nav ul{padding:0;}nav.scroll .content-container .navigation .sub-nav.visible,nav .scroll .content-container .navigation .sub-nav.visible{opacity:1;visibility:visible;-webkit-transform:translate(0, calc(100% + 23px));-moz-transform:translate(0, calc(100% + 23px));-ms-transform:translate(0, calc(100% + 23px));transform:translate(0, calc(100% + 23px));}nav .dark-opening{background-color:rgb(26, 26, 26)!important;}nav nav.dark-opening .header{margin-top:0;}nav #ctaShowButton,nav #ctaMessage{display:none!important;}nav #ctaShowButton{display:none;opacity:0;pointer-events:none;}nav .search{cursor:pointer;}nav .search svg{display:block;}nav .buttons-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-ms-flex-pack:end;
34-webkit-justify-content:flex-end;justify-content:flex-end;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;}body>div.sidemenu{background-color:#fff;color:rgba(53, 71, 100, 1);--fontColor:rgba(53, 71, 100, 1);--fontColor_H:217;--fontColor_S:31%;--fontColor_L:30%;--fontColor_A:1;--fontColor_darkenDir:1;--bgColor:#fff;--bgColor_H:0;--bgColor_S:0%;--bgColor_L:100%;--bgColor_A:1;--bgColor_darkenDir:-1;}body>div.sidemenu{width:auto!important;left:auto!important;right:-100%;top:0;background-color:transparent;-webkit-transition:right .3s;transition:right .3s;display:block;}body>div.sidemenu:not(.visible){pointer-events:none;visibility:hidden;}body>div.sidemenu.visible{right:0;}body>div.sidemenu .sidebar{position:relative;width:400px;height:100vh;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;padding-top:40px;padding-bottom:100px;background-color:var(--bgColor, #fff);color:var(--fontColor, #000);font-family:var(--global-primary-font-family);font-size:21px;line-height:1.333333;letter-spacing:.5px;-webkit-transition:all .3s ease-in;transition:all .3s ease-in;}@media (max-width: 767px){body>div.sidemenu .sidebar{width:270px;font-size:18px;}}body>div.sidemenu .sidebar__content{position:relative;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;height:100%;width:100%;padding-left:40px;padding-right:40px;text-align:center;overflow-y:auto;}@media (max-width: 767px){body>div.sidemenu .sidebar__content{-webkit-box-pack:start;-ms-flex-pack:start;-webkit-justify-content:flex-start;justify-content:flex-start;padding-left:20px;padding-right:20px;}}body>div.sidemenu .sidebar__close{position:absolute;right:30px;top:30px;display:inline-block;width:38px;height:38px;padding:10px;border:none;border-radius:0;background:transparent;color:inherit;z-index:1;cursor:pointer;}body>div.sidemenu .sidebar__close:before,body>div.sidemenu .sidebar__close:after{content:'';display:block;width:22px;height:2px;background-color:currentColor;position:absolute;left:50%;top:50%;}body>div.sidemenu .sidebar__close:before{-webkit-transform:translate(-50%, -50%) rotate(45deg);-moz-transform:translate(-50%, -50%) rotate(45deg);-ms-transform:translate(-50%, -50%) rotate(45deg);transform:translate(-50%, -50%) rotate(45deg);}body>div.sidemenu .sidebar__close:after{-webkit-transform:translate(-50%, -50%) rotate(-45deg);-moz-transform:translate(-50%, -50%) rotate(-45deg);-ms-transform:translate(-50%, -50%) rotate(-45deg);transform:translate(-50%, -50%) rotate(-45deg);}@media (max-width: 767px){body>div.sidemenu .sidebar__close{right:10px;top:10px;}}body>div.sidemenu .sidebar__close:focus{outline:none;}body>div.sidemenu .sidebar__nav{list-style:none;padding:0;margin:auto 0;}body>div.sidemenu .sidebar__nav-item{margin:0;padding-top:4px;padding-bottom:4px;border-bottom:1px solid hsla(
35      var(--bgColor_H, 0),
36      var(--bgColor_S, 0%),
37      calc(50% + (var(--bgColor_L, 100%) - 50%) * 0.9),
38      var(--bgColor_A, 1)
39    );}body>div.sidemenu .sidebar__nav-link{display:inline-block;padding:10px;border:none;border-radius:0;background:transparent;text-transform:none;-webkit-transition:all .25s;transition:all .25s;cursor:pointer;color:inherit;}body>div.sidemenu .sidebar__nav-link:focus{outline:none;}body>div.sidemenu .sidebar__subnav{list-style:none;padding:4px 0 10px;margin:0;font-size:17px;}@media (max-width: 767px){body>div.sidemenu .sidebar__subnav{font-size:14px;letter-spacing:.3px;}}body>div.sidemenu .sidebar__subnav-item{margin-bottom:10px;}body>div.sidemenu .sidebar__subnav-item:last-child{margin-bottom:0;}body>div.sidemenu .sidebar__subnav-link{display:inline-block;padding:0;border:none;border-radius:0;background:transparent;text-transform:none;opacity:.7;-webkit-transition:all .25s;transition:all .25s;cursor:pointer;color:inherit;}body>div.sidemenu .sidebar__subnav-link:focus{outline:none;}body>div.sidemenu .sub-nav{visibility:hidden;opacity:0;max-height:0;-webkit-transition:all .3s;transition:all .3s;}body>div.sidemenu .sub-nav.visible{display:block;visibility:visible;opacity:1;max-height:100vh;}body>div.sidemenu .sub-nav.visible+.main-nav{color:#7a7a7a;}body>div.sidemenu .sub-nav.visible+.main-nav:after{margin-left:40px;border-bottom:2px solid var(--fontColor, #7a7a7a);border-right:2px solid var(--fontColor, #7a7a7a);}body>div.sidemenu .sub-nav-container{position:relative;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column-reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse;}body>div.sidemenu .sub-nav-container:hover .main-nav:after{border-bottom:2px solid var(--fontColor, #7a7a7a);border-right:2px solid var(--fontColor, #7a7a7a);}body>div.sidemenu .sub-nav-container .main-nav{position:relative;display:inline-block;}body>div.sidemenu .sub-nav-container .main-nav:after{content:'';display:inline-block;position:relative;width:8px;height:8px;margin-left:25px;-webkit-transform:rotate(45deg) translateX(-100%);-moz-transform:rotate(45deg) translateX(-100%);-ms-transform:rotate(45deg) translateX(-100%);transform:rotate(45deg) translateX(-100%);border-bottom:2px solid var(--fontColor, #000000);border-right:2px solid var(--fontColor, #000000);top:0;bottom:auto;left:auto;-webkit-transition:0.5s all ease;transition:0.5s all ease;background-color:transparent;}body>div.sidemenu #main-section .sidebar{-webkit-transform:translateX(0);-moz-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0);}footer{background-color:#fff;color:rgba(53, 71, 100, 1);--fontColor:rgba(53, 71, 100, 1);--fontColor_H:217;--fontColor_S:31%;--fontColor_L:30%;--fontColor_A:1;--fontColor_darkenDir:1;--bgColor:#fff;--bgColor_H:0;--bgColor_S:0%;--bgColor_L:100%;--bgColor_A:1;--bgColor_darkenDir:-1;--greyColor:hsla(
40var(--fontColor_H),
41var(--fontColor_S),
42calc(var(--fontColor_L) + (50% - var(--fontColor_L)) * 0.445),
43var(--fontColor_A));}footer .redesign .inp--dark-bg input{color:var(--fontColor);border-color:hsla(
44      var(--fontColor_H),
45      var(--fontColor_S),
46      calc(var(--fontColor_L) + (50% - var(--fontColor_L)) * 0.445),
47      var(--fontColor_A));}footer .redesign .inp--dark-bg input:hover{border-color:var(--fontColor);}footer .redesign .inp+.inp{margin-top:24px;}footer .redesign .btn--primary-light{border-color:var(--fontColor);color:var(--fontColor);}footer .redesign .btn--primary-light:hover{background-color:var(--fontColor);color:var(--bgColor);}footer.is-background-color-light .redesign .btn--primary-light{border-width:1px;}footer .redesign .socials--grey{-webkit-box-pack:end;-ms-flex-pack:end;
47-webkit-justify-content:flex-end;justify-content:flex-end;}footer .redesign .socials--grey .socials__link{background-color:hsla(
48      var(--bgColor_H),
49      var(--bgColor_S),
50      calc(var(--bgColor_L) + (50% - var(--bgColor_L)) * 0.15),
51      var(--bgColor_A));color:var(--greyColor);}footer .redesign .socials--grey .socials__link svg{fill:var(--greyColor);}footer .redesign .socials--grey .socials__link:hover{background-color:hsla(
52        var(--bgColor_H),
53        var(--bgColor_S),
54        calc(var(--bgColor_L) + (50% - var(--bgColor_L)) * 0.4),
55        var(--bgColor_A));color:var(--fontColor);}footer .redesign .socials--grey .socials__link:hover svg{fill:var(--fontColor);}footer .redesign.footer .grey-text{color:var(--fontColor);}footer .footer{position:relative;padding-top:60px;padding-bottom:30px;}@media (max-width: 560px){footer .footer{padding-top:10px;}}@media (max-width: 500px){footer .footer{padding-bottom:70px;}}footer .footer .text_content_wrap p{margin-bottom:15px;}footer .footer .text_content_wrap p:last-of-type{margin-bottom:0;}footer .footer .container{max-width:1440px;}@media (max-width: 768px){footer .footer .container{padding-left:25px;padding-right:25px;}}@media (max-width: 560px){footer .footer .container{padding-left:20px;padding-right:20px;}}footer .footer h3{margin:0 0 15px 0;}footer .footer h5{text-transform:capitalize;}footer .footer .info-wrap{margin-bottom:40px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-flex-wrap:wrap;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;}footer .footer .info-wrap .agent_box{width:70%;}@media (max-width: 1280px){footer .footer .info-wrap .agent_box{width:50%;}}@media (max-width: 768px){footer .footer .info-wrap .agent_box{width:100%;}}footer .footer .info-wrap .newsletter_box{width:30%;}@media (max-width: 1280px){footer .footer .info-wrap .newsletter_box{width:50%;}}@media (max-width: 768px){footer .footer .info-wrap .newsletter_box{width:100%;}}footer .footer .info-wrap .newsletter_box--padding{padding-top:44px;}@media (max-width: 768px){footer .footer .info-wrap .newsletter_box--padding{padding-top:0;}}footer .footer .info-wrap .newsletter_box .contact_title{margin-bottom:13px;line-height:1.6;}@media (max-width: 768px){footer .footer .info-wrap .newsletter_box .info-wrap-contact_cell{margin-bottom:0;padding-left:0;}}@media (max-width: 768px){footer .footer .info-wrap .newsletter_box .icon_text{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-bottom:22px;position:relative;}footer .footer .info-wrap .newsletter_box .icon_text i{position:relative;width:30px;margin-right:20px;}footer .footer .info-wrap .newsletter_box .icon_text .contact_title{margin-bottom:0;}}@media (max-width: 768px){footer .footer .info-wrap .newsletter_box .info-wrap-contact_zone{margin-bottom:0;}}footer .footer .info-wrap-contact{position:relative;}footer .footer .info-wrap-contact_zone{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-flex-wrap:wrap;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:justify;-webkit-justify-content:space-between;justify-content:space-between;margin-bottom:39px;}@media (max-width: 768px){footer .footer .info-wrap-contact_zone{margin-bottom:21px;}footer .footer .info-wrap-contact_zone:last-child{margin-bottom:51px;}}footer .footer .info-wrap-contact_zone i{position:absolute;left:0;display:block;}footer .footer .info-wrap-contact_zone i svg path{fill:currentColor;}footer .footer .info-wrap-contact_zone h4{margin:0 0 13px 0;width:100%;}footer .footer .info-wrap-contact_cell{position:relative;padding-left:50px;width:400px;font-size:14px;text-transform:uppercase;font-weight:bold;letter-spacing:1.5px;}@media (max-width: 1280px){footer .footer .info-wrap-contact_cell:first-of-type{margin-bottom:21px;}}footer .footer .info-wrap-contact_cell .contact_title{line-height:1;margin-bottom:5px;}footer .footer .info-wrap-contact_link{color:var(--greyColor);position:relative;}@media (max-width: 560px){footer .footer .info-wrap-contact_link{letter-spacing:0;}}footer .footer .hvr_animation{position:relative;-webkit-text-decoration:none!important;text-decoration:none!important;}footer .footer .hvr_animation:after{content:'';position:absolute;
55left:0;bottom:0;width:0%;height:1px;background:var(--greyColor);-webkit-transition:.3s linear;transition:.3s linear;}footer .footer .hvr_animation:hover:after{width:100%;}footer .footer .hvr_animation.underlined:after{width:100%;}footer .footer .hvr_animation.underlined:hover:after{width:0%;}footer .footer .form-content{padding:0!important;}footer .footer .form-content label{color:var(--fontColor);text-transform:none;letter-spacing:1;}footer .footer .form-content input{padding:2px 24px 2px 0;}footer .footer .form-content .subscribe_btn{margin-top:20px;position:relative;}footer .footer .form-content .subscribe_btn i{font-size:18px;position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%, -50%);-moz-transform:translate(-50%, -50%);-ms-transform:translate(-50%, -50%);transform:translate(-50%, -50%);opacity:0;}footer .footer .form-content.success i{opacity:1;}footer .footer .form-content.success .subscribe_btn span{opacity:0;}footer .footer .form-content.success .hide{opacity:0;}footer .footer .form-content.success .hide +span{opacity:1;}footer .footer .text_footer{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;width:100%;margin-bottom:39px;}@media (max-width: 1280px){footer .footer .text_footer{-webkit-box-flex-wrap:wrap;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;}}@media (max-width: 560px){footer .footer .text_footer{text-align:center;}}footer .footer .text_footer p{white-space:normal;}footer .footer .text_footer .images_box{max-width:186px;width:100%;margin-right:43px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;justify-content:space-between;}@media (max-width: 560px){footer .footer .text_footer .images_box{margin:0 auto 20px auto;}}@media (max-width: 1280px){footer .footer .text_footer .img_size{margin-bottom:20px;}}@media (max-width: 560px){footer .footer .text_footer .img_size{margin-bottom:0;}}footer .footer .text_footer .img_size img{width:100%;height:100%;object-fit:contain;}footer .footer .first_text_footer .img_size{width:100%;height:63px;}footer .footer .first_text_footer .img_size img{width:100%;height:100%;object-fit:contain;}@media (max-width: 768px){footer .footer .first_text_footer{margin-bottom:51px;}}footer .footer .second_text_footer .first_img_size{width:45px;height:45px;margin-right:15px;}footer .footer .second_text_footer .second_img_size{width:100px;height:45px;}@media (max-width: 560px){footer .footer .second_text_footer{margin-bottom:21px;}}footer .footer .info-privacy{padding-top:45px;padding-bottom:30px;border-top:1px solid hsla(
56        var(--bgColor_H),
57        var(--bgColor_S),
58        calc(var(--bgColor_L) + (50% - var(--bgColor_L)) * 0.55),
59        var(--bgColor_A));}@media (max-width: 768px){footer .footer .info-privacy{padding-top:0;border-top:none;}}footer .footer .info-privacy__row{-webkit-box-flex-wrap:wrap;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;}footer .footer .info-privacy .copy_zone{font-size:18px;}@media (min-width: 1350px){footer .footer .info-privacy .copy_zone{text-align:center;}}@media (min-width: 1281px){footer .footer .info-privacy .copy_zone{padding-top:8px;padding-bottom:8px;}}@media (max-width: 768px){footer .footer .info-privacy .copy_zone{text-align:center;margin-bottom:10px;padding-top:45px;border-top:1px solid hsla(
60            var(--bgColor_H),
61            var(--bgColor_S),
62            calc(var(--bgColor_L) + (50% - var(--bgColor_L)) * 0.55),
63            var(--bgColor_A));}}footer .footer .info-privacy .copy_zone a{color:var(--greyColor);}footer .footer .info-privacy .powered_zone{font-size:18px;}@media (min-width: 1281px){footer .footer .info-privacy .powered_zone{padding-top:8px;padding-bottom:8px;}}@media (max-width: 1280px){footer .footer .info-privacy .powered_zone{text-align:center;}}@media (max-width: 768px){footer .footer .info-privacy .powered_zone{text-align:center;margin-bottom:24px;}}footer .footer .info-privacy .powered_zone a{color:var(--greyColor);}@media (min-width: 1281px){footer .footer .info-privacy .socials_zone{-webkit-box-flex-wrap:nowrap;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap;}}@media (max-width: 1280px){footer .footer .info-privacy .socials_zone{width:100%;margin-top:20px;-webkit-box-pack:start;-ms-flex-pack:start;
63-webkit-justify-content:flex-start;justify-content:flex-start;}}@media (max-width: 768px){footer .footer .info-privacy .socials_zone{-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;margin-top:0;margin-bottom:20px;}footer .footer .info-privacy .socials_zone li{padding:0 7px 10px 7px;}}footer .footer.one_contact .type_user{margin-bottom:73px;}@media (max-width: 768px){footer .footer.one_contact .type_user{margin-bottom:51px;}}footer .footer.no_newsletter h3{margin-bottom:46px;}footer .footer.no_newsletter .newsletter_box{display:none;}footer .footer.no_newsletter .info-wrap-contact{width:calc(70% + 230px);width:100%;padding-left:230px;}@media (max-width: 1200px){footer .footer.no_newsletter .info-wrap-contact{padding-left:0;}}@media (max-width: 768px){footer .footer.no_newsletter .info-wrap-contact{width:100%;}}@media (max-width: 1200px){footer .footer.no_newsletter .info-wrap-contact_cell{width:50%;}}@media (max-width: 768px){footer .footer.no_newsletter .info-wrap-contact_cell{width:100%;}}footer .footer.no_newsletter .info-wrap-contact h4{position:absolute;margin-top:-8px;left:0;max-width:200px;}@media (max-width: 1200px){footer .footer.no_newsletter .info-wrap-contact h4{position:relative;left:auto;max-width:100%;width:100%;margin-bottom:20px;margin-top:0;}}@media (max-width: 768px){footer .footer.no_newsletter .info-wrap-contact h4{position:relative;left:auto;max-width:100%;}}footer .footer.no_newsletter .info-wrap-contact_zone:first-of-type{margin-bottom:71px;}@media (max-width: 1200px){footer .footer.no_newsletter .info-wrap-contact_zone:first-of-type{margin-bottom:39px;}}@media (max-width: 768px){footer .footer.no_newsletter .info-wrap-contact_zone:first-of-type{margin-bottom:51px;}}footer .footer.no_newsletter .info-wrap-contact_zone:last-child{margin-bottom:0;}footer .footer.no_icon .info-wrap-contact_cell{padding-left:0;}footer .footer.no_icon .info-wrap-contact_cell i{display:none;}footer .footer.no-names .info-wrap-contact{padding-left:0;}footer .form-row{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-flex-wrap:wrap;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-webkit-justify-content:space-between;justify-content:space-between;margin-left:-15px;margin-right:-15px;}@media (min-width: 1281px){footer .form-row{-webkit-box-flex-wrap:nowrap;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap;}}@media (max-width: 900px){footer .form-row{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}}footer .form-col{-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%;padding-left:15px;padding-right:15px;}@media (min-width: 768px){footer .form-col{-webkit-flex:1 1 0;-ms-flex:1 1 0;flex:1 1 0;}}@media (min-width: 768px){footer .form-col--socials{-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%;}}@media (min-width: 1281px){footer .form-col--socials{-webkit-flex-basis:0;-ms-flex-preferred-size:0;flex-basis:0;}}@media (max-width: 768px){footer .form-col--socials{-webkit-order:-1;-ms-flex-order:-1;order:-1;}}@media (min-width: 1281px){footer .form-col--xl-auto{-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto;}}footer .additional-links-separator{display:block;width:100%;height:0;overflow:hidden;}@media (min-width: 768px){footer .additional-links-separator{display:inline;width:auto;height:auto;}footer .additional-links-separator:before{content:"|";}}footer .h-pot{height:0;width:0;overflow:hidden;visibility:hidden;}footer .img-wrap{max-width:100px;width:100%;display:block;margin-right:20px;}@media (max-width: 900px){footer .img-wrap{margin-right:0;margin-bottom:10px;}}footer .img-wrap img{width:100%;object-fit:cover;}footer .powered-box{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 0 auto;}@media (max-width: 900px){footer .powered-box{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}}footer .form-col--copyright{-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 0 auto;margin:10px 0;}footer .luxury-link{white-space:nowrap;}footer .footer__disclaimers{padding-top:24px;padding-bottom:24px;}@media (max-width: 900px){footer .footer__disclaimers{text-align:center;}}body>div.mobile-contact-wrapper .mobile-contact{display:none;position:fixed;right:30px;bottom:25px;z-index:91;}body>div.mobile-contact-wrapper .mobile-contact a{-webkit-text-decoration:none;text-decoration:none;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;
63-webkit-justify-content:center;justify-content:center;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:55px;height:55px;margin-bottom:15px;background-color:#fff;font-size:22px;border:2px solid hsla(0,0%,49.8%,.3);border-radius:90px;margin-left:1px;}body>div.mobile-contact-wrapper .mobile-contact a i{color:#000;}body>div.mobile-contact-wrapper .mobile-contact .buttons-holder{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}body>div.mobile-contact-wrapper .mobile-contact.dark a{background-color:#000;}body>div.mobile-contact-wrapper .mobile-contact.dark a i{color:#fff;}@media (max-width: 560px){body>div.mobile-contact-wrapper .mobile-contact{display:block;}}
64        </style>
65    <style id="custom-style-css">.button-style-1{color:rgba(255, 255, 255, 1)!important;background-color:rgba(213, 163, 144, 1)!important;border-color:rgba(213, 163, 144, 1)!important;}.button-style-1:hover{color:rgba(255, 255, 255, 1)!important;background-color:rgba(196, 70, 40, 1)!important;border-color:rgba(196, 70, 40, 1)!important;}.social_icons-style-1 a{border-color:rgba(196, 70, 40, 1)!important;background-color:rgba(0, 0, 0, 0)!important;color:rgba(196, 70, 40, 1)!important;}.social_icons-style-1 a:hover{border-color:rgba(196, 70, 40, 1)!important;background-color:rgba(196, 70, 40, 1)!important;color:rgba(255,255,255,1)!important;}.social_icons-style-1 a i{color:inherit!important;}
65.social_icons-style-1 a svg,.social_icons-style-1 a svg path{fill:currentColor!important;}.pagination-style-1 li a{color:rgba(196, 70, 40, 1)!important;background-color:rgba(0, 0, 0, 0)!important;border-color:rgba(0, 0, 0, 0)!important;}.pagination-style-1 li a:hover{color:rgba(255, 255, 255, 1)!important;background-color:rgba(196, 70, 40, 1)!important;border-color:rgba(196, 70, 40, 1)!important;}.pagination-style-1 li.active a{color:rgba(255, 255, 255, 1)!important;background-color:rgba(196, 70, 40, 1)!important;border-color:rgba(196, 70, 40, 1)!important;}.hyperlink-style-1{color:rgba(0, 0, 0, 1)!important;}.hyperlink-style-1:hover{color:rgba(196, 70, 40, 1)!important;}.hyperlink-style-2{color:rgba(255, 255, 255, 1)!important;}.hyperlink-style-2:hover{color:rgba(255, 255, 255, 1)!important;}.pagination-style-2 li a{color:rgba(255, 255, 255, 1)!important;background-color:rgba(0, 0, 0, 0)!important;border-color:rgba(0, 0, 0, 0)!important;}.pagination-style-2 li a:hover{color:rgba(196, 70, 40, 1)!important;background-color:rgba(255, 255, 255, 1)!important;border-color:rgba(255,255,255,1)!important;}.pagination-style-2 li.active a{color:rgba(196, 70, 40, 1)!important;background-color:rgba(255, 255, 255, 1)!important;border-color:rgba(255,255,255,1)!important;}.button-style-2{color:rgba(196, 70, 40, 1)!important;background-color:rgba(255, 255, 255, 1)!important;border-color:rgba(255, 255, 255, 1)!important;}.button-style-2:hover{color:#FFFFFF!important;background-color:rgba(0, 0, 0, 0)!important;border-color:#FFFFFF!important;}.social_icons-style-2 a{border-color:rgba(255, 255, 255, 1)!important;background-color:rgba(0, 0, 0, 0)!important;color:rgba(255, 255, 255, 1)!important;}.social_icons-style-2 a:hover{border-color:rgba(255, 255, 255, 1)!important;background-color:rgba(255, 255, 255, 1)!important;color:rgba(196, 70, 40, 1)!important;}.social_icons-style-2 a i{color:inherit!important;}
65.social_icons-style-2 a svg,.social_icons-style-2 a svg path{fill:currentColor!important;}.button-style-3{color:rgba(255, 255, 255, 1)!important;background-color:rgba(255, 255, 255, 0)!important;border-color:rgba(255, 255, 255, 1)!important;}.button-style-3:hover{color:rgba(196, 70, 40, 1)!important;background-color:rgba(255, 255, 255, 1)!important;border-color:#FFFFFF!important;}.button-style-4{color:rgba(255, 255, 255, 1)!important;background-color:rgba(53, 71, 100, 1)!important;border-color:rgba(53, 71, 100, 1)!important;}.button-style-4:hover{color:rgba(255, 255, 255, 1)!important;background-color:rgba(84, 114, 160, 1)!important;border-color:rgba(84, 114, 160, 1)!important;}</style>
66        <!-- LP Consent bootstrap: blocking; resolves consent state, pushes Consent Mode
67             defaults, and dynamically loads the locale + main (and banner if needed). -->
68        
68<script src="https://cdn.luxurypresence.com/scripts/lp-consent/latest/lp-consent-boot.js" data-website-id="a1e3c847-d1ba-4058-a24c-e7ce6eef6e17"></script>
68
69
70
71        <!-- Follow Up Boss Tracker Code -->
72        
72<script type="text/plain" data-consent-category="analytics">
73            (function(w,i,d,g,e,t){w["WidgetTrackerObject"]=g;(w[g]=w[g]||function()
74            {(w[g].q=w[g].q||[]).push(arguments);}),(w[g].ds=1*new Date());(e="script"),
75            (t=d.createElement(e)),(e=d.getElementsByTagName(e)[0]);t.async=1;t.src=i;
76            e.parentNode.insertBefore(t,e);})
77            (window,"https://widgetbe.com/agent",document,"widgetTracker");
78            window.widgetTracker("create", "WT-PRANAHZG");
79        </script>
79
80        <!-- End Follow Up Boss Tracker Code -->
81        
81<script>
82            (function utmParse() {
83                const url = new URL(window.location.href);
84                if (url.search) {
85                    const utm = url.search.split(/\?|&/g).reduce((acc, current) => {
86                        const matched = current.match(/utm_(content|campaign|medium|source|term|id)|gclid/g);
87                        if (matched) {
88                        acc[matched[0]] = current.replace(`${matched[0]}=`, '');
89                        }
90                        return acc;
91                    }, {});
92                    if (Object.keys(utm).length) {
93                        window.localStorage.setItem('utm_vars', JSON.stringify(utm));
94                    } else {
95                        // Remove old utm vars
96                        window.localStorage.removeItem('utm_vars');
97                    }
98                }
99                // Set referrer in local storage
100                // This is meant to be stored once to avoid self-referrals and to have the first referrer only.
101                if (!window.localStorage.getItem('referrer')) {
102                    // Capture the Referrer URL
103                    const referrer = document.referrer;
104                    if (referrer) {
105                        // Only store the referrer if it comes from outside the current domain (to avoid self-referrals)
106                        const currentDomain = window.location.hostname;
107                        const referrerDomain = new URL(referrer).hostname;
108
109                        if (referrerDomain !== currentDomain) {
110                            // Store it in localStorage
111                            localStorage.setItem('referrer', referrer);
112                        }
113                    }
114                }
115            })();
116        </script>
116
117        
117<script>function loadScript(a){var b=document.getElementsByTagName("head")[0],c=document.createElement("script");c.type="text/javascript",c.src="https://tracker.metricool.com/resources/be.js",c.onreadystatechange=a,c.onload=a,b.appendChild(c)}loadScript(function(){beTracker.t({hash:"235cbe7989331da30341109e505f2c52"})});</script>
117
118<meta name="google-site-verification" content="k8msuRDjpS8w5cYx3ZTT1h5AJWeyq1ByU5bBxj9ZUEE" />
119<meta name="msvalidate.01" content="49569873596349F04ADED2557784283B" />
120<!-- Google Tag Manager -->
121<script>
vendor: 327 bytes, lines 121-125
121(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
122new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
123j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
124'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
125})(window,document,'script','dataLayer','
125GTM-W33LVZF2
vendor: 3 bytes, line 125
125');
125</script>
125
126<!-- End Google Tag Manager -->
127
128<!-- Kinoko Real Estate — RealEstateAgent JSON-LD schema (added Aug 2026) -->
129<script>
130(function() {
131  var ldJson = {
132    "@context": "https://schema.org",
133    "@type": "RealEstateAgent",
134    "name": "Kinoko Real Estate",
135    "url": "https://kinokorealestate.com/",
136    "logo": "https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/tarsax9jujpdxfrwajvk",
137    "telephone": "+1-650-291-4409",
138    "email": "[email protected]",
139    "address": {
140      "@type": "PostalAddress",
141      "streetAddress": "592 3rd Street",
142      "addressLocality": "San Francisco",
143      "addressRegion": "CA",
144      "postalCode": "94107",
145      "addressCountry": "US"
146    },
147    "areaServed": {
148      "@type": "City",
149      "name": "San Francisco"
150    },
151    "founder": [
152      { "@type": "Person", "name": "Kevin Gueco" },
153      { "@type": "Person", "name": "Nini Gueco" }
154    ],
155    "foundingDate": "2003",
156    "sameAs": [
157      "https://www.facebook.com/houseofkinoko/",
158      "https://www.instagram.com/house.of.kinoko/",
159      "https://www.linkedin.com/company/houseofkinoko/",
160      "https://www.youtube.com/channel/UCsP_bGxHYo_Gm_U9uWDc3kQ"
161    ]
162  };
163  var script = document.createElement('script');
164  script.type = 'application/ld+json';
165  script.text = JSON.stringify(ldJson);
166  document.head.appendChild(script);
167})();
168</script>
168
169<!-- End Kinoko Real Estate JSON-LD schema -->
170
171    <!-- GOOGLE TRANSLATE STYLES are moved to external CSS -->
172</head>
173<body>
174    <div id="google_translate_element" style="display: none"></div>
175
176        <nav id="global-navbar" data-el-id="43e7a874-fb1e-4cdd-91fe-eb6bf5b9179b">
177            <div class="redesign">
178  <div class="content-container header">
179    <div class="container header__container">
180      <div class="navbar">
181        <div class="logo">
182          <a href="/" class="logo__link">
183            <img src="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/tarsax9jujpdxfrwajvk" srcset="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=320/https://media-production.lp-cdn.com/media/tarsax9jujpdxfrwajvk 320w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/tarsax9jujpdxfrwajvk 795w" class="logo__img light" alt="">
184            <img src="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/vgwbvhzngnc194zy6n53" srcset="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=320/https://media-production.lp-cdn.com/media/vgwbvhzngnc194zy6n53 320w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/vgwbvhzngnc194zy6n53 795w" class="logo__img dark" alt="">
185          </a>
186        </div>
187        <div class="navigation">
188          <ul>
189            <li class="navigation__item sub-nav-container">
190              <a href="#" class="navigation__link wow fadeInUp">About Us</a>
191              <div class="sub-nav">
192                <ul>
193                  <li class="sub-nav__item"><a  href="/testimonials-kevin" class="nav-link sub-nav__link feature"><span>Raving Fans of Kevin and Nini</span></a></li>
194                  <li class="sub-nav__item"><a  href="/team" class="nav-link sub-nav__link feature"><span>Our Amazing Humans</span></a></li>
195                  <li class="sub-nav__item"><a  href="/we-know-tech-buyers" class="nav-link sub-nav__link feature"><span>We Know Tech Buyers</span></a></li>
196                  <li class="sub-nav__item"><a  href="/testimonials" class="nav-link sub-nav__link feature"><span>Endless Client Testimonials</span></a></li>
197                </ul>
198              </div>
199            </li>
200            <li class="navigation__item sub-nav-container">
201              <a href="#" class="navigation__link wow fadeInUp">Kinoko TV</a>
202              <div class="sub-nav">
203                <ul>
204                  <li class="sub-nav__item"><a  href="/buy-the-bay" class="nav-link sub-nav__link feature"><span>Buy the Bay</span></a></li>
205                  <li class="sub-nav__item"><a  href="/list-with-us" class="nav-link sub-nav__link feature"><span>List with Us</span></a></li>
206                  <li class="sub-nav__item"><a target="_blank" href="https://www.youtube.com/channel/UCsP_bGxHYo_Gm_U9uWDc3kQ/videos" class="nav-link sub-nav__link feature"><span>Kinoko TV</span></a></li>
207                </ul>
208              </div>
209            </li>
210            <li class="navigation__item sub-nav-container">
211              <a href="#" class="navigation__link wow fadeInUp">Properties</a>
212              <div class="sub-nav">
213                <ul>
214                  <li class="sub-nav__item"><a  href="/casestudies" class="nav-link sub-nav__link feature"><span>Case Studies</span></a></li>
215                  <li class="sub-nav__item"><a  href="/properties/sale" class="nav-link sub-nav__link feature"><span>Featured Properties</span></a></li>
216                  <li class="sub-nav__item"><a  href="/properties/sold" class="nav-link sub-nav__link feature"><span>Featured Sales</span></a></li>
217                </ul>
218              </div>
219            </li>
220            <li class="navigation__item">
221              <a  href="/blog" class="navigation__link wow fadeInUp" data-wow-delay="2.3"><span>Blog</span></a>
222            </li>
223            <li class="navigation__item">
224              <a  href="/san-francisco-bay-area-neighborhood-and-city-guides" class="navigation__link wow fadeInUp" data-wow-delay="2.4"><span>Neighborhoods</span></a>
225            </li>
226            <li class="navigation__item">
227              <a  href="/worldwide-network" class="navigation__link wow fadeInUp" data-wow-delay="2.5"><span>Worldwide Network</span></a>
228            </li>
229            <li class="navigation__item">
230              <a data-type="CONTACT_US" class="navigation__link wow fadeInUp"><span>Contact Us</span></a>
231            </li>
232          </ul>
233        </div>
234        <div class="buttons-wrapper">
235          <button type="button" class="hamburger-component hamburger">
236            <span class="hamburger__bars"></span>
237          </button>
238        </div>
239      </div>
240    </div>
241  </div>
242</div>
243
244        </nav>
245        <div id="global-sidemenu" class="sidemenu" data-el-id="11fa925d-d2dd-4213-a0fa-d46f769e2c18">
246            <div class="sidebar">
247  
248  <button class="toggle sidebar__close close"></button>
249  <div class="sidebar__content">
250
251    <ul class="sidebar__nav">
252      <li class="sidebar__nav-item">
253        <a  href="/" class="sidebar__nav-link">Home</a>
254      </li>
255      <li class="sidebar__nav-item sub-nav-container">
256        <div class="sub-nav">
257          <ul class="sidebar__subnav">
258            <li class="sidebar__subnav-item"><a  href="/testimonials-and-rosewood-referral-giveaway" class="sidebar__subnav-link">Raving Fans of Kevin and Nini</a></li>
259            <li class="sidebar__subnav-item"><a  href="/team" class="sidebar__subnav-link">Our Amazing Humans</a></li>
260            <li class="sidebar__subnav-item"><a  href="/we-know-tech-buyers" class="sidebar__subnav-link">We Know Tech Buyers</a></li>
261            <li class="sidebar__subnav-item"><a  href="/testimonials" class="sidebar__subnav-link">Endless Client Testimonials</a></li>
262          </ul>
263        </div>
264        <a href="#" class="sidebar__nav-link link main-nav">About Us</a>
265      </li>
266      <li class="sidebar__nav-item sub-nav-container">
267        <div class="sub-nav">
268          <ul class="sidebar__subnav">
269            <li class="sidebar__subnav-item"><a  href="/properties/sale" class="sidebar__subnav-link">Featured Properties</a></li>
270            <li class="sidebar__subnav-item"><a  href="/properties/sold" class="sidebar__subnav-link">Featured Sales</a></li>
271          </ul>
272        </div>
273        <a href="#" class="sidebar__nav-link link main-nav">Properties</a>
274      </li>
275      <li class="sidebar__nav-item">
276        <a  href="/home-search/listings" class="sidebar__nav-link">Home Search</a>
277      </li>
278      <li class="sidebar__nav-item">
279        <a  href="/home-valuation" class="sidebar__nav-link">Home Valuation</a>
280      </li>
281      <li class="sidebar__nav-item">
282        <a  href="/san-francisco-bay-area-neighborhood-and-city-guides" class="sidebar__nav-link">Neighborhoods</a>
283      </li>
284      <li class="sidebar__nav-item sub-nav-container">
285        <div class="sub-nav">
286          <ul class="sidebar__subnav">
287            <li class="sidebar__subnav-item"><a  href="/buyers" class="sidebar__subnav-link">Buyers</a></li>
288            <li class="sidebar__subnav-item"><a  href="/sellers" class="sidebar__subnav-link">Sellers</a></li>
289            <li class="sidebar__subnav-item"><a  href="/district-guide" class="sidebar__subnav-link">SF District Guide</a></li>
290          </ul>
291        </div>
292        <a href="#" class="sidebar__nav-link link main-nav">Resources</a>
293      </li>
294      <li class="sidebar__nav-item sub-nav-container">
295        <div class="sub-nav">
296          <ul class="sidebar__subnav">
297            <li class="sidebar__subnav-item"><a  href="/buy-the-bay" class="sidebar__subnav-link">Buy the Bay</a></li>
298            <li class="sidebar__subnav-item"><a  href="/list-with-us" class="sidebar__subnav-link">List with Us</a></li>
299            <li class="sidebar__subnav-item"><a target="_blank" href="https://www.youtube.com/channel/UCsP_bGxHYo_Gm_U9uWDc3kQ/videos" class="sidebar__subnav-link">Kinoko TV</a></li>
300          </ul>
301        </div>
302        <a href="#" class="sidebar__nav-link link main-nav">Kinoko TV</a>
303      </li>
304      <li class="sidebar__nav-item">
305        <a  href="/market-updates-in-san-francisco-bay-area" class="sidebar__nav-link">Market Update</a>
306      </li>
307      <li class="sidebar__nav-item">
308        <a  href="/blog" class="sidebar__nav-link">Blog</a>
309      </li>
310      <li class="sidebar__nav-item">
311        <a  href="/worldwide-network" class="sidebar__nav-link">Worldwide Network</a>
312      </li>
313      <li class="sidebar__nav-item">
314        <a target="_blank" href="https://www.luxurypresence.com/global-collective/" class="sidebar__nav-link">Exclusive Referral Group</a>
315      </li>
316      <li class="sidebar__nav-item">
317        <a  href="/contact" class="sidebar__nav-link">Contact Us</a>
318      </li>
319      <li class="sidebar__nav-item">
320        <a  href="/home-search/account" class="sidebar__nav-link">My Search Portal</a>
321      </li>
322    </ul>
323  </div>
324</div>
325        </div>
326        <div  id="global-mobile-contact" class="mobile-contact-wrapper" data-el-id="ca33406a-b24a-4100-b315-87fd53d5adc2">
327            <div class="mobile-contact dark">
328  <div class="buttons-holder">
329    <a href="/cdn-cgi/l/email-protection#a3c8c6d5cacde3cbccd6d0c6ccc5c8cacdccc8cc8dc0ccce">
330      <i class="lp-i lp-i--envelope"></i>
331    </a>
332    <a href="tel:4154188850">
333      <i class="lp-i lp-i--phone"></i>
334    </a>
335  </div>
336</div>
337
338        </div>
339        <section id="section-bcabfae8-4664-4efa-a488-eceb5362ee27"  class="video-section is-font-color-light is-background-color-light" data-el-id="8ec37bf8-cdc6-4e6c-bec9-381ff2117972">
340  <div class="video-wrapper">
341    <div class="full-screen-video-component">
342      <div class="video-wrapper hidable">
343        <video class="lazy"
344          poster="https://res.cloudinary.com/luxuryp/videos/f_auto,q_auto/so_0,eo_0/xmpbkxuqliqr3n4hpgaq/opening-video-1.jpg"
345          style="height:100%;"
346          loop
347          muted
348          autoplay
349          playsinline>
350          <source data-src="https://res.cloudinary.com/luxuryp/videos/f_webm,vc_vp9,q_auto:best,w_1920,c_limit/xmpbkxuqliqr3n4hpgaq/opening-video-1.webm" type="video/webm;codecs=vp9">
351<source data-src="https://res.cloudinary.com/luxuryp/videos/f_mp4,vc_h265,q_auto:best,w_1920,c_limit/xmpbkxuqliqr3n4hpgaq/opening-video-1.mp4" type="video/mp4;codecs=hvc1">
352<source data-src="https://res.cloudinary.com/luxuryp/videos/f_mp4,vc_h264,q_auto:best,w_1920,c_limit/xmpbkxuqliqr3n4hpgaq/opening-video-1.mp4" type="video/mp4">
353        </video>
354      </div>
355        <div class="poster" style="background-image: url('https://media-production.lp-cdn.com/media/0764f1ce-af37-488d-a174-0efe8f742479')"></div>
356    </div>
357  </div>
358  <div class="overlay-component"style="--section-overlay: rgba(0, 0, 0, 0.4);"></div>
359<div class="redesign">
360  <div class="lp-container lp-container--l">
361    <div class="collection">
362        <div class="item">
363          <div class="lp-title-group">
364            
365            <h1 class="lp-h1 animation"><p>San Francisco Real Estate Agents</p></h1>
366            <div class="lp-text--subtitle lp-pre-line"><p>Kevin &amp; Nini Gueco — San Francisco Real Estate Agents. 500+ real estate transactions, $734M+ in sales, RealTrends Verified top 1.5% nationwide. Serving Noe Valley, SoMa, the Sunset, and every SF neighborhood since 2003.</p></div>
367          </div>
368          <div class="btn-container">
369                    <a
370                        href="/home-search/listings"
371                        
372                        class="lp-btn lp-btn--dark lp-btn--filled lp-btn--mob-full-width button-style-2"
373                        
374                        
375                        
376                        
377                        
378                        >
379                                Home Search
380                        </a>
381                    <a
382                        role="button"
383                        data-type="CONTACT_US"
384                        class="lp-btn lp-btn--light lp-btn--filled lp-btn--mob-full-width button-style-3"
385                        
386                        
387                        
388                        
389                        
390                        >
391                                Contact Us
392                        </a>
393          </div>
394        </div>
395        
396    </div> 
397  </div>
398</div>
399</section>
400<section id="section-951a1889-3429-42e7-8d93-31df407aeb20"  class="solid-section is-font-color-dark is-background-color-light" data-el-id="e004cbf9-19e4-44e4-8a4c-3de3b2ce0df6">
401  <div class="hoverable-section lp-vertical-paddings  redesign">
402  <div class="lp-container">
403
404    <div class="hoverable-image  hoverable-image--straight">
405
406      <div class="hoverable-image__img-col">
407        <div class="">
408          <div class="">
409            <img src="https://images.unsplash.com/photo-1614549483067-aac9b1273dd7?ixid=M3w0MTQ1MnwwfDF8c2VhcmNofDI2fHxHT0xERU4lMjBHQVRFJTIwV0lUSCUyMENJVFl8ZW58MHx8fHwxNzg3NzcwMjUxfDA&ixlib=rb-4.1.0&q=80&w=1280" srcset="https://images.unsplash.com/photo-1614549483067-aac9b1273dd7?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w0MTQ1MnwwfDF8c2VhcmNofDI2fHxHT0xERU4lMjBHQVRFJTIwV0lUSCUyMENJVFl8ZW58MHx8fHwxNzg3NzcwMjUxfDA&ixlib=rb-4.1.0&q=80&w=200 320w, https://images.unsplash.com/photo-1614549483067-aac9b1273dd7?ixid=M3w0MTQ1MnwwfDF8c2VhcmNofDI2fHxHT0xERU4lMjBHQVRFJTIwV0lUSCUyMENJVFl8ZW58MHx8fHwxNzg3NzcwMjUxfDA&ixlib=rb-4.1.0&q=80&w=960 960w, https://images.unsplash.com/photo-1614549483067-aac9b1273dd7?ixid=M3w0MTQ1MnwwfDF8c2VhcmNofDI2fHxHT0xERU4lMjBHQVRFJTIwV0lUSCUyMENJVFl8ZW58MHx8fHwxNzg3NzcwMjUxfDA&ixlib=rb-4.1.0&q=80&w=1280 1280w, https://images.unsplash.com/photo-1614549483067-aac9b1273dd7?ixid=M3w0MTQ1MnwwfDF8c2VhcmNofDI2fHxHT0xERU4lMjBHQVRFJTIwV0lUSCUyMENJVFl8ZW58MHx8fHwxNzg3NzcwMjUxfDA&ixlib=rb-4.1.0&q=80&w=1920 1920w, https://images.unsplash.com/photo-1614549483067-aac9b1273dd7?ixid=M3w0MTQ1MnwwfDF8c2VhcmNofDI2fHxHT0xERU4lMjBHQVRFJTIwV0lUSCUyMENJVFl8ZW58MHx8fHwxNzg3NzcwMjUxfDA&ixlib=rb-4.1.0&q=80&w=2560 2560w, https://images.unsplash.com/photo-1614549483067-aac9b1273dd7?ixid=M3w0MTQ1MnwwfDF8c2VhcmNofDI2fHxHT0xERU4lMjBHQVRFJTIwV0lUSCUyMENJVFl8ZW58MHx8fHwxNzg3NzcwMjUxfDA&ixlib=rb-4.1.0&q=80&w=3456 3456w" sizes="(max-width: 992px) 100vw, 50vw" alt="main" class="main-image" loading="lazy">
410            
411          </div>
412        </div>
413      </div>
414
415      <div class="hoverable-image__text-col">
416        
417        <div class="hoverable-image__text-wrap">
418            <h2 class="lp-h2">Trust the perspective of experience</h2>
419          <div class="lp-a lp-text--subtitle">
420            <p dir="ltr" class="font-claude-response-body break-words whitespace-normal"><a href="https://kinokorealestate.com/sell-or-buy">Selling or buying</a>
420 a home in today's San Francisco market takes more than good fortune — it demands experience, sharp marketing, skilled negotiation, and data-driven strategy. We've closed over 500 transactions and $734M+ in combined sales, and we're RealTrends Verified among the top 1.5% of agents nationwide. From the condos of <a href="https://kinokorealestate.com/neighborhoods/mission-bay">Mission Bay</a> and <a href="https://kinokorealestate.com/neighborhoods/south-beach">South Beach</a> to the homes of <a href="https://kinokorealestate.com/neighborhoods/noe-valley">Noe Valley</a> and <a href="https://kinokorealestate.com/neighborhoods/bernal-heights">Bernal Heights</a>, we're a trusted choice for buyers and sellers across the city.
421
422</p><p dir="ltr" class="font-claude-response-body break-words whitespace-normal">Two decades of combined real estate and mortgage consulting experience means we know how to navigate any market condition. Whether you're selling a condo in SoMa or a house in the Sunset or <a href="https://kinokorealestate.com/neighborhoods/richmond-district">Richmond</a>, we understand the nuances of each neighborhood and tailor our approach to your goals. Let's talk about what's next for your San Francisco home.</p>
423          </div>
424          <div class="buttons-wrapper">
425                    <a
426                        href="/sell-or-buy"
427                         target="_blank"
428                        class="lp-btn lp-btn--dark lp-btn--outline lp-btn--big lp-btn--mob-full-width button-style-1"
429                        
430                        
431                        
432                        
433                        
434                        >
435                                Learn More
436                        </a>
437          </div>
438        </div>
439        
440        
441      </div>
442    </div>
443  </div>
444</div>
445</section>
446<section id="section-21378400-f49d-4db7-a004-7a7eafce8687"  class="solid-section is-font-color-dark is-background-color-light" data-el-id="3dc6645b-a999-4349-b46c-693c2d0500c9">
vendor: 109 bytes, lines 446-447
446
447<script data-cfasync="false" src="/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js"></script>
447<script type="text/x-handlebars-template" class="gridItem pagination-script"><div class="grid-item">
448  <a href="/neighborhoods/{{slug}}" class="item-wrapper">
449    <div class="image-holder" >
450      {{{mediaImage media.[0] sizes="(max-width: 768px) 100vw, 50vw"  alt=name}}}
451    </div>
452    <div class="overlay"></div>
453    <div class="content-container">
454      <h3 class="lp-h3">{{name}}</h3>
455      <div class="button-wrapper">
456        <span class="lp-btn lp-btn--light lp-btn--filled lp-btn--big ">Learn More</span>
457      </div>
458    </div>
459  </a>
460</div>
461</script>
461
462<div class="featured-neighborhoods-grid lp-vertical-paddings redesign">
463  
464  <div class="lp-container">
465    <div class="lp-title-group">
466      
467      <h2 class="lp-h2">Neighborhoods</h2>
468      <div class="lp-text--subtitle"><p>Explore the unique character of San Francisco, from distinctive architecture and local culture to the neighborhoods and real estate opportunities that define the city.</p></div>
469    </div>
470  </div>
471 
472  <div class="items ">
473      <div class="grid-item">
474        <a href="/neighborhoods/potrero-hill" class="item-wrapper">
475          <div class="image-holder" >
476            <img src="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/f24cd4ad-6e22-48b6-be2d-14a2d27f196e" srcset="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=960/https://media-production.lp-cdn.com/media/f24cd4ad-6e22-48b6-be2d-14a2d27f196e 960w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/f24cd4ad-6e22-48b6-be2d-14a2d27f196e 1080w" alt="Aerial View Of Residential Potrero Hill in San Francisco" sizes="(max-width: 768px) 100vw, 50vw" loading="lazy">
477          </div>
478          <div class="overlay"></div>
479          <div class="content-container">
480            <h3 class="lp-h3">Potrero Hill</h3>
481            <div class="button-wrapper">
482              <span class="lp-btn lp-btn--light lp-btn--filled lp-btn--big ">Learn More</span>
483            </div>
484          </div>
485        </a>
486      </div>
487      <div class="grid-item">
488        <a href="/neighborhoods/dogpatch" class="item-wrapper">
489          <div class="image-holder" >
490            <img src="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=1280/https://media-production.lp-cdn.com/media/ymeecsfgsuoyafolfbbt" srcset="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=960/https://media-production.lp-cdn.com/media/ymeecsfgsuoyafolfbbt 960w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=1280/https://media-production.lp-cdn.com/media/ymeecsfgsuoyafolfbbt 1280w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/ymeecsfgsuoyafolfbbt 1920w" alt="Longboat Key Condos for Sale" sizes="(max-width: 768px) 100vw, 50vw" loading="lazy">
491          </div>
492          <div class="overlay"></div>
493          <div class="content-container">
494            <h3 class="lp-h3">Dogpatch</h3>
495            <div class="button-wrapper">
496              <span class="lp-btn lp-btn--light lp-btn--filled lp-btn--big ">Learn More</span>
497            </div>
498          </div>
499        </a>
500      </div>
501      <div class="grid-item">
502        <a href="/neighborhoods/st-francis-wood" class="item-wrapper">
503          <div class="image-holder" >
504            <img src="https://images.unsplash.com/photo-1688506900123-0ae2c0b063a7?ixid=M3w0MTQ1MnwwfDF8c2VhcmNofDQxMHx8bHV4dXJ5JTIwaG9tZXxlbnwwfHx8fDE3NjAxMjY5MzV8MA&ixlib=rb-4.1.0&q=80&w=1280" srcset="https://images.unsplash.com/photo-1688506900123-0ae2c0b063a7?ixid=M3w0MTQ1MnwwfDF8c2VhcmNofDQxMHx8bHV4dXJ5JTIwaG9tZXxlbnwwfHx8fDE3NjAxMjY5MzV8MA&ixlib=rb-4.1.0&q=80&w=960 960w, https://images.unsplash.com/photo-1688506900123-0ae2c0b063a7?ixid=M3w0MTQ1MnwwfDF8c2VhcmNofDQxMHx8bHV4dXJ5JTIwaG9tZXxlbnwwfHx8fDE3NjAxMjY5MzV8MA&ixlib=rb-4.1.0&q=80&w=1280 1280w, https://images.unsplash.com/photo-1688506900123-0ae2c0b063a7?ixid=M3w0MTQ1MnwwfDF8c2VhcmNofDQxMHx8bHV4dXJ5JTIwaG9tZXxlbnwwfHx8fDE3NjAxMjY5MzV8MA&ixlib=rb-4.1.0&q=80&w=1920 1920w, https://images.unsplash.com/photo-1688506900123-0ae2c0b063a7?ixid=M3w0MTQ1MnwwfDF8c2VhcmNofDQxMHx8bHV4dXJ5JTIwaG9tZXxlbnwwfHx8fDE3NjAxMjY5MzV8MA&ixlib=rb-4.1.0&q=80&w=2560 2560w, https://images.unsplash.com/photo-1688506900123-0ae2c0b063a7?ixid=M3w0MTQ1MnwwfDF8c2VhcmNofDQxMHx8bHV4dXJ5JTIwaG9tZXxlbnwwfHx8fDE3NjAxMjY5MzV8MA&ixlib=rb-4.1.0&q=80&w=3456 3024w" alt="St. Francis Wood" sizes="(max-width: 768px) 100vw, 50vw" class="portrait" loading="lazy">
505          </div>
506          <div class="overlay"></div>
507          <div class="content-container">
508            <h3 class="lp-h3">St. Francis Wood</h3>
509            <div class="button-wrapper">
510              <span class="lp-btn lp-btn--light lp-btn--filled lp-btn--big ">Learn More</span>
511            </div>
512          </div>
513        </a>
514      </div>
515      <div class="grid-item">
516        <a href="/neighborhoods/forest-hill" class="item-wrapper">
517          <div class="image-holder" >
518            <img src="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/9b3858b8-7365-46f9-92b5-943901434229" srcset="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=960/https://media-production.lp-cdn.com/media/9b3858b8-7365-46f9-92b5-943901434229 960w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/9b3858b8-7365-46f9-92b5-943901434229 1080w" alt="Forest Hill" sizes="(max-width: 768px) 100vw, 50vw" loading="lazy">
519          </div>
520          <div class="overlay"></div>
521          <div class="content-container">
522            <h3 class="lp-h3">Forest Hill</h3>
523            <div class="button-wrapper">
524              <span class="lp-btn lp-btn--light lp-btn--filled lp-btn--big ">Learn More</span>
525            </div>
526          </div>
527        </a>
528      </div>
529      <div class="grid-item">
530        <a href="/neighborhoods/west-portal" class="item-wrapper">
531          <div class="image-holder" >
532            <img src="https://images.unsplash.com/photo-1621693722835-44c9dcb724fd?ixid=M3w0MTQ1MnwwfDF8c2VhcmNofDl8fGx1eHVyeSUyMGNvdW50cnklMjBob21lfGVufDB8fHx8MTc2MDEyODM4N3ww&ixlib=rb-4.1.0&q=80&w=1280" srcset="https://images.unsplash.com/photo-1621693722835-44c9dcb724fd?ixid=M3w0MTQ1MnwwfDF8c2VhcmNofDl8fGx1eHVyeSUyMGNvdW50cnklMjBob21lfGVufDB8fHx8MTc2MDEyODM4N3ww&ixlib=rb-4.1.0&q=80&w=960 960w, https://images.unsplash.com/photo-1621693722835-44c9dcb724fd?ixid=M3w0MTQ1MnwwfDF8c2VhcmNofDl8fGx1eHVyeSUyMGNvdW50cnklMjBob21lfGVufDB8fHx8MTc2MDEyODM4N3ww&ixlib=rb-4.1.0&q=80&w=1280 1280w, https://images.unsplash.com/photo-1621693722835-44c9dcb724fd?ixid=M3w0MTQ1MnwwfDF8c2VhcmNofDl8fGx1eHVyeSUyMGNvdW50cnklMjBob21lfGVufDB8fHx8MTc2MDEyODM4N3ww&ixlib=rb-4.1.0&q=80&w=1920 1920w, https://images.unsplash.com/photo-1621693722835-44c9dcb724fd?ixid=M3w0MTQ1MnwwfDF8c2VhcmNofDl8fGx1eHVyeSUyMGNvdW50cnklMjBob21lfGVufDB8fHx8MTc2MDEyODM4N3ww&ixlib=rb-4.1.0&q=80&w=2560 2560w, https://images.unsplash.com/photo-1621693722835-44c9dcb724fd?ixid=M3w0MTQ1MnwwfDF8c2VhcmNofDl8fGx1eHVyeSUyMGNvdW50cnklMjBob21lfGVufDB8fHx8MTc2MDEyODM4N3ww&ixlib=rb-4.1.0&q=80&w=3456 3456w" alt="West Portal" sizes="(max-width: 768px) 100vw, 50vw" loading="lazy">
533          </div>
534          <div class="overlay"></div>
535          <div class="content-container">
536            <h3 class="lp-h3">West Portal</h3>
537            <div class="button-wrapper">
538              <span class="lp-btn lp-btn--light lp-btn--filled lp-btn--big ">Learn More</span>
539            </div>
540          </div>
541        </a>
542      </div>
543      <div class="grid-item">
544        <a href="/neighborhoods/sunset-district" class="item-wrapper">
545          <div class="image-holder" >
546            <img src="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=1280/https://media-production.lp-cdn.com/media/kympqkesjlwcegveozhp" srcset="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=960/https://media-production.lp-cdn.com/media/kympqkesjlwcegveozhp 960w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=1280/https://media-production.lp-cdn.com/media/kympqkesjlwcegveozhp 1280w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/kympqkesjlwcegveozhp 1920w" alt="Sunset District" sizes="(max-width: 768px) 100vw, 50vw" loading="lazy">
547          </div>
548          <div class="overlay"></div>
549          <div class="content-container">
550            <h3 class="lp-h3">Sunset District</h3>
551            <div class="button-wrapper">
552              <span class="lp-btn lp-btn--light lp-btn--filled lp-btn--big ">Learn More</span>
553            </div>
554          </div>
555        </a>
556      </div>
557      <div class="grid-item">
558        <a href="/neighborhoods/richmond-district" class="item-wrapper">
559          <div class="image-holder" >
560            <img src="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=1280/https://media-production.lp-cdn.com/media/mnrjcgwgcexkudmgkx8o" srcset="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=960/https://media-production.lp-cdn.com/media/mnrjcgwgcexkudmgkx8o 960w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=1280/https://media-production.lp-cdn.com/media/mnrjcgwgcexkudmgkx8o 1280w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=1920/https://media-production.lp-cdn.com/media/mnrjcgwgcexkudmgkx8o 1920w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/mnrjcgwgcexkudmgkx8o 2304w" alt="Richmond District" sizes="(max-width: 768px) 100vw, 50vw" loading="lazy">
561          </div>
562          <div class="overlay"></div>
563          <div class="content-container">
564            <h3 class="lp-h3">Richmond District</h3>
565            <div class="button-wrapper">
566              <span class="lp-btn lp-btn--light lp-btn--filled lp-btn--big ">Learn More</span>
567            </div>
568          </div>
569        </a>
570      </div>
571      <div class="grid-item">
572        <a href="/neighborhoods/golden-gate-heights" class="item-wrapper">
573          <div class="image-holder" >
574            <img src="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/99a166df-6a4f-41c0-8cad-e64d18bcd3f7" srcset="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=960/https://media-production.lp-cdn.com/media/99a166df-6a4f-41c0-8cad-e64d18bcd3f7 960w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/99a166df-6a4f-41c0-8cad-e64d18bcd3f7 1080w" alt="Golden Gate Heights" sizes="(max-width: 768px) 100vw, 50vw" loading="lazy">
575          </div>
576          <div class="overlay"></div>
577          <div class="content-container">
578            <h3 class="lp-h3">Golden Gate Heights</h3>
579            <div class="button-wrapper">
580              <span class="lp-btn lp-btn--light lp-btn--filled lp-btn--big ">Learn More</span>
581            </div>
582          </div>
583        </a>
584      </div>
585  </div>
586</div>
587</section>
588<section id="section-fc696d32-3cf4-47d5-9539-22cb97d1c7a4"  class="solid-section is-font-color-light is-background-color-dark" data-el-id="eb10e45e-8560-43c3-9725-c920b68d3653">
589  <div class="double-image-grid Full-Bleed redesign">
590  <div class="cta-section">
591    <div class="left-image image-back">
592          <div class="image-subsection background" style="color: #ffffff; background-image: linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3)), url('https://media-production.lp-cdn.com/media/0bfc04d9-6e70-412a-a1eb-ad6a1b691191'); background-repeat: no-repeat; background-position: center; background-size: cover;">
593    </div>
594
595    </div>
596    <div class="cta-section__content" style="color: #ffffff">
597      <div class="cta-section__text-block">
598        <h2 class="lp-h2">Our Properties</h2>
599        <div class="cta-section__lead lp-text--subtitle"><p>View some of our most exclusive available listings.</p></div>
600        
601        <div class="cta-section__btn-wrap">
602                  <a
603                      href="/properties/sale"
604                      
605                      class="lp-btn lp-btn--light lp-btn--filled button-style-2"
606                      
607                      
608                      
609                      
610                      
611                      >
612                              Explore
613                      </a>
614        </div>
615        
616      </div>
617    </div>
618  </div>
619  
620  
621  <div class="cta-section">
622    <div class="right-image image-back">
623          <div class="image-subsection background" style="color: #FFF; background-image: linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3)), url('https://media-production.lp-cdn.com/media/085d5ee8-aafc-4dbc-889a-2a295843523e'); background-repeat: no-repeat; background-position: center; background-size: cover;">
624    </div>
625
626    </div>
627    <div class="cta-section__content" style="color: #FFF">
628      <div class="cta-section__text-block">
629        <h2 class="lp-h2">Our Team</h2>
630        <div class="cta-section__lead lp-text--subtitle"><p>Meet our team of dedicated and talented agents.</p></div>
631        
632        <div class="cta-section__btn-wrap">
633                  <a
634                      href="/team"
635                      
636                      class="lp-btn lp-btn--light lp-btn--filled button-style-2"
637                      
638                      
639                      
640                      
641                      
642                      >
643                              Meet the Team
644                      </a>
645        </div>
646
647      </div>
648    </div>
649  </div>
650</div>
651</section>
652<section id="section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e"  class="solid-section is-font-color-dark is-background-color-light" data-el-id="1296c4a2-2800-4a54-95a4-c30fa6be4ba5">
653<div class="testimonials redesign">
654  <div class="container">
655      <h2 class="title">Hear From Our Clients</h2>
656    
657  </div>
658  <div class="container slider-container">
659    <div class="items-slider" data-autoscroll-interval="6" data-arrows-style="">
660      <div class="item">
661    <div class="image-subsection card" style="color: rgba(0, 0, 0, 1); background-image: linear-gradient(rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0.2)), url('https://media-production.lp-cdn.com/media/745a631e-331d-4fa8-8073-7bef7fe3f875'); background-repeat: no-repeat; background-position: center; background-size: cover;">
662                <div class="top-block">
663                  <div class="userpic">
664                      <h3 class="userpic-initials">A</h3>
665                  </div>
666                    <h4 class="author">Alan H.</h4>
667                    <blockquote class="testimonial-text">We feel so fortunate to have selected Kinoko Real Estate to sell our luxury South Beach SF condo. Even though market conditions were challenging and interest rates were rising, Kevin, Nini, Catherine and the rest of their team ...</blockquote>
668                  </div>
669                          <a
670                              href="/testimonials"
671                              
672                              class="btn btn--primary-dark card-button button-style-1"
673                              
674                              
675                              
676                              
677                              
678                              >
679                                      Read More
680                              </a>
681    </div>
682      </div>
683      <div class="item">
684    <div class="image-subsection card" style="color: rgba(0, 0, 0, 1); background-image: linear-gradient(rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0.2)), url('https://media-production.lp-cdn.com/media/745a631e-331d-4fa8-8073-7bef7fe3f875'); background-repeat: no-repeat; background-position: center; background-size: cover;">
685                <div class="top-block">
686                  <div class="userpic">
687                      <h3 class="userpic-initials">K</h3>
688                  </div>
689                    <h4 class="author">Karen K.</h4>
690                    <blockquote class="testimonial-text">My husband and I had a property in SF that was listed on the MLS for over two years and we switched agents twice. We were losing hope and thought it might never sell. Kinoko was highly recommended by a broker friend in the Peni...</blockquote>
691                  </div>
692                          <a
693                              href="/testimonials"
694                              
695                              class="btn btn--primary-dark card-button button-style-1"
696                              
697                              
698                              
699                              
700                              
701                              >
702                                      Read More
703                              </a>
704    </div>
705      </div>
706      <div class="item">
707    <div class="image-subsection card" style="color: rgba(0, 0, 0, 1); background-image: linear-gradient(rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0.2)), url('https://media-production.lp-cdn.com/media/745a631e-331d-4fa8-8073-7bef7fe3f875'); background-repeat: no-repeat; background-position: center; background-size: cover;">
708                <div class="top-block">
709                  <div class="userpic">
710                      <h3 class="userpic-initials">L</h3>
711                  </div>
712                    <h4 class="author">Leon L.</h4>
713                    <blockquote class="testimonial-text">I had the great pleasure of working with Nini and Marcell at Kinoko. In short, they helped me close on the home of my dreams during incredibly challenging times. It was my first home purchase and I couldn&#x27;t have been happier wi...</blockquote>
714                  </div>
715                          <a
716                              href="/testimonials"
717                              
718                              class="btn btn--primary-dark card-button button-style-1"
719                              
720                              
721                              
722                              
723                              
724                              >
725                                      Read More
726                              </a>
727    </div>
728      </div>
729      <div class="item">
730    <div class="image-subsection card" style="color: rgba(0, 0, 0, 1); background-image: linear-gradient(rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0.2)), url('https://media-production.lp-cdn.com/media/745a631e-331d-4fa8-8073-7bef7fe3f875'); background-repeat: no-repeat; background-position: center; background-size: cover;">
731                <div class="top-block">
732                  <div class="userpic">
733                      <h3 class="userpic-initials">B</h3>
734                  </div>
735                    <h4 class="author">Buyer</h4>
736                    <blockquote class="testimonial-text">I highly recommend Kevin if you’re looking to get into the real estate market. My wife and I were renting a 1 BR in the Beacon, and wanting to start a family, began looking to stay in the city and buy a 2BR. Since we both can g...</blockquote>
737                  </div>
738                          <a
739                              href="/testimonials"
740                              
741                              class="btn btn--primary-dark card-button button-style-1"
742                              
743                              
744                              
745                              
746                              
747                              >
748                                      Read More
749                              </a>
750    </div>
751      </div>
752      <div class="item">
753    <div class="image-subsection card" style="color: rgba(0, 0, 0, 1); background-image: linear-gradient(rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0.2)), url('https://media-production.lp-cdn.com/media/745a631e-331d-4fa8-8073-7bef7fe3f875'); background-repeat: no-repeat; background-position: center; background-size: cover;">
754                <div class="top-block">
755                  <div class="userpic">
756                      <h3 class="userpic-initials">J</h3>
757                  </div>
758                    <h4 class="author">J. Sinskey</h4>
759                    <blockquote class="testimonial-text">Strongly recommend Nini and Kevin. Nini and Kevin and their team at Gueco Real Estate are simply amazing. My husband and I would not have been able to buy our first home without them. We met Nini in person on a Saturday and wer...</blockquote>
760                  </div>
761                          <a
762                              href="/testimonials"
763                              
764                              class="btn btn--primary-dark card-button button-style-1"
765                              
766                              
767                              
768                              
769                              
770                              >
771                                      Read More
772                              </a>
773    </div>
774      </div>
775      <div class="item">
776    <div class="image-subsection card" style="color: rgba(0, 0, 0, 1); background-image: linear-gradient(rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0.2)), url('https://media-production.lp-cdn.com/media/745a631e-331d-4fa8-8073-7bef7fe3f875'); background-repeat: no-repeat; background-position: center; background-size: cover;">
777                <div class="top-block">
778                  <div class="userpic">
779                      <h3 class="userpic-initials">S</h3>
780                  </div>
781                    <h4 class="author">Seller</h4>
782                    <blockquote class="testimonial-text">Kevin really does know what it takes to get a place sold (at a great price). When I first reached out to Kevin, I wasn’t entirely set on selling my Mission Bay condo. It was the marketing materials I was getting from him that g...</blockquote>
783                  </div>
784                          <a
785                              href="/testimonials"
786                              
787                              class="btn btn--primary-dark card-button button-style-1"
788                              
789                              
790                              
791                              
792                              
793                              >
794                                      Read More
795                              </a>
796    </div>
797      </div>
798    </div>
799    <div class="arrows custom-arrows--dark">
800    </div>
801  </div>
802</div>
803
804</section>
805<section id="section-a1b98f91-47eb-47b4-bb02-5c2c74f6f975"  class="solid-section is-font-color-dark is-background-color-light" data-el-id="a261202b-cc2b-4a7e-912a-a4b8ffe6ab1b">
806  <!-- ══════════════════════════════════════════════════════
807     KINOKO · Case Studies Embed Block
808     For Luxury Presence custom HTML blocks
809     TO SWAP A LISTING:
810     Duplicate one <a class="kre-embed-card"> block below and
811     edit its address, hood, price, headline, image, and url.
812     TO CHANGE WHERE THE BUTTON LINKS:
813     Search for "/casestudies" below and update the path.
814     Font family and size are intentionally left unset —
815     this block inherits typography from the site theme.
816═══════════════════════════════════════════════════════ -->
817<style>
818  .kre-embed {
819    background: #354764;
820    padding: 3rem 2.5rem;
821    position: relative;
822    overflow: hidden;
823  }
824  .kre-embed::before {
825    content: '';
826    position: absolute;
827    inset: 0;
828    background: radial-gradient(ellipse 60% 80% at 80% 20%, rgba(213,163,144,.12) 0%, transparent 70%);
829    pointer-events: none;
830  }
831  .kre-embed > * { position: relative; }
832  .kre-embed-eyebrow {
833    letter-spacing: .28em;
834    text-transform: uppercase;
835    color: #D5A390;
836    margin-bottom: .9rem;
837  }
838  .kre-embed-headline {
839    color: #fff;
840    line-height: 1.1;
841    margin-bottom: .7rem;
842  }
843  .kre-embed-divider {
844    width: 2.5rem;
845    height: 2px;
846    background: #C44628;
847    margin-bottom: 1.2rem;
848  }
849  .kre-embed-tagline {
850    color: rgba(255,255,255,.45);
851    font-style: italic;
852    line-height: 1.65;
853    max-width: 36rem;
854    margin-bottom: 2rem;
855  }
856  .kre-embed-tagline a {
857    color: #D5A390;
858    text-decoration: underline;
859    text-decoration-color: rgba(213,163,144,.4);
860    text-underline-offset: .2em;
861    transition: color .2s, text-decoration-color .2s;
862  }
863  .kre-embed-tagline a:hover {
864    color: #fff;
865    text-decoration-color: #fff;
866  }
867  .kre-embed-grid {
868    display: grid;
869    grid-template-columns: repeat(3, 1fr);
870    gap: 2px;
871    margin-bottom: 2rem;
872  }
873  .kre-embed-card {
874    text-decoration: none;
875    color: inherit;
876    display: flex;
877    flex-direction: column;
878    background: #1e2e45;
879    overflow: hidden;
880    position: relative;
881  }
882  .kre-embed-card::before {
883    content: '';
884    position: absolute;
885    top: 0; left: 0; right: 100%;
886    height: 2px;
887    background: #D5A390;
888    transition: right .4s cubic-bezier(.33,1,.68,1);
889    z-index: 2;
890  }
891  .kre-embed-card:hover::before { right: 0; }
892  .kre-embed-photo {
893    aspect-ratio: 4/3;
894    overflow: hidden;
895  }
896  .kre-embed-photo img {
897    width: 100%; height: 100%;
898    object-fit: cover;
899    display: block;
900    opacity: .8;
901    transition: transform .6s cubic-bezier(.33,1,.68,1), opacity .3s;
902  }
903  .kre-embed-card:hover .kre-embed-photo img {
904    transform: scale(1.04);
905    opacity: 1;
906  }
907  .kre-embed-card-body {
908    padding: 1.1rem 1.2rem 1.3rem;
909  }
910  .kre-embed-hood {
911    letter-spacing: .25em;
912    text-transform: uppercase;
913    color: #D5A390;
914    display: block;
915    margin-bottom: .5rem;
916  }
917  .kre-embed-address {
918    color: rgba(255,255,255,.5);
919    margin-bottom: .4rem;
920  }
921  .kre-embed-price {
922    color: #fff;
923    line-height: 1;
924    margin-bottom: .25rem;
925  }
926  .kre-embed-card-headline {
927    font-style: italic;
928    color: #C44628;
929  }
930  .kre-embed-seo-text {
931    color: rgba(255,255,255,.5);
932    line-height: 1.7;
933    max-width: 44rem;
934    margin-bottom: 2rem;
935  }
936  .kre-embed-cta-row {
937    display: flex;
938    align-items: center;
939    gap: 1.8rem;
940    flex-wrap: wrap;
941  }
942  .kre-embed-btn {
943    display: inline-block;
944    letter-spacing: .2em;
945    text-transform: uppercase;
946    color: #fff;
947    background: #C44628;
948    padding: .75rem 1.8rem;
949    text-decoration: none;
950    transition: background .2s;
951  }
952  .kre-embed-btn:hover { background: #a33920; }
953  @media (max-width: 640px) {
954    .kre-embed { padding: 2rem 1.5rem; }
955    .kre-embed-grid { grid-template-columns: 1fr 1fr; }
956    .kre-embed-grid .kre-embed-card:last-child { display: none; }
957  }
958</style>
959<div class="kre-embed">
960  <div class="kre-embed-eyebrow">Kinoko Real Estate · San Francisco</div>
961  <h2 class="kre-embed-headline">Recent results.</h2>
962  <div class="kre-embed-divider"></div>
963  <p class="kre-embed-tagline">We do not simply list homes. We manufacture leverage, curate exposure, and protect property values, and we help you find the <a href="https://kinokorealestate.com/blog/best-time-to-sell-a-home-in-san-francisco">best time to sell in San Francisco,</a> whatever month that turns out to be.</p>
964
965  <div class="kre-embed-grid">
966    <a class="kre-embed-card" href="/850-wisconsin-st-case-study">
967      <div class="kre-embed-photo">
968        <img src="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/4aab461c-859d-4a40-9694-31d4700bd680" alt="850 Wisconsin Street, Potrero Hill — San Francisco multi-unit residence sold by Kinoko Real Estate" loading="lazy">
969      </div>
970      <div class="kre-embed-card-body">
971        <span class="kre-embed-hood">Potrero Hill</span>
972        <h3 class="kre-embed-address">850 Wisconsin Street</h3>
973        <div class="kre-embed-price">$4,540,000</div>
974        <div class="kre-embed-card-headline">Fastest offer timeline in its tier</div>
975      </div>
976    </a>
977
978    <a class="kre-embed-card" href="#">
979      <div class="kre-embed-photo">
980        <img src="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=1920/https://media-production.lp-cdn.com/media/5b3d90db-0d3d-480d-a69d-a0cb85e71778" alt="154 San Pablo Avenue, St. Francis Wood — San Francisco single-family home sold by Kinoko Real Estate" loading="lazy">
981      </div>
982      <div class="kre-embed-card-body">
983        <span class="kre-embed-hood">St. Francis Wood</span>
984        <h3 class="kre-embed-address">154 San Pablo Avenue</h3>
985        <div class="kre-embed-price">$4,200,000</div>
986        <div class="kre-embed-card-headline">Top-3 price/SF in St. Francis Wood</div>
987      </div>
988    </a>
989
990    <a class="kre-embed-card" href="/255-crestlake-drive-case-study">
991      <div class="kre-embed-photo">
992        <img src="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/2cb57509-3c6d-4e1f-8b8c-00bebc2b8124" alt="255 Crestlake Drive, Pine Lake Park — San Francisco single-family home sold by Kinoko Real Estate" loading="lazy">
993      </div>
994      <div class="kre-embed-card-body">
995        <span class="kre-embed-hood">Pine Lake Park</span>
996        <h3 class="kre-embed-address">255 Crestlake Drive</h3>
997        <div class="kre-embed-price">$3,125,000</div>
998        <div class="kre-embed-card-headline">All-time neighborhood record</div>
999      </div>
1000    </a>
1001  </div>
1002
1003  <p class="kre-embed-seo-text">Every sale above reflects the same approach Kinoko Real Estate brings to San Francisco's most competitive housing markets: sharp pricing, precise buyer targeting, and marketing built around what makes each home different.</p>
1004
1005  <div class="kre-embed-cta-row">
1006    <a class="kre-embed-btn" href="https://kinokorealestate.com/casestudies">View all case studies</a>
1007  </div>
1008</div>
1009</section>
1010<section id="section-da5a7210-1edb-47e6-b554-6eb250d17dad"  class="solid-section is-font-color-dark is-background-color-light" data-el-id="aeaf061e-5cc8-4b4a-9963-23f50ba3820f">
1011<script type="text/x-handlebars-template" class="gridItem pagination-script"><li class="property-list__item feature">
1012  <a class="property-list__item-link" href="{{#if fromMLS}}/home-search/listings/{{id}}{{^}}/properties/{{slug}}{{/if}}" {{#if fromMLS}} data-turbolinks="false" {{/if}}>
1013  <div class="property-list__img">
1014    {{{mediaImage media.[0]}}}
1015      {{#if openHouseHours}}
1016        <div class="open-house label-house bf1">Open House: {{openHouseHours}}</div>
1017      {{/if}}
1018  </div>
1019  <span class="property-list__label">
1020      {{formatPropertyStatus status false (hbFormatDate soldDate)}}
1021  </span>
1022  <div class="property-list__text">
1023    <h4 class="serif">{{name}}</h4>
1024    {{#if privateAddress}}
1025    <p>
1026      Call for Address
1027    </p>
1028    {{else}}
1029    {{#if fullAddress}}
1030    <p>
1031      {{fullAddress}}
1032    </p>
1033    {{else}}
1034    <p>
1035      Call For Address
1036    </p>
1037    {{/if}}
1038    {{/if}}
1039    <p>
1040      {{#if bedroomCount}}
1041        {{bedroomCount}} BD |
1042      {{else}}
1043        {{#ifIn "daf8aaa2-8b6f-4f2d-a324-754e0316d2b6" (JSONstringify types)}}
1044        {{#ifEquals bedroomCount 0}}
1045        Studio |
1046        {{/ifEquals}}
1047        {{else}}
1048          {{#ifIn "dea9daeb-4eb9-4bd8-8380-1a5c9384e817" (JSONstringify types)}}
1049          {{#ifEquals bedroomCount 0}}
1050          Studio |
1051          {{/ifEquals}}
1052          {{else}}
1053            {{#ifIn "d6b17d8b-a7a2-4de5-95c0-c2783b26de7a" (JSONstringify types)}}
1054            {{#ifEquals bedroomCount 0}}
1055            Studio |
1056            {{/ifEquals}}
1057            {{else}}
1058              {{#ifIn "9ac67b4b-bf76-4e0d-999e-701908f8f9ab" (JSONstringify types)}}
1059              {{#ifEquals bedroomCount 0}}
1060              Studio |
1061              {{/ifEquals}}
1062              {{else}}
1063                {{#ifIn "9a70fec3-5946-4d04-9acb-74d98781f636" (JSONstringify types)}}
1064                {{#ifEquals bedroomCount 0}}
1065                Studio |
1066                {{/ifEquals}}
1067                {{else}}
1068                  {{#ifIn "c68279bc-2904-4ab8-9e84-42ecf6af008c" (JSONstringify types)}}
1069                  {{#ifEquals bedroomCount 0}}
1070                  Studio |
1071                  {{/ifEquals}}
1072                  {{/ifIn}}
1073                {{/ifIn}}
1074              {{/ifIn}}
1075            {{/ifIn}}
1076          {{/ifIn}}
1077        {{/ifIn}}
1078      {{/if}}
1079      {{#if bathCount}}
1080      {{bathCount}} BA
1081      {{#if livingSpaceSize}}
1082      |
1083      {{/if}}
1084      {{/if}}
1085      {{#ifIn "2c63593e-4869-41f8-bc78-03fa80e24580" (JSONstringify types)}}
1086      {{#if lotAreaSize}} {{lpFormatNumber lotAreaSize}} {{formatAreaUnit lotAreaUnits}}{{/if}}
1087      {{else}}
1088      {{#if livingSpaceSize}} {{lpFormatNumber livingSpaceSize}} {{formatAreaUnit livingSpaceUnits}}{{/if}}
1089      {{/ifIn}}
1090    </p>
1091    <h5 style="text-transform: capitalize">
1092        {{formatPropertyPrice this precision=2}}
1093    </h5>
1094  </div>
1095  </a>
1096
1097
1098  <div class="property-list__hover">
1099    <a href="{{#if fromMLS}}/home-search/listings/{{id}}{{^}}/properties/{{slug}}{{/if}}" {{#if fromMLS}} data-turbolinks="false" {{/if}} class="hover-link"></a>
1100    <div class="property-list__buttons">
1101      <a class="property-list__view" href="{{#if fromMLS}}/home-search/listings/{{id}}{{^}}/properties/{{slug}}{{/if}}" {{#if fromMLS}} data-turbolinks="false" {{/if}}>
1102        <button class="btn btn--primary-dark button-style-1">VIEW PROPERTY</button>
1103        <button class="btn btn--primary-light button-style-1">VIEW PROPERTY</button>
1104      </a>
1105      <div class="property-list__share">
1106        <a class="btn btn--primary-dark button-style-1">SHARE PROPERTY</a>
1107        <a class="btn btn--primary-light button-style-1">SHARE PROPERTY</a>
1108        <ul class="socials socials--block-dark">
1109          <li><a href="https://www.facebook.com/sharer/sharer.php?u=https://kinokorealestate.com/properties/{{slug}}" target="_blank" class="socials__link"><i class="lp-i lp-i--facebook"></i></a></li>
1110          <li><a href="https://twitter.com/intent/tweet?url=https://kinokorealestate.com/properties/{{slug}}&text={{name}}" target="_blank" class="socials__link"><i class="lp-i lp-i--twitter"></i></a></li>
1111          <li><a href="mailto:?subject={{name}}&body={{name}} - https://kinokorealestate.com/properties/{{slug}}" class="socials__link" target="_blank"><i class="lp-i lp-i--envelope"></i></a></li>
1112        </ul>
1113      </div>
1114    </div>
1115  </div>
1116</li>
1117</script>
1117
1118<div class="redesign property-list-section">
1119  <div>
1120      <div class="container title-container">
1121        <h2 class="serif">Recent Sales</h2>
1122      </div>
1123      <div class="container description-container">
1124        <div class="description"><p>Explore recent San Francisco real estate sales, featuring luxury homes, condos, and distinctive properties across San Francisco and the Bay Area. Discover the homes and neighborhoods represented by Kinoko Real Estate and see the latest sales shaping the local market.</p></div>
1125      </div>
1126    <div class="container">
1127      <ul class="property-list   data-container">
1128          <li class="property-list__item feature">
1129            <a class="property-list__item-link" href="/properties/bridge_sfar-426106115" >
1130            <div class="property-list__img">
1131              <img src="https://dlajgvw9htjpb.cloudfront.net/cms/f62f900d-59fc-4354-b573-bcc1e7da46a2/426106115/-641064247574515614.jpg" alt="" loading="lazy">
1132            </div>
1133            <span class="property-list__label">
1134                Sold
1135            </span>
1136            <div class="property-list__text">
1137              <h4 class="serif">Private Address</h4>
1138              <p>
1139                Call for Address
1140              </p>
1141              <p>
1142                  2 BD |
1143                3 BA
1144                |
1145                 3,178 Sq.Ft.
1146              </p>
1147              <h5 style="text-transform: capitalize">
1148                  $6,425,000
1149              </h5>
1150            </div>
1151            </a>
1152          
1153          
1154            <div class="property-list__hover">
1155              <a href="/properties/bridge_sfar-426106115"  class="hover-link"></a>
1156              <div class="property-list__buttons">
1157                <a class="property-list__view" href="/properties/bridge_sfar-426106115" >
1158                  <button class="btn btn--primary-dark button-style-1">VIEW PROPERTY</button>
1159                  <button class="btn btn--primary-light button-style-1">VIEW PROPERTY</button>
1160                </a>
1161                <div class="property-list__share">
1162                  <a class="btn btn--primary-dark button-style-1">SHARE PROPERTY</a>
1163                  <a class="btn btn--primary-light button-style-1">SHARE PROPERTY</a>
1164                  <ul class="socials socials--block-dark">
1165                    <li><a href="https://www.facebook.com/sharer/sharer.php?u=https://kinokorealestate.com/properties/bridge_sfar-426106115" target="_blank" class="socials__link"><i class="lp-i lp-i--facebook"></i></a></li>
1166                    <li><a href="https://twitter.com/intent/tweet?url=https://kinokorealestate.com/properties/bridge_sfar-426106115&text=Private Address" target="_blank" class="socials__link"><i class="lp-i lp-i--twitter"></i></a></li>
1167                    <li><a href="/cdn-cgi/l/email-protection#7d420e081f17181e09402d0f140b1c09185d3c19190f180e0e5b1f121904402d0f140b1c09185d3c19190f180e0e5d505d1509090d0e4752521614131216120f181c11180e091c0918531e1210520d0f120d180f0914180e521f0f14191a18220e1b1c0f50494f4b4c4d4b4c4c48" class="socials__link" target="_blank"><i class="lp-i lp-i--envelope"></i></a></li>
1168                  </ul>
1169                </div>
1170              </div>
1171            </div>
1172          </li>
1173          <li class="property-list__item feature">
1174            <a class="property-list__item-link" href="/properties/249-fair-oaks-street-san-francisco-ca-us-94110-426110513" >
1175            <div class="property-list__img">
1176              <img src="https://dlajgvw9htjpb.cloudfront.net/cms/f62f900d-59fc-4354-b573-bcc1e7da46a2/426110513/997703908960950663.jpg" alt="" loading="lazy">
1177            </div>
1178            <span class="property-list__label">
1179                Sold
1180            </span>
1181            <div class="property-list__text">
1182              <h4 class="serif">249 Fair Oaks Street</h4>
1183              <p>
1184                249 Fair Oaks Street, San Francisco, CA 94110
1185              </p>
1186              <p>
1187                  3 BD |
1188                3 BA
1189                |
1190                 2,275 Sq.Ft.
1191              </p>
1192              <h5 style="text-transform: capitalize">
1193                  $4,700,000
1194              </h5>
1195            </div>
1196            </a>
1197          
1198          
1199            <div class="property-list__hover">
1200              <a href="/properties/249-fair-oaks-street-san-francisco-ca-us-94110-426110513"  class="hover-link"></a>
1201              <div class="property-list__buttons">
1202                <a class="property-list__view" href="/properties/249-fair-oaks-street-san-francisco-ca-us-94110-426110513" >
1203                  <button class="btn btn--primary-dark button-style-1">VIEW PROPERTY</button>
1204                  <button class="btn btn--primary-light button-style-1">VIEW PROPERTY</button>
1205                </a>
1206                <div class="property-list__share">
1207                  <a class="btn btn--primary-dark button-style-1">SHARE PROPERTY</a>
1208                  <a class="btn btn--primary-light button-style-1">SHARE PROPERTY</a>
1209                  <ul class="socials socials--block-dark">
1210                    <li><a href="https://www.facebook.com/sharer/sharer.php?u=https://kinokorealestate.com/properties/249-fair-oaks-street-san-francisco-ca-us-94110-426110513" target="_blank" class="socials__link"><i class="lp-i lp-i--facebook"></i></a></li>
1211                    <li><a href="https://twitter.com/intent/tweet?url=https://kinokorealestate.com/properties/249-fair-oaks-street-san-francisco-ca-us-94110-426110513&text=249 Fair Oaks Street" target="_blank" class="socials__link"><i class="lp-i lp-i--twitter"></i></a></li>
1212                    <li><a href="/cdn-cgi/l/email-protection#dce3afa9beb6b9bfa8e1eee8e5fc9abdb5aefc93bdb7affc8fa8aeb9b9a8fabeb3b8a5e1eee8e5fc9abdb5aefc93bdb7affc8fa8aeb9b9a8fcf1fcb4a8a8acafe6f3f3b7b5b2b3b7b3aeb9bdb0b9afa8bda8b9f2bfb3b1f3acaeb3acb9aea8b5b9aff3eee8e5f1babdb5aef1b3bdb7aff1afa8aeb9b9a8f1afbdb2f1baaebdb2bfb5afbfb3f1bfbdf1a9aff1e5e8ededecf1e8eeeaededece9edef" class="socials__link" target="_blank"><i class="lp-i lp-i--envelope"></i></a></li>
1213                  </ul>
1214                </div>
1215              </div>
1216            </div>
1217          </li>
1218          <li class="property-list__item feature">
1219            <a class="property-list__item-link" href="/properties/850-wisconsin-street-san-francisco-ca-us-94107-426128995" >
1220            <div class="property-list__img">
1221              <img src="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/3bc0570a-b8df-4ad9-855e-32283fb33dbd" srcset="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=960/https://media-production.lp-cdn.com/media/3bc0570a-b8df-4ad9-855e-32283fb33dbd 960w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/3bc0570a-b8df-4ad9-855e-32283fb33dbd 1000w" alt="" loading="lazy">
1222            </div>
1223            <span class="property-list__label">
1224                Sold
1225            </span>
1226            <div class="property-list__text">
1227              <h4 class="serif">850 Wisconsin Street</h4>
1228              <p>
1229                850 Wisconsin Street, San Francisco, CA 94107
1230              </p>
1231              <p>
1232                  5 BD |
1233                3 BA
1234                |
1235                 3,015 Sq.Ft.
1236              </p>
1237              <h5 style="text-transform: capitalize">
1238                  $4,540,000
1239              </h5>
1240            </div>
1241            </a>
1242          
1243          
1244            <div class="property-list__hover">
1245              <a href="/properties/850-wisconsin-street-san-francisco-ca-us-94107-426128995"  class="hover-link"></a>
1246              <div class="property-list__buttons">
1247                <a class="property-list__view" href="/properties/850-wisconsin-street-san-francisco-ca-us-94107-426128995" >
1248                  <button class="btn btn--primary-dark button-style-1">VIEW PROPERTY</button>
1249                  <button class="btn btn--primary-light button-style-1">VIEW PROPERTY</button>
1250                </a>
1251                <div class="property-list__share">
1252                  <a class="btn btn--primary-dark button-style-1">SHARE PROPERTY</a>
1253                  <a class="btn btn--primary-light button-style-1">SHARE PROPERTY</a>
1254                  <ul class="socials socials--block-dark">
1255                    <li><a href="https://www.facebook.com/sharer/sharer.php?u=https://kinokorealestate.com/properties/850-wisconsin-street
1255-san-francisco-ca-us-94107-426128995" target="_blank" class="socials__link"><i class="lp-i lp-i--facebook"></i></a></li>
1256                    <li><a href="https://twitter.com/intent/tweet?url=https://kinokorealestate.com/properties/850-wisconsin-street-san-francisco-ca-us-94107-426128995&text=850 Wisconsin Street" target="_blank" class="socials__link"><i class="lp-i lp-i--twitter"></i></a></li>
1257                    <li><a href="/cdn-cgi/l/email-protection#87b8f4f2e5ede2e4f3babfb2b7a7d0eef4e4e8e9f4eee9a7d4f3f5e2e2f3a1e5e8e3febabfb2b7a7d0eef4e4e8e9f4eee9a7d4f3f5e2e2f3a7aaa7eff3f3f7f4bda8a8eceee9e8ece8f5e2e6ebe2f4f3e6f3e2a9e4e8eaa8f7f5e8f7e2f5f3eee2f4a8bfb2b7aaf0eef4e4e8e9f4eee9aaf4f3f5e2e2f3aaf4e6e9aae1f5e6e9e4eef4e4e8aae4e6aaf2f4aabeb3b6b7b0aab3b5b1b6b5bfbebeb2" class="socials__link" target="_blank"><i class="lp-i lp-i--envelope"></i></a></li>
1258                  </ul>
1259                </div>
1260              </div>
1261            </div>
1262          </li>
1263          <li class="property-list__item feature">
1264            <a class="property-list__item-link" href="/properties/154-san-pablo-avenue-san-francisco-ca-us-94127-426106533" >
1265            <div class="property-list__img">
1266              <img src="https://dlajgvw9htjpb.cloudfront.net/cms/f62f900d-59fc-4354-b573-bcc1e7da46a2/426106533/8128713842757077308.jpg" alt="" loading="lazy">
1267            </div>
1268            <span class="property-list__label">
1269                Sold
1270            </span>
1271            <div class="property-list__text">
1272              <h4 class="serif">154 San Pablo Avenue</h4>
1273              <p>
1274                154 San Pablo Avenue, San Francisco, CA 94127
1275              </p>
1276              <p>
1277                  4 BD |
1278                4 BA
1279                |
1280                 2,734 Sq.Ft.
1281              </p>
1282              <h5 style="text-transform: capitalize">
1283                  $4,200,000
1284              </h5>
1285            </div>
1286            </a>
1287          
1288          
1289            <div class="property-list__hover">
1290              <a href="/properties/154-san-pablo-avenue-san-francisco-ca-us-94127-426106533"  class="hover-link"></a>
1291              <div class="property-list__buttons">
1292                <a class="property-list__view" href="/properties/154-san-pablo-avenue-san-francisco-ca-us-94127-426106533" >
1293                  <button class="btn btn--primary-dark button-style-1">VIEW PROPERTY</button>
1294                  <button class="btn btn--primary-light button-style-1">VIEW PROPERTY</button>
1295                </a>
1296                <div class="property-list__share">
1297                  <a class="btn btn--primary-dark button-style-1">SHARE PROPERTY</a>
1298                  <a class="btn btn--primary-light button-style-1">SHARE PROPERTY</a>
1299                  <ul class="socials socials--block-dark">
1300                    <li><a href="https://www.facebook.com/sharer/sharer.php?u=https://kinokorealestate.com/properties/154-san-pablo-avenue-san-francisco-ca-us-94127-426106533" target="_blank" class="socials__link"><i class="lp-i lp-i--facebook"></i></a></li>
1301                    <li><a href="https://twitter.com/intent/tweet?url=https://kinokorealestate.com/properties/154-san-pablo-avenue-san-francisco-ca-us-94127-426106533&text=154 San Pablo Avenue" target="_blank" class="socials__link"><i class="lp-i lp-i--twitter"></i></a></li>
1302                    <li><a href="/cdn-cgi/l/email-protection#caf5b9bfa8a0afa9bef7fbfffeea99aba4ea9aaba8a6a5ea8bbcafa4bfafeca8a5aeb3f7fbfffeea99aba4ea9aaba8a6a5ea8bbcafa4bfafeae7eaa2bebebab9f0e5e5a1a3a4a5a1a5b8afaba6afb9beabbeafe4a9a5a7e5bab8a5baafb8bea3afb9e5fbfffee7b9aba4e7baaba8a6a5e7abbcafa4bfafe7b9aba4e7acb8aba4a9a3b9a9a5e7a9abe7bfb9e7f3fefbf8fde7fef8fcfbfafcfff9f9" class="socials__link" target="_blank"><i class="lp-i lp-i--envelope"></i></a></li>
1303                  </ul>
1304                </div>
1305              </div>
1306            </div>
1307          </li>
1308          <li class="property-list__item feature">
1309            <a class="property-list__item-link" href="/properties/32-eagle-rock-rd" >
1310            <div class="property-list__img">
1311              <img src="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=1280/https://media-production.lp-cdn.com/media/jxt6momgjdr4i9dsrcsi" srcset="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=960/https://media-production.lp-cdn.com/media/jxt6momgjdr4i9dsrcsi 960w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=1280/https://media-production.lp-cdn.com/media/jxt6momgjdr4i9dsrcsi 1280w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/jxt6momgjdr4i9dsrcsi 1920w" alt="" loading="lazy">
1312            </div>
1313            <span class="property-list__label">
1314                Sold
1315            </span>
1316            <div class="property-list__text">
1317              <h4 class="serif">32 Eagle Rock Rd</h4>
1318              <p>
1319                32 Eagle Rock Rd, Mill Valley, CA 94941
1320              </p>
1321              <p>
1322                  5 BD |
1323                6 BA
1324                |
1325                 4,434 Sq.Ft.
1326              </p>
1327              <h5 style="text-transform: capitalize">
1328                  $4,150,000
1329              </h5>
1330            </div>
1331            </a>
1332          
1333          
1334            <div class="property-list__hover">
1335              <a href="/properties/32-eagle-rock-rd"  class="hover-link"></a>
1336              <div class="property-list__buttons">
1337                <a class="property-list__view" href="/properties/32-eagle-rock-rd" >
1338                  <button class="btn btn--primary-dark button-style-1">VIEW PROPERTY</button>
1339                  <button class="btn btn--primary-light button-style-1">VIEW PROPERTY</button>
1340                </a>
1341                <div class="property-list__share">
1342                  <a class="btn btn--primary-dark button-style-1">SHARE PROPERTY</a>
1343                  <a class="btn btn--primary-light button-style-1">SHARE PROPERTY</a>
1344                  <ul class="socials socials--block-dark">
1345                    <li><a href="https://www.facebook.com/sharer/sharer.php?u=https://kinokorealestate.com/properties/32-eagle-rock-rd" target="_blank" class="socials__link"><i class="lp-i lp-i--facebook"></i></a></li>
1346                    <li><a href="https://twitter.com/intent/tweet?url=https://kinokorealestate.com/properties/32-eagle-rock-rd&text=32 Eagle Rock Rd" target="_blank" class="socials__link"><i class="lp-i lp-i--twitter"></i></a></li>
1347                    <li><a href="/cdn-cgi/l/email-protection#97a8e4e2f5fdf2f4e3aaa4a5b7d2f6f0fbf2b7c5f8f4fcb7c5f3b1f5f8f3eeaaa4a5b7d2f6f0fbf2b7c5f8f4fcb7c5f3b7bab7ffe3e3e7e4adb8b8fcfef9f8fcf8e5f2f6fbf2e4e3f6e3f2b9f4f8fab8e7e5f8e7f2e5e3fef2e4b8a4a5baf2f6f0fbf2bae5f8f4fcbae5f3" class="socials__link" target="_blank"><i class="lp-i lp-i--envelope"></i></a></li>
1348                  </ul>
1349                </div>
1350              </div>
1351            </div>
1352          </li>
1353          <li class="property-list__item feature">
1354            <a class="property-list__item-link" href="/properties/255-crestlake-drive-san-francisco-ca-us-94132-425047340" >
1355            <div class="property-list__img">
1356              <img src="https://dlajgvw9htjpb.cloudfront.net/cms/f62f900d-59fc-4354-b573-bcc1e7da46a2/425047340/-5186751848538244651.jpg" alt="" loading="lazy">
1357            </div>
1358            <span class="property-list__label">
1359                Sold
1360            </span>
1361            <div class="property-list__text">
1362              <h4 class="serif">255 Crestlake Drive</h4>
1363              <p>
1364                255 Crestlake Drive, San Francisco, CA 94132
1365              </p>
1366              <p>
1367                  5 BD |
1368                4 BA
1369                |
1370                 2,837 Sq.Ft.
1371              </p>
1372              <h5 style="text-transform: capitalize">
1373                  $3,125,000
1374              </h5>
1375            </div>
1376            </a>
1377          
1378          
1379            <div class="property-list__hover">
1380              <a href="/properties/255-crestlake-drive-san-francisco-ca-us-94132-425047340"  class="hover-link"></a>
1381              <div class="property-list__buttons">
1382                <a class="property-list__view" href="/properties/255-crestlake-drive-san-francisco-ca-us-94132-425047340" >
1383                  <button class="btn btn--primary-dark button-style-1">VIEW PROPERTY</button>
1384                  <button class="btn btn--primary-light button-style-1">VIEW PROPERTY</button>
1385                </a>
1386                <div class="property-list__share">
1387                  <a class="btn btn--primary-dark button-style-1">SHARE PROPERTY</a>
1388                  <a class="btn btn--primary-light button-style-1">SHARE PROPERTY</a>
1389                  <ul class="socials socials--block-dark">
1390                    <li><a href="https://www.facebook.com/sharer/sharer.php?u=https://kinokorealestate.com/properties/255-crestlake-drive-san-francisco-ca-us-94132-425047340" target="_blank" class="socials__link"><i class="lp-i lp-i--facebook"></i></a></li>
1391                    <li><a href="https://twitter.com/intent/tweet?url=https://kinokorealestate.com/properties/255-crestlake-drive-san-francisco-ca-us-94132-425047340&text=255 Crestlake Drive" target="_blank" class="socials__link"><i class="lp-i lp-i--twitter"></i></a></li>
1392                    <li><a href="/cdn-cgi/l/email-protection#ebd4989e89818e889fd6d9dedecba8998e989f878a808ecbaf99829d8ecd89848f92d6d9dedecba8998e989f878a808ecbaf99829d8ecbc6cb839f9f9b98d1c4c4808285848084998e8a878e989f8a9f8ec5888486c49b99849b8e999f828e98c4d9dedec688998e989f878a808ec68f99829d8ec6988a85c68d998a858882988884c6888ac69e98c6d2dfdad8d9c6dfd9dedbdfdcd8dfdb" class="socials__link" target="_blank"><i class="lp-i lp-i--envelope"></i></a></li>
1393                  </ul>
1394                </div>
1395              </div>
1396            </div>
1397          </li>
1398          <li class="property-list__item feature">
1399            <a class="property-list__item-link" href="/properties/926-laguna-ave" >
1400            <div class="property-list__img">
1401              <img src="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/n0r1inpaydpgoacmglwj" srcset="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=960/https://media-production.lp-cdn.com/media/n0r1inpaydpgoacmglwj 960w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/n0r1inpaydpgoacmglwj 1280w" alt="" loading="lazy">
1402            </div>
1403            <span class="property-list__label">
1404                Sold
1405            </span>
1406            <div class="property-list__text">
1407              <h4 class="serif">926 Laguna Ave</h4>
1408              <p>
1409                926 Laguna Ave, Burlingame, CA 94010
1410              </p>
1411              <p>
1412                  3 BD |
1413                2 BA
1414                |
1415                 1,764 Sq.Ft.
1416              </p>
1417              <h5 style="text-transform: capitalize">
1418                  $2,888,000
1419              </h5>
1420            </div>
1421            </a>
1422          
1423          
1424            <div class="property-list__hover">
1425              <a href="/properties/926-laguna-ave"  class="hover-link"></a>
1426              <div class="property-list__buttons">
1427                <a class="property-list__view" href="/properties/926-laguna-ave" >
1428                  <button class="btn btn--primary-dark button-style-1">VIEW PROPERTY</button>
1429                  <button class="btn btn--primary-light button-style-1">VIEW PROPERTY</button>
1430                </a>
1431                <div class="property-list__share">
1432                  <a class="btn btn--primary-dark button-style-1">SHARE PROPERTY</a>
1433                  <a class="btn btn--primary-light button-style-1">SHARE PROPERTY</a>
1434                  <ul class="socials socials--block-dark">
1435                    <li><a href="https://www.facebook.com/sharer/sharer.php?u=https://kinokorealestate.com/properties/926-laguna-ave" target="_blank" class="socials__link"><i class="lp-i lp-i--facebook"></i></a></li>
1436                    <li><a href="https://twitter.com/intent/tweet?url=https://kinokorealestate.com/properties/926-laguna-ave&text=926 Laguna Ave" target="_blank" class="socials__link"><i class="lp-i lp-i--twitter"></i></a></li>
1437                    <li><a href="/cdn-cgi/l/email-protection#b08fc3c5d2dad5d3c48d89828690fcd1d7c5ded190f1c6d596d2dfd4c98d89828690fcd1d7c5ded190f1c6d5909d90d8c4c4c0c38a9f9fdbd9dedfdbdfc2d5d1dcd5c3c4d1c4d59ed3dfdd9fc0c2dfc0d5c2c4d9d5c39f8982869ddcd1d7c5ded19dd1c6d5" class="socials__link" target="_blank"><i class="lp-i lp-i--envelope"></i></a></li>
1438                  </ul>
1439                </div>
1440              </div>
1441            </div>
1442          </li>
1443          <li class="property-list__item feature">
1444            <a class="property-list__item-link" href="/properties/2007-new-brunswick-drive" >
1445            <div class="property-list__img">
1446              <img src="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=1280/https://media-production.lp-cdn.com/media/vl4k10a6nezzcave9a8a" srcset="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=960/https://media-production.lp-cdn.com/media/vl4k10a6nezzcave9a8a 960w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=1280/https://media-production.lp-cdn.com/media/vl4k10a6nezzcave9a8a 1280w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/vl4k10a6nezzcave9a8a 1920w" alt="" loading="lazy">
1447            </div>
1448            <span class="property-list__label">
1449                Sold
1450            </span>
1451            <div class="property-list__text">
1452              <h4 class="serif">2007 New Brunswick Drive</h4>
1453              <p>
1454                2007 New Brunswick Drive, San Mateo, CA 94402
1455              </p>
1456              <p>
1457                  4 BD |
1458                2 BA
1459                |
1460                 1,710 Sq.Ft.
1461              </p>
1462              <h5 style="text-transform: capitalize">
1463                  $2,700,000
1464              </h5>
1465            </div>
1466            </a>
1467          
1468          
1469            <div class="property-list__hover">
1470              <a href="/properties/2007-new-brunswick-drive"  class="hover-link"></a>
1471              <div class="property-list__buttons">
1472                <a class="property-list__view" href="/properties/2007-new-brunswick-drive" >
1473                  <button class="btn btn--primary-dark button-style-1">VIEW PROPERTY</button>
1474                  <button class="btn btn--primary-light button-style-1">VIEW PROPERTY</button>
1475                </a>
1476                <div class="property-list__share">
1477                  <a class="btn btn--primary-dark button-style-1">SHARE PROPERTY</a>
1478                  <a class="btn btn--primary-light button-style-1">SHARE PROPERTY</a>
1479                  <ul class="socials socials--block-dark">
1480                    <li><a href="https://www.facebook.com/sharer/sharer.php?u=https://kinokorealestate.com/properties/2007-new-brunswick-drive" target="_blank" class="socials__link"><i class="lp-i lp-i--facebook"></i></a></li>
1481                    <li><a href="https://twitter.com/intent/tweet?url=https://kinokorealestate.com/properties/2007-new-brunswick-drive&text=2007 New Brunswick Drive" target="_blank" class="socials__link"><i class="lp-i lp-i--twitter"></i></a></li>
1482                    <li><a href="/cdn-cgi/l/email-protection#ad92ded8cfc7c8ced9909f9d9d9a8de3c8da8defdfd8c3dedac4cec68de9dfc4dbc88bcfc2c9d4909f9d9d9a8de3c8da8defdfd8c3dedac4cec68de9dfc4dbc88d808dc5d9d9ddde978282c6c4c3c2c6c2dfc8ccc1c8ded9ccd9c883cec2c082dddfc2ddc8dfd9c4c8de829f9d9d9a80c3c8da80cfdfd8c3dedac4cec680c9dfc4dbc8" class="socials__link" target="_blank"><i class="lp-i lp-i--envelope"></i></a></li>
1483                  </ul>
1484                </div>
1485              </div>
1486            </div>
1487          </li>
1488          <li class="property-list__item feature">
1489            <a class="property-list__item-link" href="/properties/2350-hale-dr" >
1490            <div class="property-list__img">
1491              <img src="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/65f66d14-a9f1-49bc-9dc9-f7fa521834af" srcset="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=960/https://media-production.lp-cdn.com/media/65f66d14-a9f1-49bc-9dc9-f7fa521834af 960w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/65f66d14-a9f1-49bc-9dc9-f7fa521834af 1280w" alt="" loading="lazy">
1492            </div>
1493            <span class="property-list__label">
1494                Sold
1495            </span>
1496            <div class="property-list__text">
1497              <h4 class="serif">2350 Hale Dr</h4>
1498              <p>
1499                2350 Hale Dr, Burlingame, CA 94010
1500              </p>
1501              <p>
1502                  4 BD |
1503                2 BA
1504                |
1505                 1,900 Sq.Ft.
1506              </p>
1507              <h5 style="text-transform: capitalize">
1508                  $2,700,000
1509              </h5>
1510            </div>
1511            </a>
1512          
1513          
1514            <div class="property-list__hover">
1515              <a href="/properties/2350-hale-dr"  class="hover-link"></a>
1516              <div class="property-list__buttons">
1517                <a class="property-list__view" href="/properties/2350-hale-dr" >
1518                  <button class="btn btn--primary-dark button-style-1">VIEW PROPERTY</button>
1519                  <button class="btn btn--primary-light button-style-1">VIEW PROPERTY</button>
1520                </a>
1521                <div class="property-list__share">
1522                  <a class="btn btn--primary-dark button-style-1">SHARE PROPERTY</a>
1523                  <a class="btn btn--primary-light button-style-1">SHARE PROPERTY</a>
1524                  <ul class="socials socials--block-dark">
1525                    <li><a href="https://www.facebook.com/sharer/sharer.php?u=https://kinokorealestate.com/properties/2350-hale-dr" target="_blank" class="socials__link"><i class="lp-i lp-i--facebook"></i></a></li>
1526                    <li><a href="https://twitter.com/intent/tweet?url=https://kinokorealestate.com/properties/2350-hale-dr&text=2350 Hale Dr" target="_blank" class="socials__link"><i class="lp-i lp-i--twitter"></i></a></li>
1527                    <li><a href="/cdn-cgi/l/email-protection#a09fd3d5c2cac5c3d49d9293959080e8c1ccc580e4d286c2cfc4d99d9293959080e8c1ccc580e4d2808d80c8d4d4d0d39a8f8fcbc9cecfcbcfd2c5c1ccc5d3d4c1d4c58ec3cfcd8fd0d2cfd0c5d2d4c9c5d38f929395908dc8c1ccc58dc4d2" class="socials__link" target="_blank"><i class="lp-i lp-i--envelope"></i></a></li>
1528                  </ul>
1529                </div>
1530              </div>
1531            </div>
1532          </li>
1533          <li class="property-list__item feature">
1534            <a class="property-list__item-link" href="/properties/3525-cabrillo-street-san-francisco-ca-us-94121-425019545" >
1535            <div class="property-list__img">
1536              <img src="https://dlajgvw9htjpb.cloudfront.net/cms/f62f900d-59fc-4354-b573-bcc1e7da46a2/425019545/2789896665901376066.jpg" alt="" loading="lazy">
1537            </div>
1538            <span class="property-list__label">
1539                Sold
1540            </span>
1541            <div class="property-list__text">
1542              <h4 class="serif">3525 Cabrillo Street</h4>
1543              <p>
1544                3525 Cabrillo Street, San Francisco, CA 94121
1545              </p>
1546              <p>
1547                  4 BD |
1548                4 BA
1549                |
1550                 2,232 Sq.Ft.
1551              </p>
1552              <h5 style="text-transform: capitalize">
1553                  $2,343,500
1554              </h5>
1555            </div>
1556            </a>
1557          
1558          
1559            <div class="property-list__hover">
1560              <a href="/properties/3525-cabrillo-street-san-francisco-ca-us-94121-425019545"  class="hover-link"></a>
1561              <div class="property-list__buttons">
1562                <a class="property-list__view" href="/properties/3525-cabrillo-street-san-francisco-ca-us-94121-425019545" >
1563                  <button class="btn btn--primary-dark button-style-1">VIEW PROPERTY</button>
1564                  <button class="btn btn--primary-light button-style-1">VIEW PROPERTY</button>
1565                </a>
1566                <div class="property-list__share">
1567                  <a class="btn btn--primary-dark button-style-1">SHARE PROPERTY</a>
1568                  <a class="btn btn--primary-light button-style-1">SHARE PROPERTY</a>
1569                  <ul class="socials socials--block-dark">
1570                    <li><a href="https://www.facebook.com/sharer/sharer.php?u=https://kinokorealestate.com/properties/3525-cabrillo-street
1570-san-francisco-ca-us-94121-425019545" target="_blank" class="socials__link"><i class="lp-i lp-i--facebook"></i></a></li>
1571                    <li><a href="https://twitter.com/intent/tweet?url=https://kinokorealestate.com/properties/3525-cabrillo-street-san-francisco-ca-us-94121-425019545&text=3525 Cabrillo Street" target="_blank" class="socials__link"><i class="lp-i lp-i--twitter"></i></a></li>
1572                    <li><a href="/cdn-cgi/l/email-protection#4f703c3a2d252a2c3b727c7a7d7a6f0c2e2d3d262323206f1c3b3d2a2a3b692d202b36727c7a7d7a6f0c2e2d3d262323206f1c3b3d2a2a3b6f626f273b3b3f3c7560602426212024203d2a2e232a3c3b2e3b2a612c2022603f3d203f2a3d3b262a3c607c7a7d7a622c2e2d3d26232320623c3b3d2a2a3b623c2e2162293d2e212c263c2c20622c2e623a3c62767b7e7d7e627b7d7a7f7e767a7b7a" class="socials__link" target="_blank"><i class="lp-i lp-i--envelope"></i></a></li>
1573                  </ul>
1574                </div>
1575              </div>
1576            </div>
1577          </li>
1578      </ul>
1579      <div class="empty-result" style="display: none">
1580        <h3>No Results Found. Please Try Another Search.</h3>
1581      </div>
1582        <div class="lp-pagination pagination-container pagination-style-2"></div>
1583    </div>
1584  </div>
1585</div>
1586
1587</section>
1588<section id="section-ba43671b-3100-4991-8247-7989a4b81495"  class="solid-section is-font-color-dark is-background-color-light" data-el-id="ac02c806-12cd-4935-a9ef-ee0ce348a752">
1589  <div class="video-gallery redesign">
1590  <div class="lp-container">
1591    
1592      <div class="video-gallery__header">
1593        <h2 class="video-gallery__heading lp-h2">List With Us</h2>
1594        <div class="video-gallery__lead pre-line lp-text--subtitle"><p data-start="1441" data-end="1480">Your home deserves more than a listing.
1595
1596</p><p data-start="1441" data-end="1480">&nbsp;</p><p data-start="1482" data-end="1728">Kinoko creates cinematic listing films that highlight the craftsmanship, lifestyle, and story behind each property. From first impression to final offer, our marketing is designed to help your home stand out in San Francisco’s competitive market.
1597
1598</p><p data-start="1482" data-end="1728">&nbsp;</p><p data-start="1730" data-end="1785">Explore a selection of our recent listing videos below.</p></div>
1599      </div>
1600
1601    <div class="video-gallery__row">
1602      <div class="carousel-container " data-columns=3>
1603        <div class="video-gallery__slide">
1604          <a class="video-card" data-type="VIDEO" data-src="https://www.youtube.com/watch?v&#x3D;pUjFTLamHeE&amp;t&#x3D;23s">
1605            <div class="video-card__header">
1606              <h6 class="video-card__title lp-h6">154 San Pablo Avenue</h6>
1607            </div>
1608
1609            <div class="video-card__preview">
1610              <img src="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/feb96f6d-fb1e-45a2-8390-2d0bc9e97375" srcset="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=320/https://media-production.lp-cdn.com/media/feb96f6d-fb1e-45a2-8390-2d0bc9e97375 320w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=960/https://media-production.lp-cdn.com/media/feb96f6d-fb1e-45a2-8390-2d0bc9e97375 960w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/feb96f6d-fb1e-45a2-8390-2d0bc9e97375 1280w" sizes="(max-width: 574px) 100vw, (max-width: 990px) 50vw, 33vw" alt="154 San Pablo Avenue" loading="lazy">
1611              <span class="lp-play lp-play--light video-card__btn-play" aria-label="play video"></span>
1612            </div>
1613          </a>
1614        </div>
1615        <div class="video-gallery__slide">
1616          <a class="video-card" data-type="VIDEO" data-src="https://www.youtube.com/watch?v&#x3D;UJefF-gSTEw&amp;t&#x3D;2s">
1617            <div class="video-card__header">
1618              <h6 class="video-card__title lp-h6">850 Wisconsin Sreet</h6>
1619            </div>
1620
1621            <div class="video-card__preview">
1622              <img src="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/b6660a73-16c6-461c-abb1-1b46375bceb2" srcset="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=320/https://media-production.lp-cdn.com/media/b6660a73-16c6-461c-abb1-1b46375bceb2 320w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=960/https://media-production.lp-cdn.com/media/b6660a73-16c6-461c-abb1-1b46375bceb2 960w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/b6660a73-16c6-461c-abb1-1b46375bceb2 1280w" sizes="(max-width: 574px) 100vw, (max-width: 990px) 50vw, 33vw" alt="850 Wisconsin Sreet" loading="lazy">
1623              <span class="lp-play lp-play--light video-card__btn-play" aria-label="play video"></span>
1624            </div>
1625          </a>
1626        </div>
1627        <div class="video-gallery__slide">
1628          <a class="video-card" data-type="VIDEO" data-src="https://www.youtube.com/watch?v&#x3D;Ns3g_v49StQ">
1629            <div class="video-card__header">
1630              <h6 class="video-card__title lp-h6">255 Crestlake Drive</h6>
1631            </div>
1632
1633            <div class="video-card__preview">
1634              <img src="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/a697bb8d-347f-4c87-9b94-1cb5ad293b2b" srcset="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=320/https://media-production.lp-cdn.com/media/a697bb8d-347f-4c87-9b94-1cb5ad293b2b 320w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=960/https://media-production.lp-cdn.com/media/a697bb8d-347f-4c87-9b94-1cb5ad293b2b 960w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/a697bb8d-347f-4c87-9b94-1cb5ad293b2b 1280w" sizes="(max-width: 574px) 100vw, (max-width: 990px) 50vw, 33vw" alt="255 Crestlake Drive" loading="lazy">
1635              <span class="lp-play lp-play--light video-card__btn-play" aria-label="play video"></span>
1636            </div>
1637          </a>
1638        </div>
1639        <div class="video-gallery__slide">
1640          <a class="video-card" data-type="VIDEO" data-src="https://www.youtube.com/watch?v&#x3D;v5ARdAbSuaQ">
1641            <div class="video-card__header">
1642              <h6 class="video-card__title lp-h6">3525 Cabrillo Street</h6>
1643            </div>
1644
1645            <div class="video-card__preview">
1646              <img src="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/5c2529e8-383d-4a92-910d-9ea50638dda0" srcset="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=320/https://media-production.lp-cdn.com/media/5c2529e8-383d-4a92-910d-9ea50638dda0 320w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=960/https://media-production.lp-cdn.com/media/5c2529e8-383d-4a92-910d-9ea50638dda0 960w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/5c2529e8-383d-4a92-910d-9ea50638dda0 1280w" sizes="(max-width: 574px) 100vw, (max-width: 990px) 50vw, 33vw" alt="3525 Cabrillo Street" loading="lazy">
1647              <span class="lp-play lp-play--light video-card__btn-play" aria-label="play video"></span>
1648            </div>
1649          </a>
1650        </div>
1651        <div class="video-gallery__slide">
1652          <a class="video-card" data-type="VIDEO" data-src="https://www.youtube.com/watch?v&#x3D;ugyx1TfVFQ4">
1653            <div class="video-card__header">
1654              <h6 class="video-card__title lp-h6">1555 21st Avenue</h6>
1655            </div>
1656
1657            <div class="video-card__preview">
1658              <img src="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/0806821e-9618-4c27-809c-fb4a5f2f94e6" srcset="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=320/https://media-production.lp-cdn.com/media/0806821e-9618-4c27-809c-fb4a5f2f94e6 320w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=960/https://media-production.lp-cdn.com/media/0806821e-9618-4c27-809c-fb4a5f2f94e6 960w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/0806821e-9618-4c27-809c-fb4a5f2f94e6 1280w" sizes="(max-width: 574px) 100vw, (max-width: 990px) 50vw, 33vw" alt="1555 21st Avenue" loading="lazy">
1659              <span class="lp-play lp-play--light video-card__btn-play" aria-label="play video"></span>
1660            </div>
1661          </a>
1662        </div>
1663        <div class="video-gallery__slide">
1664          <a class="video-card" data-type="VIDEO" data-src="https://www.youtube.com/watch?v&#x3D;O0ym9AyTjnY">
1665            <div class="video-card__header">
1666              <h6 class="video-card__title lp-h6">239 8th Street</h6>
1667            </div>
1668
1669            <div class="video-card__preview">
1670              <img src="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/5ec37428-db7f-458e-8837-8e0b32b93a82" srcset="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=320/https://media-production.lp-cdn.com/media/5ec37428-db7f-458e-8837-8e0b32b93a82 320w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=960/https://media-production.lp-cdn.com/media/5ec37428-db7f-458e-8837-8e0b32b93a82 960w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/5ec37428-db7f-458e-8837-8e0b32b93a82 1280w" sizes="(max-width: 574px) 100vw, (max-width: 990px) 50vw, 33vw" alt="239 8th Street" loading="lazy">
1671              <span class="lp-play lp-play--light video-card__btn-play" aria-label="play video"></span>
1672            </div>
1673          </a>
1674        </div>
1675        <div class="video-gallery__slide">
1676          <a class="video-card" data-type="VIDEO" data-src="https://www.youtube.com/watch?v&#x3D;MjfEWGF5aI0">
1677            <div class="video-card__header">
1678              <h6 class="video-card__title lp-h6">1515 15th St #404</h6>
1679            </div>
1680
1681            <div class="video-card__preview">
1682              <img src="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/8a23c957-5361-4648-9553-e20740e877d7" srcset="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=320/https://media-production.lp-cdn.com/media/8a23c957-5361-4648-9553-e20740e877d7 320w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=960/https://media-production.lp-cdn.com/media/8a23c957-5361-4648-9553-e20740e877d7 960w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/8a23c957-5361-4648-9553-e20740e877d7 1280w" sizes="(max-width: 574px) 100vw, (max-width: 990px) 50vw, 33vw" alt="1515 15th St #404" loading="lazy">
1683              <span class="lp-play lp-play--light video-card__btn-play" aria-label="play video"></span>
1684            </div>
1685          </a>
1686        </div>
1687        <div class="video-gallery__slide">
1688          <a class="video-card" data-type="VIDEO" data-src="https://youtu.be/1Rci5fWXGGo">
1689            <div class="video-card__header">
1690              <h6 class="video-card__title lp-h6">Arden 717</h6>
1691            </div>
1692
1693            <div class="video-card__preview">
1694              <img src="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/06519229-83f8-482c-8254-f772b02e48bb" srcset="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=320/https://media-production.lp-cdn.com/media/06519229-83f8-482c-8254-f772b02e48bb 320w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=960/https://media-production.lp-cdn.com/media/06519229-83f8-482c-8254-f772b02e48bb 960w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/06519229-83f8-482c-8254-f772b02e48bb 1280w" sizes="(max-width: 574px) 100vw, (max-width: 990px) 50vw, 33vw" alt="Arden 717" loading="lazy">
1695              <span class="lp-play lp-play--light video-card__btn-play" aria-label="play video"></span>
1696            </div>
1697          </a>
1698        </div>
1699        <div class="video-gallery__slide">
1700          <a class="video-card" data-type="VIDEO" data-src="https://youtu.be/nj7OTvpffK4">
1701            <div class="video-card__header">
1702              <h6 class="video-card__title lp-h6">Madrone 1401</h6>
1703            </div>
1704
1705            <div class="video-card__preview">
1706              <img src="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/bd53afc1-a5a5-4202-8a7c-8b357c52a5aa" srcset="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=320/https://media-production.lp-cdn.com/media/bd53afc1-a5a5-4202-8a7c-8b357c52a5aa 320w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=960/https://media-production.lp-cdn.com/media/bd53afc1-a5a5-4202-8a7c-8b357c52a5aa 960w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/bd53afc1-a5a5-4202-8a7c-8b357c52a5aa 1280w" sizes="(max-width: 574px) 100vw, (max-width: 990px) 50vw, 33vw" alt="Madrone 1401" loading="lazy">
1707              <span class="lp-play lp-play--light video-card__btn-play" aria-label="play video"></span>
1708            </div>
1709          </a>
1710        </div>
1711      </div>
1712    </div>
1713
1714    <div class="lp-pagination pagination-container pagination-style-1">
1715      <div class="paginationjs">
1716        <div class="paginationjs-pages">
1717          <div class="carousel-controls"></div>
1718        </div>
1719      </div>
1720    </div>
1721
1722  </div>
1723
1724  <div class="video-gallery__modals">
1725      
1726      
1727      
1728      
1729      
1730      
1731      
1732      
1733      
1734  </div>
1735</div>
1736</section>
1737<section id="section-26ef12a8-1616-4b4e-a92a-f7e63cf93b7a"  class="solid-section is-font-color-dark is-background-color-light" data-el-id="80774f76-9c97-4268-8614-e44ca8fbb255">
1738  <div class="media-text lp-vertical-paddings  right-to-left redesign" style="--bgColor: #ffffff">
1739  
1740  <img src="https://images.unsplash.com/photo-1616137356540-b13b2a04a507?ixid=M3w0MTQ1MnwwfDF8c2VhcmNofDE0fHxsdXh1cnklMjBsaXZpbmclMjByb29tJTIwc2FuJTIwZnJhbmNpc2NvJTIwY2FsaWZvcm5pYXxlbnwwfHx8fDE3ODc3Njc2MjB8MA&ixlib=rb-4.1.0&q=80&w=1280" srcset="https://images.unsplash.com/photo-1616137356540-b13b2a04a507?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w0MTQ1MnwwfDF8c2VhcmNofDE0fHxsdXh1cnklMjBsaXZpbmclMjByb29tJTIwc2FuJTIwZnJhbmNpc2NvJTIwY2FsaWZvcm5pYXxlbnwwfHx8fDE3ODc3Njc2MjB8MA&ixlib=rb-4.1.0&q=80&w=200 320w, https://images.unsplash.com/photo-1616137356540-b13b2a04a507?ixid=M3w0MTQ1MnwwfDF8c2VhcmNofDE0fHxsdXh1cnklMjBsaXZpbmclMjByb29tJTIwc2FuJTIwZnJhbmNpc2NvJTIwY2FsaWZvcm5pYXxlbnwwfHx8fDE3ODc3Njc2MjB8MA&ixlib=rb-4.1.0&q=80&w=960 960w, https://images.unsplash.com/photo-1616137356540-b13b2a04a507?ixid=M3w0MTQ1MnwwfDF8c2VhcmNofDE0fHxsdXh1cnklMjBsaXZpbmclMjByb29tJTIwc2FuJTIwZnJhbmNpc2NvJTIwY2FsaWZvcm5pYXxlbnwwfHx8fDE3ODc3Njc2MjB8MA&ixlib=rb-4.1.0&q=80&w=1280 1280w, https://images.unsplash.com/photo-1616137356540-b13b2a04a507?ixid=M3w0MTQ1MnwwfDF8c2VhcmNofDE0fHxsdXh1cnklMjBsaXZpbmclMjByb29tJTIwc2FuJTIwZnJhbmNpc2NvJTIwY2FsaWZvcm5pYXxlbnwwfHx8fDE3ODc3Njc2MjB8MA&ixlib=rb-4.1.0&q=80&w=1920 1920w, https://images.unsplash.com/photo-1616137356540-b13b2a04a507?ixid=M3w0MTQ1MnwwfDF8c2VhcmNofDE0fHxsdXh1cnklMjBsaXZpbmclMjByb29tJTIwc2FuJTIwZnJhbmNpc2NvJTIwY2FsaWZvcm5pYXxlbnwwfHx8fDE3ODc3Njc2MjB8MA&ixlib=rb-4.1.0&q=80&w=2560 2560w, https://images.unsplash.com/photo-1616137356540-b13b2a04a507?ixid=M3w0MTQ1MnwwfDF8c2VhcmNofDE0fHxsdXh1cnklMjBsaXZpbmclMjByb29tJTIwc2FuJTIwZnJhbmNpc2NvJTIwY2FsaWZvcm5pYXxlbnwwfHx8fDE3ODc3Njc2MjB8MA&ixlib=rb-4.1.0&q=80&w=3456 3456w" sizes="(max-width: 768px) 70vw, 100vw" alt="Buying a Home in San Francisco" class="media-text__image" loading="lazy">
1741
1742  <div class="lp-container media-text__container">
1743    <div class="media-text__content" style="--bgColor: #ffffff">
1744
1745      <div class="lp-title-group text-left">
1746        <p class="lp-h4 lp-text--pretitle"></p>
1747        <h2 class="lp-h2">Buying a Home in San Francisco</h2>
1748        <p class="lp-h4 lp-text--subtitle">Find the right home with a strategy built around your goals.</p>
1749        <div class="description lp-pre-line"><p>Buying a home in San Francisco takes more than finding the right property. Our local real estate agents help buyers identify the right neighborhoods, evaluate opportunities, and negotiate with confidence. From the first search to the final offer, we bring market knowledge and a strategic approach to every purchase.</p></div>
1750      </div>
1751  
1752      <div class="media-text__buttons-group">
1753  
1754                <a
1755                    href="https://kinokorealestate.com/buyers"
1756                    
1757                    class="lp-btn lp-btn--outline lp-btn--dark lp-btn--mob-full-width button-style-1"
1758                    
1759                    
1760                    
1761                    
1762                    
1763                    >
1764                            LEARN MORE
1765                    </a>
1766  
1767  
1768      </div>
1769
1770    </div>
1771  </div>
1772</div>
1773</section>
1774<section id="section-97efe40a-6bdb-4a9e-87bc-c47975e11673"  class="solid-section is-font-color-dark is-background-color-light" data-el-id="82839aae-f69e-4e11-91f3-ec3542792936">
1775  <div class="f-video-carousel redesign">
1776    <div class="container lp-container">
1777      <div class="lp-title-group">
1778        <h2 class="f-video-carousel__title lp-h2">Sell Your San Francisco Home for Top Dollar</h2>
1779        <div class="f-video-carousel__description pre-line lp-text--subtitle lp-description"><p>We believe in aligning our interests with yours. We believe in creating wealth for you and everyone around you. We know selling a home can be extremely stressful and we take pride in our 
1779collaborative, technological approach to make the process as seamless as possible.<br><br><br></p><div><p><a class="lp-btn lp-btn--outline lp-btn--dark media-card__button button-style-1" href="../sellers">Learn More</a><br><br></p></div></div>
1780      </div>
1781      
1782      <div class="f-video-carousel__wrap v-carousel">
1783        
1784        <div class="v-carousel__preview">
1785          <div class="v-carousel__preview-item v-carousel__preview-item-0" >
1786            <button class="videoPlayButton" data-type="VIDEO" data-src="https://www.youtube.com/embed/3weFIS72qsI?autoplay&#x3D;1"><span class="v-carousel__button"></span></button>
1787            <img src="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=1280/https://media-production.lp-cdn.com/media/l65q5utg9qmauqpmk8un" srcset="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=320/https://media-production.lp-cdn.com/media/l65q5utg9qmauqpmk8un 320w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=960/https://media-production.lp-cdn.com/media/l65q5utg9qmauqpmk8un 960w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=1280/https://media-production.lp-cdn.com/media/l65q5utg9qmauqpmk8un 1280w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=1920/https://media-production.lp-cdn.com/media/l65q5utg9qmauqpmk8un 1920w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=2560/https://media-production.lp-cdn.com/media/l65q5utg9qmauqpmk8un 2560w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/l65q5utg9qmauqpmk8un 3000w" sizes="(max-width: 768px) 100vw, 50vw" alt="" class="v-carousel__cover videoCover" loading="lazy">
1788          </div>
1789        </div>
1790        
1791        <ul class="v-carousel__list">
1792        </ul>
1793      </div>
1794    </div>
1795  </div>
1796</section>
1797<section  class="image-section is-font-color-light is-background-color-light" id="section-c00cff8c-7bf7-439f-a337-b3977159e28e" data-el-id="e6b1ae9f-5b8d-4ac5-a23f-bfb55ef91c3c">
vendor: 113 bytes, lines 1797-1798
1797
1798    <script data-cfasync="false" src="/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js"></script>
1798<script>
1799  (function(){
1800    const sectionId = 'section-c00cff8c-7bf7-439f-a337-b3977159e28e'
1801    const section = document.querySelector(`#${sectionId}`);
1802    var sectionBg = window.getComputedStyle(section, null).getPropertyValue('background-image');
1803
1804    if('false' === 'true') {
1805      section.classList.add('parallax-enabled');
1806      section.style.setProperty('--sectionBackground', sectionBg);
1807      section.style.setProperty('background', 'none');
1808    }
1809  })()
1810</script>
1810
1811<div class="redesign work-with-us ">
1812	<div class="container">
1813			<h2 class="serif">Let’s Talk</h2>
1814			<div class="description">You’ve got questions and we can’t wait to answer them.</div>
1815		<div class="btn-container">
1816              <a
1817                  role="button"
1818                  data-type="CONTACT_US"
1819                  class="btn btn--primary-light button-style-3"
1820                  
1821                  
1822                  
1823                  
1824                  
1825                  >
1826                          Contact Us
1827                  </a>
1828    </div>
1829	</div>
1830</div> 
1831</section>
1832<section id="section-1f1e0e09-5bb1-47a1-9029-aeb58682521d"  class="solid-section is-font-color-dark is-background-color-light" data-el-id="5db65d6a-01e9-4ee3-babf-2748e074a284">
1833  
1833<script type="text/x-handlebars-template" class="jsIGItem">
1834    <a href="{{permalink}}" target="_blank" class="ig-feed-item insta-type-{{mediaType}}">
1835      <div class="ig-feed-item__img" style="background-image: url('{{#ifEquals mediaType 'VIDEO'}}{{thumbnailUrl}}{{^}}{{mediaUrl}}{{/ifEquals}}');"></div>
1836      <div class="ig-feed-item__info"><div class="ig-feed-item__caption">{{caption}}</div></div>
1837      {{#ifEquals mediaType 'VIDEO'}}<div class="video-icon"></div>{{/ifEquals}}
1838    </a> 
1839</script>
1839
1840<div class="ig-feed redesign">
1841  <div class="ig-feed-top lp-container">
1842    <div class="top-wrapper">
1843      <div class="top-left">
1844          <h3 class="lp-h3 title">Follow Us on Instagram</h3>
1845        <a href="#" target="_blank" class="instagram-link jsIGLink"><h4 class="lp-h4 instagram-name jsIGName"></h4></a>
1846      </div>
1847      <div class="top-right">
1848          <a href="#" target="_blank" class="lp-btn lp-btn--dark lp-btn--outline lp-btn--mob-full-width follow-button jsIGLink button-style-1">Follow Us</a>
1849        <a class="nav-button top-nav-prev hidden-control button-style-1">
1850          <svg width="9" height="15" viewBox="0 0 9 15" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M7.099 13.25l-5.25-5.775L7.099 1.7" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>
1851        </a>
1852        <a class="nav-button top-nav-next hidden-control button-style-1">
1853          <svg width="9" height="15" viewBox="0 0 9 15" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1.90137 1.75L7.15137 7.525L1.90137 13.3" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>
1854        </a>
1855      </div>
1856    </div>
1857  </div>
1858  <div class="lp-container ig-feed-container ">
1859    <div class="ig-feed-feed" data-limit="33">
1860    </div>
1861  </div>
1862  <div class="bottom-controls">
1863    <a class="bottom-nav-button bottom-nav-prev button-style-1">
1864      <svg width="9" height="15" viewBox="0 0 9 15" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M7.099 13.25l-5.25-5.775L7.099 1.7" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>
1865    </a>
1866    <a class="bottom-nav-button bottom-nav-next button-style-1">
1867      <svg width="9" height="15" viewBox="0 0 9 15" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1.90137 1.75L7.15137 7.525L1.90137 13.3" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>
1868    </a>
1869  </div>
1870</div>
1871
1872</section>
1873<section id="section-8e3e63d5-35c9-455d-980c-9828b97d610d"  class="solid-section is-font-color-dark is-background-color-light" data-el-id="212dc92d-e64b-4b5f-a7ad-eaa77f5a1eab">
1874  <div class="container">
1875    <div></div><div id="i4v6"></div><div id="i033"></div><style>* { box-sizing: border-box; } body {margin: 0;}*{box-sizing:border-box;}body{margin-top:0px;margin-right:0px;margin-bottom:0px;margin-left:0px;}ul{list-style:inherit;}</style>
1876</div>
1877
1878</section>
1879
1880        <div id="modals" class="modals"></div>
1881        <footer id="global-footer" class="is-font-color-dark is-background-color-light" data-el-id="874a9373-949d-4275-b72f-04c2a6ec373b">
1882            <div class="footer redesign  no_newsletter "> 
1883    <div class="container">
1884        <div class="info-wrap">
1885            <div class="info-wrap-contact agent_box">
1886                <div class="info-wrap-contact_zone type_user">
1887                    <h4 class="serif">Get in Touch</h4>
1888                    <div class="info-wrap-contact_cell">
1889                        <i>
1890                            <svg width="30" height="19" viewBox="0 0 30 19" fill="none" xmlns="http://www.w3.org/2000/svg">
1891                                <path d="M2 0C0.903517 0 0 0.903517 0 2V16.6667C0 17.7631 0.903517 18.6667 2 18.6667H28C29.0965 18.6667 30 17.7631 30 16.6667V2C30 0.903517 29.0965 0 28 0H2ZM2.4375 1.33333H27.5625L15.6458 11.4896C15.3389 11.7512 14.6612 11.7512 14.3542 11.4896L2.4375 1.33333ZM1.33333 2.13542L10.1979 9.6979L1.33333 16.5729V2.13542ZM28.6667 2.13542V16.5729L19.8021 9.6979L28.6667 2.13542ZM11.2396 10.5833L13.4896 12.5C14.3543 13.2369 15.6457 13.2369 16.5104 12.5L18.7604 10.5833L27.4687 17.3333H2.53125L11.2396 10.5833Z" fill="#1A1A1A" />
1892                            </svg>
1893                        </i>
1894                        <p class="contact_title">Email</p>
1895                        <a href="/cdn-cgi/l/email-protection#bdd4d3dbd2fdd5d2c8ced8d2dbd6d4d3d2d6d293ded2d0" class="lp-link info-wrap-contact_link grey-text hyperlink-style-1"><span class="__cf_email__" data-cfemail="d6bfb8b0b996beb9a3a5b3b9b0bdbfb8b9bdb9f8b5b9bb">[email&#160;protected]</span></a>
1896                    </div>
1897                    <div class="info-wrap-contact_cell">
1898                        <i>
1898<svg width="30" height="25" viewBox="0 0 30 25" fill="none" xmlns="http://www.w3.org/2000/svg">
1899                        <path fill-rule="evenodd" clip-rule="evenodd" d="M10.7964 8.1207H19.2036V8.7279C19.2036 10.8195 20.9082 12.5259 23.001 12.5259H24.741L25.2852 20.7051C25.3776 22.1235 24.2868 23.2719 22.8822 23.2719H7.0032C5.5944 23.2719 4.5084 22.1085 4.6002 20.7039C4.782 17.9895 4.9152 15.2313 5.154 12.5265H6.9996C9.0918 12.5265 10.797 10.8207 10.797 8.7285V8.1207H10.7964ZM11.46 16.5807C11.46 14.6565 13.0188 13.0977 14.943 13.0977C16.8666 13.0977 18.4254 14.6571 18.4254 16.5807C18.4254 18.5055 16.8678 20.0631 14.943 20.0631C13.02 20.0637 11.46 18.5043 11.46 16.5807ZM14.943 12.0381C12.4344 12.0381 10.4004 14.0721 10.4004 16.5807C10.4004 19.0887 12.435 21.1233 14.943 21.1233C17.4486 21.1233 19.485 19.0869 19.485 16.5807C19.485 14.0727 17.451 12.0381 14.943 12.0381ZM9.0846 4.8363C8.22 4.8363 7.512 5.5443 7.512 6.4089V8.7285C7.512 9.0093 7.2804 9.2415 6.999 9.2415H1.5726C1.2906 9.2415 1.0596 9.0111 1.0596 8.7285V6.9285C1.0596 6.4797 1.1628 6.0945 1.3902 5.7069C1.896 4.8465 2.7294 4.1013 3.795 3.4749C9.279 0.2517 20.7192 0.2523 26.2044 3.4749C27.2706 4.1013 28.104 4.8465 28.6098 5.7069C28.8354 6.0921 28.9398 6.4815 28.9398 6.9285V8.7285C28.9398 9.0111 28.71 9.2415 28.4268 9.2415H23.0004C22.719 9.2415 22.4874 9.0093 22.4874 8.7285V6.4089C22.4874 5.5425 21.7806 4.8363 20.9148 4.8363H9.0846ZM8.571 6.4089C8.571 6.1263 8.8026 5.8965 9.0846 5.8965H20.9154C21.1968 5.8965 21.429 6.1275 21.429 6.4089V8.7285C21.429 9.5943 22.1352 10.3017 23.001 10.3017H28.4274C29.292 10.3017 30 9.5931 30 8.7285V6.9285C30 6.2835 29.8464 5.7291 29.5206 5.1729C28.9188 4.1493 27.9564 3.2799 26.7384 2.5641C20.9214 -0.8547 9.0798 -0.8547 3.2622 2.5641C2.0436 3.2799 1.0812 4.1487 0.48 5.1729C0.153 5.7291 0 6.2835 0 6.9279V8.7279C0 9.5925 0.7092 10.3011 1.5726 10.3011H6.999C7.8648 10.3011 8.571 9.5937 8.571 8.7279V6.4089ZM9.7368 7.5915V8.7285C9.7368 10.2387 8.5092 11.4669 6.999 11.4669H4.6686C4.3914 11.4669 4.164 11.6799 4.1412 11.9511C3.8892 14.8347 3.7386 17.7435 3.5448 20.6331C3.4116 22.6425 4.989 24.3315 7.0032 24.3315H22.8822C24.882 24.3315 26.475 22.6575 26.3406 20.6343L25.7622 11.9607C25.7436 11.6811 25.5102 11.4675 25.2342 11.4675L23.001 11.4663C21.4902 11.4663 20.2632 10.2375 20.2632 8.7279V7.5909C20.2632 7.2981 20.0262 7.0611 19.7334 7.0611H10.2666C9.9738 7.0611 9.7368 7.2987 9.7368 7.5915Z" fill="#1A1A1A" />
1900                        </svg></i>
1901                        <p class="contact_title">Phone Number</p>
1902                        <a href="tel:6502914409" class="lp-link info-wrap-contact_link grey-text hyperlink-style-1">(650) 291-4409</a>
1903                    </div>
1904                </div>
1905                <div class="info-wrap-contact_zone">
1906                    <div class="info-wrap-contact_cell">
1907                        <i>
1908                            <svg width="31" height="30" viewBox="0 0 31 30" fill="none" xmlns="http://www.w3.org/2000/svg">
1909                                <path d="M29.9821 6.49489C29.7931 6.35756 29.679 6.32046 29.4572 6.39228L20.298 9.41368L16.1952 8.03558L15.8172 9.41525L19.7644 10.7038V28.1462L9.89831 25.7069V22.1034H8.71438V25.7515L1.21616 28.2532V15.3945H0.0322266V29.2729C0.0322266 29.5077 0.130098 29.7279 0.321106 29.8645C0.445418 29.9541 0.585911 29.9999 0.735086 29.9999C0.814804 29.9999 0.890971 29.9868 0.967926 29.96L9.48433 27.029L20.1792 29.7887C20.3224 29.8254 20.4751 29.8171 20.6152 29.7654L29.8104 26.2235C30.0942 26.1177 30.0251 25.8466 30.0251 25.5431V7.08291C30.0251 6.85086 30.17 6.63144 29.9821 6.49489ZM28.8412 25.0388L20.9483 28.0361V10.7065L28.8412 8.08649V25.0388Z" fill="#1A1A1A" />
1910                                <path d="M6.57515 19.1142C6.6671 19.422 6.95006 19.6323 7.2713 19.6323C7.59215 19.6323 7.87511 19.422 7.96746 19.1142C8.67742 16.7514 10.0393 15.2447 11.3559 13.788C12.9944 11.9747 14.5422 10.2615 14.5422 7.2717C14.5422 3.39788 11.1451 0 7.2713 0C3.39827 0 0 3.39748 0 7.2717C0 10.2615 1.54819 11.9747 3.18674 13.788C4.50328 15.2447 5.86479 16.7514 6.57515 19.1142ZM7.2713 1.45426C10.316 1.45426 13.0883 4.22663 13.0883 7.2717C13.0883 9.70191 11.7852 11.1435 10.2769 12.8121C9.2461 13.9534 8.10992 15.2096 7.2713 16.9199C6.43229 15.2096 5.29651 13.953 4.2657 12.8121C2.75698 11.1432 1.45426 9.70191 1.45426 7.2717C1.45426 4.22663 4.22663 1.45426 7.2713 1.45426Z" fill="#1A1A1A" />
1911                                <path d="M7.26193 10.1616C8.8705 10.1616 10.1795 8.86084 10.1795 7.26175C10.1795 5.66305 8.87089 4.3623 7.26193 4.3623C5.65297 4.3623 4.34473 5.66305 4.34473 7.26175C4.34512 8.86084 5.65336 10.1616 7.26193 10.1616ZM7.26193 5.81657C8.06898 5.81657 8.72527 6.46536 8.72527 7.26175C8.72527 8.05932 8.06898 8.70733 7.26193 8.70733C6.45528 8.70733 5.79899 8.05893 5.79899 7.26175C5.79899 6.46536 6.45528 5.81657 7.26193 5.81657Z" fill="#1A1A1A" />
1912                            </svg>
1913                        </i>
1914                        <p class="info-wrap-contact_title">Address</p>
1915                        <p class="info-wrap-contact_link grey-text"><p>592 3rd Street<br />San Francisco CA 94107<br /><br />DRE# 02014153</p></p>
1916                    </div>
1917                </div>
1918            </div>
1919        </div>
1920        <div class="text_footer first_text_footer">
1921            <div class="luxury-text">
1922                <div id="ipql">
1923<p style="font-size: 14px;">Kevin Gueco | CA DRE# 01461677<br><br></p>
1924<p id="iaa1">All information is deemed reliable but not guaranteed and should be independently reviewed and verified.<br><br>All data, including all measurements and calculations of area, is obtained from various sources and has not been, and will not be, verified by broker or MLS. All information should be independently reviewed and verified for accuracy. Properties may or may not be listed by the office/agent presenting the information.<br><br>Listing Information &copy; 2021 San Francisco Association of REALTORS&reg;. All Rights Reserved.<br><img id="iivu" src="https://media-production.lp-cdn.com/media/1222c7a3-60c9-401b-b2c7-2360b9a5c814" width="100px;" height="auto"></p>
1925</div>
1926<style>* { box-sizing: border-box; } body {margin: 0;}ul{list-style:inherit;}#iaa1{font-size:12px;}#iivu{margin-top:20px;}</style>
1927            </div>
1928        </div>
1929        <div class="text_footer second_text_footer">
1930            <div class="text_content_wrap">
1931                <div>
1932                    All information is deemed reliable but not guaranteed and should be independently reviewed and verified.
1933                </div>
1934                <div>
1935                    <div>&nbsp;</div>
1936<style>* { box-sizing: border-box; } body {margin: 0;}ul{list-style:inherit;}</style>
1937                </div>
1938            </div>
1939        </div>
1940        <div class="info-privacy">
1941          <div class="form-row info-privacy__row">
1942
1943            <div class="form-col form-col--powered powered-box">
1944                    <div class="img-wrap">
1945                        <img src="https://media-production.lp-cdn.com/media/bae89f31-2f1f-429c-8d7d-bb929eaa17b9" alt="">
1946                    </div>
1947                <div class="powered_zone">
1948                    Real Estate Website Design by <a href="https://www.luxurypresence.com/real-estate-website-design/" target="_blank" class="lp-link grey-text luxury-link underlined hyperlink-style-1">Luxury Presence</a>
1949                </div>
1950            </div>
1951
1952            <div class="form-col form-col--copyright">
1953              <div class="copy_zone">
1954                <span class="copy_words">Copyright &copy;</span> <span class="auto-year-update">2026</span>
1955                | <a href="/terms-and-conditions" class="lp-link grey-text hyperlink-style-1">Privacy Policy</a>
1956
1957              </div>
1958            </div>
1959
1960            <div class="form-col form-col--socials">
1961                <ul class="lp-socials social_icons-style-1 socials socials--grey socials_zone">
1962                
1963                        <li>
1964                          <a
1965                            href="https://www.facebook.com/houseofkinoko/"
1966                            class="lp-socials__link socials__item socials__link wow fadeInUp"
1967                            data-wow-delay="0s"
1968                            target="_blank"
1969                            aria-label="FACEBOOK"
1970                          >
1971                              <span class="lp-i lp-i--facebook" aria-hidden="true"></span>
1972                          </a>
1973                        </li>
1974                        <li>
1975                          <a
1976                            href="https://www.instagram.com/house.of.kinoko/"
1977                            class="lp-socials__link socials__item socials__link wow fadeInUp"
1978                            data-wow-delay="0.1s"
1979                            target="_blank"
1980                            aria-label="INSTAGRAM"
1981                          >
1982                              <span class="lp-i lp-i--instagram" aria-hidden="true"></span>
1983                          </a>
1984                        </li>
1985                        <li>
1986                          <a
1987                            href="https://www.linkedin.com/company/houseofkinoko/"
1988                            class="lp-socials__link socials__item socials__link wow fadeInUp"
1989                            data-wow-delay="0.2s"
1990                            target="_blank"
1991                            aria-label="LINKEDIN"
1992                          >
1993                              <span class="lp-i lp-i--linkedin" aria-hidden="true"></span>
1994                          </a>
1995                        </li>
1996                        <li>
1997                          <a
1998                            href="https://www.youtube.com/channel/UCsP_bGxHYo_Gm_U9uWDc3kQ"
1999                            class="lp-socials__link socials__item socials__link wow fadeInUp"
2000                            data-wow-delay="0.3s"
2001                            target="_blank"
2002                            aria-label="YOUTUBE"
2003                          >
2004                              <span class="lp-i lp-i--youtube" aria-hidden="true"></span>
2005                          </a>
2006                        </li>
2007                  </ul>            </div>
2008          </div>
2009        </div>
2010    </div>
2011</div>
2012
2013        </footer>
2014
2015        <div id="modal-global-contact-us" class="modal "
2016            data-el-id=""
2017            style="background-color: ;"
2018            >
2019            <div class="modal-content">
2020                <div class="contact-form redesign " style="background-image: url('')">
2021          <div class="container">
2022              <div class="section-details" style="--colorTxt: #ffffff">
2023                  <h2>Contact Details</h2>
2024                  
2025                  <div class="info-zone">
2026        
2027                          <div class="info-zone_contact type_user">
2028                                <h4 class="serif">Kinoko</h4>
2029                                <div class="info-zone_contact_cell">
2030                                        <i>
2031                                            <svg width="30" height="25" viewBox="0 0 30 25" fill="none" xmlns="http://www.w3.org/2000/svg">
2032                                                <path fill-rule="evenodd" clip-rule="evenodd" d="M10.7964 8.1207H19.2036V8.7279C19.2036 10.8195 20.9082 12.5259 23.001 12.5259H24.741L25.2852 20.7051C25.3776 22.1235 24.2868 23.2719 22.8822 23.2719H7.0032C5.5944 23.2719 4.5084 22.1085 4.6002 20.7039C4.782 17.9895 4.9152 15.2313 5.154 12.5265H6.9996C9.0918 12.5265 10.797 10.8207 10.797 8.7285V8.1207H10.7964ZM11.46 16.5807C11.46 14.6565 13.0188 13.0977 14.943 13.0977C16.8666 13.0977 18.4254 14.6571 18.4254 16.5807C18.4254 18.5055 16.8678 20.0631 14.943 20.0631C13.02 20.0637 11.46 18.5043 11.46 16.5807ZM14.943 12.0381C12.4344 12.0381 10.4004 14.0721 10.4004 16.5807C10.4004 19.0887 12.435 21.1233 14.943 21.1233C17.4486 21.1233 19.485 19.0869 19.485 16.5807C19.485 14.0727 17.451 12.0381 14.943 12.0381ZM9.0846 4.8363C8.22 4.8363 7.512 5.5443 7.512 6.4089V8.7285C7.512 9.0093 7.2804 9.2415 6.999 9.2415H1.5726C1.2906 9.2415 1.0596 9.0111 1.0596 8.7285V6.9285C1.0596 6.4797 1.1628 6.0945 1.3902 5.7069C1.896 4.8465 2.7294 4.1013 3.795 3.4749C9.279 0.2517 20.7192 0.2523 26.2044 3.4749C27.2706 4.1013 28.104 4.8465 28.6098 5.7069C28.8354 6.0921 28.9398 6.48
203215 28.9398 6.9285V8.7285C28.9398 9.0111 28.71 9.2415 28.4268 9.2415H23.0004C22.719 9.2415 22.4874 9.0093 22.4874 8.7285V6.4089C22.4874 5.5425 21.7806 4.8363 20.9148 4.8363H9.0846ZM8.571 6.4089C8.571 6.1263 8.8026 5.8965 9.0846 5.8965H20.9154C21.1968 5.8965 21.429 6.1275 21.429 6.4089V8.7285C21.429 9.5943 22.1352 10.3017 23.001 10.3017H28.4274C29.292 10.3017 30 9.5931 30 8.7285V6.9285C30 6.2835 29.8464 5.7291 29.5206 5.1729C28.9188 4.1493 27.9564 3.2799 26.7384 2.5641C20.9214 -0.8547 9.0798 -0.8547 3.2622 2.5641C2.0436 3.2799 1.0812 4.1487 0.48 5.1729C0.153 5.7291 0 6.2835 0 6.9279V8.7279C0 9.5925 0.7092 10.3011 1.5726 10.3011H6.999C7.8648 10.3011 8.571 9.5937 8.571 8.7279V6.4089ZM9.7368 7.5915V8.7285C9.7368 10.2387 8.5092 11.4669 6.999 11.4669H4.6686C4.3914 11.4669 4.164 11.6799 4.1412 11.9511C3.8892 14.8347 3.7386 17.7435 3.5448 20.6331C3.4116 22.6425 4.989 24.3315 7.0032 24.3315H22.8822C24.882 24.3315 26.475 22.6575 26.3406 20.6343L25.7622 11.9607C25.7436 11.6811 25.5102 11.4675 25.2342 11.4675L23.001 11.4663C21.4902 11.4663 20.2632 10.2375 20.2632 8.7279V7.5909C20.2632 7.2981 20.0262 7.0611 19.7334 7.0611H10.2666C9.9738 7.0611 9.7368 7.2987 9.7368 7.5915Z" fill="#1A1A1A"/>
2033                                            </svg>
2034                                        </i>
2035                                    <p class="contact_title">Phone</p>
2036                                    <a href="tel:(650) 291-4409" class="lp-link info-zone_contact_link link hyperlink-style-2">(650) 291-4409</a>
2037                                </div>
2038                                <div class="info-zone_contact_cell">
2039                                        <i>
2040                                            <svg width="30" height="19" viewBox="0 0 30 19" fill="none" xmlns="http://www.w3.org/2000/svg">
2041                                                <path d="M2 0C0.903517 0 0 0.903517 0 2V16.6667C0 17.7631 0.903517 18.6667 2 18.6667H28C29.0965 18.6667 30 17.7631 30 16.6667V2C30 0.903517 29.0965 0 28 0H2ZM2.4375 1.33333H27.5625L15.6458 11.4896C15.3389 11.7512 14.6612 11.7512 14.3542 11.4896L2.4375 1.33333ZM1.33333 2.13542L10.1979 9.6979L1.33333 16.5729V2.13542ZM28.6667 2.13542V16.5729L19.8021 9.6979L28.6667 2.13542ZM11.2396 10.5833L13.4896 12.5C14.3543 13.2369 15.6457 13.2369 16.5104 12.5L18.7604 10.5833L27.4687 17.3333H2.53125L11.2396 10.5833Z" fill="#1A1A1A"/>
2042                                            </svg>
2043                                        </i>
2044                                    <p class="contact_title">Email</p>
2045                                    <a href="/cdn-cgi/l/email-protection#84efe1f2edeac4ecebf1f7e1ebe2efedeaebefebaae7ebe9" class="lp-link info-zone_contact_link link hyperlink-style-2"><span class="__cf_email__" data-cfemail="157e70637c7b557d7a6066707a737e7c7b7a7e7a3b767a78">[email&#160;protected]</span></a>
2046                                </div>
2047                          </div>
2048                          <div class="info-zone_contact">
2049                                <div class="info-zone_contact_cell">
2050                                        <i>
2051                                            <svg width="31" height="30" viewBox="0 0 31 30" fill="none" xmlns="http://www.w3.org/2000/svg">
2052                                                <path d="M29.9821 6.49489C29.7931 6.35756 29.679 6.32046 29.4572 6.39228L20.298 9.41368L16.1952 8.03558L15.8172 9.41525L19.7644 10.7038V28.1462L9.89831 25.7069V22.1034H8.71438V25.7515L1.21616 28.2532V15.3945H0.0322266V29.2729C0.0322266 29.5077 0.130098 29.7279 0.321106 29.8645C0.445418 29.9541 0.585911 29.9999 0.735086 29.9999C0.814804 29.9999 0.890971 29.9868 0.967926 29.96L9.48433 27.029L20.1792 29.7887C20.3224 29.8254 20.4751 29.8171 20.6152 29.7654L29.8104 26.2235C30.0942 26.1177 30.0251 25.8466 30.0251 25.5431V7.08291C30.0251 6.85086 30.17 6.63144 29.9821 6.49489ZM28.8412 25.0388L20.9483 28.0361V10.7065L28.8412 8.08649V25.0388Z" fill="#1A1A1A"/>
2053                                                <path d="M6.57515 19.1142C6.6671 19.422 6.95006 19.6323 7.2713 19.6323C7.59215 19.6323 7.87511 19.422 7.96746 19.1142C8.67742 16.7514 10.0393 15.2447 11.3559 13.788C12.9944 11.9747 14.5422 10.2615 14.5422 7.2717C14.5422 3.39788 11.1451 0 7.2713 0C3.39827 0 0 3.39748 0 7.2717C0 10.2615 1.54819 11.9747 3.18674 13.788C4.50328 15.2447 5.86479 16.7514 6.57515 19.1142ZM7.2713 1.45426C10.316 1.45426 13.0883 4.22663 13.0883 7.2717C13.0883 9.70191 11.7852 11.1435 10.2769 12.8121C9.2461 13.9534 8.10992 15.2096 7.2713 16.9199C6.43229 15.2096 5.29651 13.953 4.2657 12.8121C2.75698 11.1432 1.45426 9.70191 1.45426 7.2717C1.45426 4.22663 4.22663 1.45426 7.2713 1.45426Z" fill="#1A1A1A"/>
2054                                                <path d="M7.26193 10.1616C8.8705 10.1616 10.1795 8.86084 10.1795 7.26175C10.1795 5.66305 8.87089 4.3623 7.26193 4.3623C5.65297 4.3623 4.34473 5.66305 4.34473 7.26175C4.34512 8.86084 5.65336 10.1616 7.26193 10.1616ZM7.26193 5.81657C8.06898 5.81657 8.72527 6.46536 8.72527 7.26175C8.72527 8.05932 8.06898 8.70733 7.26193 8.70733C6.45528 8.70733 5.79899 8.05893 5.79899 7.26175C5.79899 6.46536 6.45528 5.81657 7.26193 5.81657Z" fill="#1A1A1A"/>
2055                                            </svg>
2056                                        </i>
2057                                    <p class="info-wrap-contact_title">Address</p>
2058                                    <p class="info-zone_contact_link pre-line">592 3rd Street
2059        San Francisco CA 94107
2060        
2061        Kevin Gueco | CA DRE# 01461677</p>
2062                                </div>
2063                          </div>
2064                        <div class="info-zone_contact">
2065                            <div class="info-zone_contact_cell">
2066                                <p class="pre-line"><style>* { box-sizing: border-box; } body {margin: 0;}ul{list-style:inherit;}</style><div></div></p>
2067                            </div>
2068                        </div>
2069                        <ul class="lp-socials social_icons-style-2 socials socials--grey socials_zone footer__c
2069ontact-column">
2070                        
2071                                <li>
2072                                  <a
2073                                    href="https://www.facebook.com/houseofkinoko/"
2074                                    class="lp-socials__link socials__item wow fadeInUp socials__link"
2075                                    data-wow-delay="0s"
2076                                    target="_blank"
2077                                    aria-label="FACEBOOK"
2078                                  >
2079                                      <span class="lp-i lp-i--facebook" aria-hidden="true"></span>
2080                                  </a>
2081                                </li>
2082                                <li>
2083                                  <a
2084                                    href="https://www.instagram.com/house.of.kinoko/"
2085                                    class="lp-socials__link socials__item wow fadeInUp socials__link"
2086                                    data-wow-delay="0.1s"
2087                                    target="_blank"
2088                                    aria-label="INSTAGRAM"
2089                                  >
2090                                      <span class="lp-i lp-i--instagram" aria-hidden="true"></span>
2091                                  </a>
2092                                </li>
2093                                <li>
2094                                  <a
2095                                    href="https://www.linkedin.com/company/houseofkinoko/"
2096                                    class="lp-socials__link socials__item wow fadeInUp socials__link"
2097                                    data-wow-delay="0.2s"
2098                                    target="_blank"
2099                                    aria-label="LINKEDIN"
2100                                  >
2101                                      <span class="lp-i lp-i--linkedin" aria-hidden="true"></span>
2102                                  </a>
2103                                </li>
2104                                <li>
2105                                  <a
2106                                    href="https://www.youtube.com/channel/UCsP_bGxHYo_Gm_U9uWDc3kQ"
2107                                    class="lp-socials__link socials__item wow fadeInUp socials__link"
2108                                    data-wow-delay="0.3s"
2109                                    target="_blank"
2110                                    aria-label="YOUTUBE"
2111                                  >
2112                                      <span class="lp-i lp-i--youtube" aria-hidden="true"></span>
2113                                  </a>
2114                                </li>
2115                          </ul>          </div>
2116              </div>
2117              <div class="section-message">
2118                  <form data-type="contact-form">
2119                      <h2>Submit a Message</h2>
2120                       <div class="h-pot">
2121                        <label for="-middleName">Middle Name</label>
2122                        <input id="-middleName" name="middleName" value="" autocomplete="off" tabindex="-1">
2123                      </div>
2124        
2125        
2126                      <div class="lp-input-group">
2127                          <label for="prod-name" class="lp-label">Name</label>
2128                          <input id="prod-name" name="name" value="" required="" class="lp-input lp-input--light">
2129                      </div>
2130                      <div class="lp-input-group">
2131                          <label for="prod-email" class="lp-label">Email</label>
2132                          <input id="prod-email" type="email" name="email" value="" required="" class="lp-input lp-input--light">
2133                      </div>
2134                      <div class="lp-input-group">
2135                          <label for="prod-phone" class="lp-label">Phone</label>
2136                          <input id="prod-phone" type="tel" name="phoneNumber" value="" required="" class="lp-input lp-input--light">
2137                      </div>
2138                      <div class="lp-input-group m16">
2139                          <label for="prod-message" class="lp-label">Message</label>
2140                          <textarea id="prod-message" name="message" value="" required="" class="lp-in
2140put"></textarea>
2141                      </div>
2142        
2143                      <div class="lp-disclaimer">  <label style='display: none;' for='-termsAccepted'>Opt In/Disclaimer Consent:</label>
2144          <label class='lp-tcr-content'>
2145            <span class='lp-tcr-checkbox'>
2146              <input
2147                type='checkbox'
2148                id='-termsAccepted'
2149                name='termsAccepted'
2150                oninvalid="this.setCustomValidity('Please accept the terms and conditions')"
2151                oninput="this.setCustomValidity('')"
2152                required
2153              /></span>
2154            <span class='lp-tcr-message'>
2155              
2156                I agree to be contacted by
2157                Kinoko Real Estate
2158                via call, email, and text for real estate services. To opt out, you can reply 'stop' at any time or reply 'help' for assistance.
2159                You can also click the unsubscribe link in the emails. Message and data rates may apply. Message frequency may vary.
2160                <a href='/terms-and-conditions' target='_blank'>Privacy Policy</a>.
2161            </span>
2162          </label>
2163        
2164        </div>
2165                      
2166                      <input style="display: none;" type="text" name="source" value="CONTACT_INQUIRY" />
2167                      
2168                      
2169                      <button type="submit" class="submitButton lp-btn button-style-2">
2170                          <span class="label-initial">Submit</span>
2171                          <span class="label-loading">Submitting</span>
2172                          <span class="label-success">Submitted</span>
2173                          <span class="submit-icon lp-i lp-i--circle-notch lp-i--spin"></span>
2174                      </button>
2175                      <p class="success-message success hide">
2176                        Message sent successfully!
2177                      </p>
2178                  </form>
2179                  
2180                  
2181              </div>
2182          </div>
2183        </div>
2184        
2185            </div>
2186            <button class="close lp-close" type="button" aria-label="close modal">
2187                <span class="lp-close-icon" aria-hidden="true"></span>
2188            </button>
2189        </div>
2190        <div id="qualifying-questions-modal" tabindex="-1" role="dialog" aria-modal="true" aria-labelledby="qualifying-questions-modal-title" aria-hidden="true" style="position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.7); z-index: 1050; display: none; align-items: center; justify-content: center;">
2191          <style>
2192            #qualifying-questions-modal .custom-select-toggle {
2193              border: 1px solid #848484;
2194              border-radius: 8px;
2195              padding: 12px 16px;
2196            }
2197        
2198            #qualifying-questions-modal .custom-select-toggle.is-placeholder {
2199              color: #848484;
2200            }
2201        
2202            #qualifying-questions-modal #qualifying-questions-modal-phoneNumber::placeholder {
2203              color: #848484;
2204              opacity: 1;
2205            }
2206        
2207            #qualifying-questions-modal .disclaimer-more {
2208              display: none;
2209            }
2210        
2211            #qualifying-questions-modal #qualifying-questions-modal-disclaimer-text:not(.collapsed) .disclaimer-more {
2212              display: inline;
2213            }
2214        
2215            #qualifying-questions-modal #qualifying-questions-modal-disclaimer-text:not(.collapsed) .disclaimer-ellipsis {
2216              display: none;
2217            }
2218          </style>
vendor: 119 bytes, lines 2218-2219
2218
2219          <script data-cfasync="false" src="/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js"></script>
2219<script>
2220            function toggleDisclaimerQualifyingQuestionsModal() {
2221              const disclaimerText = document.getElementById('qualifying-questions-modal-disclaimer-text');
2222              const toggleButton = document.getElementById('qualifying-questions-modal-toggle-disclaimer');
2223        
2224              if (disclaimerText.classList.contains('collapsed')) {
2225                disclaimerText.classList.remove('collapsed');
2226                toggleButton.textContent = 'Read less';
2227                toggleButton.setAttribute('aria-expanded', 'true');
2228              } else {
2229                disclaimerText.classList.add('collapsed');
2230                toggleButton.textContent = 'Read more';
2231                toggleButton.setAttribute('aria-expanded', 'false');
2232              }
2233            }
2234          </script>
2234
2235          <div style="max-width: 400px; width: 95%; margin: 0 auto;">
2236            <div style="background: #fff; border: none; border-radius: 16px; color: black; box-shadow: none; position: relative;">
2237              <button type="button" data-dismiss="modal" aria-label="Close" style="position: absolute; right: 20px; top: 10px; font-size: 28px; font-weight: 300; color: black; opacity: 1; background: none; border: none; padding: 0; width: auto; height: auto; cursor: pointer; z-index: 10;">
2238                <span aria-hidden="true">&times;</span>
2239              </button>
2240              <div style="padding: 40px 30px 32px;">
2241                <div style="text-align: left; margin-bottom: 32px;">
2242                  <h2 id="qualifying-questions-modal-title" style="margin: 0; color: #333; font-size: 18px; line-height: 1.4; text-transform: uppercase; letter-spacing: 0.5px; font-weight: normal;">
2243                    Thanks, please provide more information to help serve you
2244                  </h2>
2245                </div>
2246                <form id="qualifying-questions-modal-form" data-type="contact-form">
2247                  <input type="hidden" name="source" value="PROFILE_UPDATE" />
2248                  <input type="hidden" name="email" value="" id="qualifying-questions-modal-email" />
2249                  <input type="hidden" name="triggerSource" id="qualifying-questions-modal-triggerSource" value="" />
2250                  <label for="qualifying-questions-modal-email" style="display:none;">
2251                    Email
2252                  </label>
2253                  <label for="qualifying-questions-modal-triggerSource" style="display:none;">
2254                    Trigger Source
2255                  </label>
2256        
2257                  <div style="margin-bottom: 20px;">
2258                    <label for="qualifying-questions-modal-phoneNumber" style="display:none;">
2259                      Phone Number
2260                    </label>
2261                    <input
2262                      type="tel"
2263                      id="qualifying-questions-modal-phoneNumber"
2264                      name="phoneNumber"
2265                      style="padding: 12px 16px; font-size: 16px; border: 1px solid #848484; border-radius: 8px; background: transparent; color: black; width: 100%; box-sizing: border-box; outline: none;"
2266                      pattern="^\+?1?[-.\s]?\(?[0-9]{3}\)?[-.\s]?[0-9]{3}[-.\s]?[0-9]{4}$"
2267                      required
2268                      placeholder="Phone"
2269                      aria-label="Phone Number"
2270                      inputmode="tel"
2271                      autocomplete="tel"
2272                      onfocus="this.style.borderColor='black';"
2273                      onblur="this.style.borderColor='#848484';"
2274                    />
2275                  </div>
2276        
2277                  <div style="margin-bottom: 20px;">
2278                    <label for="qualifying-questions-modal-interest" style="display:none;">
2279                      Interest
2280                    </label>
2281                    <select
2282                      id="qualifying-questions-modal-interest"
2283                      name="interest"
2284                      required
2285                      data-label="Interest"
2286                      aria-label="Interest"
2287                      style="padding: 12px 16px; font-size: 16px; border: 1px solid #848484; border-radius: 8px; background: #fff; color: #848484; width: 100%; box-sizing: border-box; outline: none; appearance: none; -webkit-appearance: none; -moz-appearance: none; background-image: url('data:image/svg+xml;charset=utf8,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 16 16%22%3E%3Cpath fill=%22%23666%22 d=%22M4.427 7.427l3.396 3.396a.25.25 0 00.354 0l3.396-3.396A.25.25 0 0011.396 7H4.604a.25.25 0 00-.177.427z%22/%3E%3C/svg%3E'); background-repeat: no-repeat; background-position: right 16px center; background-size: 16px;"
2288                      onfocus="this.style.borderColor='black'; this.style.color='black';"
2289                      onblur="this.style.borderColor='#848484'; if(this.value === '') this.style.color='#848484'; else this.style.color='black';"
2290                    >
2291                      <option value="" style="background: #fff; color: #848484;" disabled selected>Interested in...</option>
2292                      <option value="Selling & Buying" style="background: #fff; color: black;">Selling & Buying</option>
2293                      <option value="Selling" style="background: #fff; color: black;">Selling</option>
2294                      <option value="Buying" style="background: #fff; color: black;">Buying</option>
2295                      <option value="Renting" style="background: #fff; color: black;">Renting</option>
2296                      <option value="Other" style="background: #fff; color: black;">Other</option>
2297                    </select>
2298                  </div>
2299        
2300                  <div style="margin-bottom: 32px; font-size: 12px; line-height: 1.2;">
2301                    <label style='display: none;' for='qualifying-questions-modal-qualifying-questions-termsAccepted'>Opt In/Disclaimer Consent:</label>
2302                    <label class='lp-tcr-content'>
2303                      <span class='lp-tcr-checkbox'>
2304                        <input
2305                          type='checkbox'
2306                          id='qualifying-questions-modal-qualifying-questions-termsAccepted'
2307                          name='termsAccepted'
2308                          aria-describedby='qualifying-questions-modal-disclaimer-text'
2309                          oninvalid="this.setCustomValidity('Please accept the terms and conditions')"
2310                          oninput="this.setCustomValidity('')"
2311                          required
2312                        /></span>
2313                      <span class='lp-tcr-message'>
2314                        <div id="qualifying-questions-modal-disclaimer-text" class="collapsed" style="color: #848484;">
2315                          
2316                            I agree to be contacted by
2317                            <strong>Kinoko Real Estate</strong>
2318                            via call, email, and text <span class="disclaimer-more">for real estate services. 
2319                            To opt out, you can reply 'stop' at any time or reply 'help' for assistance. 
2320                            You can also click the unsubscribe link in the emails. 
2321                            Message and data rates may apply. Message frequency may vary.</span>
2322                            <span class="disclaimer-ellipsis">...</span>
2323                            <a href='/terms-and-conditions' target='_blank' rel='noopener noreferrer' style='text-decoration: underline;'>Privacy Policy</a>.
2324                        </div>
2325                        <button
2326                          id="qualifying-questions-modal-toggle-disclaimer"
2327                          type="button"
2328                          style="background: none; border: none; color: #848484; font-size: inherit; font-weight: bold; padding: 0; margin-top: 4px; cursor: pointer;"
2329                          aria-expanded="false"
2330                          onclick="toggleDisclaimerQualifyingQuestionsModal()"
2331                        >
2332                          Read more
2333                        </button>
2334                      </span>
2335                    </label>
2336                  </div>
2337        
2338                  <div>
2339                    <button
2340                      type="submit"
2341                      style="padding: 12px 24px; font-size: 16px; font-weight: normal; border-radius: 8px; border: 1px solid black; background: black; color: white; width: 100%; cursor: pointer; transition: all 0.2s ease; text-transform: uppercase; letter-spacing: 0.5px;"
2342                      onmouseover="this.style.background='transparent'; this.style.color='black';"
2343                      onmouseout="this.style.background='black'; this.style.color='white';"
2344                    >
2345                      Submit
2346                    </button>
2347                  </div>
2348                </form>
2349              </div>
2350            </div>
2351          </div>
2352        </div>
2353
2354    
2354<script>
2355        (function() {
2356        var lazyVideos = [].slice.call(document.querySelectorAll("video.lazy"));
2357
2358        if ("IntersectionObserver" in window && lazyVideos.length > 0) {
2359            var lazyVideoObserver = new IntersectionObserver(function(entries, observer) {
2360            entries.forEach(function(video) {
2361                if (video.isIntersecting) {
2362                for (var source in video.target.children) {
2363                    var videoSource = video.target.children[source];
2364                    if (typeof videoSource.tagName === "string" && videoSource.tagName === "SOURCE") {
2365                    videoSource.src = videoSource.dataset.src;
2366                    }
2367                }
2368
2369                video.target.load();
2370                video.target.classList.remove("lazy");
2371                lazyVideoObserver.unobserve(video.target);
2372                }
2373            });
2374            });
2375
2376            lazyVideos.forEach(function(lazyVideo) {
2377                lazyVideoObserver.observe(lazyVideo);
2378            });
2379        }
2380        })();
2381    </script>
2381
2382
2383        <!-- Global site tag (gtag.js) - Google Analytics -->
2384        
2384<script defer src="https://www.googletagmanager.com/gtag/js"></script>
2384
2385
2386            <!-- Google Tag Manager -->
2387            
2387<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
2388                new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
2389                j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.defer=true;j.async=false;j.src=
2390                'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
2391            })(window,document,'script','dataLayer','GTM-T9B3XMG5');</script>
2391
2392            <!-- End Google Tag Manager -->
2393            <!-- Google Tag Manager -->
2394            
2394<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
2395                new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
2396                j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.defer=true;j.async=false;j.src=
2397                'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
2398            })(window,document,'script','dataLayer','GTM-KS6CK7T');</script>
2398
2399            <!-- End Google Tag Manager -->
2400            <!-- Google Tag Manager -->
2401            
2401<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
2402                new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
2403                j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.defer=true;j.async=false;j.src=
2404                'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
2405            })(window,document,'script','dataLayer','GTM-W33LVZF2');</script>
2405
2406            <!-- End Google Tag Manager -->
2407            <!-- Google Tag Manager -->
2408            
2408<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
2409                new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
2410                j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.defer=true;j.async=false;j.src=
2411                'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
2412            })(window,document,'script','dataLayer','GTM-T9SFQGHZ');</script>
2412
2413            <!-- End Google Tag Manager -->
2414
2415
2416        <!-- LP Tracker (divolte.js) - LP Divolte -->
2417            
2417<script>window.divolteLp=window.divolteLp||function(){(divolteLp.q=divolteLp.q||[]).push(arguments)}</script>
2417
2418        <!-- LP Tracker (eventBus) - LP EventBus -->
2419            
2419<script>window.eventBusLp=window.eventBusLp||function(){(eventBusLp.q=eventBusLp.q||[]).push(arguments)}</script>
2419
2420
2421    
2421<script>
2422        window.dataLayer = window.dataLayer || [];
2423        document.sendGoogleTagManagerEvent = function() {
2424            /* Honor GPC-enabled browsers and prevent GTM event if GPC is enabled. More details: https://global-privacy-control.glitch.me/ */
2425            if (window.navigator.globalPrivacyControl) {
2426                return;
2427            }
2428
2429            dataLayer.push(arguments);
2430        }
2431
2432        document.sendGoogleTagManagerEvent('js', new Date());
2433            document.sendGoogleTagManagerEvent('config', 'UA-197320107-41', { page: location.pathname, location: location.href });
2434            document.sendGoogleTagManagerEvent('config', 'G-L12LHHF80G', { page: location.pathname, location: location.href });
2435            document.sendGoogleTagManagerEvent('config', 'UA-243524849-1', { page: location.pathname, location: location.href });
2436            document.sendGoogleTagManagerEvent('config', 'G-LJ6SFSS4WN', { page: location.pathname, location: location.href });
2437        document.sendGoogleAnalyticsEvent = function(googleEvent) {
2438            document.sendGoogleTagManagerEvent('event', googleEvent.eventAction || googleEvent.hitType, {
2439                event_category: googleEvent.eventCategory,
2440                event_label: googleEvent.eventLabel,
2441                value: googleEvent.eventValue,
2442                page: googleEvent.page,
2443                location: googleEvent.location
2444            })
2445        };
2446
2447        document.addEventListener("DOMContentLoaded", function() {
2448            (function() {
2449                //If the page has an element with ID of auto-year-update the element will be populated with the current year.
2450                var date = new Date();
2451                var elements = document.getElementsByClassName('auto-year-update');
2452                var i;
2453                for (i = 0; i < elements.length; i++) {
2454                    elements[i].innerText = date.getFullYear();
2455                }
2456            })();
2457            if (window.divolteLp) {
2458                window.divolteLp('sendLpPageView', {});
2459            }
2460            if (window.eventBusLp) {
2461                window.eventBusLp('sendLpPageView', {});
2462            }
2463        });
2464    </script>
2464
2465
2466            <!-- Facebook Pixel Code -->
2467            
2467<script type="text/plain" data-consent-category="advertising">
vendor: 575 bytes, lines 2467-2476
2467
2468                !function(f,b,e,v,n,t,s)
2469                {if(f.fbq)return;n=f.fbq=function(){n.callMethod?
2470                        n.callMethod.apply(n,arguments):n.queue.push(arguments)};
2471                    if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';
2472                    n.queue=[];t=b.createElement(e);t.async=!0;
2473                    t.src=v;s=b.getElementsByTagName(e)[0];
2474                    s.parentNode.insertBefore(t,s)}(window, document,'script',
2475                        'https://connect.facebook.net/en_US/fbevents.js');
2476                fbq('init', '
2476664223170851969
vendor: 58 bytes, lines 2476-2478
2476');
2477                fbq('track', 'PageView');
2478            
2478</script>
2478
2479            <noscript><img height="1" width="1" style="display:none"
2480                           src="https://www.facebook.com/tr?id=664223170851969&ev=PageView&noscript=1"
2481                /></noscript>
2482            <!-- End Facebook Pixel Code -->
2483
2484    
2484<script>
2485    // Function to dynamically load a script
2486    function loadScript(url, callback) {
2487        var script = document.createElement('script');
2488        script.type = 'text/javascript';
2489        script.src = url;
2490        script.defer = true;
2491        script.async = true;
2492        script.onload = callback;
2493        document.head.appendChild(script);
2494    }
2495
2496    // Function to dynamically load CSS file
2497    function loadCSS(url) {
2498        var link = document.createElement("link");
2499        link.rel = "stylesheet";
2500        link.href = url;
2501        document.head.appendChild(link);
2502    }
2503
2504    // Global methods / variables that can be accessed by element js
2505    window.luxuryPresence = {
2506        libs: {
2507            loadJs: loadScript,
2508            loadCss: loadCSS,
2509            jsLibsMap: {
2510                paroller: {
2511                    jsSrc: 'https://d1e1jt2fj4r8r.cloudfront.net/javascript/jquery.paroller.min.js',
2512                    isLoaded: false,
2513                },
2514                ionRangeSlider: {
2515                    jsSrc: 'https://cdnjs.cloudflare.com/ajax/libs/ion-rangeslider/2.3.1/js/ion.rangeSlider.min.js',
2516                    cssSrc: 'https://cdnjs.cloudflare.com/ajax/libs/ion-rangeslider/2.3.1/css/ion.rangeSlider.min.css',
2517                    isLoaded: false,
2518                    requires: ['jquery'],
2519                },
2520                splide: {
2521                    jsSrc: 'https://cdnjs.cloudflare.com/ajax/libs/splidejs/4.1.4/js/splide.min.js',
2522                    cssSrc: 'https://cdnjs.cloudflare.com/ajax/libs/splidejs/4.1.4/css/splide-core.min.css',
2523                    isLoaded: false,
2524                },
2525                wow: {
2526                    jsSrc: 'https://cdnjs.cloudflare.com/ajax/libs/wow/1.1.2/wow.min.js',
2527                    isLoaded: false,
2528                },
2529                jquery: {
2530                    jsSrc: 'https://cdnjs.cloudflare.com/ajax/libs/jquery/3.7.1/jquery.min.js',
2531                    isLoaded: false,
2532                },
2533                slick: {
2534                    jsSrc: 'https://cdnjs.cloudflare.com/ajax/libs/slick-carousel/1.8.1/slick.min.js',
2535                    isLoaded: false,
2536                    requires: ['jquery'],
2537                },
2538                libphonenumber: {
2539                    jsSrc: 'https://cdnjs.cloudflare.com/ajax/libs/libphonenumber-js/1.11.8/libphonenumber-js.min.js',
2540                    isLoaded: false,
2541                },
2542            },
2543        },
2544    };
2545    </script>
2545
2546    
2546<script defer src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.7.1/jquery.min.js" integrity="sha512-v2CJ7UaYy4JwqLDIrZUI/4hqeoQieOmAZNXBeQyjo21dadnwR+8ZaIJVT8EE2iyI61OV8e6M8PP2/4hpQINQ/g==" crossorigin="anonymous" referrerpolicy="no-referrer" onload="window.luxuryPresence.libs.jsLibsMap.jquery.isLoaded = true"></script>
2546
2547    
2547<script defer src="https://cdnjs.cloudflare.com/ajax/libs/handlebars.js/4.7.8/handlebars.min.js"></script>
2547
2548    
2548<script defer src="https://cdn.jsdelivr.net/npm/[email protected]/dist/handlebars-intl.min.js"></script>
2548
2549    
2549<script defer src="https://cdnjs.cloudflare.com/ajax/libs/superagent/4.1.0/superagent.min.js"></script>
2549
2550    
2550<script defer src="https://cdnjs.cloudflare.com/ajax/libs/slick-carousel/1.8.1/slick.min.js" onload="window.luxuryPresence.libs.jsLibsMap.slick.isLoaded = true"></script>
2550
2551    
2551<script defer src="https://cdnjs.cloudflare.com/ajax/libs/wow/1.1.2/wow.min.js" onload="window.luxuryPresence.libs.jsLibsMap.wow.isLoaded = true"></script>
2551
2552    
2552<script defer src="https://cdnjs.cloudflare.com/ajax/libs/ion-rangeslider/2.3.1/js/ion.rangeSlider.min.js" onload="window.luxuryPresence.libs.jsLibsMap.ionRangeSlider.isLoaded = true"></script>
2552
2553
2554    <!-- GOOGLE TRANSLATE SCRIPT -->
2555    
2555<script>
2556        function googleTranslateElementInit() {
2557            // list of languages can be overridden by setting window.customLanguages in the head JS. example `window.customLanguages = 'en,de,fr,ro,sk,pl'`
2558            // Language codes can be taken from here https://cloud.google.com/translate/docs/languages
2559            const DEFAULT_LANGUAGES = 'en,es,zh-CN,zh-TW,tl,vi,ar,ko,ru,de,fr,hi,pt';
2560            document.querySelectorAll('[data-type="TRANSLATE"]').forEach(function(translate){
2561                translate.innerText = '';
2562                new google.translate.TranslateElement({
2563                    pageLanguage: 'en',
2564                    layout: google.translate.TranslateElement.InlineLayout.SIMPLE,
2565                    includedLanguages: window.customLanguages || DEFAULT_LANGUAGES,
2566                }, translate);
2567            });
2568        }
2569    </script>
2569
2570    
2570<script defer src="//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>
2570
2571            
2571<script defer src="https://accounts.google.com/gsi/intermediate"></script>
2571
2572
2573    <!-- GOOGLE TRANSLATE SCRIPT END-->
2574    
2574<script>
2575
2576        // UI helpers
2577        (function () {
2578
2579            function getSideMenu () {
2580                return document.querySelector('body > div.sidemenu');
2581            }
2582
2583            function sideMenuHide (instant) {
2584                var sideMenu = getSideMenu();
2585                if (!sideMenu || !sideMenu.classList.contains('visible')) {
2586                  return;
2587                }
2588                sideMenu.classList.remove('visible');
2589                sideMenu.dispatchEvent(new CustomEvent('lpui-hide', { detail: { instant: !!instant } }));
2590                window.dispatchEvent(new CustomEvent('lpui-sidemenu-hide', { detail: {instant: !!instant} }));
2591            }
2592
2593            function sideMenuShow () {
2594                var sideMenu = getSideMenu();
2595                if (!sideMenu || sideMenu.classList.contains('visible')) {
2596                  return;
2597                }
2598                sideMenu.classList.add('visible');
2599                sideMenu.dispatchEvent(new Event('lpui-show'));
2600                window.dispatchEvent(new Event('lpui-sidemenu-show'));
2601            }
2602
2603            function sideMenuToggle () {
2604                var sideMenu = getSideMenu();
2605                if (!sideMenu) {
2606                  return;
2607                }
2608                var isSideMenuVisible = sideMenu.classList.contains('visible');
2609                if (isSideMenuVisible) {
2610                    sideMenuHide();
2611                } else {
2612                    sideMenuShow();
2613                }
2614            }
2615
2616            var scrollLockRequests = {};
2617            window.__debug_scrollLockRequests = scrollLockRequests;
2618            var hideScrollStyles = ''+
2619                    'body {'+
2620                    'overflow: hidden;' +
2621                    '}';
2622            var hideScrollId = 'hide-body-scroll-style';
2623
2624            function scrollLock () {
2625                var style = document.createElement('style');
2626                style.id = hideScrollId;
2627                style.textContent = hideScrollStyles;
2628                document.head.appendChild(style);
2629                window.dispatchEvent(new Event('lpui-scroll-locked'));
2630            }
2631
2632            function scrollUnlock () {
2633                document.getElementById(hideScrollId)?.remove();
2634                window.dispatchEvent(new Event('lpui-scroll-unlocked'));
2635            }
2636
2637            function requestScrollLock (lockId) {
2638                var wasLocked = Object.keys(scrollLockRequests).length > 0;
2639                scrollLockRequests[lockId || '__anonymous_lock'] = true;
2640                if (!wasLocked) {
2641                    scrollLock();
2642                }
2643            }
2644
2645            function releaseScrollLock (lockId) {
2646                if (lockId) {
2647                    delete scrollLockRequests[lockId];
2648                    if (!Object.keys(scrollLockRequests).length) {
2649                        scrollUnlock();
2650                    }
2651                } else {
2652                    scrollLockRequests = {};
2653                    window.__debug_scrollLockRequests = scrollLockRequests;
2654                    scrollUnlock();
2655                }
2656            }
2657
2658            function showModal (modalId, options) {
2659                var modal = document.getElementById(modalId);
2660                if (!modal) {
2661                    return;
2662                }
2663
2664                if (!modal.classList.contains('visible')) {
2665                    modal.classList.add('visible');
2666                    if (options && options.scrollLock) {
2667                        window.lpUI.requestScrollLock(modalId);
2668                    }
2669                    modal.dispatchEvent(new Event('lpui-show'));
2670                    window.dispatchEvent(new CustomEvent('lpui-modal-show', { detail: { id: modalId } }));
2671                }
2672
2673                const visibleModals = document.querySelectorAll('.modal.visible');
2674
2675                if (visibleModals.length > 1) {
2676
2677                    const maxZIndex = Array.from(visibleModals).reduce((maxZIndex, modal) => {
2678                        const zIndex = window.getComputedStyle(modal).zIndex;
2679                        const parsedZIndex = zIndex !== 'auto' ? parseInt(zIndex) : 0;
2680                        return Math.max(maxZIndex, parsedZIndex);
2681                    }, 0);
2682
2683                    modal.style.zIndex = maxZIndex + 1;
2684                }
2685
2686            }
2687
2688            function _hideModal (modalEl) {
2689                if (!modalEl) {
2690                    return;
2691                }
2692                if (!modalEl.classList.contains('visible')) {
2693                    return;
2694                }
2695                modalEl.classList.remove('visible');
2696                modalEl.style.zIndex = '';
2697                modalEl.dispatchEvent(new Event('lpui-hide'));
2698                var modalId = modalEl.getAttribute('id');
2699                if (modalId) {
2700                    window.lpUI.releaseScrollLock(modalId);
2701                    window.dispatchEvent(new CustomEvent('lpui-modal-hide', { detail: { id: modalId } }));
2702                }
2703            }
2704
2705            function hideModal (modalId) {
2706                _hideModal(document.getElementById(modalId));
2707            }
2708
2709            function hideClosestModal (el) {
2710              const modal = el?.closest('.modal');
2711              if (!modal) {
2712                return;
2713              }
2714              if (modal.classList) {
2715                _hideModal(modal);
2716                return;
2717              }
2718              if (modal.length && modal[0].classList) {
2719                _hideModal(modal[0]);
2720              }
2721            }
2722
2723            window.lpUI = {
2724                sideMenuHide: sideMenuHide,
2725                sideMenuShow: sideMenuShow,
2726                sideMenuToggle: sideMenuToggle,
2727                requestScrollLock: requestScrollLock,
2728                releaseScrollLock: releaseScrollLock,
2729                showModal: showModal,
2730                hideModal: hideModal,
2731                hideClosestModal: hideClosestModal
2732            }
2733        })();
2734
2735        var stringifyPrimitive = function(v) {
2736            switch (typeof v) {
2737                case 'string':
2738                    return v;
2739
2740                case 'boolean':
2741                    return v ? 'true' : 'false';
2742
2743                case 'number':
2744                    return isFinite(v) ? v : '';
2745
2746                default:
2747                    return '';
2748            }
2749        };
2750
2751        function objectToQuerystring(obj, sep, eq, name) {
2752            // https://github.com/Gozala/querystring/blob/master/encode.js
2753            sep = sep || '&';
2754            eq = eq || '=';
2755            if (obj === null) {
2756                obj = undefined;
2757            }
2758
2759            if (typeof obj === 'object') {
2760                return Object.keys(obj).map(function(k) {
2761                    var ks = encodeURIComponent(stringifyPrimitive(k)) + eq;
2762                    if (Array.isArray(obj[k])) {
2763                        return obj[k].map(function(v) {
2764                            return ks + encodeURIComponent(stringifyPrimitive(v));
2765                        }).join(sep);
2766                    } else {
2767                        return ks + encodeURIComponent(stringifyPrimitive(obj[k]));
2768                    }
2769                }).filter(Boolean).join(sep);
2770
2771            }
2772
2773            if (!name) return '';
2774            return encodeURIComponent(stringifyPrimitive(name)) + eq +
2775                    encodeURIComponent(stringifyPrimitive(obj));
2776        }
2777
2778        function getPath(url, options) {
2779            var parser = document.createElement('a');
2780            parser.href = url || '';
2781            var path = parser.pathname || '';
2782            if (path[0] !== '/') {
2783              // IE does not return path starting with a slash
2784              path = '/' + path;
2785            }
2786
2787            if (options && options.queryString) {
2788                path += parser.search;
2789            }
2790
2791            return path;
2792        }
2793
2794        function getMLSAutocomplete(keyword) {
2795            var searchURL = window.location.protocol + '//' + window.location.hostname + '/home-search/auto_complete';
2796            var query = {
2797                kind: 'listings',
2798                query: keyword
2799            };
2800
2801            return superagent
2802                .get(searchURL)
2803                .query(query)
2804                .then(function(res) {
2805                    var data = res.body || [];
2806                    // Array of listing_auto_complete documents: id, display_address, city, state,
2807                    // price, sold_price, status, status_modified_at, photo_urls (array of URLs).
2808
2809                    return data;
2810                });
2811        }
2812
2813        function getMLSAutocompleteWithFilters(keyword, filters = {}) {
2814            var searchURL = window.location.protocol + '//' + window.location.hostname + '/home-search/auto_complete';
2815
2816            return superagent
2817                .get(searchURL)
2818                .query({ kind: 'listings', query: keyword, ...filters })
2819                .then(function(res) {
2820                    // Same response shape as getMLSAutocomplete.
2821                    return res.body || [];
2822                });
2823        }
2824
2825        function makeMlsLink(data) {
2826            // Code Dupe from utils/googlePlace
2827            // mapping of google data type to mls data type
2828            var mapping = {
2829                neighborhood: 'neighborhood',
2830                locality: 'place',
2831                administrative_area_level_2: 'county',
2832                administrative_area_level_1: 'state',
2833                postal_code: 'postalcode',
2834            };
2835
2836            function _filterTypes(types) {
2837                return types.filter(function(type) { return type !== 'political' });
2838            }
2839
2840            if (!data || !Object.keys(data).length) {
2841                return '/home-search/listings';
2842            }
2843
2844            var newData = {};
2845            _filterTypes(data.types).forEach(function(type) {
2846                if (mapping[type]) {
2847                    newData.search_type = mapping[type];
2848                }
2849            });
2850            newData.omnibox = data.formatted_address;
2851            data.address_components.forEach(function(component) {
2852                _filterTypes(component.types).forEach(function(type) {
2853                    if (mapping[type]) {
2854                        newData[mapping[type]] = component.long_name;
2855                    }
2856                });
2857            });
2858            var bounds = data.geometry.bounds;
2859            var convertedData = Object.assign(bounds, newData);
2860
2861            return '/home-search/listings?' + objectToQuerystring(convertedData);
2862        }
2863
2864        function debounce(func, wait) {
2865            let timeout;
2866            return function(...args) {
2867                const context = this;
2868                clearTimeout(timeout);
2869                timeout = setTimeout(() => func.apply(context, args), wait)
2870            }
2871        }
2872
2873        // Global methods / variables that can be accessed by element js
2874        window.luxuryPresence = {
2875            ...window.luxuryPresence,
2876            defaults: {
2877                companyId: 'f62f900d-59fc-4354-b573-bcc1e7da46a2',
2878                apiGatewayUrl: '/api-gw',
2879                routerUrl: '/api-nv',
2880                gql: {"agents":"\n  query Agents (\n    $agentId: ID\n    $agentIds: [ID!]\n    $companyId: String\n    $network: Boolean\n    $networkId: String\n    $officeId: [ID!]\n    $excludeOfficeId: [ID!]\n    $offset: Int\n    $limit: Int\n    $sort: String\n    $sortDir: SortDirectionEnum\n    $search: String\n    $tags: [String]\n    $tagsMode: TagsModeEnum\n    $teamId: [ID!]\n    $developmentId: [ID!]\n    $prioritizeIds: Boolean\n  ) {\n    agents (\n      agentId: $agentId\n      agentIds: $agentIds\n      companyId: $companyId\n      network: $network\n      networkId: $networkId\n      officeId: $officeId\n      excludeOfficeId: $excludeOfficeId\n      offset: $offset\n      limit: $limit\n      sort: $sort\n      sortDir: $sortDir\n      search: $search\n      tags: $tags\n      tagsMode: $tagsMode\n      teamId: $teamId\n      developmentId: $developmentId\n      prioritizeIds: $prioritizeIds\n    ) {\n      id\n      firstName\n      lastName\n      avatar {\n        smallUrl\n        mediumUrl\n        largeUrl\n        height\n        width\n      }\n      position\n      bioLong\n      bioShort\n      seoTitle\n      seoDescription\n      slug\n      phoneNumber\n      phoneNumber2\n      license\n      email\n      leadAgent\n      greaterArea\n      tags\n    }\n    agentsCount(\n      agentIds: $agentIds\n      companyId: $companyId\n      network: $network\n      networkId: $networkId\n      officeId: $officeId\n      excludeOfficeId: $excludeOfficeId\n      search: $search\n      tags: $tags\n      tagsMode: $tagsMode\n      teamId: $teamId\n      developmentId: $developmentId\n      prioritizeIds: $prioritizeIds\n    ) {\n      count\n    }\n  }\n","properties":"\n  query Properties(\n    $agentIds: [ID!]\n    $teamIds: [ID!]\n    $neighborhoodIds: [ID!]\n    $officeIds: [ID!]\n    $propertyId: ID\n    $companyId: String\n    $networkId: String\n    $network: Boolean\n    $statusId: String\n    $propertyIds: [ID!]\n    $prioritizeIds: Boolean\n    $statusIds: [String!]\n    $excludeStatusId: [String!]\n    $neighborhoodId: String\n    $addressState: [String!]\n    $addressCity: [String!]\n    $relatedNeighborhoodPropertyId: String\n    $developmentId: String\n    $featuredListing: Boolean\n    $leaseProperty: Boolean\n    $search: String\n    $searchTermMode: SearchTermModeEnum\n    $globalProperty: Boolean\n    $archived: Boolean\n    $salesPriceGTE: Float\n    $salesPriceLTE: Float\n    $leasePriceGTE: Float\n    $leasePriceLTE: Float\n    $livingSpaceSizeGTE: Float\n    $livingSpaceSizeLTE: Float\n    $bathCountGTE: Float\n    $bathCountLTE: Float\n    $bedroomCountGTE: Float\n    $bedroomCountLTE: Float\n    $architectureStyle: String\n    $lifestyle: String\n    $propertyTypeId: String\n    $propertyTypeIds: [String!]\n    $spaceTypeIds: [ID!]\n    $tag: String\n    $backfillMLSResults: Boolean\n    $displayMLSListings: String\n    $hostname: String\n    $websiteId: ID\n    $backfillProviders: [String!]\n    $backfillMLSListingIds: [String!]\n    $backfillMLSAgentIds: [String!]\n    $backfillMLSOfficeIds: [String!]\n    $backfillBoundary: JSON\n    $openHouse: Boolean\n    $withGeo: Boolean\n    $advancedFilters: JSON\n    $seasonalPriceId: ID\n    $offset: Int\n    $limit: Int\n    $sort: String\n    $sortDir: SortDirectionEnum\n  ) {\n    properties(\n      \n      agentIds: $agentIds\n      teamIds: $teamIds\n      propertyId: $propertyId\n      propertyIds: $propertyIds\n      prioritizeIds: $prioritizeIds\n      companyId: $companyId\n      network: $network\n      networkId: $networkId\n      statusId: $statusId\n      statusIds: $statusIds\n      excludeStatusId: $excludeStatusId\n      neighborhoodId: $neighborhoodId\n      neighborhoodIds: $neighborhoodIds\n      officeIds: $officeIds\n      addressState: $addressState\n      addressCity: $addressCity\n      developmentId: $developmentId\n      featuredListing: $featuredListing\n      leaseProperty: $leaseProperty\n      search: $search\n      searchTermMode: $searchTermMode\n      salesPriceGTE: $salesPriceGTE\n      salesPriceLTE: $salesPriceLTE\n      leasePriceGTE: $leasePriceGTE\n      leasePriceLTE: $leasePriceLTE\n      livingSpaceSizeGTE: $livingSpaceSizeGTE\n      livingSpaceSizeLTE: $livingSpaceSizeLTE\n      bathCountGTE: $bathCountGTE\n      bathCountLTE: $bathCountLTE\n      bedroomCountGTE: $bedroomCountGTE\n      bedroomCountLTE: $bedroomCountLTE\n      architectureStyle: $architectureStyle\n      lifestyle: $lifestyle\n      propertyTypeId: $propertyTypeId\n      propertyTypeIds: $propertyTypeIds\n      spaceTypeIds: $spaceTypeIds\n      tag: $tag\n      archived: $archived\n      globalProperty: $globalProperty\n      withGeo: $withGeo\n      openHouse: $openHouse\n      displayMLSListings: $displayMLSListings\n      advancedFilters: $advancedFilters\n      seasonalPriceId: $seasonalPriceId\n\n      relatedNeighborhoodPropertyId: $relatedNeighborhoodPropertyId\n      backfillMLSResults: $backfillMLSResults\n      hostname: $hostname\n      websiteId: $websiteId\n      backfillProviders: $backfillProviders\n      backfillMLSListingIds: $backfillMLSListingIds\n      backfillMLSAgentIds: $backfillMLSAgentIds\n      backfillMLSOfficeIds: $backfillMLSOfficeIds\n      backfillBoundary: $backfillBoundary\n      offset: $offset\n      limit: $limit\n      sort: $sort,\n      sortDir: $sortDir\n    ){\n      id\n      name\n      status\n      originalStatus {\n        id\n        name\n      }\n      salesPrice\n      reducedPrice\n      isPasswordProtected\n      bedroomCount\n      bathCount\n      fullBathCount\n      halfBathCount\n      threeQuarterBathCount\n      fullAddress\n      addressLine1\n      addressLine2\n      addressCity\n      addressState\n      addressCountry\n      postalCode\n      description\n      syncedAt\n      officeName\n      attributionContact\n      neighborhood {\n        id\n      }\n      media {\n        smallUrl\n        mediumUrl\n        largeUrl\n        xLargeUrl\n        xxLargeUrl\n        height\n        width\n      }\n      seoTitle\n      seoDescription\n      slug\n      fromMLS\n      mlsId\n      mlsLogo\n      mlsAttribution\n      openHouse\n      openHouseHours\n      priceUponRequest\n      privateAddress\n      leaseProperty\n      leasePrice\n      currency\n      leaseTermFrequencyInterval\n      leaseTermFrequencyCount\n      leasePeriod\n      livingSpaceSize\n      livingSpaceUnits\n      lotAreaSize\n      lotAreaUnits\n      tags\n      latitude\n      longitude\n      soldDate\n      timeZone\n      buyerAgencyCompensation\n      buyerAgencyCompensationType\n      landIdUrl\
2880n    }\n    propertiesCount(\n    \n      agentIds: $agentIds\n      teamIds: $teamIds\n      propertyId: $propertyId\n      propertyIds: $propertyIds\n      prioritizeIds: $prioritizeIds\n      companyId: $companyId\n      network: $network\n      networkId: $networkId\n      statusId: $statusId\n      statusIds: $statusIds\n      excludeStatusId: $excludeStatusId\n      neighborhoodId: $neighborhoodId\n      neighborhoodIds: $neighborhoodIds\n      officeIds: $officeIds\n      addressState: $addressState\n      addressCity: $addressCity\n      developmentId: $developmentId\n      featuredListing: $featuredListing\n      leaseProperty: $leaseProperty\n      search: $search\n      searchTermMode: $searchTermMode\n      salesPriceGTE: $salesPriceGTE\n      salesPriceLTE: $salesPriceLTE\n      leasePriceGTE: $leasePriceGTE\n      leasePriceLTE: $leasePriceLTE\n      livingSpaceSizeGTE: $livingSpaceSizeGTE\n      livingSpaceSizeLTE: $livingSpaceSizeLTE\n      bathCountGTE: $bathCountGTE\n      bathCountLTE: $bathCountLTE\n      bedroomCountGTE: $bedroomCountGTE\n      bedroomCountLTE: $bedroomCountLTE\n      architectureStyle: $architectureStyle\n      lifestyle: $lifestyle\n      propertyTypeId: $propertyTypeId\n      propertyTypeIds: $propertyTypeIds\n      spaceTypeIds: $spaceTypeIds\n      tag: $tag\n      archived: $archived\n      globalProperty: $globalProperty\n      withGeo: $withGeo\n      openHouse: $openHouse\n      displayMLSListings: $displayMLSListings\n      advancedFilters: $advancedFilters\n      seasonalPriceId: $seasonalPriceId\n\n    ) {\n      count\n    }\n  }\n","pressReleases":"\n  query PressReleases (\n    $companyId: ID\n    $pressReleaseIds: [ID!]\n    $offset: Int\n    $limit: Int\n    $sort: String\n    $sortDir: String\n    $search: String\n    $categories: [String!]\n    $propertyId: [ID!]\n    $developmentId: [ID!]\n    $agentId: [ID!]\n    $teamId: [ID!]\n    $year: [Int!]\n  ) {\n    pressReleases (\n      companyId: $companyId\n      pressReleaseIds: $pressReleaseIds\n      offset: $offset\n      limit: $limit\n      sort: $sort\n      sortDir: $sortDir\n      search: $search\n      categories: $categories\n      propertyId: $propertyId\n      developmentId: $developmentId\n      agentId: $agentId\n      teamId: $teamId\n      year: $year\n    ) {\n      items {\n        id\n        title\n        description\n        author\n        externalUrl\n        media {\n          smallUrl\n          mediumUrl\n          largeUrl\n          xLargeUrl\n          xxLargeUrl\n          height\n          width\n          altTagText\n        }\n        publishedAt\n        categories\n      }\n      total\n    }\n  }\n","posts":"\n  query Posts (\n    $companyId: String\n    $postId: [ID!]\n    $slug: String\n    $offset: Int\n    $limit: Int\n    $sort: String\n    $sortDir: String\n    $search: String\n    $featured: Boolean\n    $categoryId: [String!]\n    $neighborhoodId: [String!]\n  ) {\n    posts (\n      companyId: $companyId\n      postId: $postId\n      slug: $slug\n      offset: $offset\n      limit: $limit\n      sort: $sort\n      sortDir: $sortDir\n      search: $search\n      featured: $featured\n      postStatusId: \"5f528253-abb7-484e-95c3-330269ac1102\"\n      categoryId: $categoryId\n      neighborhoodId: $neighborhoodId\n    ) {\n      items {\n        id\n        postId\n        title\n        subtitle\n        description\n        status: postStatus\n        featured\n        slug\n        categories {\n          id\n          name\n        }\n        createdAt\n        publishedAt\n        scheduledAt\n        createdBy {\n          ... on Agent {\n            firstName\n            lastName\n          }\n        }\n        customAuthor\n        media {\n          smallUrl\n          mediumUrl\n          largeUrl\n          xLargeUrl\n          xxLargeUrl\n          height\n          width\n          altTagText\n        }\n        seoTitle\n        seoDescription\n      }\n      total\n    }\n  }\n","testimonials":"\n  query Testimonials (\n    $companyId: String\n    $agentId: ID\n    $teamId: ID\n    $testimonialIds: [ID!]\n    $offset: Int\n    $limit: Int\n    $sort: String\n    $sortDir: String\n    $search: String\n  ) {\n    testimonials (\n      companyId: $companyId\n      agentId: $agentId\n      teamId: $teamId\n      testimonialIds: $testimonialIds\n      offset: $offset\n      limit: $limit\n      sort: $sort\n      sortDir: $sortDir\n      search: $search\n    ) {\n      items {\n        id\n        testimonialId\n        body\n        author\n        position\n        media {\n          smallUrl\n          mediumUrl\n          largeUrl\n          xLargeUrl\n          xxLargeUrl\n          height\n          width\n          altTagText\n        }\n        seoTitle\n        seoDescription\n        agents {\n          slug\n          email\n          firstName\n          lastName\n          avatar {\n            smallUrl\n            height\n            width\n          }\n        }\n      }\n      total\n    }\n  }\n","neighborhoods":"\n  query Neighborhoods (\n    $neighborhoodId: ID\n    $companyId: String\n    $search: String\n    $tag: String\n    $offset: Int\n    $limit: Int\n    $sort: String\n    $sortDir: SortDirectionEnum\n  ) {\n    neighborhoods (\n      neighborhoodId: $neighborhoodId\n      companyId: $companyId\n      search: $search\n      tag: $tag\n      offset: $offset\n      limit: $limit\n      sort: $sort\n      sortDir: $sortDir\n    ) {\n      id\n      name\n      description\n      descriptionShort\n      slug\n      tags\n      googlePlaceData\n      mlsLink\n      createdAt\n      media {\n        smallUrl\n        mediumUrl\n        largeUrl\n        xLargeUrl\n        xxLargeUrl\n        height\n        width\n      }\n      seoTitle\n      seoDescription\n    }\n    neighborhoodsCount(\n      companyId: $companyId\n      search: $search\n      tag: $tag\n    ) {\n      count\n    }\n  }\n","developments":"\n  query Developments (\n    $developmentId: ID\n    $companyId: String\n    $offset: Int\n    $limit: Int\n    $sort: String\n    $sortDir: SortDirectionEnum\n    $search: String\n    $tag: [String!]\n    $agentId: [ID!]\n    $neighborhoodId: ID\n    $neighborhoodIds: [ID!]\n  ) {\n    developments (\n      developmentId: $developmentId\n      companyId: $companyId\n      offset: $offset\n      limit: $limit\n      sort: $sort\n      sortDir: $sortDir\n      search: $search\n      tag: $tag\n      agentId: $agentId\n      neighborhoodId: $neighborhoodId\n      neighborhoodIds: $neighborhoodIds\n    ) {\n      id\n      name\n      description\n      descriptionShort\n      slug\n      createdAt\n      media {\n        smallUrl\n        mediumUrl\n        largeUrl\n        xLargeUrl\n        xxLargeUrl\n        height\n        width\n      }\n      googlePlaceData\n      seoTitle\n      seoDescription\n      tags\n    }\n    developmentsCount(\n      companyId: $companyId\n      search: $search\n      tag: $tag\n      agentId: $agentId\n      neighborhoodId: $neighborhoodId\n      neighborhoodIds: $neighborhoodIds\n    ) {\n      count\n    }\n  }\n","pois":"\n  query PointsOfInterest (\n    $regionId: UUID!\n    $radiu
2880s: Int\n    $offset: Int\n    $limit: Int\n    $categories: [AreasOfInterestCategories!]\n    $sortBy: AreasOfInterestSorting\n  ) {\n    pois: areasOfInterest (\n      input: {\n        regionId: $regionId\n        radius: $radius\n        offset: $offset\n        limit: $limit\n        categories: $categories\n        sortBy: $sortBy\n      }\n    ) {\n      items {\n        name\n        imageUrl\n        url\n        reviewCount\n        rating\n        price\n        displayPhone\n        distance\n        category\n        location {\n          address1\n          address2\n          address3\n          city\n          zipCode\n          country\n          state\n        }\n      }\n      total\n    }\n  }\n","offices":"\n  query Offices (\n    $companyId: ID!\n    $officeIds: [ID!]\n    $officeMlsIds: [String!]\n    $externalIds: [String!]\n    $externalSource: String\n    $agentId: ID\n    $archived: Boolean\n    $tags: [String!]\n    $slug: String\n    $search: String\n    $sort: String\n    $sortDir: SortDirection\n    $offset: Int\n    $limit: Int\n  ) {\n    offices (\n      companyId: $companyId\n      officeIds: $officeIds\n      officeMlsIds: $officeMlsIds\n      externalIds: $externalIds\n      externalSource: $externalSource\n      agentId: $agentId\n      archived: $archived\n      tags: $tags\n      slug: $slug\n      search: $search\n      sort: $sort\n      sortDir: $sortDir\n      offset: $offset\n      limit: $limit\n    ) {\n      items {\n        id\n        companyId\n        name\n        slug\n        officeMlsId\n        shortDescription\n        fullDescription\n        addressLine1\n        addressLine2\n        addressCity\n        addressState\n        addressPostalCode\n        addressCountry\n        phone\n        email\n        officeHours\n        coordinates\n        googlePlaceData\n        seoTitle\n        seoDescription\n        fullAddress\n        tags\n        media {\n          id\n          originalUrl\n          thumbnailUrl\n          smallUrl\n          mediumUrl\n          largeUrl\n          xLargeUrl\n          xxLargeUrl\n        }\n      }\n      total\n    }\n  }\n","teams":"\n  query Teams (\n    $companyId: ID\n    $teamIds: [ID!]\n    $agentId: ID\n    $externalIds: [String!]\n    $externalSource: String\n    $slug: String\n    $search: String\n    $sort: String\n    $sortDir: String\n    $offset: Int\n    $limit: Int\n  ) {\n    teams (\n      companyId: $companyId\n      teamIds: $teamIds\n      agentId: $agentId\n      externalIds: $externalIds\n      externalSource: $externalSource\n      slug: $slug\n      search: $search\n      sort: $sort\n      sortDir: $sortDir\n      offset: $offset\n      limit: $limit\n    ) {\n      items {\n        id\n        companyId\n        name\n        email\n        shortBio\n        addressLine1\n        addressLine2\n        addressCity\n        addressState\n        addressCountry\n        phoneNumber1\n        phoneNumber2\n        postalCode\n        avatar {\n          id\n          thumbnailUrl\n          smallUrl\n          mediumUrl\n          largeUrl\n        }\n        urlWebsite\n        socialLinks\n        socialLinksArray\n        tags\n        seoTitle\n        seoDesc\n        slug\n        displayOrder\n      }\n      total\n    }\n  }\n"},
2881                propertyPlaceholderImage: {"id":"52a563d7-98e2-469e-96c6-37ab73ba87ce","alt":null,"bytes":3999,"width":1920,"format":"png","height":1200,"shared":true,"curated":false,"duration":null,"largeUrl":"https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/uixzlxhexwnvh9x21ncd","smallUrl":"https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=960/https://media-production.lp-cdn.com/media/uixzlxhexwnvh9x21ncd","authorUrl":null,"createdAt":"2023-08-18T19:13:19.001Z","mediumUrl":"https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=1280/https://media-production.lp-cdn.com/media/uixzlxhexwnvh9x21ncd","sourceUrl":null,"updatedAt":"2023-08-18T19:13:19.001Z","xLargeUrl":"https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/uixzlxhexwnvh9x21ncd","__typename":"Media","altTagText":null,"authorName":null,"sourceName":"r2","xxLargeUrl":"https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/uixzlxhexwnvh9x21ncd","description":null,"displayName":"kinoko-property-placeholder","originalUrl":"https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/uixzlxhexwnvh9x21ncd","resourceType":"image","thumbnailUrl":"https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=320/https://media-production.lp-cdn.com/media/uixzlxhexwnvh9x21ncd","originalFileName":"Kinoko Property Placeholder"}
2882            },
2883            objectToQuerystring: objectToQuerystring,
2884            getPath: getPath,
2885            getMLSAutocomplete: getMLSAutocomplete,
2886            getMLSAutocompleteWithFilters: getMLSAutocompleteWithFilters,
2887            makeMlsLink: makeMlsLink,
2888            debounce: debounce,
2889        };
2890
2891        var wowOffset = 100;
2892    </script>
2892
2893    
2893<script>
2894        (()=>{function e(e){return e&&e.__esModule?e.default:e}var t={},i={};i={getVideoFirstFrame(e){let t="https://res.cloudinary.com/";if(!e||!e.startsWith(t))return null;let i=e.replace(t,"").replace("f_auto:video","f_auto").split("/");if(-1===i[1].toLowerCase().indexOf("video"))return null;let s=i[i.length-1];s.lastIndexOf(".")>-1?s=`${s.slice(0,s.lastIndexOf("."))}.jpg`:s+=".jpg",i[i.length-1]=s;let r=3;"videos"===i[1].toLowerCase()&&""!==i[2]&&(r=2);let a=/^(?:[a-z]{1,3}|\$\w+)_\S+$/;for(;r<i.length-1&&a.test(i[r]);)r++;return i.splice(r,0,"so_0,eo_0"),t+i.join("/")}},t=function(e,{isEqual:t}){let s=[{field:"thumbnailUrl",w:320},{field:"smallUrl",w:960},{field:"mediumUrl",w:1280},{field:"largeUrl",w:1920},{field:"xLargeUrl",w:2560},{field:"xxLargeUrl",w:3456}],r=function(e,t,i){let s="en-US";if(!e)return"";if("string"==typeof e){let t=e.trim();if(/[^+\-0-9.]/.test(t))return e;if(!(e=parseFloat(t)))return""}let r="number"==typeof i?i:0,a=Number.isInteger(e)?0:r,o={minimumFractionDigits:a,maximumFractionDigits:a};return"USD"===t?`$${e.toLocaleString(s,o)}`:"CAD"===t?`$${e.toLocaleString(s,o)} CAD`:"EUR"===t?`\u{20AC}${e.toLocaleString(s,o)}`:"GBP"===t?`\xa3${e.toLocaleString(s,o)}`:"PERCENT"===t?`${e}%`:"number"==typeof i&&i>-1?e.toLocaleString(s,{maximumFractionDigits:i}):e.toLocaleString(s)},a=function(e){switch(e){case"DAY":return"daily";case"MONTH":return"monthly";case"WEEK":return"weekly";case"YEAR":return"yearly";case"QUARTER":return"quarterly";case"HALF_YEAR":return"semi-annually";case"NIGHTLY":return"nightly";case"SEASONAL":return"seasonally";default:return""}},o=function(e){switch(e){case"DAY":return"day";case"WEEK":return"wk";case"MONTH":return"mo";case"YEAR":return"yr";case"QUARTER":return"3 mos";case"HALF_YEAR":return"6 mos";case"NIGHTLY":return"night";case"SEASONAL":return"season";default:return""}},n=function(e){switch(e){case"DAY":return"day";case"WEEK":return"week";case"MONTH":return"month";case"YEAR":return"year";case"QUARTER":return"quarter";case"HALF_YEAR":return"6 months";case"NIGHTLY":return"night";case"SEASONAL":return"season";default:return""}},l=function(e,t){let i,s,r=t||{};switch(r.mode){case"short":i=o(e),s=r.frequencySeparator||"/";break;case"standard":case"std":i=n(e),s=r.frequencySeparator||"/";break;default:i=a(e),s=r.frequencySeparator||" "}return i?r.frequencyTag||r.frequencyClass?`${s}<${r.frequencyTag||"span"}${r.frequencyClass?` class="${r.frequencyClass}"`:""}>${i}</${r.frequencyTag||"span"}>`:s+i:""};return{isEmpty(e,t){let i=!e||"string"==typeof e&&!e.trim()||!Object.keys(e).length;return t.fn?i?t.fn(this):t.inverse(this):i},ifEquals(e,i,s){return t(e,i)?s.fn(this):s.inverse(this)},"raw-helper":function(e){return e.fn()},striptags:e=>e?(e=(e=(e=e.replace(/<\!--(.|[\r\n])*?-\->/g,"")).replace(/<(xml|style|svg)("[^"]*"|'[^']*'|[^>])*>(.|[\r\n])*?<\/\1>/gi,"")).replace(/&nbsp;/g," ")).replace(/<\/?("[^"]*"|'[^']*'|[^>])*(>|$)/g,""):"",striptagsLineBreaks:e=>e?(e=(e=(e=(e=e.replace(/<\!--(.|[\r\n])*?-\->/g,"")).replace(/<(xml|style|svg)("[^"]*"|'[^']*'|[^>])*>(.|[\r\n])*?<\/\1>/gi,"")).replace(/(<br\s*\/?>)|(<\/p\s*>)(?=.*(<\/p\s*>|<br\s*\/?>))/g,"&#10;")).replace(/&nbsp;/g," ")).replace(/<\/?("[^"]*"|'[^']*'|[^>])*(>|$)/g,""):"",truncate:(e,t,i)=>e?e.length>t?"string"==typeof i?e.slice(0,t-i.length)+i:e.slice(0,t):e:"",setSubArray(e=[],t,i,s,r){r.data.root[s]=e.slice(t,i)},formatAreaUnit(e){switch(e){case"ACRE":return"Acres";case"SQUARE_METER":return"Sq.M.";case"SQUARE_YARD":return"Sq.Yd.";default:return"Sq.Ft."}},formatFrequency:a,formatFrequencyShort:o,lpFormatFrequency:(e,t)=>l(e,t&&t.hash),subArray(e,t,i,s){return e>=t&&e<i?s.fn(this):s.inverse(this)},formatPropertyStatus(e,t,i){let s="";switch(e){case"SOLD":s="Sold";break;case"FOR_SALE":s="For Sale";break;case"COMING_SOON":s="Coming Soon";break;case"INACTIVE":s="Inactive";break;case"POCKET_LISTING":s="Pocket Listing";break;case"PENDING":s="Pending";break;case"UNDER_CONTRACT":s="Under Contract";break;case"ACTIVE_UNDER_CONTRACT":s="Active Under Contract";break;default:s=e}return("Sold"===s||"Leased"===s)&&t&&"string"==typeof i&&i&&(s+=` on ${i}`),s},formatGrade(e){switch(e){case"UNDERGRADUATE_COURSES":return"Undergrad";case"PRE_KINDERGARTEN":return"PreK";case"KINDERGARTEN":return"K";case"FIRST_GRADE":return"1st";case"SECOND_GRADE":return"2nd";case"THIRD_GRADE":return"3rd";case"FOURTH_GRADE":return"4th";case"FIFTH_GRADE":return"5th";case"SIXTH_GRADE":return"6th";case"SEVENTH_GRADE":return"7th";case"EIGHTH_GRADE":return"8th";case"NINTH_GRADE":return"9th";case"TENTH_GRADE":return"10th";case"ELEVENTH_GRADE":return"11th";case"TWELFTH_GRADE":return"12th";default:return""}},encodeURI:e=>encodeURI(e),encodeURIComponent:e=>encodeURIComponent(e),hbFormatDate(e,t){if(!e)return"";let i="current"===e?new Date:new Date(e);if(Number.isNaN(i.getTime()))return"";if("YYYY"===t||"year"===t)return`${i.getFullYear()}`;if("MM/DD/YY"===t){let e=i.getMonth()+1;return e<10&&(e=`0${e.toString()}`),`${e}/${i.getDate()}/${i.getFullYear().toString().substr(-2)}`}return`${["January","February","March","April","May","June","July","August","September","October","November","December"][i.getMonth()]} ${i.getDate()}, ${i.getFullYear()}`},openHousesFormat(e,t,i){if(!e||!t)return"";let s=e=>{let t=e.getHours();t>12&&(t-=12);let i=`${t}:${e.getMinutes()>9?e.getMinutes():"0"+e.getMinutes()}`;return e.getHours()>11?i+="PM":i+="AM",i},r="",a=e,o=t;
2894i&&(a=new Date(e).toLocaleString("en-US",{timeZone:i}),o=new Date(t).toLocaleString("en-US",{timeZone:i}),[,,,r]=new Date(t).toLocaleString("en-US",{timeZone:i,timeZoneName:"short"}).split(" "));let n=new Date(a),l=n.toLocaleDateString("en-US"),d=s(n),c=s(new Date(o));return`${l} ${d} - ${c} ${r}`},math:(e,t,i)=>(e=parseFloat(e),({"+":e+(i=parseFloat(i)),"-":e-i,"*":e*i,"/":e/i,"%":e%i})[t]),findByKey(e,t,i,s){let r=(e||[]).find(e=>e[t]===i);return s.fn(r)},capitalize(e,t,i){let s;return"string"==typeof e&&e.length&&(s=e.toLowerCase().split(t).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(" ").toString()),s},and:(...e)=>Array.prototype.slice.call(e).every(Boolean),or:(...e)=>Array.prototype.slice.call(e,0,-1).some(Boolean),not:e=>!e,orderByIds(t,i,s){let r="",a=null;s.data&&(a=e.createFrame(s.data));let o=(i||[]).filter(Boolean);if(o&&o.length){let e=0;r=o.reduce((i,r,o)=>{let n=(t||[]).find(e=>e.id===r);return n?(a&&(a.index=o-e),i+s.fn(n,{data:a})):(e+=1,i)},"")}else for(let e=0,i=(t||[]).length;e<i;e++)a&&(a.index=e),r+=s.fn(t[e],{data:a});return r},ifIn(e,t,i){return t&&t.indexOf(e)>-1?i.fn(this):i.inverse(this)},partial:(t,i)=>(e.registerPartial(t,e.compile(i.fn())),`
2894<script type="text/x-handlebars-template" class="${t} pagination-script">${i.fn()}<\/script>`),numCompare(e,t,i,s){return({"==":function(e,t){return e==t},"===":function(e,t){return e===t},"!=":function(e,t){return e!=t},"<":function(e,t){return e<t},">":function(e,t){return e>t},"<=":function(e,t){return e<=t},">=":function(e,t){return e>=t}})[i](e,t)?!s.fn||s.fn(this):!!s.fn&&s.inverse(this)},lpFormatNumber:r,arrayToHtmlList:(e,t)=>e.reduce((e,t)=>{try{if("object"==typeof t||null===t)return e;return e+=`<li>${t}</li>`}catch(e){}},""),join:(e,t,i)=>e&&e.join?e.join("string"==typeof t?t:", "):"",dedupe(t,i,s){let r=null,a=0,o=new Set;return s.data&&(r=e.createFrame(s.data)),(t||[]).reduce((e,t,n)=>{let l=i?t[i]:t;return!o.has(l)||i&&void 0===l?(o.add(l),r&&(r.index=n-a),e+s.fn(t,{data:r})):(a+=1,e)},"")},JSONstringify:(e,t)=>JSON.stringify(e),formatPropertyPrice(...t){let i=t[t.length-1].hash,s=t.length>1?t[0]:i.property,a=i.precision||0;t.length>2&&(i.mode=t[1]),i.mode||(i.mode="short");let o=t.length>3?t[2]:i.separator;if("string"!=typeof o&&(o=" | "),s.isPasswordProtected)return"Exclusive Listing";let n=t.length>4?t[3]:i.priceUponRequestText;if("string"!=typeof n&&(n="Price Upon Request"),s.priceUponRequest)return n;let d=s.salesPrice,c=null;"SOLD"!==s.status&&"Leased"!==s.status&&s.reducedPrice&&(i.reducedClass?c=s.reducedPrice:d=s.reducedPrice);let u="";c&&(u+=`<${i.reducedTag||"span"} class="${i.reducedClass}">${r(c,s.currency,a)}</${i.reducedTag||"span"}>`),d&&(d=r(d,s.currency,a),i.priceTag||i.priceClass?u+=`<${i.priceTag||"span"}${i.priceClass?` class="${i.priceClass}"`:""}>${d}</${i.priceTag||"span"}>`:u+=d);let h=s.leasePrice&&r(s.leasePrice,s.currency,a);if(h){u&&(u+=o);let e=`${h}${l(s.leasePeriod,i)}`;i.leaseTag||i.leaseClass?u+=`<${i.leaseTag||"span"}${i.leaseClass?` class="${i.leaseClass}"`:""}>${e}</${i.leaseTag||"span"}>`:u+=e}
2894return new e.SafeString(u)},mediaImage(t,i={}){if(!t)return;let{lazy:r,...a}=i.hash,o="",n="";if("string"==typeof t)o=t;else{let e={},{height:r,width:l,altTagText:d}=t;s.forEach(i=>{t[i.field]&&!e[t[i.field]]&&(e[t[i.field]]=i.w)});let c=Object.keys(e);if(!c.length)return;if(d&&(a.alt=d),r&&l&&(r>=l&&(a.class?a.class+=" portrait":a.class="portrait"),"setDims"in i.hash&&(a.width=l,a.height=r)),c.length>1&&l&&l<e[c[c.length-1]]){let t=c.findIndex(t=>e[t]>=l);c.splice(t+1),e[c[c.length-1]]=l}c.length>1&&(n=c.map(t=>`${t} ${e[t]}w`).join(", "),c.sort((t,i)=>Math.abs(e[t]-1280)-Math.abs(e[i]-1280))),o=c[0]}delete a.setDims,n||delete a.sizes,"alt"in a||(a.alt=""),!("loading"in a)&&(i?.data?.root?.sectionIndex>1||r)&&(a.loading="lazy");let l=Object.keys(a).map(t=>`${e.escapeExpression(t)}="${e.escapeExpression(a[t])}"`).join(" ");return new e.SafeString(`<img src="${o}"${n?` srcset="${n}"`:""}${l?` ${l}`:""}>`)},bgImage:e=>e?"string"==typeof e?e:e.largeUrl||e.url||"":"",concat(...e){let t="";for(let i in e)null!==e[i]&&void 0!==e[i]&&"object"!=typeof e[i]&&(t+=e[i]);return t},setVideoExtension(e,t){if(!e||!t)return"";let i=new URL(e);if("res.cloudinary.com"!==i.host)return i.pathname.endsWith(`.${t}`)?e:"";let s=i.pathname.lastIndexOf("."),r=i.pathname;return -1!==s&&(r=i.pathname.substr(0,s)),i.pathname=`${r}.${t}`,i.toString()},addVideoSources(e){if(!e)return"";if(!e.includes("res.cloudinary.com"))return`<source data-src="${e}">`;let t=e.replace(/\.(?:3gp|mpeg|mp4|m4v|m4p|ogv|ogg|mov|webm)$/,"");return[{format:"webm",codec:"vp9",htmlCodecs:";codecs=vp9"},{format:"mp4",codec:"h265",htmlCodecs:";codecs=hvc1"},{format:"mp4",codec:"h264",htmlCodecs:""}].map(e=>{let i=`${t.replace(/f_auto(?::video)?(?:,q_auto(?::\w+)?)?/,`f_${e.format},vc_${e.codec},q_auto:best,w_1920,c_limit`)}.${e.format}`;return`<source data-src="${i}" type="video/${e.format}${e.htmlCodecs}">`}).join("\n")},cloudinaryVideoFirstFrame:i.getVideoFirstFrame,initials(e,t){if(!e)return"";t?.hash?.endChar&&(e=e.split(t.hash.endChar)[0]);let i=+t?.hash?.maxChars||2,s=e.match(/\b\w/g)?.slice(0,i);return s?(t?.hash?.addText&&(s=s.map(e=>e+t.hash.addText)),s.join(t?.hash?.joinWith||"").toUpperCase()):""},normalizePhone(e){if(!e)return"";let t=String(e).trim();return(t.startsWith("+")?"+":"")+t.replace(/\D/g,"")}}};class s{constructor(e,t,i){if(this.config=e,this.window=t,this.document=i,!this.destroy)throw Error("Controllers must implement a deconstructor")}}let r="lp_lead_form_conversion_fired";function a(e,t){if(e&&t&&"function"==typeof t.sendGoogleTagManagerEvent&&!function(e){try{return"true"===e.sessionStorage.getItem(r)}catch{return!1}}(e))try{t.sendGoogleTagManagerEvent("event","generate_lead");try{e.sessionStorage.setItem(r,"true")}catch{}}catch{}}function o(e){return!!e&&(!!e.expired||Date.now()>=e.expiresAt)}let n="/api/v1/home-valuation";class l extends s{destroy(){}_cleanAddressString(e){if(!e||"string"!=typeof e)return"";let t=e.trim();if(t.includes("User entered address:")){let e=t.match(/User entered address:\s*\n?\s*([^\n]+)/);e&&e[1]&&(t=e[1].trim())}let i=t.indexOf(", call time frame:");return -1!==i&&(t=t.substring(0,i).trim()),t}_transformAddressComponents(e){let t=t=>(e.find(e=>e.componentType===t)||{}).componentName?.text,i={},s=t("street_number"),r=t("route"),a=t("administrative_area_level_1"),o=t("postal_code"),n=t("subpremise"),l=t("locality")||t("sublocality_level_1")||t("neighborhood");return s&&(i.streetNumber=s),r&&(i.streetName=r),l&&(i.city=l),a&&(i.state=a),o&&(i.zipcode=o),n&&(i.addressLine2=n),i}_extractAddressAndCoordinates(e){let t=null,i=null;if(e?.result){let{result:s}=e;s.address?.addressComponents&&(t=this._transformAddressComponents(s.address.addressComponents)),s.geocode?.location&&(i={latitude:s.geocode.location.latitude,longitude:s.geocode.location.longitude})}return{structuredAddress:t,coordinates:i}}_filterEmptyStrings(e){let t={};for(let[i,s]of Object.entries(e))""!==s&&null!=s&&(t[i]=s);return t}_getRawAddress(e){let t=e.activity.content||{},i=e.activity.comments_attributes?.[0]?.text;return[t.address,t["property-address"],t.property_address,t.Property_Address,i,t.message,t.homeValuationAddress,t.propertyAddress].map(e=>e&&this._cleanAddressString(e)).find(Boolean)||""}_logLeadEvent(e,t,i=null){let s={event:e,companyId:this.config.companyId,websiteId:this.config.websiteId,timestamp:new Date().toISOString(),hasEmail:!!t.activity?.author_email,hasAddress:!!this._getRawAddress(t)};if(i&&(s.errorMessage=i.userMessage||(i.status?`Request failed with status ${i.status}`:"An error occurred"),s.errorName=i.name,s.errorStatus=i.status),console.error(`[HomeValuation] ${e}`,JSON.stringify(s)),this.window.posthog)try{this.window.posthog.capture(e,s)}catch(e){console.error("[HomeValuation] PostHog capture failed:",e)}}_getUserFriendlyErrorMessage(e){return"AbortError"===e.name||e.message?.includes("timeout")?"Connection timed out. Please try again.":"TypeError"===e.name&&e.message?.includes("fetch")?"Unable to connect. Please check your internet connection and try again.":503===e.status||502===e.status||504===e.status?"Service temporarily unavailable. Please try again in a moment.":400===e.status?"Please check your information and try again.":"Something went wrong. Please try again or c
2894ontact us directly."}_formatStructuredAddress(e){if(!e||0===Object.keys(e).length)return"";let t=[];return t.push([e.streetNumber,e.streetName,e.addressLine2].filter(Boolean).join(" ")),t.push([[e.city,e.state].filter(Boolean).join(", "),e.zipcode].filter(Boolean).join(" ")),t.filter(Boolean).join(", ")}_buildHomeValuationData(e,t,i,s){let r=this._formatStructuredAddress(i)||this._getRawAddress(e);if(!r)throw Error("Unable to extract home valuation address from form data");let a={companyId:e.companyId,homeValuationAddress:r,homeValuationEstimate:t?new Intl.NumberFormat("en-US",{style:"currency",currency:"USD",maximumFractionDigits:0,minimumFractionDigits:0}).format(t):null,websiteId:e.page.websiteId,sourceUrl:e.activity.source_url},o={leadEmailAddress:e.activity.author_email,leadFullName:e.activity.author_name,leadFirstName:e.activity.firstName,leadLastName:e.activity.lastName,leadPhoneNumber:e.activity.author_phone,parcelId:e.activity.content?.parcelId,resourceId:e.page.pageMeta?.resourceId,pageId:e.page.pageId,sourceResource:e.page.pageMeta?.s
2894ourceResource,pageElementId:e.page.pageMeta?.pageElementId,formId:e.page.pageMeta?.formId,utmSource:e.activity.content?.utm_source,utmMedium:e.activity.content?.utm_medium,utmCampaign:e.activity.content?.utm_campaign,utmTerm:e.activity.content?.utm_term,utmContent:e.activity.content?.utm_content,utmId:e.activity.content?.utm_id,timeToSell:e.activity.content?.timeToSell,lookingToBuy:e.activity.content?.lookingToBuy,consented:!!e.activity.content?.termsAccepted,referrer:e.referrer,content:e.activity.content||{},fields:e.fields||{}},n=this._filterEmptyStrings(o);return{...a,...n,...i&&{address:i},...s&&{coordinates:s}}}async _validateAddressSafely(e){if(!e)return console.error("Home valuation: No address found in form data"),null;try{return await this._validateAddressWithGoogleMaps(e)}catch(e){throw console.error("Error validating address with Google Maps:",e),e.userMessage=this._getUserFriendlyErrorMessage(e),e}}async _getHomeValuationEstimateSafely(e){try{return await this._getHomeValuationEstimate(e)}catch(e){throw console.error("Error getting home valuation estimate:",e),e.userMessage=this._getUserFriendlyErrorMessage(e),e}}_isSafeRedirectUrl(e){try{let{protocol:t}=new URL(e,this.window.location.href);return"https:"===t||"http:"===t}catch{return!1}}_parseResponsePayload(e){try{return e?JSON.parse(e):{}}catch{return{raw:e}}}_createResponseError(e,t){let i=Error(e&&"object"==typeof e&&Object.keys(e).length?e.message||JSON.stringify(e):"Request failed");return e&&"object"==typeof e&&Object.keys(e).length&&Object.assign(i,e),i.status=t,i}_resolveValuationApiBase(){let{config:e}=this;if(void 0!==e.valuationApiBase&&null!==e.valuationApiBase&&(""!==e.valuationApiBase||!e.isBuilder))return e.valuationApiBase;if(e.websiteApiGatewayUrl)return e.websiteApiGatewayUrl;throw Error("websiteApiGatewayUrl/valuationApiBase not configured for home valuation")}async _submitLead(e,t,i){let s=new AbortController,r=setTimeout(()=>s.abort(),1e4);try{let a=await fetch(e,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t),signal:s.signal});clearTimeout(r);let n=await a.text(),l=this._parseResponsePayload(n);if(!a.ok)throw this._createResponseError(l,a.status);if(l&&"success"===l.status&&l.redirectUrl){if(o(i))return l;if(!this._isSafeRedirectUrl(l.redirectUrl))return console.error("Home valuation: refusing redirect to unsupported protocol"),l;return this.window.location.href=l.redirectUrl,{redirected:!0,url:l.redirectUrl}}return l}catch(e){throw clearTimeout(r),e}}async _submitHomeValuationRequest(e){let t=this._resolveValuationApiBase();this._logLeadEvent("home_valuation_submission_started",e);try{let i=this._getRawAddress(e),s=null;try{s=await this._validateAddressSafely(i)}catch(t){throw this._logLeadEvent("home_valuation_address_validation_failed",e,t),t}let r=null;try{r=await this._getHomeValuationEstimateSafely(s)}catch(t){this._logLeadEvent("home_valuation_estimate_failed",e,t),r=null}let{structuredAddress:a,coordinates:o}=this._extractAddressAndCoordinates(s),l=`${t}${n}`,d=this._buildHomeValuationData(e,r,a,o),c=await this._submitLead(l,d,e.deadline);return this._logLeadEvent("home_valuation_submission_success",e),c}catch(t){throw t.userMessage||(t.userMessage=this._getUserFriendlyErrorMessage(t)),this._logLeadEvent("home_valuation_submission_failed",e,t),t}}async _validateAddressWithGoogleMaps(e){let{config:t,window:i}=this,s=t.googleMapsAPIKey;if(!s&&i.luxuryPresence?.mapApiLoader&&(s=await i.luxuryPresence.mapApiLoader.getMapApiKey()),!s)throw Error("Google Maps API key not configured");let r=new AbortController,a=setTimeout(()=>r.abort(),1e4);try{let t=await fetch(`https://addressvalidation.googleapis.com/v1:validateAddress?key=${s}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({address:{addressLines:[e]},enableUspsCass:!1}),signal:r.signal});if(clearTimeout(a),!t.ok){let e=Error(`Address validation failed: ${t.status}`);throw e.status=t.status,e}return t.json()}catch(e){throw clearTimeout(a),e}}_hasMandatoryAddressFields(e){return!!(e.streetNumber&&e.streetName&&e.city&&e.state&&e.zipcode)}_logMissingAddressFields(e){let t=[];e.streetNumber||t.push("streetNumber"),e.streetName||t.push("streetName"),e.city||t.push("city"),e.state||t.push("state"),e.zipcode||t.push("zipcode"),console.log("Home valuation estimate skipped - missing required fields:",t.join(", "),"Available fields:",Object.keys(e).join(", "))}_buildAddressQueryString(e){return Object.entries(e).map(([e,t])=>`${encodeURIComponent(e)}=${encodeURIComponent(t)}`).join("&")}async _getHomeValuationEstimate(e=null){let t=`${this._resolveValuationApiBase()}${n}`;if(!e?.result?.address?.addressComponents)return null;let i=this._transformAddressComponents(e.result.address.addressComponents);if(!this._hasMandatoryAddressFields(i))return this._logMissingAddressFields(i),null;let s=this._buildAddressQueryString(i),r=`${t}?${s}`,a=new AbortController,o=setTimeout(()=>a.abort(),1e4);try{let e=await fetch(r,{headers:{Accept:"application/json"},signal:a.signal});if(clearTimeout(o),!e.ok){let t=Error(`Home valuation estimate failed: ${e.status}`);throw t.status=e.status,t}let t=await e.json();return t?.valueDollars??null}catch(e){throw clearTimeout(o),e}}}let d="middleName",c="redirect-pending",u=["name","firstName","lastName",d,"email","phone","phoneNumber","source","message","mlsId","sourceUrl"],h="lp_map_key_failed",p="oauthSuccess",m={cookieyes:{eventName:"cookieyes_consent_update",hasAnalyticsConsent:e=>(function(e){let t=e.cookie.match(/cookieyes-consent=([^;
2894]+)/);if(!t)return!1;try{let e=decodeURIComponent(t[1]);if(e.includes(",")){let t=e.split(",").map(e=>e.trim());if(t.some(e=>e.includes(":")))return t.some(e=>"analytics:yes"===e);return t.includes("analytics")}return e.includes("analytics")}catch(e){return!1}})(e),isAnalyticsAccepted:e=>Array.isArray(e?.accepted)&&e.accepted.includes("analytics")},"lp-consent":{eventName:"lp_consent_update",hasAnalyticsConsent:(e,t)=>!!t.__lpConsent?.state?.c?.analytics,isAnalyticsAccepted:e=>!!e?.choices?.analytics}};function g(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}function y(e,t){t.forEach(t=>{let i=e[t];Array.isArray(i)&&0===i.length&&delete e[t]})}function f(e,t,i,s){let r=t.map(t=>(function e(t){return Array.isArray(t)?t.flatMap(t=>e(t)):"string"==typeof t?t.split(/\s+/).filter(Boolean):null==t?[]:[t]})(e[t])),a=s?.merge?r.flat():r.find(e=>e.length>0)??[];t.forEach(t=>{delete e[t]}),a.length>0&&(e[i]=[...new Set(a)])}function w(e){let t={...e};if(t.urlWebsite||(t.urlWebsite=null),t.urlYoutube=null,t.urlFacebook=null,t.urlInstagram=null,t.urlLinkedin=null,t.urlPodcast=null,t.urlTwitter=null,Array.isArray(e.socialLinks)){let i=[...e.socialLinks].sort((e,t)=>{let i=e.type?.toLowerCase()||"",s=t.type?.toLowerCase()||"";return i.localeCompare(s)});t.socialLinks=i;let s={youtube:"urlYoutube",facebook:"urlFacebook",instagram:"urlInstagram",linkedin:"urlLinkedin",podcast:"urlPodcast",twitter:"urlTwitter"};i.forEach(e=>{let i=s[e.type?.toLowerCase()??""];i&&(t[i]=e.link)})}return t}function v(e){return e&&Array.isArray(e)?e.map(e=>w(e)):e}function b(e){let{region:t}=e;if(!g(t))return e;let{schools:i,pois:s,...r}=t,a={...r,schools:g(i)?i.data??[]:[],...Array.isArray(s)?{pois:s.map(e=>({...e,category:"string"==typeof e.category?e.category.toUpperCase():e.category}))}:{}};return{...e,region:a}}function S(e){return e&&Array.isArray(e)?e.map(e=>b(e)):e}function _(e){let t=e.featuresAndAmenities;if(!Array.isArray(t))return e;let i=t.map(e=>({featureIds:e.featureIds??[],features:e.features??[],description:e.description}));return{...e,featuresAndAmenities:i}}function E(e){return e&&Array.isArray(e)?e.map(e=>_(e)):e}function I(e,t){return g(e)?t(e):e}function A(e,t){return Array.isArray(e)?t(e):e}var L={};L=`
2895  query PropertyDisclaimers($input: PropertyDisclaimersInput!) {
2896    propertyDisclaimers(input: $input) {
2897      feedId
2898      listingId
2899      resolvedFromListing
2900      listingCardAttribution
2901      listingDetailCourtesy
2902      listingDetailFooter
2903      logo
2904    }
2905  }
2906`;let $={mlsAttribution:"listingCardAttribution",mlsLogo:"logo",listingDetailCourtesy:"listingDetailCourtesy",listingDetailFooter:"listingDetailFooter"},x=new class{constructor(e){this.isBuilder=!1,this.companyId=null,this.websiteId=null,this.pageId=null,this.shareId=null,this.pageMeta=null,this.websiteApiGatewayUrl=null,this.buyerSellerServiceUrl=null,this.leadIngesterUrl=null,this.divolteServiceUrl=null,this.eventBus=null,this.templateId=null,this.myhomeDashboardEnabled=!1,this.mlsEnabled=!1,this.hstValuationRedirectEnabled=!1,this.hvStepTwoCaptureEnabled=!1,this.googleMapsAPIKey=null}get valuationApiBase(){return this.isBuilder?this.websiteApiGatewayUrl:""}destroy(){}setPage(e,t={}){this.pageId=e,this.shareId=t.shareId||null,this.pageMeta={sourceResource:t.sourceResource,pageElementId:t.pageElementId,pageQueryVariables:t.pageQueryVariables||{}}}setIsBuilder(e){this.isBuilder=e}setCompany(e,t={}){this.companyId=e}setWebsite(e,t={}){this.websiteId=e,t.myhomeDashboardEnabled&&(this.myhomeDashboardEnabled=t.myhomeDashboardEnabled),t.mlsEnabled&&(this.mlsEnabled=t.mlsEnabled),t.hstValuationRedirectEnabled&&(this.hstValuationRedirectEnabled=t.hstValuationRedirectEnabled),t.hvStepTwoCaptureEnabled&&(this.hvStepTwoCaptureEnabled=t.hvStepTwoCaptureEnabled)}setWebsiteApiGatewayUrl(e,t={}){this.websiteApiGatewayUrl=e}setBuyerSellerServiceUrl(e,t={}){this.buyerSellerServiceUrl=e}setDivolteServiceUrl(e,t={}){this.divolteServiceUrl=e}setEventBusUrl(e,t={}){this.eventBusUrl=e}setTemplateId(e,t={}){this.templateId=e}setLeadIngesterUrl(e,t={}){this.leadIngesterUrl=e}setGoogleMapsAPIKey(e,t={}){this.googleMapsAPIKey=e}setEventBus({enabled:e,apiKey:t,url:i}){this.eventBus={enabled:e,apiKey:t,url:i}}}({}),T=new class extends s{constructor(e,t,i){super(e,t,i),this.setLoginState=this.setLoginState.bind(this),this.pageId=null,this.modals=[],this.exitModalTriggered={},this.exitModalEventListeners=[]}initialize(e){try{let{config:t,document:i}=this;this.pageId=t.pageId,this.modals=i.querySelectorAll("body > #modals >
2906 .modal"),e.modals.forEach(e=>{this._attachModalHandler(e)})}catch(e){console.log(e)}}destroy(){let{document:e}=this;this.exitModalEventListeners.forEach(t=>{e.removeEventListener("mouseout",t)}),this.modals=[],this.exitModalTriggered={},this.exitModalEventListeners=[]}setModalWithExpiry(e){let{window:t}=this,i=new Date().getTime()+864e5,s=`modal-controller-${e}`;try{t.localStorage.setItem(s,JSON.stringify(i))}catch(e){}}setLoginState(){let{window:e}=this;try{e.localStorage.setItem("isSignedUp","true")}catch(e){}}getModalWithExpiry(e){let{window:t}=this,i=t.localStorage,s=i.getItem(`modal-controller-${e}`);if(!s)return!1;let r=JSON.parse(s);return!(new Date().getTime()>r)||(i.removeItem(`modal-controller-${e}`),!1)}show(e,t={}){let{window:i}=this,s=this.getModalWithExpiry(e);(e&&!s||!0===t.forced)&&(i.lpUI.showModal(`modal-${e}`,t),this.setModalWithExpiry(e))}_attachModalHandler(e){let{pageId:t}=this,{trigger:i,pageSpecific:s}=e;(!s||e.pages.map(e=>e.pageId).includes(t))&&("EXIT"===i?this._exitModalHandler(e):"TIMER"===i?this._timerModalHandler(e):"FORCED"===i&&this._forcedModalHandler(e))}_exitModalHandler(e){let t=this,{document:i,exitModalTriggered:s}=this,{modalId:r}=e;function a(e){!s[r]&&(e.toElement||e.relatedTarget||(t.show(r),s[r]=!0))}i.addEventListener("mouseout",a),this.exitModalEventListeners.push(a)}_timerModalHandler(e){let{modalId:t,timerDelay:i}=e;setTimeout(()=>{this.show(t)},i)}_forcedModalHandler(e){let{modalId:t}=e,{window:i,document:s}=this;if("true"!==i.localStorage.getItem("isSignedUp")){let e=s.querySelector(`#modal-${t}`),r=e?.querySelector("form"),a=r?.dataset.delay||2e3;r.addEventListener("formsubmitted",()=>{this.setLoginState()}),i.addEventListener("oauthSuccess",()=>{this.setLoginState(),r.classList.add("success"),setTimeout(()=>{i.lpUI.hideModal(`modal-${t}`),r.reset(),r.classList.remove("success")},a)}),this.show(t,{forced:!0})}}}(x,window,document),k=new class extends s{constructor(e,t,i){super(e,t,i),this._boundClickHandler=this._buttonClickHandler.bind(this)}initialize(e={}){try{let{document:e}=this;e.body.removeEventListener("click",this._boundClickHandler),e.body.addEventListener("click",this._boundClickHandler)}catch(e){console.error(e)}}destroy(){let{document:e}=this;e.body.removeEventListener("click",this._boundClickHandler)}_buttonClickHandler(e){this._handleButtonClick(e).catch(e=>console.error(e))}async _handleButtonClick(e){let{window:t,document:i}=this,s=e.target.closest("button, a");if(!s)return;let r=s.dataset.type||"",a=s.href||s.dataset.href||"",o=s.target||"",{submit:n}=s.dataset;if(n){try{await this._handleSubmit(s)}catch(e){console.error(e)}((e,t=!1)=>{if(e){if(t)return window.open(e);window.location.assign(e)}})(a,"_blank"===o)}if(this._trackConversion(s),"VIDEO"===r)return void this._handleVideoButton(s);if("CONTACT_US"===r)return void this._handleContactUsButton(s);if("SUBSCRIBE"===r)return void t.lpUI.showModal("modal-global-subscribe");if("MY_ACCOUNT"===r)return void t.lpUI.showModal("modal-global-my-account");if("SHARE_POPUP"===r){let t=s.querySelector(".share-popup");t&&(t.style.display="flex"),e.stopPropagation();return}if("MODAL_"===r.substring(0,6)){let e=r.substring(6);t.lpUI.showModal(`modal-${e}`);return}if(a?.startsWith("mailto:")){let e=a.substring(7);i.sendGoogleAnalyticsEvent({hitType:"event",eventCategory:"button",eventAction:"click",eventLabel:"Email",eventValue:e})}else if(a?.startsWith("tel:")){let e=a.substring(4);i.sendGoogleAnalyticsEvent({hitType:"event",eventCategory:"button",eventAction:"click",eventLabel:"Phone",eventValue:e})}}async _handleSubmit(e){let t=e.closest("form"),{window:i}=this;return t?await i.luxuryPresence.contactForms.submitForm(t):null}_getVimeoSrc(e){if(!e||!e.includes("vimeo.com")||e.length>2e3)return null;let t=e.match(/(?:(?:www\.)?vimeo\.com\/(?:showcase\/\d+(?:\/video\/|\?video[=/])|channels\/(?:\w+\/)?|groups\/(?:[^/]*)\/videos\/|)|player\.vimeo\.com\/video\/)(\d+)(?:(?:\?.*&*h=|\/)+([\d,a-f]+))?/);if(!t)return null;let[,i,s]=t,r=`https://player.vimeo.com/video/${i}?`;return s&&(r+=`h=${s}&`),r+="autoplay=1"}_handleVideoButton(e){let{document:t}=this,i=e.closest("section"),{src:s}=e.dataset,r="";if(s&&(s.includes("youtube.com")||s.includes("youtu.be"))&&!s.includes("youtube.com/embed")){let e=s.match(/(?:youtube\.com\/\S*(?:(?:\/e(?:mbed))?\/|watch\?(?:\S*?&?v=)
2906)|youtu.be\/)([a-zA-Z0-9_-]{6,11})/);e&&(r=e[1])}let a=this._getVimeoSrc(s);if(r?s=`https://youtube.com/embed/${r}?autoplay=1&controls=0`:a&&(s=a),!s||!i)return;let o=s.endsWith(".mp4")||s.endsWith(".webm")||s.includes("cloudinary.com"),n=`
2907      <div id="modal-${i.id}" class="modal visible">
2908        <div class="modal-content">
2909          <div class="lightbox-video">
2910            <div class="video-player">
2911              <div class="embed-container">
2912                ${o?`<video controls autoplay src="${s}"></video>`:`<iframe frameborder="0" allowfullscreen="1" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" title="YouTube video player" width="100%" height="100%" src="${s}"></iframe>`}
2913              </div>
2914            </div>
2915          </div>
2916        </div>
2917        <button class="close lp-close" type="button" aria-label="close modal"><span class="lp-close-icon" aria-hidden="true"></span></button>
2918      </div>
2919    `;t.body.insertAdjacentHTML("beforeend",n);let l=t.getElementById(`modal-${i.id}`);l.querySelector(".close").addEventListener("click",()=>{l.remove()})}_handleContactUsButton(e){let{window:t,document:i}=this;i.sendGoogleAnalyticsEvent({hitType:"event",eventCategory:"button",eventAction:"click",eventLabel:"contact"}),t.lpUI.showModal("modal-global-contact-us",{scrollLock:!0})}_trackConversion(e){let{window:t,document:i}=this,{gtagConversionId:s,gtagConversionLabel:r,fbEventName:a}=e.dataset;if(s&&r){t.dataLayer&&t.dataLayer.length&&(t.dataLayer.some(e=>e.length&&"config"===e[0]&&e[1]===s)||i.sendGoogleTagManagerEvent("config",s));let e=`${s}/${r}`;i.sendGoogleTagManagerEvent("event","conversion",{send_to:e})}t.fbq&&a&&t.fbq("track",a,{})}}(x,window,document),C=new class extends s{constructor(e,t,i){super(e,t,i),this.validatedForms=[]}initialize(e={}){try{let{window:t,document:i}=this,{selector:s}=e,r=[];if(r=s?i.querySelectorAll(`${s} form[data-type="contact-form"]`):i.querySelectorAll('form[data-type="contact-form"]'),i.querySelectorAll('input[type="tel"]').length&&!t.libphonenumber&&t?.luxuryPresence?.libs){let{loadJs:e,jsLibsMap:i}=t.luxuryPresence.libs,{libphonenumber:s}=i;e(s.jsSrc,this.attachValidation.bind(this,r))}else this.attachValidation(r);this.validatedForms=this.validatedForms.concat(r)}catch(e){console.log(e)}}destroy(){this.validatedForms=[]}attachValidation(e){e.forEach(e=>{e.querySelectorAll("input, select, textarea").forEach(e=>{this.applyFieldValidation(e)})})}applyFieldValidation(e){"tel"===e.getAttribute("type")&&this._applyPhoneValidation(e)}_applyPhoneValidation(e){let{window:t}=this;if(t.libphonenumber){let i=t.libphonenumber.isValidPhoneNumber;e.addEventListener("keyup",function(){if(this.hasAttribute("required")||this.value.replace(/\s/g,"").length)try{let e=this.value;i(e,"US")?this.setCustomValidity(""):this.setCustomValidity("Please enter a valid phone number.")}catch(e){this.setCustomValidity("Please enter a valid phone number.")}else this.setCustomValidity("")})}}}(x,window,document),M=new class extends s{constructor(e,t,i){super(e,t,i),this.forms=[],this.homeValuationService=new l(e,t,i)}initialize(e={}){try{let{document:t}=this,{selector:i}=e,s=[];(s=i?t.querySelectorAll(`${i} form[data-type="contact-form"]`):t.querySelectorAll('form[data-type="contact-form"]')).forEach(e=>{this._attachSubmitHandler(e)}),this.forms=this.forms.concat(s)}catch(e){console.log(e)}}destroy(){this.forms=[]}submitForm(e){this._handleSubmit(null,e).catch(e=>console.error(e))}_attachValidation(e){let{window:t}=this;e.querySelectorAll("input, select, textarea").forEach(e=>{t.luxuryPresence.validation.applyFieldValidation(e)})}_attachSubmitHandler(e){e.addEventListener("submit",t=>this._handleSubmit(t,e))}_extractFormValues(e){let t=new FormData(e),i={},s=[],r=/^name(?:-\d+)?$/;return t.forEach((e,t)=>{if("string"==typeof e){let a=e.trim();r.test(t)&&a&&s.push(a);let o=i[t];i[t]=o?`${o} ${a}`:a}else i[t]=e}),s.length?i.name=s.join(" ").trim():!i.name&&i.firstName&&(i.name=i.firstName,i.lastName&&(i.name+=` ${i.lastName}`)),this._deriveNameParts(i)}_deriveNameParts(e){if(e.firstName||!e.name)return e;let t=e.name.indexOf(" ");return -1===t?{...e,firstName:e.name}:{...e,firstName:e.name.slice(0,t),lastName:e.lastName||e.name.slice(t+1).trim()}}_buildSubmissionData(e,t,i){let{window:s,config:r}=this,a=Object.keys(e).filter(e=>!u.includes(e)).reduce((t,i)=>(t[i]=e[i],t),{}),{pageId:o,companyId:n,websiteId:l,pageMeta:d}=r,c=s.localStorage.getItem("utm_vars")||"{}",h=s.localStorage.getItem("referrer")||"",p=this._getFormId(i);return{activity:{author_email:e.email,author_name:e.name,firstName:e.firstName||void 0,lastName:e.lastName||void 0,author_phone:e.phone||e.phoneNumber,activity_source:e.source||"CONTACT_INQUIRY",comments_attributes:[{text:e.message||void 0}],source_url:s.location.href,content:{...a,...JSON.parse(c)}},page:{pageId:o,companyId:n,websiteId:l,pageMeta:{...d,formId:p}},companyId:n,referrer:h,fields:t}}_handleSubmissionSuccess(e){let{window:t}=this,i=e.dataset.delay||2e3;e.classList.remove("loading"),e.classList.remove("error"),e.classList.add("success"),e.querySelectorAll(".success").forEach(e
2919=>e.classList.remove("hide")),e.dispatchEvent(new Event("formsubmitted")),setTimeout(()=>{t.lpUI.hideClosestModal(e),e.reset(),t.lpUI.sideMenuHide(),e.querySelectorAll(".success").forEach(e=>e.classList.add("hide")),e.classList.remove("success")},i)}async _handleSubmit(e,t){if(e&&e.preventDefault(),!t.classList.contains("loading")){this._hideSubmissionError(t),t.classList.remove("error"),t.classList.add("loading");try{let e=this._extractFormValues(t);if(e.middleName)return void t.classList.remove("loading");let i=this._getFields(t),s=this._buildSubmissionData(e,i,t);a(this.window,this.document);let r=await this._waitForLeadSubmit(e=>this._submitLeadRequest(s,e));if(this._sendGAEvent(s),r?.redirected)return void this._showRedirectPending(t);this._handleSubmissionSuccess(t)}catch(e){console.error("Form submission failed:",e),t.dispatchEvent(new Event("formsubmiterror")),t.classList.remove("loading"),t.classList.add("error"),e.userMessage?this._showSubmissionError(t,e.userMessage):this._showSubmissionError(t,"Something went wrong. Please try again.")}}}async _waitForLeadSubmit(e){let t,i={expired:!1,expiresAt:Date.now()+6e3},s=new Promise(e=>{t=setTimeout(()=>{i.expired=!0,e(null)},6e3)}),r=e(i).catch(e=>{if(o(i))return null;throw e});try{return await Promise.race([r,s])}finally{clearTimeout(t)}}_showRedirectPending(e){if(e.classList.add(c),e.querySelector(`.${c}__indicator`))return;let t=this.document.createElement("div");t.className=`${c}__indicator`,t.setAttribute("role","status"),t.setAttribute("aria-label","Loading"),t.innerHTML='<span class="lp-i lp-i--spinner lp-i--pulse" aria-hidden="true"></span>',e.appendChild(t)}_aliasUserWithEventBus(e){try{if(!this.window.eventBusProvider?.alias||!this.window.eventBusProvider?.isIdentified||!this.window.eventBusProvider?.getDistinctId||!this.window.LuxuryPresenceEventBus?.generateUUIDv5FromCompanyEmail)return;if(this.window.eventBusProvider.isIdentified())return void console.log("[EventBus] User already identified, skipping alias");let t=e.activity?.author_email,{companyId:i}=this.config;if(!t||!i)return void console.warn("[EventBus] Missing required data for user alias");let s=this.window.eventBusProvider.getDistinctId();if(!s)return void console.warn("[EventBus] No anonymous ID available for alias");let r=this.window.LuxuryPresenceEventBus.generateUUIDv5FromCompanyEmail(i,t);this.window.eventBusProvider.alias({anonId:s,canonicalId:r}),console.log("[EventBus] User aliased with canonical ID")}catch(e){console.error("[EventBus] User alias failed:",e)}}async _submitLeadRequest(e,t){let{config:i}=this;return(this._aliasUserWithEventBus(e),i.myhomeDashboardEnabled&&(e.activity?.activity_source==="HOME_VALUATION"||e.activity?.activity_source==="HOME_VALUE"))?this.homeValuationService._submitHomeValuationRequest({...e,deadline:t}):fetch(`${i.leadIngesterUrl}/api/v1/leads`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)}).then(e=>e.ok?e.json():e.json().then(e=>{throw e}))}_sendGAEvent(e){let{document:t}=this,i={hitType:"event",eventCategory:"button",eventAction:"click"};switch(e.activity.activity_source){case"NEWSLETTER_SIGNUP":i.eventLabel="Newsletter",t.sendGoogleTagManagerEvent("event","newsletter_signup");break;case"HOME_SEARCH":i.eventLabel="HomeSearch",t.sendGoogleTagManagerEvent("event","home_search");break;case"HOME_VALUE":case"HOME_VALUATION":i.eventLabel="HomeValue",t.sendGoogleTagManagerEvent("event","home_valuation");break;case"EBOOK":i.eventLabel="Ebook",t.sendGoogleTagManagerEvent("event","ebook_download");break;default:i={hitType:"pageview",page:"/thank-you"},t.sendGoogleTagManagerEvent("event","contact_inquiry")}t.sendGoogleAnalyticsEvent(i)}_getFields(e){let t=e.querySelectorAll("input, select, textarea"),i={};return t.forEach(t=>{let{id:s,name:r,type:a}=t;if(r===d)return!0;let o="";if(s){let i=e.querySelector(`label[for='${s}']`);i?o=i.textContent.trim():t.placeholder&&(o=t.placeholder.trim())}i[r]={label:o,type:t.tagName,inputType:"INPUT"===t.tagName?a:"text"}}),i}_getFormId(e){let t=e.closest("section[id^='section-'], footer[id], .modal[id^='modal-']");return t?.id?this._cleanFormId(t.id):""}_cleanFormId(e){for(let t of["section-","modal-"])if(e.startsWith(t))return e.substring(t.length);return e}_showSubmissionError(e,t){let i=e.querySelector(".submission-error-message");i||((i=this.document.createElement("div")).className="submission-error-message",i.setAttribute("role","alert"),e.appendChild(i)),i.textContent=t||"Something went wrong. Please try again.",i.style.display="block"}_hideSubmissionError(e){let t=e.querySelector(".submission-error-message");t&&(t.style.display="none")}}(x,window,document),P=new class extends s{constructor(e,t,i){super(e,t,i),this.retries=3,this.callbacks=[],this.id=`__googleMapsScriptId${Date.now()}`,this._apiKey="",this.reset()}set apiKey(e){this._apiKey=e,this.config.setGoogleMapsAPIKey(e)}get apiKey(){return this._apiKey}reset(){this.deleteScript(),this.done=!1,this.loading=!1,this.failed=!1,this.errors=[],this.onerrorEvent=null}destroy(){this.reset()}async getMapApiKey(){if(this.apiKey)return this.apiKey;let e=this._hadPreviousFailure(),t=!1;for(let i=1;i<=3;i+=1){let s=e&&!t;try{let e=await fetch(this._getMapKeyUrl(i,s));if(t=t||s,this._setFailureFlag(!1),!e.ok)throw Error(`Failed to fetch API key: ${e.status}`);let r=await e.text();if(!r)return"";return this.apiKey=r,this.apiKey}catch(e){console.error(e),i<3&&await this._delay(300*2**(i-1))}}return this._setFailureFlag(!0),""}_getMapKeyUrl(e,t){let i=[];e>1&&i.push(`attempt=${e}`),t&&i.push("recovered_after_failure=1");let s=i.length?`?${i.join("&")}`:"";return`${this._getBaseUrl()}/api/v1/map${s}`}_hadPreviousFailure(){try{return"1"===this.window.sessionStorage.getItem(h)}catch(e){return!1}}_setFailureFlag(e){try{e?this.window.sessionStorage.setItem(h,"1"):this.window.sessionStorage.removeItem(h)}catch(e){}}_delay(e){return new Promise(t=>{this.window.setTimeout(t,e)})}async createUrl(){let e=await this.getMapApiKey();if(!e)throw Error("Refusing to load Google Maps without an API key");
2919let t="https://maps.googleapis.com/maps/api/js";return t+`?callback=__googleMapsCallback&key=${e}&libraries=places`}async setScript(){let e;if(this.document.getElementById(this.id))return void this.callback();try{e=await this.createUrl()}catch(e){console.error(e),this.failed=!0,this.loading=!1,this.onerrorEvent=e,this.callback();return}let t=this.document.createElement("script");t.id=this.id,t.type="text/javascript",t.src=e,t.onerror=this.loadErrorCallback.bind(this),t.defer=!0,t.async=!0,this.document.head.appendChild(t)}loadErrorCallback(e){if(this.errors.push(e),this.errors.length<=this.retries){let e=this.errors.length*2**this.errors.length;console.log(`Failed to load Google Maps script, retrying in ${e} ms.`),setTimeout(()=>{this.deleteScript(),this.setScript().catch(e=>console.error(e))},e)}else this.failed=!0,this.onerrorEvent=e,this.callback()}deleteScript(){let e=this.document.getElementById(this.id);e&&e.remove()}load(){return this.loadPromise()}loadPromise(){return new Promise((e,t)=>{this.loadCallback(i=>{i?t(i):e()})})}loadCallback(e){this.callbacks.push(e),this.execute()}setCallback(){this.window.__googleMapsCallback=this.callback.bind(this)}resetIfRetryingFailed(){this.failed&&this.reset()}callback(){this.done=!0,this.loading=!1,this.callbacks.forEach(e=>{e(this.onerrorEvent)}),this.callbacks=[]}execute(){this.window.google&&this.window.google.maps&&this.window.google.maps.version&&this.callback(),this.resetIfRetryingFailed(),this.done?this.callback():this.loading||(this.loading=!0,this.setCallback(),this.setScript().catch(e=>console.error(e)))}_getBaseUrl(){let{isBuilder:e,websiteApiGatewayUrl:t}=this.config;return e?t:""}resizeStaticMapDimensions(e,t){if(e<=1024&&t<=1024)return{width:e,height:t};let i=Math.min(1024/e,1024/t);return{width:parseInt(e*i),height:parseInt(t*i)}}convertThemeToStaticApiUrl(e){return e.map(e=>{let t=e.stylers.reduce((e,t)=>{let i=t.visibility?`visibility:${t.visibility}`:"",s=t.color?`color:${t.color.replace("#","0x")}`:"",r=t.lightness?`lightness:${t.lightness}`:"";return`${e}|${i}${s}${r}`},""),i=e.elementType?`|element:${e.elementType}`:"";return`feature:${e.featureType}${i}${t}`})}async getMapApiSignedUrl(e){try{let t=await fetch(`${this._getBaseUrl()}/api/v1/map/signature?${e}`);if(!t.ok)throw Error("Failed to fetch signed URL");let{url:i}=await t.json();return i}catch(e){return console.error(e),""}}generateStaticMapUrl(e,t,i,s,r,a){let{width:o,height:n}=this.resizeStaticMapDimensions(r,a),l={center:`${e},${t}`,zoom:i,scale:2,size:`${o}x${n}`,key:this.apiKey};s&&(l.style=this.convertThemeToStaticApiUrl(s));let d=new URLSearchParams;return Object.entries(l).forEach(([e,t])=>{Array.isArray(t)?t.forEach(t=>d.append(e,t.toString())):d.append(e,t.toString())}),`https://maps.googleapis.com/maps/api/staticmap?${d.toString()}`}async generateDigitallySignedStaticMapUrl({srcWidth:e,srcHeight:t,theme:i,...s}){let{width:r,height:a}=this.resizeStaticMapDimensions(e,t),o={...s,size:`${r}x${a}`};i&&(o.style=this.convertThemeToStaticApiUrl(i));let n=new URLSearchParams;Object.entries(o).forEach(([e,t])=>{Array.isArray(t)?t.forEach(t=>n.append(e,t.toString())):n.append(e,t.toString())});let l=n.toString();try{return await this.getMapApiSignedUrl(l)}catch(e){return console.error(e),""}}}(x,window,document),U=new class extends s{destroy(){}updateQueryString(e,t,i){i||(i=this.window.location.href);let s=RegExp(`([?&])${e}=.*?(&|#|$)`,"i"),r="";null!=t&&(Array.isArray(t)?t.length&&(r=this.serializeArray(e,t)):"object"==typeof t?(s=RegExp(`([?&])${e}\\[[^=]*\\]=.*?(&|#|$)`,"i"),r=this.serializeObj(t,"",e)):r=`${e}=${encodeURIComponent(t)}`);let a=i.split("#"),o=a[0];if(s.test(i)){let e=o;for(r=r?`$1${r}$2`:"$1";s.test(e);)o=e.replace(s,r),e=e.replace(s,"$1");o=o.replace(/(&|\?)$/,"")}else if(r){let e=-1!==o.indexOf("?")?"&":"?";o+=`${e}${r}`}return void 0!==a[1]&&null!==a[1]&&(o+=`#${a[1]}`),o}getParameterByName(e,t){t||(t=this.window.location.href),e=e.replace(/[[\]]/g,"\\$&");let i=RegExp(`[?&]${e}(=([^&#]*)|&|#|$)`),s=Array.from(RegExp.prototype[Symbol.matchAll].call(i,t)).flat();if(!s.length){let i=RegExp(`[?&]${e}(\\[.*?\\])=(.*?)(?=&|#|$)`,"g");return s=Array.from(RegExp.prototype[Symbol.matchAll].call(i,t)).flat(),this._parseParamToObject(s,"advancedFilters"===e)}return s.length>3?s.reduce((e,t,i)=>((i+1)%3==0&&e.push(decodeURIComponent(t.replace(/\+/g," "))),e),[]):s[2]?decode
2919URIComponent(s[2].replace(/\+/g," ")):""}makePageKey(e){return e.replace("section-","").replace(/-/g,"")}makeParamKey(e,t){return e.global?e.urlKey:`${t}-${e.urlKey}`}deserializeParams(e,t){let i={},s=this.makePageKey(t),r=this.getParameterByName(s);return r&&(i.page=parseInt(r)),Array.isArray(e)&&e.forEach(e=>{let t=this.makeParamKey(e,s),r=this.getParameterByName(t);if("int"===e.type)isFinite(r=parseInt(r))||(r=null);else if("bool"===e.type||"boolean"===e.type)r="true"===r||"false"!==r&&null;else if("json"===e.type)try{r=JSON.parse(r)}catch(e){}i[e.formKey||e.param]=r}),i}serializeParams(e,t,i){let s=this.window.location.href,r=this.makePageKey(t);return s=this.updateQueryString(r,i.page,s),Array.isArray(e)&&e.forEach(e=>{let t=this.makeParamKey(e,r),a=i[e.formKey||e.param];"json"===e.type&&null!=a&&(a=JSON.stringify(a)),s=this.updateQueryString(t,a,s)}),s}formatSliderAtom(e,t=""){return t+(Number.isInteger(e)?e:e.toFixed(2))}formatSliderValue(e,t="",i=""){return e<1e3?this.formatSliderAtom(e,t):e<1e6?`${this.formatSliderAtom(e/1e3,t)}${i}K`:`${this.formatSliderAtom(e/1e6,t)}${i}M`}formatSliderPriceRange(e,t,i,s){return t.min===e&&0!==e?`${s.lowPrefix}${this.formatSliderValue(e,i," ")}`:t.max===e?`${this.formatSliderValue(e,i," ")}${s.highSuffix}`:`${this.formatSliderValue(e,i," ")}`}formatSliderAreaRange(e,t,i,s){return t.min===e&&0!==e?`${s.lowPrefix}${this.formatSliderValue(e)} ${i}`:t.max===e?`${this.formatSliderValue(e)}${s.highSuffix} ${i}`:`${this.formatSliderValue(e)} ${i}`}getSearchFormValues(e){let{queryElement:t,priceSliderElement:i,areaSliderElement:s,neighborhoodSelect:r}=e,a={};if(t&&(a.search=t.value||null),i){let e=i.value.split(";"),t=parseInt(i.dataset.min),s=parseInt(i.dataset.max),r=parseInt(e[0]),o=parseInt(e[1]);a.priceMin=r!==t?r:null,a.priceMax=o!==s?o:null}if(s){let e=s.value.split(";"),t=parseInt(s.dataset.min),i=parseInt(s.dataset.max),r=parseInt(e[0]),o=parseInt(e[1]);a.areaMin=r!==t?r:null,a.areaMax=o!==i?o:null}return r&&(a.neighborhoodId=r.value||null),a}serializeObj(e,t="",i=""){let s=[];for(let r in e)if(e.hasOwnProperty(r)){let a,o=e[r];if(i){let e=t?`[${t}][${r}]`:`[${r}]`;a=`${i}${e}`}else a=t?`${t}[${r}]`:r;null!==o&&Array.isArray(o)?o.length&&s.push(this.serializeArray(a,o)):null!==o&&"object"==typeof o?s.push(this.serializeObj(o,a)):s.push(`${a}=${encodeURIComponent(o)}`)}return s.join("&")}serializeArray(e,t,i=""){let s=[];return t.forEach(t=>{let r=i?`${i}${e}`:e;s.push(`${r}=${encodeURIComponent(t)}`)}),s.join("&")}_parseParamToObject(e,t=!1){if(!e.length)return null;let i={};for(let s=0;s<e.length;s++)if((s+1)%3==0){let r=decodeURIComponent(e[s].replace(/\+/g," ")),a=e[s-1];Object.assign(i,this._setObjectPath(a,r,i,t))}return i}_setObjectPath(e,t,i,s=!1){let r=e.split(/[\[\]]/).filter(Boolean),a=["in","nin","btw","ciin","cinin"],o={},n=o,l=((e,t,i)=>{if(!t)return;let s=(Array.isArray(t)?t:t.match(/([^[.\]])+/g)).reduce((e,t)=>e&&e[t],e);return void 0===s?i:s})(i,r.join("."));return r.forEach((e,o)=>{o===r.length-1?l?n[e]=Array.isArray(l)?[...l,t]:[l,t]:n[e]=s&&a.includes(e)?[t]:t:(n[e]=i[e]?i[e]:{},n=n[e])}),o}}(x,window,document),N=new class extends s{constructor(e,t,i){super(e,t,i),this._createLightbox=this._createLightbox.bind(this),this.expandSliders=[]}initialize(e={}){try{let{document:e}=this,t=e.querySelectorAll(".has-mobile-expand");t.forEach(e=>{this._addExpandButton(e)}),this.expandSliders=this.expandSliders.concat(t)}catch(e){console.log(e)}}destroy(){let{document:e}=this;e.querySelectorAll(".lp-expand-btn, .lp-expand-btn-wrapper").forEach(e=>e.remove()),this.expandSliders=[]}_addExpandButton(e){let{document:t}=this,i=e.closest("section[id]"),s=e.dataset.append,r=i.querySelector(".lp-expand-btn");if(!r)if((r=t.createElement("button")).className="lp-expand-btn",r.setAttribute("aria-label","Open a lightbox"),r.innerHTML='<span class="lp-i lp-i--expand-alt" aria-hidden="true"></span>',s){let e=i.querySelector(s);e&&e.appendChild(r)}else{let i=t.createElement("div");i.className="lp-expand-btn-wrapper",i.style.position="relative",i.appendChild(r),e.parentNode.insertBefore(i,e.nextSibling)}r.addEventListener("click",()=>{this._createLightbox({slider:e,section:i})})}_createLightbox({slider:e,section:t,initialIndex:i}){let{window:s,document:r}=this,a=`lightbox-for-${t?.id}`,o=s.$&&s.$.fn.slick,n=o&&e.slick,l="function"==typeof s.Splide,d=e.classList.contains("is-initialized")&&e.classList.contains("splide");function c(){let t=r.createElement("div");t.id=a,t.className="lp-lightbox",t.setAttribute("tabindex","-1"),t.setAttribute("role","dialog"),t.setAttribute("aria-modal","true"),t.innerHTML=`
2920      <button class="lp-lightbox__close" aria-label="close modal"></button>
2921      <div class="lp-lightbox__content">
2922        <div class="lp-lightbox__carousel splide" role="group" aria-label="Image Gallery">
2923          <div class="splide__arrows">
2924            <button class="splide__arrow splide__arrow--prev lp-lightbox-arrow lp-lightbox-arrow--prev"></button>
2925            <button class="splide__arrow splide__arrow--next lp-lightbox-arrow lp-lightbox-arrow--next"></button>
2926          </div>
2927          <div class="splide__track">
2928            <ul class="splide__list"></ul>
2929          </div>
2930        </div>
2931      </div>
2932    `,"function"==typeof s.lpUI.requestScrollLock?s.lpUI.requestScrollLock(a):r.body.style.overflow="hidden",r.body.appendChild(t);let o=t.querySelector(".lp-lightbox__carousel"),n=o.querySelector(".splide__list");t.classList.add("show"),(d?e.querySelectorAll(".splide__slide:not(.splide__slide--clone) img"):e.querySelectorAll("img")).forEac
2932h(e=>{let t=e.cloneNode(!0);t.removeAttribute("style");let i=r.createElement("li");i.className="lp-lightbox__slide splide__slide",i.appendChild(t),n.appendChild(i)});let l=new s.Splide(o,{rewind:!0,arrows:!0,arrowPath:"",type:"loop",clones:1,pagination:!1,perPage:1,perMove:1});l.mount(),void 0!==i&&i>=0&&l.go(i),setTimeout(()=>{t.focus()},100);let c=e=>{if(!t.classList.contains("show"))return;let i=t.querySelector(".splide__arrow--prev"),s=t.querySelector(".splide__arrow--next"),r=t.querySelector(".lp-lightbox__close");"ArrowLeft"===e.key&&i?(e.preventDefault(),i.click()):"ArrowRight"===e.key&&s?(e.preventDefault(),s.click()):"Escape"===e.key&&r&&(e.preventDefault(),r.click())};r.addEventListener("keydown",c),t.querySelector(".lp-lightbox__close").addEventListener("click",()=>{r.removeEventListener("keydown",c),t.classList.remove("show"),l&&l.destroy(),"function"==typeof s.lpUI.releaseScrollLock?s.lpUI.releaseScrollLock(a):r.body.style.overflow="",t.remove()})}if("function"==typeof s.lpUI.requestScrollLock?s.lpUI.requestScrollLock(a):r.body.style.overflow="hidden",o&&!d){let t,i,o,l,d;i={arrows:!0,dots:!1,infinite:!0,draggable:!0,prevArrow:'<button type="button" class="lp-lightbox-arrow--prev lp-lightbox-arrow" aria-label="Previous"></button>',nextArrow:'<button type="button" class="lp-lightbox-arrow--next lp-lightbox-arrow" aria-label="Next"></button>'},(o=r.createElement("div")).id=a,o.className="lp-lightbox",o.setAttribute("tabindex","-1"),o.setAttribute("role","dialog"),o.setAttribute("aria-modal","true"),o.innerHTML=`
2933        <button class="lp-lightbox__close" aria-label="close modal"></button>
2934        <div class="lp-lightbox__content">
2935          <div class="lp-lightbox__carousel"></div>
2936        </div>
2937      `,r.body.appendChild(o),l=o.querySelector(".lp-lightbox__carousel"),o.classList.add("show"),n?(t=e.slick.$slides.find("img"),i.initialSlide=e.slick?.currentSlide||0,t.each(function(){s.$(".lp-lightbox__carousel").append(s.$(this).clone(!1).removeAttr("style").wrap('<div class="lp-lightbox__slide"></div>').parent())})):(t=e.querySelectorAll("img")).forEach(e=>{let t=e.cloneNode(!0);t.removeAttribute("style");let i=r.createElement("div");i.className="lp-lightbox__slide",i.appendChild(t),l.appendChild(i)}),s.$(l).slick(i),setTimeout(()=>{o.focus()},100),d=e=>{if(!o.classList.contains("show"))return;let t=o.querySelector(".lp-lightbox-arrow--prev"),i=o.querySelector(".lp-lightbox-arrow--next"),s=o.querySelector(".lp-lightbox__close");"ArrowLeft"===e.key&&t?(e.preventDefault(),t.click()):"ArrowRight"===e.key&&i?(e.preventDefault(),i.click()):"Escape"===e.key&&s&&(e.preventDefault(),s.click())},r.addEventListener("keydown",d),o.querySelector(".lp-lightbox__close").addEventListener("click",()=>{r.removeEventListener("keydown",d),o.classList.remove("show");let t=l?.slick?s.$(l).slick("slickCurrentSlide"):0;l?.slick&&s.$(l).slick("unslick"),n&&s.$(e).slick("slickGoTo",t),"function"==typeof s.lpUI.releaseScrollLock?s.lpUI.releaseScrollLock(a):r.body.style.overflow="",o.remove()})}else l?c():(s.luxuryPresence.libs.loadCss(s.luxuryPresence.libs.jsLibsMap.splide.cssSrc),s.luxuryPresence.libs.loadJs(s.luxuryPresence.libs.jsLibsMap.splide.jsSrc,()=>{c(),s.luxuryPresence.libs.jsLibsMap.splide.isLoaded=!0}))}}(x,window,document),R=new class extends s{destroy(){this.window.divolte||(this.window.divolteLp=function(){(this.window.divolteLp.q=this.window.divolteLp.q||[]).push(arguments)})}initialize(e={}){let{divolteServiceUrl:t}=this.config;t&&!this.window.divolte&&this.loadScript()}loadScript(){let{divolteServiceUrl:e}=this.config,t=this.document.createElement("script");t.id="divolte-script",t.type="text/javascript",t.defer=!0,t.async=!0,t.src=`${e}/divolte.js`,this.document.head.appendChild(t),t.addEventListener("load",this.executeQueue.bind(this))}executeQueue(){(this.window.divolteLp.q||[]).forEach(([e,t])=>{this[e](t)}),this.window.divolteLp=this.divolteLp.bind(this)}divolteLp(e,t){try{this[e](t)}catch(e){console.log(e)}}sendLpEvent(e,t){if(!e.includes("pageView"))return void console.log(`${e} IS NOT SUPPORTED`);let{companyId:i,templateId:s,websiteId:r,pageId:a,shareId:o,pageMeta:n}=this.config;this.window.divolte.signal(e,Object.assign({companyId:i,templateId:s,websiteId:r,pageId:a,shareId:o,pageMeta:n},t))}sendLpPageView(){this.sendLpEvent("pageView",{})}}(x,window,document),B=new class extends s{constructor(e,t,i){super(e,t,i)}initialize(e={}){(void 0!==e.enabled?e.enabled:this.config.eventBus?.enabled)&&this.config.eventBus?.apiKey&&this.config.eventBus?.url&&this.loadScript()}loadScript(){let{eventBusUrl:e}=this.config,t=this.document.createElement("script");t.id="posthog-script",t.type="text/javascript",t.defer=!0,t.async=!0,t.src=`${e}/v2.8.0/event-bus-js.js`,this.document.head.appendChild(t),t.addEventListener("load",this.executeQueue.bind(this))}executeQueue(){this.window.LuxuryPresenceEventBus&&(this.window.eventBusProvider=this.window.LuxuryPresenceEventBus.createEventBusProvider({apiKey:this.config.eventBus.apiKey,host:this.config.eventBus.url,defaultSource:"frontend://website-render-engine"}
2937)),(this.window.eventBusLp.q||[]).forEach(([e,t])=>{this[e](t)}),this.window.eventBusLp=this.eventBusLp.bind(this)}destroy(){if(!this.window.eventBusProvider){this.window.eventBusLp=function(){(this.window.eventBusLp.q=this.window.eventBusLp.q||[]).push(arguments)};return}this.window.eventBusProvider.shutdown()}sendLpEvent(e,t){if("user.activity.page.viewed"!==e)return void console.log(`${e} IS NOT SUPPORTED`);if(!this.window.eventBusProvider)return;let{companyId:i}=this.config;try{this.window.eventBusProvider.capture(e,{company:i,data:{}})}catch(e){console.log("EventBus capture error:",e)}}eventBusLp(e,t){try{this[e](t)}catch(e){console.log(e)}}sendLpPageView(){this.sendLpEvent("user.activity.page.viewed",{})}}(x,window,document),D=new class extends s{constructor(e,t,i){super(e,t,i),this.successListeners=[],this._listenToMessages=this._listenToMessages.bind(this),this._listenToOneTapMessage=this._listenToOneTapMessage.bind(this)}initialize(e={}){try{e.googleSignOnEnabled&&!e.iframe&&this._renderGoogleOneTap(),this.document.querySelectorAll('div[data-signin-type="google-sign-in"]').forEach(e=>this._convertGoogleSignIn(e)),this.document.querySelectorAll('div[data-signin-type="facebook-sign-in"]').forEach(e=>this._convertFacebookSignIn(e))}catch(e){console.log(e)}}destroy(){this.successListeners.forEach(e=>{this.window.removeEventListener("message",this._listenToMessages),this.window.removeEventListener("message",this._listenToOneTapMessage),this.window.removeEventListener(p,this.window[e])})}_renderGoogleOneTap(){if(!this._isGoogleOneTapOnCooldown()){let e=this.document.createElement("div");google.accounts.id.initializeIntermediate({src:this._buildUrlAndCopyAttributes(e,e,"googleOneTap")}),this.window.localStorage.removeItem("googleOneTapExpiration"),this.window.addEventListener("message",this._listenToOneTapMessage)}}_listenToOneTapMessage(e){let t="show_intermediate_iframe",{buyerSellerServiceUrl:i}=this.config,{data:s,origin:r}=e,{type:a,height:o,event:n,source:l,token:d}=s;if(a===t||"hide_intermediate_iframe"===a){let e=this.document.getElementById("onetap_google_intermediate_iframe");e&&(e.style.height=o,e.style.display=a===t?"unset":"none")}r===i&&"GOOGLE_SIGN_ON"===l&&("success"===n?(this._setExpirationLsItem(864e5),this._handleQualifyingQuestionsModal(d)):"cancel"===n&&this._setExpirationLsItem(72e5))}_setExpirationLsItem(e){let t=new Date().getTime()+e;this.window.localStorage.setItem("googleOneTapExpiration",t)}_isGoogleOneTapOnCooldown(){return Number(this.window.localStorage.getItem("googleOneTapExpiration"))>new Date().getTime()}_convertGoogleSignIn(e){this._replaceWithIframe("googleSignIn",e)}_convertFacebookSignIn(e){this._replaceWithIframe("facebookSignIn",e)}_replaceWithIframe(e,t){this._attachSuccessCallback(t);let i=this.document.createElement("iframe");i.src=this._buildUrlAndCopyAttributes(t,i,e),i.dataset.isSocialOauthButton=!0,t.replaceWith(i)}_listenToMessages(e){let{buyerSellerServiceUrl:t}=this.config;if(e.origin===t&&"success"===e.data.event){let e=new Event(p);this.window.dispatchEvent(e),a(this.window,this.document),this.successListeners.forEach(t=>{this.window[t]?this.window[t](e):console.error(`Callback function ${t} not found on window object`)}),this.document.documentElement.classList.add("is-login-success")}}_attachSuccessCallback(e){this.window.addEventListener("message",this._listenToMessages);let t=e.dataset.onSuccessFunctionName;t&&this.successListeners.push(t)}_buildUrlAndCopyAttributes(e,t,i){let{buyerSellerServiceUrl:s,companyId:r,websiteId:a,pageId:o,pageMeta:n}=this.config,{location:l}=this.window,d=l.origin+l.pathname,c=new URL(`${s}/buttons/${i}`),u=this.window.localStorage.getItem("utm_vars"),h=this.window.localStorage.getItem("referrer");c.searchParams.append("companyId",r),c.searchParams.append("websiteId",a),c.searchParams.append("pageId",o),c.searchParams.append("sourceUrl",d),c.searchParams.append("pageMeta",JSON.stringify(n)),u&&c.searchParams.append("utm",u),h&&c.searchParams.append("referrer",h);let p=["data-size","data-width","data-text","data-button-type","data-shape","data-layout","data-max-rows","data-use-continue-as","data-type","data-theme","data-logo_alignment","data-locale"];
2937return Array.from(e.attributes).forEach(e=>{p.includes(e.nodeName)?c.searchParams.append(e.nodeName,e.nodeValue):t.setAttribute("id"===e.nodeName?"data-id":e.nodeName,e.nodeValue)}),c.toString()}_decodeToken(e){try{let t=e.split(".")[1].replace(/-/g,"+").replace(/_/g,"/"),i=4-t.length%4,s=4===i?t:t+"=".repeat(i);return JSON.parse(atob(s))}catch(e){return null}}_handleQualifyingQuestionsModal(e){if(e&&this.window.luxuryPresence&&this.window.luxuryPresence.qualifyingQuestionsModal){let t=this._decodeToken(e);t&&t.email&&this.window.luxuryPresence.qualifyingQuestionsModal.showModal(t.email,"Google Sign On")}}}(x,window,document),O=new class extends s{constructor(e,t,i){super(e,t,i),this.showModal=this.showModal.bind(this),this.hasModalBeenSubmitted=this.hasModalBeenSubmitted.bind(this),this.modalId="qualifying-questions-modal",this.cookieKey="qualifyingQuestionsModalSubmitted",this.qualifyingQuestionsModalEnabled=!0,this.eventListeners=[],this.timeouts=[]}initialize(e={}){this.qualifyingQuestionsModalEnabled=e.qualifyingQuestionsModalEnabled??this.qualifyingQuestionsModalEnabled,this.qualifyingQuestionsModalEnabled&&this.attachModalCloseListeners()}destroy(){this.eventListeners.forEach(({element:e,event:t,handler:i})=>{e&&e.removeEventListener&&e.removeEventListener(t,i)}),this.timeouts.forEach(e=>{clearTimeout(e)}),this.restoreBodyScroll(),this.eventListeners=[],this.timeouts=[]}hasModalBeenSubmitted(){return"true"===this.getCookie(this.cookieKey)}setModalSubmittedCookie(){this.setCookie(this.cookieKey,"true",365)}showModal(e,t){!this.qualifyingQuestionsModalEnabled||this.hasModalBeenSubmitted()||(this.updateEmailValue(e),this.updateTriggerSourceValue(t),this.showModalElement())}getModalElement(){let e=this.document.getElementById(this.modalId);return e||console.error("Modal element not found:",this.modalId),e}updateEmailValue(e){let t=this.getModalElement();if(!t)return;let i=t.querySelector('input[name="email"]');i&&"string"==typeof e&&(i.value=e)}updateTriggerSourceValue(e){let t=this.getModalElement();if(!t)return;let i=t.querySelector(`#${this.modalId}-triggerSource`);i&&"string"==typeof e&&(i.value=e)}showModalElement(){let e=this.getModalElement();e&&(e.style.display="flex",this.blockBodyScroll())}getCookie(e){let t=`; ${this.document.cookie}`.split(`; ${e}=`);return 2===t.length?decodeURIComponent(t.pop().split(";").shift()):null}setCookie(e,t,i){let s="";if(i){let e=new Date;e.setTime(e.getTime()+864e5*i),s=`; expires=${e.toUTCString()}`}let r="; path=/; SameSite=Lax";this.window&&this.window.location&&"https:"===this.window.location.protocol&&(r+="; Secure"),this.document.cookie=`${e}=${encodeURIComponent(t||"")}${s}${r}`}blockBodyScroll(){this._prevOverflow=this.document.body.style.overflow,this.document.body.style.overflow="hidden"}restoreBodyScroll(){this.document.body.style.overflow=this._prevOverflow||"",this._prevOverflow=null}attachModalCloseListeners(){let e=this.getModalElement();if(!e)return;let t=this.document.getElementById(`${this.modalId}-form`);if(t){let i=()=>{this.setModalSubmittedCookie();let t=setTimeout(()=>{e.style.display="none",this.restoreBodyScroll()},100);this.timeouts.push(t)};t.addEventListener("formsubmitted",i),this.eventListeners.push({element:t,event:"formsubmitted",handler:i})}let i=e.querySelector('[data-dismiss="modal"]');if(i){let t=()=>{e.style.display="none",this.restoreBodyScroll()};i.addEventListener("click",t),this.eventListeners.push({element:i,event:"click",handler:t})}let s=t=>{(t.target===e||t.target.id===this.modalId)&&(e.style.display="none",this.restoreBodyScroll())};e.addEventListener("click",s),this.eventListeners.push({element:e,event:"click",handler:s})}}(x,window,document),q=new class extends s{constructor(e,t,i){super(e,t,i),this.isValidating=!1,this.lastValidationResult=null,this.lastValidationTime=null,this.validationCacheDuration=3e5}destroy(){this.isValidating=!1,this.lastValidationResult=null,this.lastValidationTime=null}async validateSession(e={}){let{useCache:t=!0}=e;if(t&&null!==this.lastValidationResult&&this.lastValidationTime&&Date.now()-this.lastValidationTime<this.validationCacheDuration)return this.lastValidationResult;if(this.isValidating)return null!==this.lastValidationResult&&this.lastValidationResult;this.isValidating=!0;let i=`
2938      query {
2939        validSession {
2940          success
2941        }
2942      }
2943    `;try{let e=await this.window.fetch("/graphql",{method:"POST",headers:{"Content-Type":"application/json"},credentials:"include",body:JSON.stringify({query:i})});if(!e.ok)return console.error("SessionController: HTTP error during session validation",e.status),this.lastValidationResult=!1,this.lastValidationTime=Date.now(),!1;let t=await e.json();if(t.errors)return this.lastValidationResult=!1,this.lastValidationTime=Date.now(),!1;let s=t.data?.validSession?.success===!0;return this.lastValidationResult=s,this.lastValidationTime=Date.now(),s}catch(e){return console.error("SessionController: Error validating session",e),this.lastValidationResult=!1,this.lastValidationTime=Date.now(),!1}finally{this.isValidating=!1}}clearCache(){this.lastValidationResult=null,this.lastValidationTime=null}}(x,window,document),V=new class extends s{constructor(e,t,i){super(e,t,i),this.consentListener=null,this.eventName=null}destroy(){this.consentListener&&this.eventName&&(this.document.removeEventListener(this.eventName,this.consentListener),this.consentListener=null)}loadScript(){this.document.getElementById("posthog-script")||this.window.luxuryPresence.eventBus.initialize({enabled:this.config.eventBus?.enabled}),this.document.getElementById("divolte-script")||this.window.luxuryPresence.divolte.initialize({})}removeScripts(){this.window.luxuryPresence?.eventBus?.destroy?.(),this.window.luxuryPresence?.divolte?.destroy?.(),this.document.getElementById("posthog-script")?.remove(),this.document.getElementById("divolte-script")?.remove()}async initialize(e={}){let t=m[e.provider];if(!t)return;this.eventName=t.eventName;let i=await this.window.luxuryPresence.session.validateSession();(t.hasAnalyticsConsent(this.document,this.window)||i)&&this.loadScript(),this.consentListener||(this.consentListener=e=>{t.isAnalyticsAccepted(e.detail)?this.loadScript():this.removeScripts()},this.document.addEventListener(t.eventName,this.consentListener))}}(x,window,document),F=new class extends s{destroy(){}transformVariables(e,t){let i;return y(i={...t},["testimonialId"]),f(i,["testimonialId"],"testimonialIds"),0===i.limit&&delete i.limit,(void 0===i.limit||null===i.limit)&&(("testimonials"===e||"testimonialsCount"===e)&&(i.limit=50),("agents"===e||"agentsCount"===e||"neighborhoods"===e||"neighborhoodsCount"===e||"posts"===e||"postsCount"===e||"pressReleases"===e||"pressReleasesCount"===e)&&(i.limit=100)),!function(e){let{sortDir:t}=e;"string"==typeof t&&t.includes("_")&&(e.sortDir=t.replace(/_/g," "))}(i),!function(e,t){switch(t){case"agent":break;case"testimonials":case"testimonialsCount":y(e,["testimonialIds"]);break;case"agents":case"agentsCount":y(e,["officeId","teamId","developmentId","agentIds","tags"]),f(e,["officeId"],"officeIds"),f(e,["teamId"],"teamIds"),f(e,["developmentId"],"developmentIds");break;case"neighborhoods":case"neighborhoodsCount":y(e,["neighborhoodIds","neighborhoodId"]),f(e,["neighborhoodIds","neighborhoodId"],"neighborhoodId");break;case"developments":case"developmentsCount":y(e,["agentId","neighborhoodIds","neighborhoodId","developmentIds","tag"]),e.agentId&&Array.isArray(e.agentId)&&([e.agentId]=e.agentId),f(e,["neighborhoodIds","neighborhoodId"],"neighborhoodIds");break;case"properties":case"propertiesCount":y(e,["statusIds","statusId","propertyTypeIds","propertyTypeId","propertyId","networkId","propertyIds","agentIds","teamIds","officeIds","neighborhoodIds","
2943spaceTypeIds","addressState","addressCity","backfillProviders","backfillMLSListingIds","backfillMLSAgentIds","backfillMLSOfficeIds"]),["propertyIds","agentIds","teamIds","officeIds","neighborhoodIds","spaceTypeIds","backfillMLSListingIds","backfillMLSAgentIds","backfillMLSOfficeIds"].forEach(t=>f(e,[t],t)),f(e,["statusIds","statusId"],"propertyStatusId"),e.excludeStatusId&&(e.excludePropertyStatusId=e.excludeStatusId,delete e.excludeStatusId),f(e,["propertyTypeIds","propertyTypeId"],"propertyTypeId"),f(e,["networkId"],"networkId"),f(e,["propertyId"],"propertyIds"),["salesPriceGTE","salesPriceLTE","leasePriceGTE","leasePriceLTE","livingSpaceSizeGTE","livingSpaceSizeLTE"].forEach(t=>{null!=e[t]&&(e[t]=Math.trunc(Number(e[t])))});break;case"posts":case"postsCount":y(e,["categoryIds","categoryId","neighborhoodId"]),void 0!==e.order&&(e.sort=e.order,delete e.order),f(e,["categoryIds","categoryId"],"categoryId");break;case"postCategories":y(e,["categoryId","categoryIds"]),void 0!==e.order&&(e.sort=e.order,delete e.order),f(e,["categoryIds","categoryId"],"categoryId");break;case"pressReleases":case"pressReleasesCount":y(e,["pressReleaseId","categories","propertyId","developmentId","agentId","teamId"]),f(e,["pressReleaseId"],"pressReleaseIds");break;case"offices":case"officesCount":y(e,["officeId","officeIds","tags"]),f(e,["officeId"],"officeIds");break;case"teams":case"teamsCount":y(e,["teamId","teamIds"]),f(e,["teamId"],"teamIds");break;case"pois":y(e,["categories"]),Array.isArray(e.categories)&&(e.categories=e.categories.map(e=>e.toLowerCase())),"string"==typeof e.sortBy&&(e.sortBy=e.sortBy.toLowerCase())}}(i,e),i}transformResponse(e,t){return"agent"===e?I(t,w):"agents"===e||"agentsCount"===e?A(t,v):"neighborhood"===e?I(t,b):"neighborhoods"===e||"neighborhoodsCount"===e?A(t,S):"development"===e?I(t,_):"developments"===e||"developmentsCount"===e?A(t,E):t}transformPage(e){return{items:e&&e.items||[],count:e&&e.total||0}}applyPropertyDisclaimers(t,i){if(!Array.isArray(t)||!t.length||!i||!i.length)return Promise.resolve(t);let s=t.filter(e=>e&&e.vendorId&&e.mlsId).map(e=>({feedId:e.vendorId,listingId:e.mlsId,officeName:e.officeName??null,agentMlsId:e.mlsAgentId??null,officeMlsId:e.mlsOfficeId??null,attributionContact:e.attributionContact??null,status:e.status??null,syncedAt:e.syncedAt??null})),r=e=>{let s={};return(e||[]).forEach(e=>{s[`${e.feedId}:${e.listingId}`]=e}),t.map(e=>{let t=e&&s[`${e.vendorId}:${e.mlsId}`],r={};return i.forEach(e=>{let i=t?t[$[e]]:void 0;r[e]=i??null}),{...e,...r}})};if(!s.length)return Promise.resolve(r([]));let{websiteId:a}=this.config;return this.window.superagent?this.window.superagent.post(`${this.window.luxuryPresence.defaults.routerUrl}/graphql`).withCredentials().send({query:e(L),variables:{input:{websiteId:"string"==typeof a?a:void 0,properties:s}}}).then(e=>r(e.body&&e.body.data&&e.body.data.propertyDisclaimers),e=>(console.warn("[RouterApiController] propertyDisclaimers lookup failed:",e),r([]))):Promise.resolve(r([]))}}(x,window,document);function j(e,t){if(window.luxuryPresence[e])try{window.luxuryPresence[e].destroy()}catch(e){console.log(e)}window.luxuryPresence[e]=t}j("config",x),j("modals",T),j("buttons",k),j("validation",C),j("contactForms",M),j("mapApiLoader",P),j("pagination",U),j("expandSliders",N),j("divolte",R),j("eventBus",B),j("oauth",D),j("qualifyingQuestionsModal",O),j("session",q),j("consent",V),j("redirects",{checkHstRedirect:function(e){let{config:t}=window.luxuryPresence;return!t.hvStepTwoCaptureEnabled&&!!t.hstValuationRedirectEnabled&&!!t.mlsEnabled&&!!t.myhomeDashboardEnabled&&(window.location.href=`/home-search/home-valuation?address=${encodeURIComponent(e)}`,!0)},destroy(){}}),j("routerApi",F),window.luxuryPresence.formatSliderPriceRange=U.formatSliderPriceRange.bind(U),window.luxuryPresence.formatSliderAreaRange=U.formatSliderAreaRange.bind(U),window.luxuryPresence.getSearchFormValues=U.getSearchFormValues.bind(U),window.luxuryPresence.handlebarsHelpersFactory=function(i){return e(t)(i,{isEqual:(e,t)=>e==t})}})();
2944//# sourceMappingURL=lp-sdk.js.map
2945
2946    </script>
2946
2947
2948    
2948<script>
2949        var lpGlobalInitialized = false;
2950
2951        function lpGlobalInit () {
2952          if (lpGlobalInitialized) {
2953            return;
2954          }
2955            lpGlobalInitialized = true;
2956            // Initialize wow animation plugin only according to turbolinks
2957            var wow;
2958            if (window.WOW) {
2959                wow = new WOW({
2960                    animateClass: 'animated',
2961                    offset: wowOffset,
2962                    live: false,
2963                    callback: function(box) {}
2964                });
2965            }
2966            // Initialize handlebar helpers only once
2967            function handlebarsInit() {
2968              if (!window.Handlebars) {
2969                return;
2970              }
2971              HandlebarsIntl.registerWith(Handlebars);
2972              Handlebars.registerHelper(window.luxuryPresence.handlebarsHelpersFactory(Handlebars));
2973            }
2974
2975            handlebarsInit();
2976
2977              var modalContentUrl = "/modals.html";
2978                const modalsContainer = document.getElementById('modals');
2979                if (modalsContainer) {
2980                  fetch(modalContentUrl).then(function(res) {
2981                    if (!res.ok) {
2982                      throw new Error(`HTTP error! Status: ${res.status}`);
2983                    }
2984                    return res.text();
2985                  }).then(function(resultText) {
2986                    modalsContainer.innerHTML = resultText;
2987
2988                    // now we need to execute all script elements
2989                    Array.from(modalsContainer.getElementsByTagName('script')).forEach(function (s) {
2990                      const script  = document.createElement("script");
2991                      script.text = s.innerHTML;
2992                      Array.from(s.attributes).forEach(function (a) {
2993                        script.setAttribute(a.name, a.value);
2994                      })
2995                      s.parentNode.replaceChild(script, s);
2996                    });
2997
2998                    try {
2999                      window.luxuryPresence.modals.initialize(window.luxuryPresence._modalIncludes);
3000                      window.luxuryPresence.contactForms.initialize({ selector: '#modals' });
3001                      window.luxuryPresence.validation.initialize({ selector: '#modals' });
3002                      window.luxuryPresence.oauth.initialize({
3003                        googleSignOnEnabled: true,
3004                        iframe: false });
3005                    } catch (e) {
3006                      console.log(e);
3007                    }
3008                    document.querySelectorAll('.modals > .modal .close').forEach(closeModalBtn => {
3009                      closeModalBtn.addEventListener('click', function() {
3010                        window.lpUI.hideClosestModal(closeModalBtn);
3011                      });
3012                    });
3013                  }).catch((e) => console.log(e));
3014                }
3015            /* Initialize Luxury Presence SDK */
3016            try {
3017                window.luxuryPresence.config.setCompany("f62f900d-59fc-4354-b573-bcc1e7da46a2", {});
3018                window.luxuryPresence.config.setWebsite("a1e3c847-d1ba-4058-a24c-e7ce6eef6e17", {
3019                    myhomeDashboardEnabled: true,
3020                    mlsEnabled: true,
3021                    hstValuationRedirectEnabled: true,
3022                    hvStepTwoCaptureEnabled: false
3023                });
3024                const url = new URL(window.location.href);
3025                const shareId = url.searchParams.get('shareId');
3026                window.luxuryPresence.config.setPage("40d5caca-148e-443e-9b67-5cdc022265da", {
3027                    sourceResource: "",
3028                    pageElementId: "",
3029                    pageQueryVariables: {},
3030                    shareId: "",
3031                });
3032                window.luxuryPresence.config.setWebsiteApiGatewayUrl("https://wgw.luxurypresence.com", {});
3033                window.luxuryPresence.config.setBuyerSellerServiceUrl("https://bss.luxurypresence.com", {});
3034                    window.luxuryPresence.config.setDivolteServiceUrl("https://t.luxurypresence.com", {});
3035                  window.luxuryPresence.config.setEventBusUrl("https://cdn.luxurypresence.com/scripts/event-bus-js", {});
3036                  window.luxuryPresence.config.setEventBus({
3037                    enabled: true,
3038                    apiKey: "phc_PMYT31xlmXBaTCwpIRx1v6RrpLVZIuP47N3mOT6KLnr",
3039                    url: "https://p.luxurypresence.com",
3040                  });
3041                window.luxuryPresence.config.setTemplateId("dbfbedc7-c7e2-4812-86ee-0ee198862c21", {});
3042                window.luxuryPresence.config.setLeadIngesterUrl("https://leads.luxurypresence.com", {});
3043                window.luxuryPresence.buttons.initialize({});
3044                    window.luxuryPresence.consent.initialize({ provider: 'lp-consent' });
3045                window.luxuryPresence.contactForms.initialize({});
3046                window.luxuryPresence.validation.initialize({});
3047                window.luxuryPresence.expandSliders.initialize({});
3048                window.luxuryPresence.oauth.initialize({ googleSignOnEnabled: true, iframe: false });
3049                window.luxuryPresence.qualifyingQuestionsModal.initialize({ qualifyingQuestionsModalEnabled: true });
3050            } catch (e) {
3051                console.log(e);
3052            }
3053
3054            /* Inject Section Specific Javascript */
3055                try {
3056(function init(sectionDomId) {
3057  const disclaimerLabel = document.querySelector('#' + sectionDomId + ' .lp-tcr-content');
3058  if (disclaimerLabel) {
3059    const input = disclaimerLabel.querySelector('input');
3060    if (input) {
3061      input.setAttribute('id', `${sectionDomId}-termsAccepted`);
3062      input.value = 'true';
3063      const label = document.createElement('label');
3064      label.setAttribute('for', `${sectionDomId}-termsAccepted`);
3065      label.classList.add('lp-visually-hidden');
3066      label.textContent = 'Opt in/Disclaimer Consent:';
3067      disclaimerLabel.prepend(label);
3068    }
3069  }
3070  function setHttp(link) {
3071    if (link.search(/^http[s]?\:\/\/|\//) == -1) {
3072      link = 'https://' + link;
3073    }
3074    return link;
3075  }
3076  const socialLinks = document.querySelectorAll('#' + sectionDomId + ' .socials__link, #' + sectionDomId + ' .lp-socials__link');
3077  socialLinks.forEach(linkElement => {
3078    const href = linkElement.getAttribute('href');
3079    if (href) {
3080      linkElement.setAttribute('href', setHttp(href));
3081    }
3082  });
3083  const redirectLink = $('#' + sectionDomId + ' .redirect-link');
3084  if (redirectLink.length) {
3085    const rawHref = setHttp(redirectLink.attr('href'));
3086    let formEvent;
3087    if (rawHref) {
3088      formEvent = redirectLink.data('redirect') ? 'formsubmitted' : 'reset';
3089      $('#' + sectionDomId + ' .contact-form').find('form').on(formEvent, function () {
3090        redirectLink.attr('href', rawHref);
3091        redirectLink[0].click();
3092      });
3093    }
3094  }
3095})('modal-global-contact-us');
3096} catch(e) {
3097console.log(e);
3098}
3099                
3100                try {
3101(function init(sectionDomId) {
3102  const $section = $('#' + sectionDomId);
3103  const $hamburger = $section.find('.hamburger-component');
3104  function onSideMenuShow() {
3105    if (!$hamburger.hasClass('active')) {
3106      $hamburger.addClass('active');
3107    }
3108  }
3109  function onSideMenuHide() {
3110    $hamburger.removeClass('active');
3111  }
3112  const $window = $(window);
3113  $window.on('lpui-sidemenu-show.lpui-auto-clean', onSideMenuShow);
3114  $window.on('lpui-sidemenu-hide.lpui-auto-clean', onSideMenuHide);
3115  const $subContainers = $section.find('.navigation__item.sub-nav-container');
3116  $subContainers.hover(function () {
3117    $(this).find('.sub-nav').addClass('visible');
3118  }, function () {
3119    $(this).find('.sub-nav').removeClass('visible');
3120  });
3121  $window.on('click.lpui-auto-clean', function () {
3122    $('.sub-nav-container.visible-dropdown').removeClass('visible-dropdown');
3123  });
3124  let fixedWidth = 0;
3125  const rightPad = 20;
3126  function fixSubsPosition() {
3127    const wWidth = window.innerWidth;
3128    if (innerWidth === fixedWidth) {
3129      return;
3130    }
3131    fixedWidth = wWidth;
3132    $subContainers.each(function () {
3133      const $sub = $(this).find('.sub-nav');
3134      $sub[0].style.right = '';
3135      const sRect = $sub[0].getBoundingClientRect();
3136      const sRight = sRect.left + sRect.width;
3137      if (sRight > wWidth - rightPad) {
3138        const parentRect = $sub[0].offsetParent.getBoundingClientRect();
3139        const parentRight = parentRect.left + parentRect.width;
3140        $sub[0].style.right = `${parentRight - wWidth + rightPad}px`;
3141      }
3142    });
3143  }
3144  var debouncer;
3145  $window.on('resize.lpui-auto-clean', function () {
3146    clearTimeout(debouncer);
3147    debouncer = setTimeout(fixSubsPosition, 500);
3148  });
3149  fixSubsPosition();
3150  if ($('.property-intro').length || $('.property-intro-2').length) {
3151    $('nav').addClass('dark-opening');
3152    $("#global-navbar").css({
3153      "background-color": "rgb(26, 26, 26)",
3154      "color": "rgb(255, 255, 255)"
3155    });
3156  }
3157  function initAutoTruncateMenu() {
3158    const $navbar = $section.find('.navbar');
3159    const $navList = $section.find('.navigation > ul');
3160    if (!$navbar.length || !$navList.length) {
3161      return;
3162    }
3163    const $logo = $section.find('.logo');
3164    const $buttonsWrapper = $section.find('.buttons-wrapper');
3165    const $allItems = $navList.children('.navigation__item');
3166    const $phoneItem = $allItems.filter(function () {
3167      return $(this).find('a[href^="tel:"]').length > 0;
3168    });
3169    const $menuItems = $allItems.not($phoneItem);
3170    if (!$menuItems.length) {
3171      return;
3172    }
3173    const buffer = 8;
3174    function measureFixedWidth() {
3175      let width = buffer;
3176      if ($logo.length) {
3177        width += $logo.outerWidth(true) || 0;
3178      }
3179      if ($buttonsWrapper.length) {
3180        width += $buttonsWrapper.outerWidth(true) || 0;
3181      }
3182      if ($phoneItem.length) {
3183        width += $phoneItem.outerWidth(true) || 0;
3184      }
3185      return width;
3186    }
3187    function truncateMenu() {
3188      if (!$navList.is(':visible')) {
3189        return;
3190      }
3191      $menuItems.css('display', '');
3192      const availableWidth = $navbar[0].getBoundingClientRect().width - measureFixedWidth();
3193      let widthSoFar = 0;
3194      let overflowed = false;
3195      $menuItems.each(function () {
3196        const $item = $(this);
3197        if (overflowed) {
3198          $item.css('display', 'none');
3199          return;
3200        }
3201        widthSoFar += $item.outerWidth(true);
3202        if (widthSoFar > availableWidth) {
3203          $item.css('display', 'none');
3204          overflowed = true;
3205        }
3206      });
3207    }
3208    let truncateFrame;
3209    function scheduleTruncate() {
3210      if (truncateFrame) {
3211        return;
3212      }
3213      truncateFrame = window.requestAnimationFrame(function () {
3214        truncateFrame = null;
3215        truncateMenu();
3216      });
3217    }
3218    scheduleTruncate();
3219    if (window.ResizeObserver) {
3220      const resizeObserver = new ResizeObserver(scheduleTruncate);
3221      resizeObserver.observe($navbar[0]);
3222    } else {
3223      $(window).on('resize.lpui-auto-truncate', scheduleTruncate);
3224    }
3225    $section.find('img').on('load.lpui-auto-truncate', scheduleTruncate);
3226    $(window).on('load.lpui-auto-truncate', scheduleTruncate);
3227    if (document.fonts && document.fonts.ready) {
3228      document.fonts.ready.then(scheduleTruncate);
3229    }
3230  }
3231  initAutoTruncateMenu();
3232})('global-navbar');
3233} catch(e) {
3234console.log(e);
3235}
3236                try {
3237(function init(sectionDomId, options) {
3238  var elementSelector = options.elementSelector || 'nav';
3239  var element = document.querySelector(elementSelector);
3240  var sections = document.querySelectorAll('body > section');
3241  var subNavContainers = element.querySelectorAll('.sub-nav');
3242  var initialBackgroundColor = options.initialBackgroundColor || element.style.backgroundColor;
3243  var backgroundColorScroll = options.backgroundColorScroll || '#191919';
3244  var fontColor = options.fontColor || '#fff';
3245  var fontColorScroll = options.fontColorScroll || '#000';
3246  var didScroll = false;
3247  var lastScrollTop = 0;
3248  var delta = 5;
3249
3250  // eslint-disable-next-line sonarjs/no-collapsible-if
3251  if (wow) {
3252    // Wowjs might not trigger for position fixed elements
3253    if (window.scrollY > 0) {
3254      element.querySelectorAll('.wow').forEach(el => wow.show(el));
3255    }
3256  }
3257  function adjustNavPinState() {
3258    // Remove 'visible' class from all subNavContainers
3259    for (let i = 0; i < subNavContainers.length; i++) {
3260      subNavContainers[i].classList.remove('visible');
3261    }
3262    if (window.scrollY > 0) {
3263      element.style.backgroundColor = backgroundColorScroll;
3264      element.style.color = fontColorScroll;
3265      element.classList.add('scroll');
3266    } else {
3267      element.style.backgroundColor = initialBackgroundColor;
3268      element.style.color = fontColor;
3269      element.classList.remove('scroll');
3270    }
3271  }
3272  adjustNavPinState();
3273  function onScroll() {
3274    didScroll = true;
3275  }
3276  window.addEventListener('scroll', onScroll);
3277
3278  // eslint-disable-next-line
3279  var debounceInterval = setInterval(() => {
3280    if (didScroll) {
3281      // eslint-disable-next-line
3282      hasScrolled();
3283      didScroll = false;
3284    }
3285  }, 250);
3286  function hasScrolled() {
3287    adjustNavPinState();
3288    // eslint-disable-next-line
3289    var navbarHeight = element.offsetHeight;
3290    // eslint-disable-next-line
3291    var st = window.scrollY;
3292
3293    // Make sure they scroll more than delta
3294    if (Math.abs(lastScrollTop - st) <= delta) {
3295      return;
3296    }
3297    if (st > lastScrollTop && st > navbarHeight) {
3298      // Scroll Down
3299      element.style.transform = `translateY(-${navbarHeight}px) scaleY(0)`;
3300      document.documentElement.style.setProperty('--global-header-height', '0px');
3301
3302      // Some sections "follow" the navbar with class sticky (i.e. Producer search)
3303      sections.forEach(section => {
3304        if (section.classList.contains('sticky')) {
3305          section.style.top = '0px';
3306        }
3307      });
3308    } else {
3309      // Scroll Up
3310      // eslint-disable-next-line
3311      if (st + window.innerHeight < document.documentElement.scrollHeight) {
3312        element.style.transform = `translateY(0) scaleY(1)`;
3313        document.documentElement.style.setProperty('--global-header-height', `${navbarHeight}px`);
3314        sections.forEach(section => {
3315          if (section.classList.contains('sticky')) {
3316            section.style.top = `${navbarHeight}px`;
3317          }
3318        });
3319      }
3320    }
3321    lastScrollTop = st;
3322  }
3323})('NAVBAR', JSON.parse("{\"fontColor\":\"#fff\",\"elementSelector\":\"nav\",\"fontColorScroll\":\"#fff\",\"initialFontColor\":\"#fff\",\"backgroundColorScroll\":\"#1a1a1a\",\"initialBackgroundColor\":\"rgba(0,0,0,0)\"}"));
3324} catch(e) {
3325console.log(e);
3326}
3327                try {
3328(function init(sectionDomId) {
3329  var sidemenu = $('#' + sectionDomId);
3330  sidemenu.on('lpui-sidemenu-show.lpui-auto-clean', function () {
3331    window.lpUI.requestScrollLock(sectionDomId);
3332  });
3333  $(window).on('lpui-sidemenu-hide.lpui-auto-clean', function () {
3334    window.lpUI.releaseScrollLock(sectionDomId);
3335  });
3336  $(window).click(function (e) {
3337    let targetContactForm = $(e.target).closest('#modal-global-contact-us').length;
3338    let targetSideMenu = $(e.target).closest('.sidemenu').length;
3339    let targetContactItem = $(e.target).closest('[data-type="CONTACT_US"]').length;
3340    let targetHamburger = $(e.target).closest('.hamburger-component').length;
3341    if (!(targetContactForm || targetSideMenu || targetContactItem || targetHamburger)) {
3342      $('body').removeClass('locked');
3343      $('.hamburger').removeClass('active');
3344      $('.sidemenu').removeClass('visible');
3345      $('#modal-global-contact-us').removeClass('visible');
3346    }
3347  });
3348})('global-sidemenu');
3349} catch(e) {
3350console.log(e);
3351}
3352                
3353                try {
3354(function init(footerId) {
3355  var textContent = $(".text_content_wrap p").text().trim().length;
3356  const socialLinks = $(`#${footerId} .lp-socials__link`);
3357  if (textContent < 1) {
3358    $(".text_content_wrap").remove();
3359    $(".second_text_footer").css({
3360      'margin-bottom': 0
3361    });
3362  }
3363  if (socialLinks.length > 0) {
3364    socialLinks.attr('data-wow-offset', '10');
3365  }
3366  if ($(window).width() > 1280) {
3367    let footer = document.querySelector("#" + footerId);
3368    let copyrightElem = footer.querySelector(".copy_zone");
3369    if (copyrightElem) {
3370      copyrightElem.style.whiteSpace = "nowrap";
3371      let nowrapElemWidth = copyrightElem.clientWidth;
3372      copyrightElem.style.whiteSpace = "";
3373      let normalElemWidth = copyrightElem.clientWidth;
3374      if (nowrapElemWidth > normalElemWidth) {
3375        footer.querySelector(".form-col--socials").classList.add("form-col--xl-auto");
3376      }
3377    }
3378  }
3379  const form = $("#" + footerId).find("form");
3380  const redirectLink = $('#' + footerId + ' .redirect-link');
3381  form.on("reset", function () {
3382    redirectPage(redirectLink);
3383  });
3384  function redirectPage(link) {
3385    if (link.length) {
3386      const rawHref = link.attr('href');
3387      link.attr('href', setHttp(rawHref));
3388      link[0].click();
3389    }
3390  }
3391  function setHttp(link) {
3392    if (link.search(/^http[s]?\:\/\/|\//) == -1) {
3393      link = 'http://' + link;
3394    }
3395    return link;
3396  }
3397})('global-footer');
3398} catch(e) {
3399console.log(e);
3400}
3401                
3402                try {
3403(function init(options) {})('global-mobile-contact');
3404} catch(e) {
3405console.log(e);
3406}
3407                
3408                try {
3409(function init(sectionDomId) {
3410  var $section = $('#' + sectionDomId);
3411  var $carousel = $section.find('.collection');
3412  var currentPreTitle = '';
3413  var currentTitle = '';
3414  const $videoWrap = $section.find('.full-screen-video-component > .video-wrapper');
3415  if ($videoWrap.length) {
3416    const $video = $videoWrap.find('video');
3417    $video.each(function () {
3418      var v = this;
3419      if (v.readyState > 0) {
3420        $videoWrap.addClass('playing');
3421      } else {
3422        v.addEventListener('canplay', function () {
3423          $videoWrap.addClass('playing');
3424        }, {
3425          once: true
3426        });
3427      }
3428    });
3429  }
3430  $('#' + sectionDomId + ' .collection').slick({
3431    dots: $('#' + sectionDomId + ' .collection').find('.item').length > 1 ? true : false,
3432    arrows: false,
3433    speed: 0,
3434    fade: true,
3435    autoplay: true,
3436    autoplaySpeed: 6000,
3437    pauseOnHover: false,
3438    pauseOnFocus: false
3439  });
3440  $carousel.on('beforeChange', function () {
3441    currentPreTitle = $(this).find('.slick-current').find('.lp-text--pretitle').text();
3442    currentTitle = $(this).find('.slick-current').find('.lp-h1').text();
3443    $(this).find('.slick-current').find('.lp-h1').addClass('animation');
3444    $(this).find('.slick-current').find('.lp-text--pretitle').addClass('animation');
3445  });
3446  $carousel.on('afterChange', function () {
3447    if (currentPreTitle === $(this).find('.slick-current').find('.lp-text--pretitle').text()) {
3448      $(this).find('.slick-current').find('.lp-text--pretitle').removeClass('animation');
3449    }
3450    if (currentTitle === $(this).find('.slick-current').find('.lp-h1').text()) {
3451      $(this).find('.slick-current').find('.lp-h1').removeClass('animation');
3452    }
3453  });
3454})('section-bcabfae8-4664-4efa-a488-eceb5362ee27', 'undefined');
3455} catch(e) {
3456console.log(e);
3457}
3458                try {
3459(function init(sectionDomId) {
3460  var textBlock = $('#' + sectionDomId + ' .hoverable-image__text-wrap');
3461  var textBlockPaddingTop = parseInt($('#' + sectionDomId + ' .hoverable-image__text-col').css('padding-top'));
3462  var textBlockPaddingBottom = parseInt($('#' + sectionDomId + ' .hoverable-image__text-col').css('padding-bottom'));
3463  var imageBlock = $('#' + sectionDomId + ' .hoverable-image__img-col > div');
3464  function resizeImage() {
3465    if (window.matchMedia('(min-width: 993px)').matches) {
3466      imageBlock.css('min-height', textBlock.height() + textBlockPaddingTop + textBlockPaddingBottom);
3467    }
3468  }
3469  $('#' + sectionDomId + ' .hoverable-image__img-col--on-hover').click(function () {
3470    if (window.matchMedia('(hover: none) and (pointer: coarse)').matches) {
3471      $(this).toggleClass('active');
3472    }
3473  });
3474  resizeImage();
3475  $(window).on('resize.lpui-auto-clean', resizeImage);
3476})('section-951a1889-3429-42e7-8d93-31df407aeb20', 'undefined');
3477} catch(e) {
3478console.log(e);
3479}
3480                try {
3481(function init(sectionDomId, options) {
3482  let section = null;
3483  switch (sectionDomId) {
3484    case 'NAVBAR':
3485      section = document.querySelector('body > nav, #global-navbar');
3486      break;
3487    case 'FOOTER':
3488      section = document.querySelector('body > footer, #global-footer');
3489      break;
3490    case 'SIDEMENU':
3491      section = document.querySelector('body > div.sidemenu, #global-sidemenu');
3492      break;
3493    case 'CONTACT':
3494      section = document.querySelector('#modal-global-contact-us');
3495      break;
3496    case 'MOBILE_CONTACT':
3497      section = document.querySelector('body > div.mobile-contact-wrapper, #global-mobile-contact');
3498      break;
3499    case 'SUBSCRIBE':
3500      // Subscribe Not Implemented
3501      section = null;
3502      break;
3503    case 'ACCOUNT':
3504      // Account Not Implemented
3505      section = null;
3506      break;
3507    default:
3508      section = document.querySelector('#' + sectionDomId);
3509  }
3510  if (!section) {
3511    return;
3512  }
3513
3514  // Where content / items are rendered
3515  const dataContainer = section.querySelector('.data-container');
3516  if (!dataContainer) {
3517    // no place to render items = no need to query server or do anything else
3518    return;
3519  }
3520  let variables = options.variables || {};
3521
3522  // Some variables in options may not have been injected - remove
3523  Object.keys(variables).forEach(function (variableName) {
3524    if (typeof variables[variableName] === 'string' && variables[variableName].match(/^{{.*}}$/)) {
3525      delete variables[variableName];
3526    }
3527  });
3528
3529  // Merge page query variables
3530  if (options.usePageResource) {
3531    variables = {
3532      ...variables,
3533      ...window.luxuryPresence.config.pageMeta.pageQueryVariables[options.resource]
3534    };
3535  }
3536
3537  // ROUTER-CLEANUP: keep router branch, drop legacy when API retired. Callers
3538  // resolve the flag — fetchData reads the section stamp, aux fetches read
3539  // their own resource's stamp (auxUsesRouter).
3540  function apiUrl(useRouter) {
3541    return options.url || (useRouter ? window.luxuryPresence.defaults.routerUrl : window.luxuryPresence.defaults.apiGatewayUrl);
3542  }
3543
3544  // ROUTER-CLEANUP: aux resources roll out on their own flag, not the section's
3545  // (options.routerApiAux is stamped per aux resource server-side).
3546  function auxUsesRouter(resource) {
3547    return !!(options.routerApiAux && options.routerApiAux[resource]);
3548  }
3549
3550  // Pagination Executes on a Numbered Pagination Container
3551  //  Or via a load more button
3552  let mode = 'BUTTONLESS_PAGINATION';
3553  const container = section.querySelector('.pagination-container');
3554  const loadMoreButton = section.querySelector(options?.loadMoreSelector);
3555  if (container) {
3556    mode = 'NUMBERED_PAGINATION';
3557  }
3558  if (loadMoreButton) {
3559    mode = 'LOAD_MORE_BUTTON';
3560  }
3561  let searchContainer = section.querySelector('.search-container');
3562  const hidePaginationOnFirstPage = options.hidePaginationOnFirstPage || false;
3563  const eventPrefix = '__pagination-';
3564  const searchFormParams = options.searchFormParams || (options.resource === 'properties' ? [{
3565    param: 'neighborhoodId',
3566    urlKey: 'neighborhood'
3567  }, {
3568    param: 'search',
3569    urlKey: 'search'
3570  }, {
3571    param: 'salesPriceGTE',
3572    urlKey: 'pricemin',
3573    formKey: 'priceMin',
3574    type: 'int'
3575  }, {
3576    param: 'salesPriceLTE',
3577    urlKey: 'pricemax',
3578    formKey: 'priceMax',
3579    type: 'int'
3580  }, {
3581    param: 'livingSpaceSizeGTE',
3582    urlKey: 'areamin',
3583    formKey: 'areaMin',
3584    type: 'int'
3585  }, {
3586    param: 'livingSpaceSizeLTE',
3587    urlKey: 'areamax',
3588    formKey: 'areaMax',
3589    type: 'int'
3590  }] : []);
3591
3592  // Total entries - initialized in first render
3593  let totalNumber = 0;
3594  const DefaultSearchParams = {
3595    page: 1
3596  };
3597  searchFormParams.forEach(function (formParam) {
3598    DefaultSearchParams[formParam.formKey || formParam.param] = null;
3599  });
3600  let searchParams = {
3601    ...DefaultSearchParams
3602  };
3603  const offset = options.variables?.offset || 0;
3604  let scrollTarget = options.scrollTargetSelector ? section.querySelector(options.scrollTargetSelector) || section : section;
3605  let scrollOffset = (parseInt(options.scrollOffset, 10) || 0) ?? 100;
3606
3607  // entries of per page
3608  // when query variables for a given section would't be filled options.pageSize can store
3609  // template string, ex: "{{variables.limit}}", below code handles that case and set 9 as a default value
3610  let pageSize = parseInt(options.pageSize, 10) || 9;
3611
3612  // Adding mobile pageRange support
3613  var NARROW_BREAKPOINT = 600;
3614  var mobileBreakpoint = options.mobileBreakpoint > 0 ? options.mobileBreakpoint : NARROW_BREAKPOINT;
3615  var paginationMql = window.matchMedia(`(max-width: ${mobileBreakpoint}px)`);
3616
3617  // Page range (pages on both sides of the current page)
3618  var mobilePageRange = options.mobilePageRange > 0 ? options.mobilePageRange : 0;
3619  var desktopPageRange = options.pageRange >= 0 ? options.pageRange : 2;
3620  var pageRange = paginationMql.matches ? mobilePageRange : desktopPageRange;
3621
3622  // Whether to display the 'Previous' button
3623  var showPrevious = true;
3624
3625  // Whether to display the 'Next' button
3626  var showNext = true;
3627
3628  // Whether to display the page buttons
3629  var showPageNumbers = true;
3630
3631  // 'Previous' text
3632  var prevText = options.prevText || '&laquo;';
3633
3634  // 'Next' text
3635  var nextText = options.nextText || '&raquo;';
3636
3637  // Ellipsis text
3638  var ellipsisText = '&hellip;';
3639  var classPrefix = 'paginationjs';
3640
3641  // Default active class
3642  var activeClassName = 'active';
3643
3644  // Default disable class
3645  var disableClassName = 'disabled';
3646
3647  // Pagination element's position in the container
3648  var position = 'bottom';
3649
3650  // Whether to trigger pagination at initialization
3651  var triggerPagingOnInit = !options.skipInitialLoad;
3652  var showFirstOnEllipsisShow = true;
3653  var showLastOnEllipsisShow = true;
3654
3655  // Instantiated in init()
3656  var el = null;
3657
3658  // Controls scrollTop logic
3659  var firstRender = true;
3660  var renderBySearch = false;
3661  var disabled = false;
3662
3663  // Pagination script class selector
3664  var paginationScriptSelector = options.paginationPartialName ? `.${options.paginationPartialName}` : '.pagination-script';
3665
3666  // Property Specific Image Override if No Image
3667  var propertyPlaceholderImage = window.luxuryPresence.defaults.propertyPlaceholderImage;
3668
3669  // Construct template
3670  var templateHTML = section.querySelector(`script${paginationScriptSelector}`)?.innerHTML || '';
3671  var template = Handlebars.compile(templateHTML);
3672
3673  // Initialize
3674  init();
3675  function init() {
3676    Object.assign(searchParams, window.luxuryPresence.pagination.deserializeParams(searchFormParams, sectionDomId));
3677
3678    // Append/prepend pagination element to the pagination container
3679    if (mode === 'NUMBERED_PAGINATION') {
3680      el = document.createElement('div');
3681      el.className = 'paginationjs';
3682      container[position === 'bottom' ? 'append' : 'prepend'](el);
3683    }
3684    if (searchContainer) {
3685      initSearchContainer({
3686        fetchNeighborhoods: searchContainer.dataset.fetchNeighborhoods === 'true',
3687        fetchPostCategories: searchContainer.dataset.fetchPostCategories === 'true',
3688        fetchOffices: searchContainer.dataset.fetchOffices === 'true',
3689        fetchRentalRates: searchContainer.dataset.fetchRentalRates === 'true'
3690      }, function () {
3691        syncSearchFormState(searchParams);
3692      });
3693    }
3694
3695    // Bind events
3696    observer();
3697  }
3698  function syncSearchFormState(params) {
3699    searchContainer.dispatchEvent(new CustomEvent('sync', {
3700      detail: params
3701    }));
3702  }
3703  function initSearchContainer(options, done) {
3704    var promises = [];
3705    if (options.fetchNeighborhoods) {
3706      promises.push(fetchAllNeighborhoods(function (neighborhoods) {
3707        searchContainer.dispatchEvent(new CustomEvent('neighborhoods-data', {
3708          detail: {
3709            data: neighborhoods.map(function (item) {
3710              return {
3711                value: item.id,
3712                label: item.name
3713              };
3714            })
3715          }
3716        }));
3717      }));
3718    }
3719    if (options.fetchPostCategories) {
3720      promises.push(fetchPostCategories(function (categories) {
3721        searchContainer.dispatchEvent(new CustomEvent('post-categories-data', {
3722          detail: {
3723            data: categories
3724          }
3725        }));
3726      }));
3727    }
3728    if (options.fetchOffices) {
3729      promises.push(fetchOffices(function (offices) {
3730        searchContainer.dispatchEvent(new CustomEvent('offices-data', {
3731          detail: {
3732            data: offices
3733          }
3734        }));
3735      }));
3736    }
3737    if (options.fetchRentalRates) {
3738      promises.push(fetchAllRentalRates(function (rentalRates) {
3739        searchContainer.dispatchEvent(new CustomEvent('rental-rates-data', {
3740          detail: {
3741            data: rentalRates
3742          }
3743        }));
3744      }));
3745    }
3746    if (promises.length > 0) {
3747      Promise.all(promises).then(function () {
3748        done();
3749      });
3750    } else {
3751      // element's custom code is not executed yet, so we're scheduling callback to after element's code
3752      setTimeout(done);
3753    }
3754  }
3755  function fetchAllNeighborhoods(done) {
3756    var useRouter = auxUsesRouter('neighborhoods');
3757    // ROUTER-CLEANUP: keep router branch, drop legacy when API retired. Same
3758    // args on both APIs (the federated neighborhoods field accepts
3759    // withProperties/withBlogPosts); only the selection set differs.
3760    var gqlQuery = 'query ($companyId: String, $withProperties: NeighborhoodPropertiesFilter, $withBlogPosts: NeighborhoodBlogPostsFilter, $offset: Int, $limit: Int) {' + 'neighborhoods (companyId: $companyId, withProperties: $withProperties, withBlogPosts: $withBlogPosts, offset: $offset, limit: $limit) {' + (useRouter ? 'items {id, name}' : 'id, name') + '}}';
3761    var payload = {};
3762    payload.offset = 0;
3763    payload.limit = 100;
3764    payload.companyId = variables.companyId;
3765    if (options.resource === 'properties') {
3766      payload.withProperties = {
3767        active: true
3768      };
3769      ['agentIds', 'tag', 'propertyTypeId', 'statusIds', 'architectureStyle', 'lifestyle', 'salesPriceGTE', 'salesPriceLTE', 'leasePriceGTE', 'leasePriceLTE', 'livingSpaceSizeGTE', 'livingSpaceSizeLTE', 'bathCountGTE', 'bathCountLTE', 'bedroomCountGTE', 'bedroomCountLTE', 'bathCountGTE', 'bathCountLTE', 'bedroomCountGTE', 'bedroomCountLTE', 'featuredListing', 'leaseProperty', 'neighborhoodId', 'developmentId', 'openHouse'].forEach(function (field) {
3770        if (variables[field] !== undefined && variables[field] !== null) {
3771          payload.withProperties[field] = variables[field];
3772        }
3773      });
3774    }
3775    if (options.resource === 'posts') {
3776      payload.withBlogPosts = {
3777        active: true
3778      };
3779      ['search', 'postStatusId', 'featured', 'categoryId', 'categoryIds', 'neighborhoodId', 'slug'].forEach(function (field) {
3780        if (variables[field] !== undefined && variables[field] !== null) {
3781          payload.withBlogPosts[field] = variables[field];
3782        }
3783      });
3784    }
3785
3786    // ROUTER-CLEANUP: keep router branch, drop legacy when API retired
3787    if (useRouter) {
3788      payload = window.luxuryPresence.routerApi.transformVariables('neighborhoods', payload);
3789    }
3790    superagent.post(apiUrl(useRouter) + '/graphql').withCredentials().send({
3791      query: gqlQuery,
3792      variables: payload
3793    }).then(function (res) {
3794      var value = res.body.data && res.body.data.neighborhoods || {};
3795      // ROUTER-CLEANUP: keep router branch, drop legacy when API retired
3796      var items = useRouter ? window.luxuryPresence.routerApi.transformPage(value).items : value || [];
3797      done(items, items.length);
3798    });
3799  }
3800  function fetchPostCategories(done) {
3801    var featured = options.resource === 'posts' && !!variables.featured;
3802    var useRouter = auxUsesRouter('postCategories');
3803    // ROUTER-CLEANUP: keep router branch, drop legacy when API retired. Only the
3804    // selection set differs ({ items {...} } on the router).
3805    var selection = 'id, name, publishedCount, featuredPublishedCount';
3806    var gqlQuery = 'query ($companyId: String, $offset: Int, $limit: Int) {' + 'postCategories (companyId: $companyId, offset: $offset, limit: $limit ' + (featured ? ' withFeaturedPublishedOnly: true' : ' withPublishedOnly: true') + ') {' + (useRouter ? 'items {' + selection + '}' : selection) + '}}';
3807    var payload = {};
3808    payload.offset = 0;
3809    payload.limit = 100;
3810    payload.companyId = variables.companyId;
3811    superagent.post(apiUrl(useRouter) + '/graphql').withCredentials().send({
3812      query: gqlQuery,
3813      variables: payload
3814    }).then(function (res) {
3815      var value = res.body.data && res.body.data.postCategories || {};
3816      // ROUTER-CLEANUP: keep router branch, drop legacy when API retired
3817      var items = useRouter ? window.luxuryPresence.routerApi.transformPage(value).items : value || [];
3818      done(items.map(function (item) {
3819        item.count = featured ? item.featuredPublishedCount : item.publishedCount;
3820        return item;
3821      }), items.length);
3822    });
3823  }
3824  function fetchOffices(done) {
3825    var useRouter = auxUsesRouter('offices');
3826    // ROUTER-CLEANUP: keep router branch, drop legacy when API retired. Only the
3827    // selection set differs ({ items {...} } on the router).
3828    var selection = 'id, name, tags';
3829    // ROUTER-CLEANUP: keep router branch, drop legacy when API retired. The two
3830    // APIs differ in more than the items wrapper: federated offices takes
3831    // companyId: ID! (legacy gateway: String), so each branch builds its whole doc.
3832    var gqlQuery = useRouter ? 'query ($companyId: ID!, $offset: Int, $limit: Int) {' + 'offices (companyId: $companyId, offset: $offset, limit: $limit) {' + 'items {' + selection + '}}}' : 'query ($companyId: String, $offset: Int, $limit: Int) {' + 'offices (companyId: $companyId, offset: $offset, limit: $limit) {' + selection + '}}';
3833    var payload = {
3834      offset: 0,
3835      limit: 100,
3836      companyId: variables.companyId
3837    };
3838
3839    // ROUTER-CLEANUP: keep router branch, drop legacy when API retired
3840    if (useRouter) {
3841      payload = window.luxuryPresence.routerApi.transformVariables('office
3841s', payload);
3842    }
3843    superagent.post(apiUrl(useRouter) + '/graphql').withCredentials().send({
3844      query: gqlQuery,
3845      variables: payload
3846    }).then(function (res) {
3847      var value = res.body.data && res.body.data.offices || {};
3848      // ROUTER-CLEANUP: keep router branch, drop legacy when API retired
3849      var items = useRouter ? window.luxuryPresence.routerApi.transformPage(value).items : value || [];
3850      done(items, items.length);
3851    });
3852  }
3853
3854  // ROUTER-CLEANUP: no rentalRates field on the federated router — legacy only.
3855  function fetchAllRentalRates(done) {
3856    var url = options.url || window.luxuryPresence.defaults.apiGatewayUrl;
3857    var gqlQuery = 'query ($companyId: String, $offset: Int, $limit: Int) {' + 'rentalRates (companyId: $companyId, offset: $offset, limit: $limit) {rentalRateId, label}}';
3858    var payload = {
3859      offset: 0,
3860      limit: 100,
3861      companyId: variables.companyId
3862    };
3863    superagent.post(url + '/graphql').withCredentials().send({
3864      query: gqlQuery,
3865      variables: payload
3866    }).then(function (res) {
3867      var items = res.body.data && res.body.data.rentalRates || [];
3868      done(items, items.length);
3869    }).catch(function (err) {
3870      console.error('Error fetching rental rates:', err);
3871      done([], 0);
3872    });
3873  }
3874  function fetchData(params, done) {
3875    var resource = options.resource;
3876    var gqlQuery = options.query || window.luxuryPresence.defaults.gql[resource];
3877    var payload = {};
3878    try {
3879      payload = JSON.parse(JSON.stringify(variables));
3880    } catch (e) {
3881      Object.keys(variables).forEach(function (variableName) {
3882        payload[variableName] = variables[variableName];
3883      });
3884    }
3885    payload.offset = (params.page - 1) * pageSize + offset;
3886    payload.limit = pageSize;
3887    payload.companyId = options.companyId;
3888    searchFormParams.forEach(function (formParam) {
3889      var val = params[formParam.formKey || formParam.param];
3890      if (val !== null && val !== undefined) {
3891        objSet(payload, formParam.param, val);
3892      }
3893    });
3894
3895    // ROUTER-CLEANUP: keep router branch, drop legacy when API retired
3896    if (options.useRouterApi) {
3897      payload = window.luxuryPresence.routerApi.transformVariables(resource, payload);
3898    }
3899
3900    // TODO: Disabled loading due to jarring effect
3901    // dataContainer.html('Loading...');
3902    superagent.post(apiUrl(options.useRouterApi) + '/graphql').withCredentials().send({
3903      query: gqlQuery,
3904      variables: payload
3905    }).then(function (res) {
3906      if (res.body.errors) {
3907        done(res.body.errors);
3908        return;
3909      }
3910      var data = res.body.data || {};
3911      // ROUTER-CLEANUP: keep router branch, drop legacy when API retired
3912      var resources;
3913      var resourceCount;
3914      if (options.useRouterApi) {
3915        var page = window.luxuryPresence.routerApi.transformPage(data[resource]);
3916        resources = window.luxuryPresence.routerApi.transformResponse(resource, page.items);
3917        resourceCount = page.count;
3918      } else {
3919        resources = data[resource] || [];
3920        resourceCount = data[resource + 'Count'] && data[resource + 'Count'].count ? data[resource + 'Count'].count : 0;
3921      }
3922      const finish = function (items) {
3923        if (resource === 'properties' && propertyPlaceholderImage?.id) {
3924          items = items.map(item => {
3925            if (item.media?.length === 0) {
3926              return Object.assign(item, {
3927                media: [propertyPlaceholderImage]
3928              });
3929            }
3930            return item;
3931          });
3932        }
3933        done(null, items, resourceCount);
3934      };
3935
3936      // ROUTER-CLEANUP: client half of PLAT-4073 — resolve the requested
3937      // disclaimers before rendering; older SDKs skip (keys stay unset).
3938      if (options.useRouterApi && resource === 'properties' && options.routerPropertyDisclaimers && options.routerPropertyDisclaimers.length && window.luxuryPresence.routerApi && typeof window.luxuryPresence.routerApi.applyPropertyDisclaimers === 'function') {
3939        window.luxuryPresence.routerApi.applyPropertyDisclaimers(resources, options.routerPropertyDisclaimers).then(finish);
3940        return;
3941      }
3942      finish(resources);
3943    });
3944  }
3945  function getTotalPage() {
3946    return Math.ceil(totalNumber / pageSize);
3947  }
3948  function renderPaginationList() {
3949    var totalPages = getTotalPage();
3950    var rangeStart = searchParams.page - pageRange;
3951    var rangeEnd = searchParams.page + pageRange;
3952    if (rangeEnd > totalPages) {
3953      rangeEnd = totalPages;
3954      rangeStart = totalPages - pageRange * 2;
3955      rangeStart = rangeStart < 1 ? 1 : rangeStart;
3956    }
3957    if (rangeStart <= 1) {
3958      rangeStart = 1;
3959      rangeEnd = Math.min(pageRange * 2 + 1, totalPages);
3960    }
3961
3962    // Making sure that 1 more page button is shown in edge positions
3963    if (pageRange === 0) {
3964      if (searchParams.page === totalPages) {
3965        rangeStart = totalPages <= 1 ? 1 : totalPages - 1;
3966      }
3967      if (searchParams.page === 1) {
3968        rangeEnd = Math.min(2, totalPages);
3969      }
3970    }
3971
3972    // Render pagination list
3973    if (mode === 'NUMBERED_PAGINATION') {
3974      el.innerHTML = generateHTML({
3975        currentPage: searchParams.page,
3976        pageRange: pageRange,
3977        rangeStart: rangeStart,
3978        rangeEnd: rangeEnd
3979      });
3980      if (totalPages < 2 && hidePaginationOnFirstPage) {
3981        container.style.display = 'none';
3982      } else {
3983        container.style.display = '';
3984      }
3985    } else if (mode === 'LOAD_MORE_BUTTON') {
3986      if (searchParams.page >= totalPages) {
3987        loadMoreButton.style.display = 'none';
3988      } else {
3989        loadMoreButton.style.display = '';
3990      }
3991    }
3992  }
3993  function render(data) {
3994    renderPaginationList();
3995
3996    // Render new content with handlebars
3997    var html = '';
3998    if (mode === 'LOAD_MORE_BUTTON' && searchParams.page > 1) {
3999      // If using load more, append search results to existing results
4000      html = dataContainer.innerHTML;
4001    }
4002    for (var i = 0; i < data.length; i++) {
4003      var itemData = recursivelyParse(data[i]);
4004      itemData.sectionIndex = options.sectionIndex;
4005      itemData.renderOptions = options.renderOptions;
4006      html += template(itemData);
4007    }
4008    dataContainer.innerHTML = html;
4009
4010    // Scroll Top
4011    if (!firstRender && mode === 'NUMBERED_PAGINATION' && (!renderBySearch || !options.skipScrollOnSearch)) {
4012      // Only animate to the top if we replace dataContainer (numbered pagination)
4013      setTimeout(() => {
4014        const scrollTargetOffsetTop = scrollTarget.getBoundingClientRect().top + window.scrollY - scrollOffset;
4015        window.scrollTo({
4016          top: scrollTargetOffsetTop,
4017          behavior: 'smooth'
4018        });
4019      }, 250);
4020    }
4021    return true;
4022  }
4023  function generateHTML(args) {
4024    const totalPages = getTotalPage();
4025    const {
4026      rangeStart,
4027      rangeEnd
4028    } = args;
4029    const makeLnk = page => window.luxuryPresence.pagination.serializeParams(searchFormParams, sectionDomId, {
4030      ...searchParams,
4031      page
4032    });
4033    let html = '';
4034    if (showPrevious || showPageNumbers || showNext) {
4035      html += '<div class="paginationjs-pages"><ul>';
4036
4037      // Previous button
4038      if (showPrevious) {
4039        if (searchParams.page <= 1) {
4040          html += `<li class="${classPrefix}-prev ${disableClassName}"><a>${prevText}</a></li>`;
4041        } else {
4042          html += `<li class="${classPrefix}-prev J-paginationjs-previous" data-num="${searchParams.page - 1}" title="Previous page"><a href="${makeLnk(searchParams.page - 1)}">${prevText}</a></li>`;
4043        }
4044      }
4045
4046      // Pages
4047      if (showPageNumbers) {
4048        if (rangeStart <= 3) {
4049          for (let i = 1; i < rangeStart; i++) {
4050            html += `<li class="${classPrefix}-page J-paginationjs-page ${i === searchParams.page ? activeClassName : ''}" data-num="${i}"><a ${i === searchParams.page ? '' : `href="${makeLnk(i)}"`}>${i}</a></li>`;
4051          }
4052        } else {
4053          if (showFirstOnEllipsisShow) {
4054            html += `<li class="${classPrefix}-page ${classPrefix}-first J-paginationjs-page" data-num="1"><a href="${makeLnk(1)}">1</a></li>`;
4055          }
4056          html += `<li class="${classPrefix}-ellipsis ${disableClassName}"><a>${ellipsisText}</a></li>`;
4057        }
4058        for (let i = rangeStart; i <= rangeEnd; i++) {
4059          html += `<li class="${classPrefix}-page J-paginationjs-page ${i === searchParams.page ? activeClassName : ''}" data-num="${i}"><a ${i === searchParams.page ? '' : `href="${makeLnk(i)}"`}>${i}</a></li>`;
4060        }
4061        if (rangeEnd < totalPages - 2) {
4062          html += `<li class="${classPrefix}-ellipsis ${disableClassName}"><a>${ellipsisText}</a></li>`;
4063          if (showLastOnEllipsisShow) {
4064            html += `<li class="${classPrefix}-page ${classPrefix}-last J-paginationjs-page" data-num="${totalPages}"><a href="${makeLnk(totalPages)}">${totalPages}</a></li>`;
4065          }
4066        } else {
4067          for (let i = rangeEnd + 1; i <= totalPages; i++) {
4068            html += `<li class="${classPrefix}-page J-paginationjs-page" data-num="${i}"><a href="${makeLnk(i)}">${i}</a></li>`;
4069          }
4070        }
4071      }
4072
4073      // Next button
4074      if (showNext) {
4075        if (searchParams.page >= totalPages) {
4076          html += `<li class="${classPrefix}-next ${disableClassName}"><a>${nextText}</a></li>`;
4077        } else {
4078          html += `<li class="${classPrefix}-next J-paginationjs-next" data-num="${searchParams.page + 1}" title="Next page"><a href="${makeLnk(searchParams.page + 1)}">${nextText}</a></li>`;
4079        }
4080      }
4081      html += '</ul></div>';
4082    }
4083    return html;
4084  }
4085  function go(newSearchParams, callback, restorationVisit) {
4086    if (disabled) return;
4087    var goToPageNumber = newSearchParams.page;
4088
4089    // Page number is out of bounds
4090    if (!goToPageNumber || goToPageNumber < 1) return;
4091    var totalPage = getTotalPage();
4092
4093    // Page number is out of bounds
4094    if (!restorationVisit && totalNumber > 0) {
4095      if (goToPageNumber > totalPage) return;
4096    }
4097    if (!options.skipSerialization && (mode === 'NUMBERED_PAGINATION' || searchContainer)) {
4098      var newURL = window.luxuryPresence.pagination.serializeParams(searchFormParams, sectionDomId, {
4099        ...newSearchParams,
4100        page: goToPageNumber !== 1 && mode === 'NUMBERED_PAGINATION' ? newSearchParams.page : null
4101      });
4102      if (!areQueryParamsEqual(newSearchParams, searchParams) && !restorationVisit) {
4103        window.history.pushState({}, '', window.luxuryPresence.getPath(newURL, {
4104          queryString: true
4105        }));
4106      }
4107    }
4108
4109    // Fetch and update page
4110    fetchData(newSearchParams, renderWithData);
4111    disabled = true;
4112    function renderWithData(err, data, count) {
4113      if (err) {
4114        dataContainer.dispatchEvent(new Event('error'));
4115      } else {
4116        searchParams = {
4117          ...newSearchParams
4118        };
4119        totalNumber = count - offset;
4120        if (data.length === 0) {
4121          dataContainer.dispatchEvent(new Event('no-data'));
4122        } else {
4123          dataContainer.dispatchEvent(new Event('data'));
4124        }
4125        render(data);
4126        firstRender = false;
4127      }
4128      disabled = false;
4129      renderBySearch = false;
4130    }
4131  }
4132  function areQueryParamsEqual(first, second) {
4133    var differ = Object.keys(first).find(function (key) {
4134      return first[key] !== undefined && first[key] !== null && first[key] !== second[key];
4135    });
4136    if (differ) {
4137      return false;
4138    }
4139    differ = Object.keys(second).find(function (key) {
4140      return second[key] !== undefined && second[key] !== null && second[key] !== first[key];
4141    });
4142    return !differ;
4143  }
4144  function next(callback) {
4145    go({
4146      ...searchParams,
4147      page: searchParams.page + 1
4148    }, callback);
4149  }
4150  function previous(callback) {
4151    go({
4152      ...searchParams,
4153      page: searchParams.page - 1
4154    }, callback);
4155  }
4156  function refresh(callback) {
4157    go(searchParams, callback);
4158  }
4159  function update(params, callback) {
4160    renderBySearch = true;
4161    go(params, callback);
4162  }
4163  function observer() {
4164    if (searchContainer) {
4165      searchContainer.addEventListener('search', function (event, newSearchParams) {
4166        newSearchParams = event.detail || newSearchParams;
4167        update({
4168          ...searchParams,
4169          ...newSearchParams,
4170          page: 1
4171        });
4172      });
4173      searchContainer.addEventListener('clear-search', function () {
4174        const defaultSearchParams = {
4175          ...DefaultSearchParams
4176        };
4177        const isCurrentSearchFormStateDefault = areQueryParamsEqual({
4178          ...defaultSearchParams,
4179          page: null
4180        }, {
4181          ...searchParams,
4182          page: null
4183        });
4184
4185        // if mode is LOAD_MORE_BUTTON we should't make anything on clear
4186        // when search form have default state
4187        if (isCurrentSearchFormStateDefault && mode !== 'NUMBERED_PAGINATION') {
4188          return;
4189        }
4190
4191        // if someone initially go to some page and click 'Clear' on search from
4192        // we should't navigate to first page. We should preserve page value
4193        if (isCurrentSearchFormStateDefault) {
4194          defaultSearchParams.page = searchParams.page;
4195        }
4196        syncSearchFormState(defaultSearchParams);
4197        update(defaultSearchParams);
4198      });
4199    }
4200    if (mode === 'LOAD_MORE_BUTTON') {
4201      loadMoreButton.addEventListener('click', function (event) {
4202        go({
4203          ...searchParams,
4204          page: searchParams.page + 1
4205        });
4206        return false;
4207      });
4208    }
4209    if (mode === 'LOAD_MORE_BUTTON' || mode === 'BUTTONLESS_PAGINATION') {
4210      // Do initial render
4211      go(Object.assign({}, searchParams, {
4212        page: 1
4213      }));
4214      return;
4215    }
4216    if (mode === 'NUMBERED_PAGINATION') {
4217      // Go to specified page number
4218      container.addEventListener(eventPrefix + 'go', function (event) {
4219        let {
4220          pageNumber,
4221          done
4222        } = event.detail || {};
4223        pageNumber = parseInt(pageNumber, 10);
4224        if (!pageNumber) {
4225          return;
4226        }
4227        go({
4228          ...searchParams,
4229          page: pageNumber
4230        }, done);
4231      });
4232
4233      // Page number button click
4234      el.addEventListener('click', function (event) {
4235        let clickTarget = event.target;
4236        let current = clickTarget.closest('.J-paginationjs-page, .J-paginationjs-previous, .J-paginationjs-next');
4237        let pageNumber = current?.getAttribute('data-num');
4238        if (!pageNumber || current.classList.contains(disableClassName) || current.classList.contains(activeClassName)) {
4239          return;
4240        } else {
4241          go({
4242            ...searchParams,
4243            page: parseInt(pageNumber, 10)
4244          });
4245        }
4246        event.preventDefault();
4247      });
4248
4249      // Whether to load the default page
4250      var defaultPageNumber = searchParams.page;
4251      if (triggerPagingOnInit) {
4252        container.dispatchEvent(new CustomEvent(eventPrefix + 'go', {
4253          detail: {
4254            pageNumber: defaultPageNumber
4255          }
4256        }));
4257      }
4258    }
4259    window.addEventListener('popstate', function (event) {
4260      var newParams = Object.assign({}, DefaultSearchParams, window.luxuryPresence.pagination.deserializeParams(searchFormParams, sectionDomId));
4261      if (!areQueryParamsEqual(newParams, searchParams)) {
4262        go(newParams, null, true);
4263        if (searchContainer) {
4264          syncSearchFormState(newParams);
4265        }
4266      }
4267    });
4268  }
4269  function replaceVariables(template, variables) {
4270    var formattedString;
4271    for (var key in variables) {
4272      var value = variables[key];
4273      var regexp = new RegExp('<%=\\s*' + key + '\\s*%>', 'img');
4274      formattedString = (formattedString || template).replace(regexp, value);
4275    }
4276    return formattedString;
4277  }
4278  function isTextEditorValue(obj) {
4279    return 'raw' in obj || 'gjs' in obj;
4280  }
4281  function getTextEditorValue(obj) {
4282    if (!obj.html) {
4283      return '';
4284    }
4285    var data = obj.html;
4286    var css = (obj.raw || obj.gjs || {}).css;
4287    if (css) {
4288      data = data + '<style>' + css + '</style>';
4289    }
4290    return data;
4291  }
4292
4293  /**
4294   * check rendered resources for html and raw properties that could indicate if resource is from an advanced text editor.
4295   * strips out raw proprties and returns only HTML if it exists.
4296   * @param {Object} resources a collection retrieved from the database
4297   * @return {Object} the newly modified object.
4298   */
4299  function recursivelyParse(resources) {
4300    forEach(resources, function (value, key) {
4301      if (!value) {
4302        return;
4303      }
4304      if (value instanceof Object) {
4305        if (isTextEditorValue(value)) {
4306          resources[key] = getTextEditorValue(value);
4307          return;
4308        } else {
4309          return recursivelyParse(value);
4310        }
4311      }
4312      try {
4313        var parsedData = JSON.parse(value);
4314        if (isTextEditorValue(parsedData)) {
4315          resources[key] = getTextEditorValue(parsedData);
4316        }
4317      } catch (e) {
4318        // do nothing if we failed to parse value as JSON
4319      }
4320    });
4321    return resources;
4322  }
4323  function forEach(collection, iteratee) {
4324    var func = Array.isArray(collection) ? arrayEach : baseFor;
4325    return func(collection, iteratee);
4326  }
4327  function baseFor(object, iteratee) {
4328    if (!object) {
4329      return;
4330    }
4331    var iterable = Object(object);
4332    var props = Object.keys(object);
4333    var length = props.length;
4334    var index = -1;
4335    while (length--) {
4336      var key = props[++index];
4337      if (iteratee(iterable[key], key, iterable) === false) {
4338        break;
4339      }
4340    }
4341    return object;
4342  }
4343  function objSet(obj, path, value) {
4344    const pathArray = Array.isArray(path) ? path : path.match(/([^[.\]])+/g);
4345    pathArray.reduce((acc, key, i) => {
4346      if (acc[key] === undefined) acc[key] = {};
4347      if (i === pathArray.length - 1) acc[key] = value;
4348      return acc[key];
4349    }, obj);
4350  }
4351  function arrayEach(array, iteratee) {
4352    var index = -1;
4353    var length = array.length;
4354    while (++index < length) {
4355      if (iteratee(array[index], index, array) === false) {
4356        break;
4357      }
4358    }
4359    return array;
4360  }
4361  function selectPageRangeMode(e) {
4362    pageRange = e.matches ? mobilePageRange : desktopPageRange;
4363    renderPaginationList();
4364  }
4365  paginationMql.addEventListener('change', selectPageRangeMode);
4366})('section-21378400-f49d-4db7-a004-7a7eafce8687', JSON.parse("{\"pageSize\":\"8\",\"resource\":\"neighborhoods\",\"pageRange\":0,\"variables\":{\"limit\":8,\"order\":\"{{variables.sort}}\",\"offset\":0,\"sortDir\":\"{{variables.sortDir}}\",\"companyId\":\"f62f900d-59fc-4354-b573-bcc1e7da46a2\",\"neighborhoodIds\":[\"ee8248e8-bf65-4886-8ead-1cfce9336b7a\",\"e85e901d-a310-4fc0-90e2-84f3e6e528fb\",\"2eb92464-3c8e-4db3-8095-e200acc274f9\",\"e5d357ce-137c-46b2-9f98-a76cf21ccd8a\",\"2be96388-5207-417b-b2d1-05005d79544e\",\"7ea75070-ce70-4018-b1fc-c0c5648bba2c\",\"d1ba3790-c31d-4757-bdea-a9b0b874a2e1\",\"7a738802-085a-4d76-b276-5ea947562fcd\"]},\"hidePaginationOnFirstPage\":true,\"companyId\":\"f62f900d-59fc-4354-b573-bcc1e7da46a2\",\"usePageResource\":false,\"sectionIndex\":3,\"useRouterApi\":false,\"routerApiAux\":{\"testimonials\":true,\"agents\":false,\"neighborhoods\":false,\"developments\":false,\"properties\":false,\"posts\":true,\"pressReleases\":true,\"offices\":true,\"teams\":true,\"pois\":true,\"postCategories\":true}}"));
4367} catch(e) {
4368console.log(e);
4369}
4370                try {
4371(function init(sectionDomId) {})('section-21378400-f49d-4db7-a004-7a7eafce8687', JSON.parse("{\"resource\":\"neighborhoods\",\"useRouterApi\":false,\"companyId\":\"f62f900d-59fc-4354-b573-bcc1e7da46a2\",\"usePageResource\":false,\"sectionIndex\":3,\"routerApiAux\":{\"testimonials\":true,\"agents\":false,\"neighborhoods\":false,\"developments\":false,\"properties\":false,\"posts\":true,\"pressReleases\":true,\"offices\":true,\"teams\":true,\"pois\":true,\"postCategories\":true}}"));
4372} catch(e) {
4373console.log(e);
4374}
4375                try {
4376(function init(sectionDomId) {
4377  // please write all js here and use sectionDomId in selectors in order of DOM encapsulation 
4378})('section-fc696d32-3cf4-47d5-9539-22cb97d1c7a4', 'undefined');
4379} catch(e) {
4380console.log(e);
4381}
4382                try {
4383(function init(sectionDomId) {
4384  const $section = $('#' + sectionDomId);
4385  const $slider = $section.find('.items-slider');
4386  let $slides = $slider.children();
4387  $slides.each(function () {
4388    const $el = $(this);
4389    const $initials = $el.find('.userpic-initials');
4390    if (!$initials.length) {
4391      return;
4392    }
4393    const author = $el.find('.author').text() || '';
4394    if (!author) {
4395      return;
4396    }
4397    $initials.text(author.split('|')[0].split(/\s+/).map(w => w[0] ? w[0].toUpperCase() : '').join(''));
4398  });
4399  let slidesCount = $slider.children().length;
4400  if (slidesCount < 2) {
4401    return;
4402  }
4403  while (slidesCount < 5) {
4404    $slides.each(function () {
4405      $(this).clone().appendTo($slider);
4406    });
4407    slidesCount = $slider.children().length;
4408  }
4409  const arrowsStyle = $slider.data('arrows-style') || '';
4410  $slider.slick({
4411    centerMode: true,
4412    centerPadding: '285px',
4413    infinite: true,
4414    appendArrows: $section.find('.arrows'),
4415    arrows: true,
4416    nextArrow: `<button class="slick-next slick-arrow ${arrowsStyle}"></button>`,
4417    prevArrow: `<button class="slick-prev slick-arrow ${arrowsStyle}"></button>`,
4418    speed: 300,
4419    autoplay: !!$slider.data('autoplay'),
4420    autoplaySpeed: (parseInt($slider.data('autoscroll-interval'), 10) || 6) * 1000,
4421    responsive: [{
4422      breakpoint: 1340,
4423      settings: {
4424        centerPadding: '164px'
4425      }
4426    }, {
4427      breakpoint: 991,
4428      settings: {
4429        centerMode: false
4430      }
4431    }]
4432  });
4433  updateSlides(0);
4434  function updateSlides(active) {
4435    $slider.find('.slick-slide').each(function (i) {
4436      const $el = $(this);
4437      const idx = $el.data('slick-index');
4438      const r = ((idx - active) % slidesCount + slidesCount) % slidesCount;
4439      $el.removeClass(['sl-prev', 'sl-next', 'sl-active']);
4440      if (r === 0) {
4441        $el.addClass('sl-active');
4442      } else if (r === 1 || r === 2) {
4443        $el.addClass('sl-next');
4444      } else if (r === slidesCount - 1 || r === slidesCount - 2) {
4445        $el.addClass('sl-prev');
4446      }
4447    });
4448  }
4449  $slider.on('beforeChange', function (ev, slick, current, next) {
4450    $slider.addClass('in-transition');
4451    updateSlides(next);
4452  });
4453  $slider.on('afterChange', function () {
4454    $slider.removeClass('in-transition');
4455  });
4456})('section-b89e9295-e2d0-492f-9db1-0fee3e6f7c1e', JSON.parse("{\"resource\":\"testimonials\",\"useRouterApi\":true,\"companyId\":\"f62f900d-59fc-4354-b573-bcc1e7da46a2\",\"usePageResource\":false,\"sectionIndex\":5,\"routerApiAux\":{\"testimonials\":true,\"agents\":false,\"neighborhoods\":false,\"developments\":false,\"properties\":false,\"posts\":true,\"pressReleases\":true,\"offices\":true,\"teams\":true,\"pois\":true,\"postCategories\":true}}"));
4457} catch(e) {
4458console.log(e);
4459}
4460                try {
4461(function init(sectionDomId) {// please write all js here and use sectionDomId in selectors in order of DOM encapsulation
4462})('section-a1b98f91-47eb-47b4-bb02-5c2c74f6f975', 'undefined');
4463} catch(e) {
4464console.log(e);
4465}
4466                try {
4467(function init(sectionDomId, options) {
4468  let section = null;
4469  switch (sectionDomId) {
4470    case 'NAVBAR':
4471      section = document.querySelector('body > nav, #global-navbar');
4472      break;
4473    case 'FOOTER':
4474      section = document.querySelector('body > footer, #global-footer');
4475      break;
4476    case 'SIDEMENU':
4477      section = document.querySelector('body > div.sidemenu, #global-sidemenu');
4478      break;
4479    case 'CONTACT':
4480      section = document.querySelector('#modal-global-contact-us');
4481      break;
4482    case 'MOBILE_CONTACT':
4483      section = document.querySelector('body > div.mobile-contact-wrapper, #global-mobile-contact');
4484      break;
4485    case 'SUBSCRIBE':
4486      // Subscribe Not Implemented
4487      section = null;
4488      break;
4489    case 'ACCOUNT':
4490      // Account Not Implemented
4491      section = null;
4492      break;
4493    default:
4494      section = document.querySelector('#' + sectionDomId);
4495  }
4496  if (!section) {
4497    return;
4498  }
4499
4500  // Where content / items are rendered
4501  const dataContainer = section.querySelector('.data-container');
4502  if (!dataContainer) {
4503    // no place to render items = no need to query server or do anything else
4504    return;
4505  }
4506  let variables = options.variables || {};
4507
4508  // Some variables in options may not have been injected - remove
4509  Object.keys(variables).forEach(function (variableName) {
4510    if (typeof variables[variableName] === 'string' && variables[variableName].match(/^{{.*}}$/)) {
4511      delete variables[variableName];
4512    }
4513  });
4514
4515  // Merge page query variables
4516  if (options.usePageResource) {
4517    variables = {
4518      ...variables,
4519      ...window.luxuryPresence.config.pageMeta.pageQueryVariables[options.resource]
4520    };
4521  }
4522
4523  // ROUTER-CLEANUP: keep router branch, drop legacy when API retired. Callers
4524  // resolve the flag — fetchData reads the section stamp, aux fetches read
4525  // their own resource's stamp (auxUsesRouter).
4526  function apiUrl(useRouter) {
4527    return options.url || (useRouter ? window.luxuryPresence.defaults.routerUrl : window.luxuryPresence.defaults.apiGatewayUrl);
4528  }
4529
4530  // ROUTER-CLEANUP: aux resources roll out on their own flag, not the section's
4531  // (options.routerApiAux is stamped per aux resource server-side).
4532  function auxUsesRouter(resource) {
4533    return !!(options.routerApiAux && options.routerApiAux[resource]);
4534  }
4535
4536  // Pagination Executes on a Numbered Pagination Container
4537  //  Or via a load more button
4538  let mode = 'BUTTONLESS_PAGINATION';
4539  const container = section.querySelector('.pagination-container');
4540  const loadMoreButton = section.querySelector(options?.loadMoreSelector);
4541  if (container) {
4542    mode = 'NUMBERED_PAGINATION';
4543  }
4544  if (loadMoreButton) {
4545    mode = 'LOAD_MORE_BUTTON';
4546  }
4547  let searchContainer = section.querySelector('.search-container');
4548  const hidePaginationOnFirstPage = options.hidePaginationOnFirstPage || false;
4549  const eventPrefix = '__pagination-';
4550  const searchFormParams = options.searchFormParams || (options.resource === 'properties' ? [{
4551    param: 'neighborhoodId',
4552    urlKey: 'neighborhood'
4553  }, {
4554    param: 'search',
4555    urlKey: 'search'
4556  }, {
4557    param: 'salesPriceGTE',
4558    urlKey: 'pricemin',
4559    formKey: 'priceMin',
4560    type: 'int'
4561  }, {
4562    param: 'salesPriceLTE',
4563    urlKey: 'pricemax',
4564    formKey: 'priceMax',
4565    type: 'int'
4566  }, {
4567    param: 'livingSpaceSizeGTE',
4568    urlKey: 'areamin',
4569    formKey: 'areaMin',
4570    type: 'int'
4571  }, {
4572    param: 'livingSpaceSizeLTE',
4573    urlKey: 'areamax',
4574    formKey: 'areaMax',
4575    type: 'int'
4576  }] : []);
4577
4578  // Total entries - initialized in first render
4579  let totalNumber = 0;
4580  const DefaultSearchParams = {
4581    page: 1
4582  };
4583  searchFormParams.forEach(function (formParam) {
4584    DefaultSearchParams[formParam.formKey || formParam.param] = null;
4585  });
4586  let searchParams = {
4587    ...DefaultSearchParams
4588  };
4589  const offset = options.variables?.offset || 0;
4590  let scrollTarget = options.scrollTargetSelector ? section.querySelector(options.scrollTargetSelector) || section : section;
4591  let scrollOffset = (parseInt(options.scrollOffset, 10) || 0) ?? 100;
4592
4593  // entries of per page
4594  // when query variables for a given section would't be filled options.pageSize can store
4595  // template string, ex: "{{variables.limit}}", below code handles that case and set 9 as a default value
4596  let pageSize = parseInt(options.pageSize, 10) || 9;
4597
4598  // Adding mobile pageRange support
4599  var NARROW_BREAKPOINT = 600;
4600  var mobileBreakpoint = options.mobileBreakpoint > 0 ? options.mobileBreakpoint : NARROW_BREAKPOINT;
4601  var paginationMql = window.matchMedia(`(max-width: ${mobileBreakpoint}px)`);
4602
4603  // Page range (pages on both sides of the current page)
4604  var mobilePageRange = options.mobilePageRange > 0 ? options.mobilePageRange : 0;
4605  var desktopPageRange = options.pageRange >= 0 ? options.pageRange : 2;
4606  var pageRange = paginationMql.matches ? mobilePageRange : desktopPageRange;
4607
4608  // Whether to display the 'Previous' button
4609  var showPrevious = true;
4610
4611  // Whether to display the 'Next' button
4612  var showNext = true;
4613
4614  // Whether to display the page buttons
4615  var showPageNumbers = true;
4616
4617  // 'Previous' text
4618  var prevText = options.prevText || '&laquo;';
4619
4620  // 'Next' text
4621  var nextText = options.nextText || '&raquo;';
4622
4623  // Ellipsis text
4624  var ellipsisText = '&hellip;';
4625  var classPrefix = 'paginationjs';
4626
4627  // Default active class
4628  var activeClassName = 'active';
4629
4630  // Default disable class
4631  var disableClassName = 'disabled';
4632
4633  // Pagination element's position in the container
4634  var position = 'bottom';
4635
4636  // Whether to trigger pagination at initialization
4637  var triggerPagingOnInit = !options.skipInitialLoad;
4638  var showFirstOnEllipsisShow = true;
4639  var showLastOnEllipsisShow = true;
4640
4641  // Instantiated in init()
4642  var el = null;
4643
4644  // Controls scrollTop logic
4645  var firstRender = true;
4646  var renderBySearch = false;
4647  var disabled = false;
4648
4649  // Pagination script class selector
4650  var paginationScriptSelector = options.paginationPartialName ? `.${options.paginationPartialName}` : '.pagination-script';
4651
4652  // Property Specific Image Override if No Image
4653  var propertyPlaceholderImage = window.luxuryPresence.defaults.propertyPlaceholderImage;
4654
4655  // Construct template
4656  var templateHTML = section.querySelector(`script${paginationScriptSelector}`)?.innerHTML || '';
4657  var template = Handlebars.compile(templateHTML);
4658
4659  // Initialize
4660  init();
4661  function init() {
4662    Object.assign(searchParams, window.luxuryPresence.pagination.deserializeParams(searchFormParams, sectionDomId));
4663
4664    // Append/prepend pagination element to the pagination container
4665    if (mode === 'NUMBERED_PAGINATION') {
4666      el = document.createElement('div');
4667      el.className = 'paginationjs';
4668      container[position === 'bottom' ? 'append' : 'prepend'](el);
4669    }
4670    if (searchContainer) {
4671      initSearchContainer({
4672        fetchNeighborhoods: searchContainer.dataset.fetchNeighborhoods === 'true',
4673        fetchPostCategories: searchContainer.dataset.fetchPostCategories === 'true',
4674        fetchOffices: searchContainer.dataset.fetchOffices === 'true',
4675        fetchRentalRates: searchContainer.dataset.fetchRentalRates === 'true'
4676      }, function () {
4677        syncSearchFormState(searchParams);
4678      });
4679    }
4680
4681    // Bind events
4682    observer();
4683  }
4684  function syncSearchFormState(params) {
4685    searchContainer.dispatchEvent(new CustomEvent('sync', {
4686      detail: params
4687    }));
4688  }
4689  function initSearchContainer(options, done) {
4690    var promises = [];
4691    if (options.fetchNeighborhoods) {
4692      promises.push(fetchAllNeighborhoods(function (neighborhoods) {
4693        searchContainer.dispatchEvent(new CustomEvent('neighborhoods-data', {
4694          detail: {
4695            data: neighborhoods.map(function (item) {
4696              return {
4697                value: item.id,
4698                label: item.name
4699              };
4700            })
4701          }
4702        }));
4703      }));
4704    }
4705    if (options.fetchPostCategories) {
4706      promises.push(fetchPostCategories(function (categories) {
4707        searchContainer.dispatchEvent(new CustomEvent('post-categories-data', {
4708          detail: {
4709            data: categories
4710          }
4711        }));
4712      }));
4713    }
4714    if (options.fetchOffices) {
4715      promises.push(fetchOffices(function (offices) {
4716        searchContainer.dispatchEvent(new CustomEvent('offices-data', {
4717          detail: {
4718            data: offices
4719          }
4720        }));
4721      }));
4722    }
4723    if (options.fetchRentalRates) {
4724      promises.push(fetchAllRentalRates(function (rentalRates) {
4725        searchContainer.dispatchEvent(new CustomEvent('rental-rates-data', {
4726          detail: {
4727            data: rentalRates
4728          }
4729        }));
4730      }));
4731    }
4732    if (promises.length > 0) {
4733      Promise.all(promises).then(function () {
4734        done();
4735      });
4736    } else {
4737      // element's custom code is not executed yet, so we're scheduling callback to after element's code
4738      setTimeout(done);
4739    }
4740  }
4741  function fetchAllNeighborhoods(done) {
4742    var useRouter = auxUsesRouter('neighborhoods');
4743    // ROUTER-CLEANUP: keep router branch, drop legacy when API retired. Same
4744    // args on both APIs (the federated neighborhoods field accepts
4745    // withProperties/withBlogPosts); only the selection set differs.
4746    var gqlQuery = 'query ($companyId: String, $withProperties: NeighborhoodPropertiesFilter, $withBlogPosts: NeighborhoodBlogPostsFilter, $offset: Int, $limit: Int) {' + 'neighborhoods (companyId: $companyId, withProperties: $withProperties, withBlogPosts: $withBlogPosts, offset: $offset, limit: $limit) {' + (useRouter ? 'items {id, name}' : 'id, name') + '}}';
4747    var payload = {};
4748    payload.offset = 0;
4749    payload.limit = 100;
4750    payload.companyId = variables.companyId;
4751    if (options.resource === 'properties') {
4752      payload.withProperties = {
4753        active: true
4754      };
4755      ['agentIds', 'tag', 'propertyTypeId', 'statusIds', 'architectureStyle', 'lifestyle', 'salesPriceGTE', 'salesPriceLTE', 'leasePriceGTE', 'leasePriceLTE', 'livingSpaceSizeGTE', 'livingSpaceSizeLTE', 'bathCountGTE', 'bathCountLTE', 'bedroomCountGTE', 'bedroomCountLTE', 'bathCountGTE', 'bathCountLTE', 'bedroomCountGTE', 'bedroomCountLTE', 'featuredListing', 'leaseProperty', 'neighborhoodId', 'developmentId', 'openHouse'].forEach(function (field) {
4756        if (variables[field] !== undefined && variables[field] !== null) {
4757          payload.withProperties[field] = variables[field];
4758        }
4759      });
4760    }
4761    if (options.resource === 'posts') {
4762      payload.withBlogPosts = {
4763        active: true
4764      };
4765      ['search', 'postStatusId', 'featured', 'categoryId', 'categoryIds', 'neighborhoodId', 'slug'].forEach(function (field) {
4766        if (variables[field] !== undefined && variables[field] !== null) {
4767          payload.withBlogPosts[field] = variables[field];
4768        }
4769      });
4770    }
4771
4772    // ROUTER-CLEANUP: keep router branch, drop legacy when API retired
4773    if (useRouter) {
4774      payload = window.luxuryPresence.routerApi.transformVariables('neighborhoods', payload);
4775    }
4776    superagent.post(apiUrl(useRouter) + '/graphql').withCredentials().send({
4777      query: gqlQuery,
4778      variables: payload
4779    }).then(function (res) {
4780      var value = res.body.data && res.body.data.neighborhoods || {};
4781      // ROUTER-CLEANUP: keep router branch, drop legacy when API retired
4782      var items = useRouter ? window.luxuryPresence.routerApi.transformPage(value).items : value || [];
4783      done(items, items.length);
4784    });
4785  }
4786  function fetchPostCategories(done) {
4787    var featured = options.resource === 'posts' && !!variables.featured;
4788    var useRouter = auxUsesRouter('postCategories');
4789    // ROUTER-CLEANUP: keep router branch, drop legacy when API retired. Only the
4790    // selection set differs ({ items {...} } on the router).
4791    var selection = 'id, name, publishedCount, featuredPublishedCount';
4792    var gqlQuery = 'query ($companyId: String, $offset: Int, $limit: Int) {' + 'postCategories (companyId: $companyId, offset: $offset, limit: $limit ' + (featured ? ' withFeaturedPublishedOnly: true' : ' withPublishedOnly: true') + ') {' + (useRouter ? 'items {' + selection + '}' : selection) + '}}';
4793    var payload = {};
4794    payload.offset = 0;
4795    payload.limit = 100;
4796    payload.companyId = variables.companyId;
4797    superagent.post(apiUrl(useRouter) + '/graphql').withCredentials().send({
4798      query: gqlQuery,
4799      variables: payload
4800    }).then(function (res) {
4801      var value = res.body.data && res.body.data.postCategories || {};
4802      // ROUTER-CLEANUP: keep router branch, drop legacy when API retired
4803      var items = useRouter ? window.luxuryPresence.routerApi.transformPage(value).items : value || [];
4804      done(items.map(function (item) {
4805        item.count = featured ? item.featuredPublishedCount : item.publishedCount;
4806        return item;
4807      }), items.length);
4808    });
4809  }
4810  function fetchOffices(done) {
4811    var useRouter = auxUsesRouter('offices');
4812    // ROUTER-CLEANUP: keep router branch, drop legacy when API retired. Only the
4813    // selection set differs ({ items {...} } on the router).
4814    var selection = 'id, name, tags';
4815    // ROUTER-CLEANUP: keep router branch, drop legacy when API retired. The two
4816    // APIs differ in more than the items wrapper: federated offices takes
4817    // companyId: ID! (legacy gateway: String), so each branch builds its whole doc.
4818    var gqlQuery = useRouter ? 'query ($companyId: ID!, $offset: Int, $limit: Int) {' + 'offices (companyId: $companyId, offset: $offset, limit: $limit) {' + 'items {' + selection + '}}}' : 'query ($companyId: String, $offset: Int, $limit: Int) {' + 'offices (companyId: $companyId, offset: $offset, limit: $limit) {' + selection + '}}';
4819    var payload = {
4820      offset: 0,
4821      limit: 100,
4822      companyId: variables.companyId
4823    };
4824
4825    // ROUTER-CLEANUP: keep router branch, drop legacy when API retired
4826    if (useRouter) {
4827      payload = window.luxuryPresence.routerApi.transformVariables('office
4827s', payload);
4828    }
4829    superagent.post(apiUrl(useRouter) + '/graphql').withCredentials().send({
4830      query: gqlQuery,
4831      variables: payload
4832    }).then(function (res) {
4833      var value = res.body.data && res.body.data.offices || {};
4834      // ROUTER-CLEANUP: keep router branch, drop legacy when API retired
4835      var items = useRouter ? window.luxuryPresence.routerApi.transformPage(value).items : value || [];
4836      done(items, items.length);
4837    });
4838  }
4839
4840  // ROUTER-CLEANUP: no rentalRates field on the federated router — legacy only.
4841  function fetchAllRentalRates(done) {
4842    var url = options.url || window.luxuryPresence.defaults.apiGatewayUrl;
4843    var gqlQuery = 'query ($companyId: String, $offset: Int, $limit: Int) {' + 'rentalRates (companyId: $companyId, offset: $offset, limit: $limit) {rentalRateId, label}}';
4844    var payload = {
4845      offset: 0,
4846      limit: 100,
4847      companyId: variables.companyId
4848    };
4849    superagent.post(url + '/graphql').withCredentials().send({
4850      query: gqlQuery,
4851      variables: payload
4852    }).then(function (res) {
4853      var items = res.body.data && res.body.data.rentalRates || [];
4854      done(items, items.length);
4855    }).catch(function (err) {
4856      console.error('Error fetching rental rates:', err);
4857      done([], 0);
4858    });
4859  }
4860  function fetchData(params, done) {
4861    var resource = options.resource;
4862    var gqlQuery = options.query || window.luxuryPresence.defaults.gql[resource];
4863    var payload = {};
4864    try {
4865      payload = JSON.parse(JSON.stringify(variables));
4866    } catch (e) {
4867      Object.keys(variables).forEach(function (variableName) {
4868        payload[variableName] = variables[variableName];
4869      });
4870    }
4871    payload.offset = (params.page - 1) * pageSize + offset;
4872    payload.limit = pageSize;
4873    payload.companyId = options.companyId;
4874    searchFormParams.forEach(function (formParam) {
4875      var val = params[formParam.formKey || formParam.param];
4876      if (val !== null && val !== undefined) {
4877        objSet(payload, formParam.param, val);
4878      }
4879    });
4880
4881    // ROUTER-CLEANUP: keep router branch, drop legacy when API retired
4882    if (options.useRouterApi) {
4883      payload = window.luxuryPresence.routerApi.transformVariables(resource, payload);
4884    }
4885
4886    // TODO: Disabled loading due to jarring effect
4887    // dataContainer.html('Loading...');
4888    superagent.post(apiUrl(options.useRouterApi) + '/graphql').withCredentials().send({
4889      query: gqlQuery,
4890      variables: payload
4891    }).then(function (res) {
4892      if (res.body.errors) {
4893        done(res.body.errors);
4894        return;
4895      }
4896      var data = res.body.data || {};
4897      // ROUTER-CLEANUP: keep router branch, drop legacy when API retired
4898      var resources;
4899      var resourceCount;
4900      if (options.useRouterApi) {
4901        var page = window.luxuryPresence.routerApi.transformPage(data[resource]);
4902        resources = window.luxuryPresence.routerApi.transformResponse(resource, page.items);
4903        resourceCount = page.count;
4904      } else {
4905        resources = data[resource] || [];
4906        resourceCount = data[resource + 'Count'] && data[resource + 'Count'].count ? data[resource + 'Count'].count : 0;
4907      }
4908      const finish = function (items) {
4909        if (resource === 'properties' && propertyPlaceholderImage?.id) {
4910          items = items.map(item => {
4911            if (item.media?.length === 0) {
4912              return Object.assign(item, {
4913                media: [propertyPlaceholderImage]
4914              });
4915            }
4916            return item;
4917          });
4918        }
4919        done(null, items, resourceCount);
4920      };
4921
4922      // ROUTER-CLEANUP: client half of PLAT-4073 — resolve the requested
4923      // disclaimers before rendering; older SDKs skip (keys stay unset).
4924      if (options.useRouterApi && resource === 'properties' && options.routerPropertyDisclaimers && options.routerPropertyDisclaimers.length && window.luxuryPresence.routerApi && typeof window.luxuryPresence.routerApi.applyPropertyDisclaimers === 'function') {
4925        window.luxuryPresence.routerApi.applyPropertyDisclaimers(resources, options.routerPropertyDisclaimers).then(finish);
4926        return;
4927      }
4928      finish(resources);
4929    });
4930  }
4931  function getTotalPage() {
4932    return Math.ceil(totalNumber / pageSize);
4933  }
4934  function renderPaginationList() {
4935    var totalPages = getTotalPage();
4936    var rangeStart = searchParams.page - pageRange;
4937    var rangeEnd = searchParams.page + pageRange;
4938    if (rangeEnd > totalPages) {
4939      rangeEnd = totalPages;
4940      rangeStart = totalPages - pageRange * 2;
4941      rangeStart = rangeStart < 1 ? 1 : rangeStart;
4942    }
4943    if (rangeStart <= 1) {
4944      rangeStart = 1;
4945      rangeEnd = Math.min(pageRange * 2 + 1, totalPages);
4946    }
4947
4948    // Making sure that 1 more page button is shown in edge positions
4949    if (pageRange === 0) {
4950      if (searchParams.page === totalPages) {
4951        rangeStart = totalPages <= 1 ? 1 : totalPages - 1;
4952      }
4953      if (searchParams.page === 1) {
4954        rangeEnd = Math.min(2, totalPages);
4955      }
4956    }
4957
4958    // Render pagination list
4959    if (mode === 'NUMBERED_PAGINATION') {
4960      el.innerHTML = generateHTML({
4961        currentPage: searchParams.page,
4962        pageRange: pageRange,
4963        rangeStart: rangeStart,
4964        rangeEnd: rangeEnd
4965      });
4966      if (totalPages < 2 && hidePaginationOnFirstPage) {
4967        container.style.display = 'none';
4968      } else {
4969        container.style.display = '';
4970      }
4971    } else if (mode === 'LOAD_MORE_BUTTON') {
4972      if (searchParams.page >= totalPages) {
4973        loadMoreButton.style.display = 'none';
4974      } else {
4975        loadMoreButton.style.display = '';
4976      }
4977    }
4978  }
4979  function render(data) {
4980    renderPaginationList();
4981
4982    // Render new content with handlebars
4983    var html = '';
4984    if (mode === 'LOAD_MORE_BUTTON' && searchParams.page > 1) {
4985      // If using load more, append search results to existing results
4986      html = dataContainer.innerHTML;
4987    }
4988    for (var i = 0; i < data.length; i++) {
4989      var itemData = recursivelyParse(data[i]);
4990      itemData.sectionIndex = options.sectionIndex;
4991      itemData.renderOptions = options.renderOptions;
4992      html += template(itemData);
4993    }
4994    dataContainer.innerHTML = html;
4995
4996    // Scroll Top
4997    if (!firstRender && mode === 'NUMBERED_PAGINATION' && (!renderBySearch || !options.skipScrollOnSearch)) {
4998      // Only animate to the top if we replace dataContainer (numbered pagination)
4999      setTimeout(() => {
5000        const scrollTargetOffsetTop = scrollTarget.getBoundingClientRect().top + window.scrollY - scrollOffset;
5001        window.scrollTo({
5002          top: scrollTargetOffsetTop,
5003          behavior: 'smooth'
5004        });
5005      }, 250);
5006    }
5007    return true;
5008  }
5009  function generateHTML(args) {
5010    const totalPages = getTotalPage();
5011    const {
5012      rangeStart,
5013      rangeEnd
5014    } = args;
5015    const makeLnk = page => window.luxuryPresence.pagination.serializeParams(searchFormParams, sectionDomId, {
5016      ...searchParams,
5017      page
5018    });
5019    let html = '';
5020    if (showPrevious || showPageNumbers || showNext) {
5021      html += '<div class="paginationjs-pages"><ul>';
5022
5023      // Previous button
5024      if (showPrevious) {
5025        if (searchParams.page <= 1) {
5026          html += `<li class="${classPrefix}-prev ${disableClassName}"><a>${prevText}</a></li>`;
5027        } else {
5028          html += `<li class="${classPrefix}-prev J-paginationjs-previous" data-num="${searchParams.page - 1}" title="Previous page"><a href="${makeLnk(searchParams.page - 1)}">${prevText}</a></li>`;
5029        }
5030      }
5031
5032      // Pages
5033      if (showPageNumbers) {
5034        if (rangeStart <= 3) {
5035          for (let i = 1; i < rangeStart; i++) {
5036            html += `<li class="${classPrefix}-page J-paginationjs-page ${i === searchParams.page ? activeClassName : ''}" data-num="${i}"><a ${i === searchParams.page ? '' : `href="${makeLnk(i)}"`}>${i}</a></li>`;
5037          }
5038        } else {
5039          if (showFirstOnEllipsisShow) {
5040            html += `<li class="${classPrefix}-page ${classPrefix}-first J-paginationjs-page" data-num="1"><a href="${makeLnk(1)}">1</a></li>`;
5041          }
5042          html += `<li class="${classPrefix}-ellipsis ${disableClassName}"><a>${ellipsisText}</a></li>`;
5043        }
5044        for (let i = rangeStart; i <= rangeEnd; i++) {
5045          html += `<li class="${classPrefix}-page J-paginationjs-page ${i === searchParams.page ? activeClassName : ''}" data-num="${i}"><a ${i === searchParams.page ? '' : `href="${makeLnk(i)}"`}>${i}</a></li>`;
5046        }
5047        if (rangeEnd < totalPages - 2) {
5048          html += `<li class="${classPrefix}-ellipsis ${disableClassName}"><a>${ellipsisText}</a></li>`;
5049          if (showLastOnEllipsisShow) {
5050            html += `<li class="${classPrefix}-page ${classPrefix}-last J-paginationjs-page" data-num="${totalPages}"><a href="${makeLnk(totalPages)}">${totalPages}</a></li>`;
5051          }
5052        } else {
5053          for (let i = rangeEnd + 1; i <= totalPages; i++) {
5054            html += `<li class="${classPrefix}-page J-paginationjs-page" data-num="${i}"><a href="${makeLnk(i)}">${i}</a></li>`;
5055          }
5056        }
5057      }
5058
5059      // Next button
5060      if (showNext) {
5061        if (searchParams.page >= totalPages) {
5062          html += `<li class="${classPrefix}-next ${disableClassName}"><a>${nextText}</a></li>`;
5063        } else {
5064          html += `<li class="${classPrefix}-next J-paginationjs-next" data-num="${searchParams.page + 1}" title="Next page"><a href="${makeLnk(searchParams.page + 1)}">${nextText}</a></li>`;
5065        }
5066      }
5067      html += '</ul></div>';
5068    }
5069    return html;
5070  }
5071  function go(newSearchParams, callback, restorationVisit) {
5072    if (disabled) return;
5073    var goToPageNumber = newSearchParams.page;
5074
5075    // Page number is out of bounds
5076    if (!goToPageNumber || goToPageNumber < 1) return;
5077    var totalPage = getTotalPage();
5078
5079    // Page number is out of bounds
5080    if (!restorationVisit && totalNumber > 0) {
5081      if (goToPageNumber > totalPage) return;
5082    }
5083    if (!options.skipSerialization && (mode === 'NUMBERED_PAGINATION' || searchContainer)) {
5084      var newURL = window.luxuryPresence.pagination.serializeParams(searchFormParams, sectionDomId, {
5085        ...newSearchParams,
5086        page: goToPageNumber !== 1 && mode === 'NUMBERED_PAGINATION' ? newSearchParams.page : null
5087      });
5088      if (!areQueryParamsEqual(newSearchParams, searchParams) && !restorationVisit) {
5089        window.history.pushState({}, '', window.luxuryPresence.getPath(newURL, {
5090          queryString: true
5091        }));
5092      }
5093    }
5094
5095    // Fetch and update page
5096    fetchData(newSearchParams, renderWithData);
5097    disabled = true;
5098    function renderWithData(err, data, count) {
5099      if (err) {
5100        dataContainer.dispatchEvent(new Event('error'));
5101      } else {
5102        searchParams = {
5103          ...newSearchParams
5104        };
5105        totalNumber = count - offset;
5106        if (data.length === 0) {
5107          dataContainer.dispatchEvent(new Event('no-data'));
5108        } else {
5109          dataContainer.dispatchEvent(new Event('data'));
5110        }
5111        render(data);
5112        firstRender = false;
5113      }
5114      disabled = false;
5115      renderBySearch = false;
5116    }
5117  }
5118  function areQueryParamsEqual(first, second) {
5119    var differ = Object.keys(first).find(function (key) {
5120      return first[key] !== undefined && first[key] !== null && first[key] !== second[key];
5121    });
5122    if (differ) {
5123      return false;
5124    }
5125    differ = Object.keys(second).find(function (key) {
5126      return second[key] !== undefined && second[key] !== null && second[key] !== first[key];
5127    });
5128    return !differ;
5129  }
5130  function next(callback) {
5131    go({
5132      ...searchParams,
5133      page: searchParams.page + 1
5134    }, callback);
5135  }
5136  function previous(callback) {
5137    go({
5138      ...searchParams,
5139      page: searchParams.page - 1
5140    }, callback);
5141  }
5142  function refresh(callback) {
5143    go(searchParams, callback);
5144  }
5145  function update(params, callback) {
5146    renderBySearch = true;
5147    go(params, callback);
5148  }
5149  function observer() {
5150    if (searchContainer) {
5151      searchContainer.addEventListener('search', function (event, newSearchParams) {
5152        newSearchParams = event.detail || newSearchParams;
5153        update({
5154          ...searchParams,
5155          ...newSearchParams,
5156          page: 1
5157        });
5158      });
5159      searchContainer.addEventListener('clear-search', function () {
5160        const defaultSearchParams = {
5161          ...DefaultSearchParams
5162        };
5163        const isCurrentSearchFormStateDefault = areQueryParamsEqual({
5164          ...defaultSearchParams,
5165          page: null
5166        }, {
5167          ...searchParams,
5168          page: null
5169        });
5170
5171        // if mode is LOAD_MORE_BUTTON we should't make anything on clear
5172        // when search form have default state
5173        if (isCurrentSearchFormStateDefault && mode !== 'NUMBERED_PAGINATION') {
5174          return;
5175        }
5176
5177        // if someone initially go to some page and click 'Clear' on search from
5178        // we should't navigate to first page. We should preserve page value
5179        if (isCurrentSearchFormStateDefault) {
5180          defaultSearchParams.page = searchParams.page;
5181        }
5182        syncSearchFormState(defaultSearchParams);
5183        update(defaultSearchParams);
5184      });
5185    }
5186    if (mode === 'LOAD_MORE_BUTTON') {
5187      loadMoreButton.addEventListener('click', function (event) {
5188        go({
5189          ...searchParams,
5190          page: searchParams.page + 1
5191        });
5192        return false;
5193      });
5194    }
5195    if (mode === 'LOAD_MORE_BUTTON' || mode === 'BUTTONLESS_PAGINATION') {
5196      // Do initial render
5197      go(Object.assign({}, searchParams, {
5198        page: 1
5199      }));
5200      return;
5201    }
5202    if (mode === 'NUMBERED_PAGINATION') {
5203      // Go to specified page number
5204      container.addEventListener(eventPrefix + 'go', function (event) {
5205        let {
5206          pageNumber,
5207          done
5208        } = event.detail || {};
5209        pageNumber = parseInt(pageNumber, 10);
5210        if (!pageNumber) {
5211          return;
5212        }
5213        go({
5214          ...searchParams,
5215          page: pageNumber
5216        }, done);
5217      });
5218
5219      // Page number button click
5220      el.addEventListener('click', function (event) {
5221        let clickTarget = event.target;
5222        let current = clickTarget.closest('.J-paginationjs-page, .J-paginationjs-previous, .J-paginationjs-next');
5223        let pageNumber = current?.getAttribute('data-num');
5224        if (!pageNumber || current.classList.contains(disableClassName) || current.classList.contains(activeClassName)) {
5225          return;
5226        } else {
5227          go({
5228            ...searchParams,
5229            page: parseInt(pageNumber, 10)
5230          });
5231        }
5232        event.preventDefault();
5233      });
5234
5235      // Whether to load the default page
5236      var defaultPageNumber = searchParams.page;
5237      if (triggerPagingOnInit) {
5238        container.dispatchEvent(new CustomEvent(eventPrefix + 'go', {
5239          detail: {
5240            pageNumber: defaultPageNumber
5241          }
5242        }));
5243      }
5244    }
5245    window.addEventListener('popstate', function (event) {
5246      var newParams = Object.assign({}, DefaultSearchParams, window.luxuryPresence.pagination.deserializeParams(searchFormParams, sectionDomId));
5247      if (!areQueryParamsEqual(newParams, searchParams)) {
5248        go(newParams, null, true);
5249        if (searchContainer) {
5250          syncSearchFormState(newParams);
5251        }
5252      }
5253    });
5254  }
5255  function replaceVariables(template, variables) {
5256    var formattedString;
5257    for (var key in variables) {
5258      var value = variables[key];
5259      var regexp = new RegExp('<%=\\s*' + key + '\\s*%>', 'img');
5260      formattedString = (formattedString || template).replace(regexp, value);
5261    }
5262    return formattedString;
5263  }
5264  function isTextEditorValue(obj) {
5265    return 'raw' in obj || 'gjs' in obj;
5266  }
5267  function getTextEditorValue(obj) {
5268    if (!obj.html) {
5269      return '';
5270    }
5271    var data = obj.html;
5272    var css = (obj.raw || obj.gjs || {}).css;
5273    if (css) {
5274      data = data + '<style>' + css + '</style>';
5275    }
5276    return data;
5277  }
5278
5279  /**
5280   * check rendered resources for html and raw properties that could indicate if resource is from an advanced text editor.
5281   * strips out raw proprties and returns only HTML if it exists.
5282   * @param {Object} resources a collection retrieved from the database
5283   * @return {Object} the newly modified object.
5284   */
5285  function recursivelyParse(resources) {
5286    forEach(resources, function (value, key) {
5287      if (!value) {
5288        return;
5289      }
5290      if (value instanceof Object) {
5291        if (isTextEditorValue(value)) {
5292          resources[key] = getTextEditorValue(value);
5293          return;
5294        } else {
5295          return recursivelyParse(value);
5296        }
5297      }
5298      try {
5299        var parsedData = JSON.parse(value);
5300        if (isTextEditorValue(parsedData)) {
5301          resources[key] = getTextEditorValue(parsedData);
5302        }
5303      } catch (e) {
5304        // do nothing if we failed to parse value as JSON
5305      }
5306    });
5307    return resources;
5308  }
5309  function forEach(collection, iteratee) {
5310    var func = Array.isArray(collection) ? arrayEach : baseFor;
5311    return func(collection, iteratee);
5312  }
5313  function baseFor(object, iteratee) {
5314    if (!object) {
5315      return;
5316    }
5317    var iterable = Object(object);
5318    var props = Object.keys(object);
5319    var length = props.length;
5320    var index = -1;
5321    while (length--) {
5322      var key = props[++index];
5323      if (iteratee(iterable[key], key, iterable) === false) {
5324        break;
5325      }
5326    }
5327    return object;
5328  }
5329  function objSet(obj, path, value) {
5330    const pathArray = Array.isArray(path) ? path : path.match(/([^[.\]])+/g);
5331    pathArray.reduce((acc, key, i) => {
5332      if (acc[key] === undefined) acc[key] = {};
5333      if (i === pathArray.length - 1) acc[key] = value;
5334      return acc[key];
5335    }, obj);
5336  }
5337  function arrayEach(array, iteratee) {
5338    var index = -1;
5339    var length = array.length;
5340    while (++index < length) {
5341      if (iteratee(array[index], index, array) === false) {
5342        break;
5343      }
5344    }
5345    return array;
5346  }
5347  function selectPageRangeMode(e) {
5348    pageRange = e.matches ? mobilePageRange : desktopPageRange;
5349    renderPaginationList();
5350  }
5351  paginationMql.addEventListener('change', selectPageRangeMode);
5352})('section-da5a7210-1edb-47e6-b554-6eb250d17dad', JSON.parse("{\"pageSize\":\"10\",\"resource\":\"properties\",\"pageRange\":0,\"variables\":{\"limit\":10,\"order\":\"salesPrice\",\"offset\":0,\"sortDir\":\"ASC\",\"statusId\":\"{{variables.statusId}}\",\"companyId\":\"f62f900d-59fc-4354-b573-bcc1e7da46a2\",\"categoryId\":\"{{pageElement.categoryId}}\",\"sort\":\"salesPrice\",\"propertyIds\":[\"e9b5ea96-5bf8-42f9-ad17-f43d1d63967d\",\"d2ab93f4-7d4b-4eae-ae0f-2da81abd914e\",\"edf8ff7a-356b-4840-a45f-7ba3d61de0eb\",\"2add7141-a4e0-441b-84cd-69562d87db78\",\"7d5a21ae-6cd6-4833-a47e-fbe9405ffc09\",\"cf056b6c-8cbc-43d3-8701-731deb0a3d94\",\"46bbd6cf-12e9-4e82-8852-15a2e29d0527\",\"2353b191-7c67-47b9-a512-3439af93273d\",\"34988cf4-466d-432a-9eb7-49406b37e543\",\"485d989e-c1d8-4f63-8dca-ae8adc75d8fb\",\"8e800923-5612-4d5b-ae01-d9e3e6271c31\",\"44c6fa54-8a76-4a6a-86bc-4ee4e757c560\"],\"advancedFilters\":{\"query\":{\"statusIds\":{\"in\":[]}}},\"websiteId\":\"a1e3c847-d1ba-4058-a24c-e7ce6eef6e17\"},\"searchFormParams\":[{\"param\":\"neighborhoodId\",\"urlKey\":\"neighborhood\"},{\"param\":\"search\",\"urlKey\":\"search\"},{\"type\":\"int\",\"param\":\"salesPriceGTE\",\"urlKey\":\"pricemin\",\"formKey\":\"priceMin\"},{\"type\":\"int\",\"param\":\"salesPriceLTE\",\"urlKey\":\"pricemax\",\"formKey\":\"priceMax\"},{\"type\":\"int\",\"param\":\"leasePriceGTE\",\"urlKey\":\"lpricemin\",\"formKey\":\"lpriceMin\"},{\"type\":\"int\",\"param\":\"leasePriceLTE\",\"urlKey\":\"lpricemax\",\"formKey\":\"lpriceMax\"},{\"type\":\"int\",\"param\":\"livingSpaceSizeGTE\",\"urlKey\":\"areamin\",\"formKey\":\"areaMin\"},{\"type\":\"int\",\"param\":\"livingSpaceSizeLTE\",\"urlKey\":\"areamax\",\"formKey\":\"areaMax\"}],\"resourceQueryOption\":\"query\",\"hidePaginationOnFirstPage\":true,\"query\":\"query Properties($agentIds: [ID!], $teamIds: [ID!], $neighborhoodIds: [ID!], $officeIds: [ID!], $propertyId: ID, $companyId: String, $networkId: String, $network: Boolean, $statusId: String, $propertyIds: [ID!], $prioritizeIds: Boolean, $statusIds: [String!], $excludeStatusId: [String!], $neighborhoodId: String, $addressState: [String!], $addressCity: [String!], $relatedNeighborhoodPropertyId: String, $developmentId: String, $featuredListing: Boolean, $leaseProperty: Boolean, $search: String, $searchTermMode: SearchTermModeEnum, $globalProperty: Boolean, $archived: Boolean, $salesPriceGTE: Float, $salesPriceLTE: Float, $leasePriceGTE: Float, $leasePriceLTE: Float, $livingSpaceSizeGTE: Float, $livingSpaceSizeLTE: Float, $bathCountGTE: Float, $bathCountLTE: Float, $bedroomCountGTE: Float, $bedroomCountLTE: Float, $architectureStyle: String, $lifestyle: String, $propertyTypeId: String, $propertyTypeIds: [String!], $spaceTypeIds: [ID!], $tag: String, $backfillMLSResults: Boolean, $displayMLSListings: String, $hostname: String, $websiteId: ID, $backfillProviders: [String!], $backfillMLSListingIds: [String!], $backfillMLSAgentIds: [String!], $backfillMLSOfficeIds: [String!], $backfillBoundary: JSON, $openHouse: Boolean, $withGeo: Boolean, $advancedFilters: JSON, $seasonalPriceId: ID, $offset: Int, $limit: Int, $sort: String, $sortDir: SortDirectionEnum) {\\n  properties(\\n    agentIds: $agentIds\\n    teamIds: $teamIds\\n    propertyId: $propertyId\\n    propertyIds: $propertyIds\\n    prioritizeIds: $prioritizeIds\\n    companyId: $companyId\\n    network: $network\\n    networkId: $networkId\\n    statusId: $statusId\\n    statusIds: $statusIds\\n    excludeStatusId: $excludeStatusId\\n    neighborhoodId: $neighborhoodId\\n    neighborhoodIds: $neighborhoodIds\\n    officeIds: $officeIds\\n    addressState: $addressState\\n    addressCity: $addressCity\\n    developmentId: $developmentId\\n    featuredListing: $featuredListing\\n    leaseProperty: $leaseProperty\\n    search: $search\\n    searchTermMode: $searchTermMode\\n    salesPriceGTE: $salesPriceGTE\\n    salesPriceLTE: $salesPriceLTE\\n    leasePriceGTE: $leasePriceGTE\\n    leasePriceLTE: $leasePriceLTE\\n    livingSpaceSizeGTE: $livingSpaceSizeGTE\\n    livingSpaceSizeLTE: $livingSpaceSizeLTE\\n    bathCountGTE: $bathCountGTE\\n    bathCountLTE: $bathCountLTE\\n    bedroomCountGTE: $bedroomCountGTE\\n    bedroomCountLTE: $bedroomCountLTE\\n    architectureStyle: $architectureStyle\\n    lifestyle: $lifestyle\\n    propertyTypeId: $propertyTypeId\\n    propertyTypeIds: $propertyTypeIds\\n    spaceTypeIds: $spaceTypeIds\\n    tag: $tag\\n    archived: $archived\\n    globalProperty: $globalProperty\\n    withGeo: $withGeo\\n    openHouse: $openHouse\\n    displayMLSListings: $displayMLSListings\\n    advancedFilters: $advancedFilters\\n    seasonalPriceId: $seasonalPriceId\\n    relatedNeighborhoodPropertyId: $relatedNeighborhoodPropertyId\\n    backfillMLSResults: $backfillMLSResults\\n    hostname: $hostname\\n    websiteId: $websiteId\\n    backfillProviders: $backfillProviders\\n    backfillMLSListingIds: $backfillMLSListingIds\\n    backfillMLSAgentIds: $backfillMLSAgentIds\\n    backfillMLSOfficeIds: $backfillMLSOfficeIds\\n    backfillBoundary: $backfillBoundary\\n    offset: $offset\\n    limit: $limit\\n    sort: $sort\\n    sortDir: $sortDir\\n  ) {\\n    id\\n    slug\\n    name\\n    status\\n    priceUponRequest\\n    currency\\n    salesPrice\\n    reducedPrice\\n    isPasswordProtected\\n    leaseProperty\\n    leasePrice\\n    leasePeriod\\n    privateAddress\\n    fromMLS\\n    mlsId\\n    mlsLogo\\n    mlsAttribution\\n    openHouseHours\\n    fullAddress\\n    lotAreaSize\\n    lotAreaUnits\\n    media {\\n      smallUrl\\n      mediumUrl\\n      largeUrl\\n      xLargeUrl\\n      xxLargeUrl\\n      width\\n      height\\n      altTagText\\n    }\\n    bedroomCount\\n    bathCount\\n    soldDate\\n    livingSpaceSize\\n    livingSpaceUnits\\n    types {\\n      id\\n      name\\n    }\\n  }\\n  propertiesCount(\\n    agentIds: $agentIds\\n    teamIds: $teamIds\\n    propertyId: $propertyId\\n    propertyIds: $propertyIds\\n    prioritizeIds: $prioritizeIds\\n    companyId: $companyId\\n    network: $network\\n    networkId: $networkId\\n    statusId: $statusId\\n    statusIds: $statusIds\\n    excludeStatusId: $excludeStatusId\\n    neighborhoodId: $neighborhoodId\\n    neighborhoodIds: $neighborhoodIds\\n    officeIds: $officeIds\\n    addressState: $addressState\\n    addressCity: $addressCity\\n    developmentId: $developmentId\\n    featuredListing: $featuredListing\\n    leaseProperty: $leaseProperty\\n    search: $search\\n    searchTermMode: $searchTermMode\\n    salesPriceGTE: $salesPriceGTE\\n    salesPriceLTE: $salesPriceLTE\\n    leasePriceGTE: $leasePriceGTE\\n    leasePriceLTE: $leasePriceLTE\\n    livingSpaceSizeGTE: $livingSpaceSizeGTE\\n    livingSpaceSizeLTE: $livingSpaceSizeLTE\\n    bathCountGTE: $bathCountGTE\\n    bathCountLTE: $bathCountLTE\\n    bedroomCountGTE: $bedroomCountGTE\\n    bedroomCountLTE: $bedroomCountLTE\\n    architectureStyle: $architectureStyle\\n    lifestyle: $lifestyle\\n    propertyTypeId: $propertyTypeId\\n    propertyTypeIds: $propertyTypeIds\\n    spaceTypeIds: $spaceTypeIds\\n    tag: $tag\\n    archived: $archived\\n    globalProperty: $globalProperty\\n    withGeo: $withGeo\\n    openHouse: $openHouse\\n    displayMLSListings: $displayMLSListings\\n    advancedFilters: $advancedFilters\\n    seasonalPriceId: $seasonalPriceId\\n  ) {\\n    count\\n  }\\n}\",\"routerPropertyDisclaimers\":[\"mlsAttribution\",\"mlsLogo\"],\"companyId\":\"f62f900d-59fc-4354-b573-bcc1e7da46a2\",\"usePageResource\":false,\"sectionIndex\":7,\"useRouterApi\":false,\"routerApiAux\":{\"testimonials\":true,\"agents\":false,\"neighborhoods\":false,\"developments\":false,\"properties\":false,\"posts\":true,\"pressReleases\":true,\"offices\":true,\"teams\":true,\"pois\":true,\"postCategories\":true}}"));
5353} catch(e) {
5354console.log(e);
5355}
5356                try {
5357(function init(sectionDomId) {
5358  $(document).on("click", '#' + sectionDomId + ' .property-list__share .btn', function () {
5359    if ($(this).parent().hasClass('property-list__share--opened')) {
5360      $(this).parent().removeClass('property-list__share--opened');
5361    } else {
5362      $('#' + sectionDomId + ' .property-list__share').removeClass('property-list__share--opened');
5363      $(this).parent().addClass('property-list__share--opened');
5364    }
5365  });
5366  const emptyResultElement = $('#' + sectionDomId + ' .empty-result');
5367  const searchContainer = $('#' + sectionDomId + ' .search-container');
5368  const dataContainer = $('#' + sectionDomId + ' .data-container');
5369  const paginationContainer = $(`#${sectionDomId} .pagination-container`);
5370  const priceSlider = searchContainer.find('input[name="price-slider"]');
5371  const areaSlider = searchContainer.find('input[name="area-slider"]');
5372  const neighborhoodSelect = searchContainer.find('select[name="neighborhood-select"]');
5373  const searchInput = searchContainer.find('input[name="search-input"]');
5374  const clearBtn = searchContainer.find('.clear');
5375  const priceMin = parseInt(priceSlider.attr('data-min'));
5376  const priceMax = parseInt(priceSlider.attr('data-max'));
5377  const areaMin = parseInt(areaSlider.attr('data-min'));
5378  const areaMax = parseInt(areaSlider.attr('data-max'));
5379  const rangeSliderInitialized = $(`#${sectionDomId} .search-item .irs`).length >= 1;
5380  const filterLease = searchContainer.data('filter-lease');
5381  function onSearch() {
5382    const params = window.luxuryPresence.getSearchFormValues({
5383      queryElement: searchInput[0],
5384      priceSliderElement: priceSlider[0],
5385      areaSliderElement: areaSlider[0],
5386      neighborhoodSelect: neighborhoodSelect[0]
5387    });
5388    if (filterLease) {
5389      params.lpriceMin = params.priceMin;
5390      params.lpriceMax = params.priceMax;
5391      delete params.priceMin;
5392      delete params.priceMax;
5393    }
5394    if (!areaSlider.attr('data-min')) params.areaMin = null;
5395    if (!areaSlider.attr('data-max')) params.areaMax = null;
5396    searchContainer[0]?.dispatchEvent(new CustomEvent('search', {
5397      detail: params
5398    }));
5399  }
5400  searchContainer.on('neighborhoods-data', function (ev, neighborhoods) {
5401    neighborhoods = ev.detail || neighborhoods;
5402    neighborhoodSelect.append(neighborhoods.data.map(item => `<option value="${item.value}">${item.label}</option>`).join('\n'));
5403  });
5404  searchContainer.on('sync', function (ev, params) {
5405    params = ev.detail || params;
5406    searchInput.val(params.search);
5407    neighborhoodSelect.val(params.neighborhoodId);
5408    priceSlider.data('ionRangeSlider').update({
5409      from: filterLease ? params.lpriceMin : params.priceMin,
5410      to: filterLease ? params.lpriceMax : params.priceMax
5411    });
5412    areaSlider.data('ionRangeSlider').update({
5413      from: params.areaMin,
5414      to: params.areaMax
5415    });
5416  });
5417  dataContainer.on('no-data', function () {
5418    emptyResultElement.show();
5419  });
5420  dataContainer.on('data', function () {
5421    emptyResultElement.hide();
5422  });
5423  clearBtn.click(function () {
5424    searchContainer[0]?.dispatchEvent(new Event('clear-search'));
5425  });
5426  searchInput.on('input', window.luxuryPresence.debounce(onSearch, 1000));
5427  neighborhoodSelect.change(onSearch);
5428  if (rangeSliderInitialized) {
5429    if (!priceSlider.destroy) {
5430      $(`#${sectionDomId} .search-item.price >.irs`).remove();
5431      initPriceSlider();
5432    }
5433    if (!areaSlider.destroy) {
5434      $(`#${sectionDomId} .search-item.area >.irs`).remove();
5435      initAreaSlider();
5436    }
5437  } else {
5438    initPriceSlider();
5439    initAreaSlider();
5440  }
5441  function initPriceSlider() {
5442    priceSlider.ionRangeSlider({
5443      type: "double",
5444      skin: 'round',
5445      grid: false,
5446      force_edges: false,
5447      hide_min_max: false,
5448      hide_from_to: false,
5449      block: false,
5450      prettify: function (val) {
5451        return window.luxuryPresence.formatSliderPriceRange(val, {
5452          min: priceMin,
5453          max: priceMax
5454        }, "$", {
5455          lowPrefix: "<",
5456          highSuffix: "+"
5457        });
5458      },
5459      onFinish: onSearch
5460    });
5461  }
5462  function initAreaSlider() {
5463    areaSlider.ionRangeSlider({
5464      type: "double",
5465      skin: 'round',
5466      grid: false,
5467      force_edges: false,
5468      hide_min_max: false,
5469      hide_from_to: false,
5470      block: false,
5471      prettify: function (val) {
5472        return window.luxuryPresence.formatSliderAreaRange(val, {
5473          min: areaMin,
5474          max: areaMax
5475        }, "sqft", {
5476          lowPrefix: "<",
5477          highSuffix: "+"
5478        });
5479      },
5480      onFinish: onSearch
5481    });
5482  }
5483})('section-da5a7210-1edb-47e6-b554-6eb250d17dad', JSON.parse("{\"resource\":\"properties\",\"useRouterApi\":false,\"companyId\":\"f62f900d-59fc-4354-b573-bcc1e7da46a2\",\"usePageResource\":false,\"sectionIndex\":7,\"routerApiAux\":{\"testimonials\":true,\"agents\":false,\"neighborhoods\":false,\"developments\":false,\"properties\":false,\"posts\":true,\"pressReleases\":true,\"offices\":true,\"teams\":true,\"pois\":true,\"postCategories\":true}}"));
5484} catch(e) {
5485console.log(e);
5486}
5487                try {
5488(function init(sectionDomId) {
5489  var $section = $("#" + sectionDomId);
5490  var $slider = $section.find(".carousel-container");
5491  var columnsCount = $slider.data('columns');
5492  var sliedsCount;
5493  var itemsCount = $slider.find(".video-gallery__slide").length;
5494  if (itemsCount % columnsCount > 0) {
5495    $slider.addClass('centered');
5496  }
5497  var $carouselControls = $section.find(".carousel-controls");
5498  var headerHeight = $("body > header").height();
5499  if (!headerHeight || headerHeight < 100) headerHeight = 100;
5500  const sliderOptions = {
5501    "dots": true,
5502    "fade": true,
5503    "rows": columnsCount == 2 ? 3 : 2,
5504    "arrows": true,
5505    "infinite": false,
5506    "touchMove": false,
5507    "appendDots": $carouselControls,
5508    "slidesPerRow": columnsCount,
5509    "adaptiveHeight": true,
5510    "appendArrows": $carouselControls,
5511    "nextArrow": "<ul><li class='paginationjs-next'><a></a></li></ul>",
5512    "prevArrow": "<ul><li class='paginationjs-prev'><a></a></li></ul>",
5513    "customPaging": function (slider, i) {
5514      return '<a>' + (i + 1) + '</a>';
5515    },
5516    "responsive": [{
5517      "settings": {
5518        "rows": 3,
5519        "slidesPerRow": 2,
5520        "adaptiveHeight": true
5521      },
5522      "breakpoint": 991
5523    }, {
5524      "settings": {
5525        "rows": 2,
5526        "slidesPerRow": 1
5527      },
5528      "breakpoint": 575
5529    }]
5530  };
5531  $section.find('.carousel-container').not('.slick-initialized').slick(sliderOptions);
5532  function showHidePages() {
5533    $section.find('.carousel-controls .slick-disabled li').addClass('disabled');
5534    $section.find('.carousel-controls .slick-dots .slick-active').addClass('active');
5535    slidesCount = $slider.find('.slick-slide').length;
5536    if (slidesCount < 2) {
5537      $section.find('.carousel-controls').hide();
5538    } else {
5539      $section.find('.carousel-controls').show();
5540    }
5541  }
5542  showHidePages();
5543  function scrollToSectionTop() {
5544    $section.find('.carousel-controls .slick-disabled li').removeClass('disabled');
5545    $('html, body').animate({
5546      scrollTop: $slider.offset().top - headerHeight
5547    }, 1000, 'linear');
5548  }
5549  $slider.on("beforeChange", scrollToSectionTop);
5550  $slider.on("afterChange", function () {
5551    $section.find('.pagination-container').find('.slick-dots .active').removeClass('active');
5552    $section.find('.pagination-container').find('.slick-dots .slick-active').addClass('active');
5553    $section.find('.carousel-controls .slick-disabled li').addClass('disabled');
5554  });
5555  function renderDots() {
5556    var $dots = $("#" + sectionDomId + " .slick-dots");
5557    var $dotsItems = $dots.children("li");
5558    $dotsItems.removeClass("li-hidden");
5559    var dotsWidth = $carouselControls.width() - $carouselControls.find(".paginationjs-prev").outerWidth(true) - $carouselControls.find(".paginationjs-next").outerWidth(true);
5560    var dotItemWidth = $dotsItems.last().outerWidth(true);
5561    var totalDotsCount = $dotsItems.length;
5562    var dotsToShow = Math.floor(dotsWidth / dotItemWidth);
5563    var activeItem = $dots.find(".slick-active")[0];
5564    var activeItemIndex = $dotsItems.index(activeItem);
5565    var mql = window.matchMedia('(min-width: 576px)').matches;
5566    var dummyFirstSlide = activeItemIndex === 0 ? 1 : '';
5567    var dummyLastSlide = activeItemIndex === totalDotsCount - 1 ? totalDotsCount - 2 : '';
5568    var showIndices = mql ? [0, totalDotsCount - 1, activeItemIndex - 1, activeItemIndex, activeItemIndex + 1] : [0, dummyFirstSlide, dummyLastSlide, activeItemIndex, totalDotsCount - 1];
5569    if (totalDotsCount > dotsToShow) {
5570      $dotsItems.filter(function (index) {
5571        return showIndices.indexOf(index) === -1;
5572      }).addClass("li-hidden").filter(function () {
5573        return !$(this).next().hasClass("li-hidden") && !$(this).prev().hasClass("li-hidden");
5574      }).removeClass("li-hidden");
5575    }
5576  }
5577  renderDots();
5578  $slider.on("afterChange", renderDots);
5579  $(window).on("resize", renderDots);
5580  var resizeTimer;
5581  $(window).on('resize', function (e) {
5582    clearTimeout(resizeTimer);
5583    resizeTimer = setTimeout(function () {
5584      showHidePages();
5585    }, 100);
5586  });
5587  var $modalsContainer = $section.find('.video-gallery__modals');
5588  var $modals = $modalsContainer.find('.video-gallery__modal');
5589  var scrollLockId = sectionDomId + '_popup';
5590  function handleEscapeKey(e) {
5591    if (e.key === 'Escape') closeActiveModal();
5592  }
5593  function closeActiveModal() {
5594    var $active = $modals.filter('.visible');
5595    if (!$active.length) return;
5596    $active.removeClass('visible').attr('aria-hidden', 'true');
5597    if (window.lpUI && window.lpUI.releaseScrollLock) {
5598      window.lpUI.releaseScrollLock(scrollLockId);
5599    }
5600    document.removeEventListener('keydown', handleEscapeKey);
5601  }
5602  function openModalFor($trigger) {
5603    var index = $trigger.data('video-index');
5604    closeActiveModal();
5605    var $targetModal = $modals.filter('[data-video-index="' + index + '"]');
5606    if (!$targetModal.length) return;
5607    $targetModal.addClass('visible').attr('aria-hidden', 'false');
5608    if (window.lpUI && window.lpUI.requestScrollLock) {
5609      window.lpUI.requestScrollLock(scrollLockId);
5610    }
5611    document.addEventListener('keydown', handleEscapeKey);
5612  }
5613  $section.on('click', '.js-read-more', function (e) {
5614    e.preventDefault();
5615    e.stopPropagation();
5616    openModalFor($(this));
5617  });
5618  $section.on('keydown', '.js-read-more', function (e) {
5619    if (e.key === 'Enter' || e.key === ' ') {
5620      e.preventDefault();
5621      e.stopPropagation();
5622      openModalFor($(this));
5623    }
5624  });
5625  $section.on('click', '.video-card__description', function (e) {
5626    var $readMore = $(this).siblings('.js-read-more');
5627    if (!$readMore.length) return;
5628    e.preventDefault();
5629    e.stopPropagation();
5630    openModalFor($readMore);
5631  });
5632  $modalsContainer.on('click', '.video-gallery__modal', function (e) {
5633    if (e.target === this) closeActiveModal();
5634  });
5635  $modalsContainer.on('click', '.js-modal-close', function (e) {
5636    e.preventDefault();
5637    e.stopPropagation();
5638    closeActiveModal();
5639  });
5640})('section-ba43671b-3100-4991-8247-7989a4b81495', 'undefined');
5641} catch(e) {
5642console.log(e);
5643}
5644                try {
5645(function init(sectionDomId) {})('section-26ef12a8-1616-4b4e-a92a-f7e63cf93b7a', 'undefined');
5646} catch(e) {
5647console.log(e);
5648}
5649                try {
5650(function init(sectionDomId) {
5651  $('#' + sectionDomId + ' .videoListLink').click(function (e) {
5652    $('#' + sectionDomId).find('.v-carousel__preview-item').hide();
5653    $('#' + sectionDomId).find(String($(this).attr('data-tab'))).show();
5654  });
5655})('section-97efe40a-6bdb-4a9e-87bc-c47975e11673', 'undefined');
5656} catch(e) {
5657console.log(e);
5658}
5659                try {
5660(function init(sectionDomId) {
5661  const $section = $('#' + sectionDomId);
5662  if ($section.find('.parallax').length) $section.addClass('parallax-enabled');
5663  if ($section.find('.video-wrapper').length) $section.addClass('video');
5664})('section-c00cff8c-7bf7-439f-a337-b3977159e28e', 'undefined');
5665} catch(e) {
5666console.log(e);
5667}
5668                try {
5669(function init(sectionDomId, options) {
5670  let section = null;
5671  switch (sectionDomId) {
5672    case 'NAVBAR':
5673      section = document.querySelector('body > nav, #global-navbar');
5674      break;
5675    case 'FOOTER':
5676      section = document.querySelector('body > footer, #global-footer');
5677      break;
5678    case 'SIDEMENU':
5679      section = document.querySelector('body > div.sidemenu, #global-sidemenu');
5680      break;
5681    case 'CONTACT':
5682      section = document.querySelector('#modal-global-contact-us');
5683      break;
5684    case 'MOBILE_CONTACT':
5685      section = document.querySelector('body > div.mobile-contact-wrapper, #global-mobile-contact');
5686      break;
5687    case 'SUBSCRIBE':
5688      // Subscribe Not Implemented
5689      section = null;
5690      break;
5691    case 'ACCOUNT':
5692      // Account Not Implemented
5693      section = null;
5694      break;
5695    default:
5696      section = document.querySelector('#' + sectionDomId);
5697  }
5698  if (!section) {
5699    return;
5700  }
5701  var url = window.luxuryPresence.defaults.routerUrl;
5702  var companyId = window.luxuryPresence.defaults.companyId;
5703  var limit = options.limit || 8;
5704  if (typeof limit === 'string') {
5705    limit = parseInt(limit, 10) || 8; // this NaN protection also filters out 0 - this is expected
5706  }
5707  var templateSelector = options.templateSelector || '.jsIGTemplate';
5708  var containerSelector = options.containerSelector || '.jsIGContainer';
5709  var hasDataClass = options.hasDataClass || 'has-data';
5710  var hideActivateMessage = options.hasDataClass || false;
5711  var payload = {
5712    companyId: companyId,
5713    limit: limit
5714  };
5715  if (options.resourceId && typeof options.resourceId === 'string' && !options.resourceId.match(/^{{.*}}$/)) {
5716    payload.resourceId = options.resourceId;
5717    // Federated enum values are uppercase (AGENT/TEAM); element configs carry lowercase
5718    payload.resource = String(options.resource || 'agent').toUpperCase();
5719    payload.fallbackToNoResource = options.fallbackToNoResource === 'true' || options.fallbackToNoResource === true;
5720  }
5721  var query = 'query InstagramFeed (\n' + '  $companyId: ID!\n' + '  $instagramAuthorizationId: ID\n' + '  $username: String\n' + (payload.resourceId ? '$resource: InstagramContentAuthResourceEnum\n $resourceId: ID\n $fallbackToNoResource: Boolean' : '') + '  $limit: Int\n' + ') {\n' + '  instagramContentFeed (\n' + '  companyId: $companyId\n' + '  instagramAuthorizationId: $instagramAuthorizationId\n' + '  username: $username\n' + (payload.resourceId ? 'resource: $resource\n resourceId: $resourceId\n fallbackToNoResource: $fallbackToNoResource' : '') + '  limit: $limit\n' + '  ) {\n' + '    active\n' + '    feedUrl\n' + '    username\n' + '    items {\n' + '      id\n' + '      caption\n' + '      commentsCount\n' + '      likeCount\n' + '      mediaType\n' + '      mediaUrl\n' + '      permalink\n' + '      shortcode\n' + '      thumbnailUrl\n' + '      timestamp\n' + '      username\n' + '    }\n' + '  }\n' + '}\n';
5722  var templateHTML = section.querySelector(templateSelector)?.innerHTML || '';
5723  var template = Handlebars.compile(templateHTML);
5724  var container = section.querySelector(containerSelector);
5725  if (options.variables) {
5726    Object.keys(options.variables).forEach(function (key) {
5727      if (options.variables.hasOwnProperty(key) && (typeof options.variables[key] !== 'string' || !options.variables[key].match(/^{{.*}}$/))) {
5728        payload[key] = options.variables[key];
5729      }
5730    });
5731  }
5732  function getData() {
5733    var feed = {
5734      error: true
5735    };
5736    if (payload.companyId == null || payload.companyId === '') {
5737      // instagramContentFeed requires companyId (ID!) — nothing to fetch without it.
5738      // Checked after the options.variables merge, which may override the default.
5739      // Deferred so element listeners (attached after this template runs) still receive it.
5740      setTimeout(function () {
5741        section.dispatchEvent(new CustomEvent('ig-data', {
5742          detail: feed
5743        }));
5744      }, 0);
5745      return;
5746    }
5747    superagent.post(url + '/graphql').send({
5748      query: query,
5749      variables: payload
5750    }).then(res => {
5751      try {
5752        if (!res.body.errors) {
5753          feed = res.body.data.instagramContentFeed;
5754          if (!feed.active) {
5755            if (!hideActivateMessage && sectionDomId === 'section-temp' && container) {
5756              if (payload.resourceId) {
5757                container.innerHTML = '<div style="text-align: center">Instagram account is not connected to selected ' + payload.resource + '.<br /> Connect it on the ' + payload.resource + ' page</div>';
5758              } else {
5759                container.innerHTML = '<div style="text-align: center">Instagram account is not connected.<br /> Connect it on <a href="/profile">Profile page</a></div>';
5760              }
5761            }
5762          } else {
5763            if (feed.items.length) {
5764              if (hasDataClass) {
5765                section.classList.add(hasDataClass);
5766              }
5767              const feedName = feed.username;
5768              section.querySelectorAll('.jsIGLink').forEach(link => link.setAttribute('href', feed.feedUrl));
5769              section.querySelectorAll('.jsIGName').forEach(name => {
5770                name.textContent = '@' + feedName;
5771                name.setAttribute('title', '@' + feedName);
5772              });
5773              if (container && template) {
5774                container.innerHTML = template(feed);
5775              }
5776            }
5777          }
5778        }
5779      } catch (e) {}
5780      section.dispatchEvent(new CustomEvent('ig-data', {
5781        detail: feed
5782      }));
5783    }).catch(e => {
5784      console.log('err', e);
5785      section.dispatchEvent(new CustomEvent('ig-data', {
5786        detail: feed
5787      }));
5788    });
5789  }
5790  getData();
5791})('section-1f1e0e09-5bb1-47a1-9029-aeb58682521d', JSON.parse("{\"limit\":33,\"resource\":\"agent\",\"resourceId\":\"\",\"fallbackToNoResource\":\"true\",\"companyId\":\"f62f900d-59fc-4354-b573-bcc1e7da46a2\",\"usePageResource\":false,\"sectionIndex\":12,\"useRouterApi\":false,\"routerApiAux\":{\"testimonials\":true,\"agents\":false,\"neighborhoods\":false,\"developments\":false,\"properties\":false,\"posts\":true,\"pressReleases\":true,\"offices\":true,\"teams\":true,\"pois\":true,\"postCategories\":true}}"));
5792} catch(e) {
5793console.log(e);
5794}
5795                try {
5796(function init(sectionDomId) {
5797  const $section = $('#' + sectionDomId);
5798  var templateHTML = $section.find('.jsIGItem').html();
5799  var itemTemplate = templateHTML && Handlebars.compile(templateHTML);
5800  const $container = $section.find('.ig-feed-feed');
5801  const $topPrev = $section.find('.top-nav-prev');
5802  const $topNext = $section.find('.top-nav-next');
5803  const $bottomPrev = $section.find('.bottom-nav-prev');
5804  const $bottomNext = $section.find('.bottom-nav-next');
5805  let limit = 33;
5806  try {
5807    limit = parseInt($container[0].dataset['limit']);
5808  } catch (e) {}
5809  if (!limit) {
5810    limit = 33;
5811  }
5812  let igFeed = {};
5813  let usedWidth = 0;
5814  let slider = null;
5815  $section.on('ig-data', function (ev, feed) {
5816    feed = ev.detail || feed;
5817    igFeed = feed;
5818    if (feed.active && feed.items.length) {
5819      buildSlider();
5820    }
5821  });
5822  $(window).on('resize.lpui-auto-clean', onResize);
5823  let timer = null;
5824  function onResize() {
5825    clearTimeout(timer);
5826    timer = window.setTimeout(buildSlider, 50);
5827  }
5828  function getLayout(w, n) {
5829    if (w > 1100) {
5830      if (n > 7) {
5831        return {
5832          type: 'type1',
5833          single: 1,
5834          multi: n,
5835          slides: 3,
5836          slider: n > 9
5837        };
5838      }
5839      if (n > 5) {
5840        return {
5841          type: 'type1',
5842          single: 2,
5843          multi: n,
5844          slides: 3,
5845          slider: false
5846        };
5847      }
5848      return {
5849        type: 'type1',
5850        single: n,
5851        multi: n,
5852        slides: 3,
5853        slider: n > 3
5854      };
5855    } else if (w > 880) {
5856      if (n > 4) {
5857        return {
5858          type: 'type2',
5859          single: 1,
5860          multi: n,
5861          slides: 2.5,
5862          slider: n > 7
5863        };
5864      }
5865      return {
5866        type: 'type1',
5867        single: n,
5868        multi: n,
5869        slides: 3,
5870        slider: n > 3
5871      };
5872    } else if (w > 767) {
5873      if (n > 4) {
5874        return {
5875          type: 'type3',
5876          single: 1,
5877          multi: n,
5878          slides: 2,
5879          slider: n > 5
5880        };
5881      }
5882      return {
5883        type: 'type4',
5884        single: n,
5885        multi: n,
5886        slides: 2,
5887        slider: n > 2
5888      };
5889    } else if (w > 460) {
5890      return {
5891        type: 'type4',
5892        single: n,
5893        multi: n,
5894        slides: 2,
5895        slider: n > 2
5896      };
5897    }
5898    return {
5899      type: 'type5',
5900      single: n,
5901      multi: n,
5902      slides: 1,
5903      slider: n > 1
5904    };
5905  }
5906  function ensureClass($el, className) {
5907    if ($el.hasClass(className)) {
5908      return;
5909    }
5910    $el.addClass(className);
5911  }
5912  function makeSquare($el) {
5913    const el = $el[0];
5914    el.style.width = '';
5915    el.style.height = '';
5916    const rect = el.getBoundingClientRect();
5917    if (rect.width !== rect.height) {
5918      el.style.width = rect.height + 'px';
5919    }
5920  }
5921  function buildSlider() {
5922    const cWidth = $container[0].getBoundingClientRect().width;
5923    if (cWidth === usedWidth) {
5924      return;
5925    }
5926    $container.empty();
5927    slider = $('<div class="ig-feed-slider"></div>');
5928    const items = igFeed.items.slice(0, limit);
5929    const layout = getLayout(cWidth, items.length);
5930    let i = 0;
5931    let slide = null;
5932    while (i < layout.single) {
5933      slide = $(`<div class="slide-single ${layout.type}"></div>`).append(itemTemplate(items[i])).appendTo(slider);
5934      i++;
5935    }
5936    while (i < layout.multi) {
5937      slide = $(`<div class="slide-multi ${layout.type}"></div>`).appendTo(slider);
5938      let slideContent = $('<div class="slide-multi-content"></div>').appendTo(slide);
5939      const lim = i + 4;
5940      while (i < lim && i < layout.multi) {
5941        slideContent.append(itemTemplate(items[i]));
5942        i++;
5943      }
5944    }
5945    $container.append(slider);
5946    if (layout.slider) {
5947      $topPrev.removeClass('hidden-control');
5948      $topNext.removeClass('hidden-control');
5949      $bottomPrev.removeClass('hidden-control');
5950      $bottomNext.removeClass('hidden-control');
5951      let prev, next;
5952      if ($bottomPrev.parent()[0].getBoundingClientRect().width) {
5953        prev = $bottomPrev;
5954        next = $bottomNext;
5955      } else {
5956        prev = $topPrev;
5957        next = $topNext;
5958        makeSquare($topPrev);
5959        makeSquare($topNext);
5960      }
5961      slider.children().each(function () {
5962        this.style.width = this.getBoundingClientRect().width + 'px';
5963      });
5964      slider.slick({
5965        dots: false,
5966        prevArrow: prev,
5967        nextArrow: next,
5968        slidesToScroll: 1,
5969        infinite: false,
5970        slidesToShow: layout.slides
5971      });
5972    } else {
5973      ensureClass($topPrev, 'hidden-control');
5974      ensureClass($topNext, 'hidden-control');
5975      ensureClass($bottomPrev, 'hidden-control');
5976      ensureClass($bottomNext, 'hidden-control');
5977    }
5978  }
5979})('section-1f1e0e09-5bb1-47a1-9029-aeb58682521d', JSON.parse("{\"resource\":\"agent\",\"useRouterApi\":false,\"companyId\":\"f62f900d-59fc-4354-b573-bcc1e7da46a2\",\"usePageResource\":false,\"sectionIndex\":12,\"routerApiAux\":{\"testimonials\":true,\"agents\":false,\"neighborhoods\":false,\"developments\":false,\"properties\":false,\"posts\":true,\"pressReleases\":true,\"offices\":true,\"teams\":true,\"pois\":true,\"postCategories\":true}}"));
5980} catch(e) {
5981console.log(e);
5982}
5983
5984            var { body } = document;
5985            var globalNav = body.querySelector(':scope > nav');
5986            var globalSideMenu = body.querySelector(':scope > div.sidemenu');
5987
5988            document.querySelectorAll('body > .modal .close').forEach(modalCloseBtn => {
5989                modalCloseBtn.addEventListener('click', function() {
5990                window.lpUI.hideClosestModal(modalCloseBtn);
5991              });
5992            });
5993
5994            window.addEventListener('click', function() {
5995                document.querySelectorAll('.share-popup').forEach(sharedPopup => {
5996                    sharedPopup.style.display = 'none' ;
5997                });
5998            });
5999
6000            /* Misc Partials / Addons */
6001            function initWOW() {
6002                if (wow) {
6003                    wow.init();
6004                    wow.scrollHandler();
6005                    setTimeout(function () {
6006                        const wowHideStyle = document.getElementById('wow-hide-elements');
6007                        if(wowHideStyle) {
6008                            wowHideStyle.disabled = true;
6009                        }
6010                    }, 1);
6011                }
6012            }
6013
6014            const wowHideElements =  document.getElementById('wow-hide-elements');
6015            if (wowHideElements) {
6016               wowHideElements.disabled = false;
6017            }
6018
6019                initWOW();
6020
6021            /* Generic Navbar Handling */
6022            globalNav?.querySelectorAll('.hamburger-component').forEach(hamburgerComponent => {
6023                hamburgerComponent.addEventListener('click', function() {
6024                window.lpUI.sideMenuToggle();
6025              });
6026            });
6027            globalSideMenu?.querySelectorAll('.toggle').forEach(toggleEl => {
6028                toggleEl.addEventListener('click', function() {
6029                window.lpUI.sideMenuToggle();
6030              });
6031            });
6032
6033            document.querySelectorAll('body > nav .sub-nav-container > a, body > div.sidemenu .sub-nav-container > a').forEach(linkEl => {
6034                linkEl.addEventListener('click', function(e) {
6035                  e.preventDefault();
6036                  e.stopPropagation();
6037                  var subNav = linkEl.parentElement.querySelector(':scope > .sub-nav');
6038                  if (subNav && subNav.classList.contains('visible')){
6039                    subNav.classList.remove('visible');
6040                  } else {
6041                    globalNav?.querySelectorAll('.sub-nav-container .sub-nav').forEach(globalSubNav => {
6042                      globalSubNav.classList.remove('visible');
6043                    });
6044                    globalSideMenu?.querySelectorAll('.sub-nav').forEach(sideMenuSubNav => {
6045                        sideMenuSubNav.classList.remove('visible');
6046                    });
6047                    subNav?.classList.add('visible');
6048                  }
6049                });
6050            });
6051            window.addEventListener('click', function() {
6052                document.querySelectorAll('nav .sub-nav.visible, .sidemenu .sub-nav.visible').forEach(subNavEl => {
6053                    subNavEl.classList.remove('visible');
6054                });
6055            });
6056
6057        }
6058
6059        document.addEventListener('DOMContentLoaded', lpGlobalInit);
6060
6061    </script>
6061
6062
6063    
6063<script type="module">
6064    function selectorExists(selector) {
6065        return document.querySelector(selector) !== null;
6066    }
6067
6068    // Function to initialize the third-party library
6069    function initParoller(selector = '.my-paroller') {
6070        var $parollerElements = $(selector);
6071        if ($parollerElements.length > 0 && typeof $parollerElements.paroller === 'function') {
6072            $parollerElements.paroller();
6073        }
6074    }
6075
6076    const parollerSelector = '.my-paroller';
6077
6078    if (selectorExists(parollerSelector)) {
6079        window.luxuryPresence.libs.loadJs(window.luxuryPresence.libs.jsLibsMap.paroller.jsSrc, function() {
6080            initParoller(parollerSelector);
6081            window.luxuryPresence.libs.jsLibsMap.paroller.isLoaded = true;
6082        });
6083    }
6084    </script>
6084
6085
6086        <!-- Follow Up Boss Page View Tracker-->
6087        
6087<script type="text/plain" data-consent-category="analytics">
6088            window.widgetTracker("send", "pageview");
6089        </script>
6089
6090        <!-- End Follow Up Boss Page View Tracker -->
6091            <!-- Google Tag Manager (noscript) -->
vendor: 80 bytes, lines 6091-6092
6091
6092            <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
6092GTM-T9B3XMG5
vendor: 107 bytes, lines 6092-6094
6092"
6093            height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
6094            
6094<!-- End Google Tag Manager -->
6095            <!-- Google Tag Manager (noscript) -->
vendor: 80 bytes, lines 6095-6096
6095
6096            <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
6096GTM-KS6CK7T
vendor: 107 bytes, lines 6096-6098
6096"
6097            height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
6098            
6098<!-- End Google Tag Manager -->
6099            <!-- Google Tag Manager (noscript) -->
vendor: 80 bytes, lines 6099-6100
6099
6100            <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
6100GTM-W33LVZF2
vendor: 107 bytes, lines 6100-6102
6100"
6101            height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
6102            
6102<!-- End Google Tag Manager -->
6103            <!-- Google Tag Manager (noscript) -->
vendor: 80 bytes, lines 6103-6104
6103
6104            <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
6104GTM-T9SFQGHZ
vendor: 107 bytes, lines 6104-6106
6104"
6105            height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
6106            
6106<!-- End Google Tag Manager -->
6107        <meta name="google-site-verification" content="k8msuRDjpS8w5cYx3ZTT1h5AJWeyq1ByU5bBxj9ZUEE" />
6108<script>function loadScript(a){var b=document.getElementsByTagName("head")[0],c=document.createElement("script");c.type="text/javascript",c.src="https://tracker.metricool.com/resources/be.js",c.onreadystatechange=a,c.onload=a,b.appendChild(c)}loadScript(function(){beTracker.t({hash:"235cbe7989331da30341109e505f2c52"})});</script>
6108
6109<!-- Google Tag Manager (noscript) -->
vendor: 68 bytes, lines 6109-6110
6109
6110<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
6110GTM-W33LVZF2
vendor: 83 bytes, lines 6110-6111
6110"
6111height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
6112<!-- End Google Tag Manager (noscript) -->
6113
6114<script>
6115  // Store UTM parameters in localStorage
6116  (function() {
6117    const urlParams = new URLSearchParams(window.location.search);
6118    const utms = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content'];
6119    utms.forEach(param => {
6120      const value = urlParams.get(param);
6121      if (value) localStorage.setItem(param, value);
6122    });
6123  })();
6124
6125  // Append stored UTM parameters to internal links
6126  document.addEventListener("DOMContentLoaded", function () {
6127    const utms = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content'];
6128    const storedParams = utms
6129      .map(p => `${p}=${localStorage.getItem(p)}`)
6130      .filter(p => !p.includes('null'))
6131      .join('&');
6132
6133    if (storedParams) {
6134      document.querySelectorAll('a[href^="/"], a[href^="https://kinokorealestate.com"]').forEach(link => {
6135        if (!link.href.includes('utm_')) {
6136          const delimiter = link.href.includes('?') ? '&' : '?';
6137          link.href += delimiter + storedParams;
6138        }
6139      });
6140    }
6141  });
6142</script>
6142
6143
6144<script> (function (h,b) { var w = window, d = document, s = 'script', x, y; w['__hb_namespace'] = h; w[h] = w[h] || function () { (w[h].q=w[h].q||[]).push(arguments) }; y = d.createElement(s); x = d.getElementsByTagName(s)[0]; y.async = 1; y.src = b; x.parentNode.insertBefore(y,x) })('Homebot','https://embed.homebotapp.com/lgw/v1/widget.js'); Homebot('#homebot_homeowner', 'ac1c4f656f51751237fbb8f91d5c3ef6e874d5a79d9c7268',{'theme':'dark-mode-theme'}) </script>
6144
6145
6146            
6146<script
6147                src="https://cdn.luxurypresence.com/scripts/a11y-widget/latest/widget.js"
6148                data-website-id="a1e3c847-d1ba-4058-a24c-e7ce6eef6e17"
6149                
6150                defer></script>
vendor: 1 bytes, line 6150
6150
6151<script>(function(){function c(){var b=a.contentDocument||(a.contentWindow&&a.contentWindow.document);if(b){var d=b.createElement('script');d.innerHTML="window.__CF$cv$params={r:'a42e2da88fdd36b2',t:'MTc5MDcxODM2Mg=='};var a=document.createElement('script');a.src='/cdn-cgi/challenge-platform/scripts/jsd/main.js';document.getElementsByTagName('head')[0].appendChild(a);";b.getElementsByTagName('head')[0].appendChild(d)}}if(document.body){var a=document.createElement('iframe');a.height=1;a.width=1;a.style.position='absolute';a.style.top=0;a.style.left=0;a.style.border='none';a.style.visibility='hidden';document.body.appendChild(a);if('loading'!==document.readyState)c();else if(window.addEventListener)document.addEventListener('DOMContentLoaded',c);else{var e=document.onreadystatechange||function(){};document.onreadystatechange=function(b){e(b);'loading'!==document.readyState&&(document.onreadystatechange=e,c())}}}})();</script>
6151<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"d2a8f4b3d65944edb8fcd6ffce49ee5e","spa":2}' crossorigin="anonymous"></script>
6151
6152</body>
6153</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.