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>Richard Scully & Associates | Muskoka Luxury Real Estate</title> 10 <meta property="og:title" content="Richard Scully & Associates | Muskoka Luxury Real Estate"> 11 <meta name="twitter:title" content="Richard Scully & Associates | Muskoka Luxury Real Estate"> 12 <meta name="description" content="Explore Muskoka luxury real estate with Richard Scully & Associates. Discover exceptional cottages and waterfront properties."> 13 <meta property="og:description" content="Explore Muskoka luxury real estate with Richard Scully & Associates. Discover exceptional cottages and waterfront properties."> 14 <meta name="twitter:description" content="Explore Muskoka luxury real estate with Richard Scully & Associates. Discover exceptional cottages and waterfront properties."> 15 <meta property="og:image" content="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/48e37ce7-e415-415b-8ed2-ad62fc9bcb1f"> 16 <meta name="twitter:image" content="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/48e37ce7-e415-415b-8ed2-ad62fc9bcb1f"> 17 <meta property="og:url" content="https://muskokacottagesforsale.com/"> 18 <link rel="canonical" href="https://muskokacottagesforsale.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=Tenor%20Sans:400"><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:'Tenor Sans',sans-serif;--global-primary-font-family-short:Tenor Sans;--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:50px;--global-h2-font-size:40px;--global-h3-font-size:30px;--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:'Tenor Sans',sans-serif;}h1{font-size:50px;}h2{font-size:40px;}h3{font-size:30px;}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">ul.slick-links-nav li span.link.slick-disabled{cursor:default;}.J-paginationjs-page a{margin:0 3px;}.lp-btn,.redesign .lp-btn{padding:20px 46px;}#modal-global-contact-us .contact-form .section-message form .submitButton{padding:14px 20px;}.lp-btn,.redesign .lp-btn,.redesign .btn{border-width:1px!important;font-weight:300!important;}nav#global-navbar a{font-weight:300;}button.newsletter-signup__form-item{line-height:1;font-weight:400;}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:#FFF;}nav#global-navbar .header .navigation .sub-nav ul a{color:#000!important;}nav#global-navbar.scroll{background-color:#000!important;}nav#global-navbar.scroll li.navigation__item a.navigation__link{color:#FFF!important;}nav#global-navbar.scroll li.navigation__item a.navigation__link:hover{color:#FFF!important;}nav#global-navbar.scroll li.navigation__item a.navigation__link span:after{background-color:#FFF!important;}nav#global-navbar.scroll button.hamburger-component.hamburger{color:#FFF;}nav#global-navbar.scroll button.hamburger-component.hamburger:hover{color:#FFF;}nav#global-navbar.scroll .navigation__item:last-child{-webkit-filter:invert(1);filter:invert(1);}nav#global-navbar .header .navigation .sub-nav ul a:hover{color:#FFF!important;background-color:#792617!important;}nav#global-navbar .header .navigation .sub-nav ul a:hover span:hover{color:#FFF!important;}nav#global-navbar .header .navigation .sub-nav ul a:hover span:after{background-color:#FFF!important;}nav .header .navigation .sub-nav__link{max-width:400px!important;}nav .header .navigation .sub-nav ul{max-width:400px!important;}nav#global-navbar.scroll li.navigation__item a.navigation__link:hover{color:#792617;}nav#global-navbar.scroll li.navigation__item a.navigation__link span:after{background-color:#792617;}#global-navbar .header .logo .logo__img{max-height:100%;max-width:300px;}@media only screen and (max-width:768px){#global-navbar .header .logo .logo__img{max-width:250px!important;}}#global-navbar .header{padding-top:15px;padding-bottom:15px;height:auto;}.company__info__newsletter h2{font-size:0px;}.company__info__newsletter h2:before{content:"";display:block;width:auto;height:40px;background-image:url(https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/124e6fd1-c91a-4767-8aec-b87e6e6b1291);-webkit-background-size:contain;background-size:contain;background-repeat:no-repeat;-webkit-background-position:left;background-position:left;margin:0 auto!important;}footer .footer .company__contacts{margin-top:0px!important;}
31footer .footer .newsletter__info{max-width:100%!important;}footer .luxury-link,.copyright-box .hyperlink-style-2,.info-wrap-contact_link,.ft-link{font-weight:400;position:relative!important;color:#fff!important;-webkit-text-decoration:none!important;text-decoration:none!important;-webkit-transition:0.4s;transition:0.4s;opacity:1!important;}footer .luxury-link:hover,.copyright-box .hyperlink-style-2:hover,.info-wrap-contact_link:hover,.ft-link:hover{color:#fff!important;}footer .luxury-link:before,.copyright-box .hyperlink-style-2:before,.info-wrap-contact_link:before,.ft-link:before,footer .luxury-link:after,.copyright-box .hyperlink-style-2:after,.info-wrap-contact_link:after,.ft-link:after{-webkit-transition:0.4s;transition:0.4s;-webkit-text-decoration:none!important;text-decoration:none!important;line-height:1;content:"""";height:1px;position:absolute!important;bottom:0;left:0;}footer .luxury-link:before,.copyright-box .hyperlink-style-2:before,.info-wrap-contact_link:before,.ft-link:before{width:100%!important;background-color:#ccc!important;}footer .luxury-link:after,.copyright-box .hyperlink-style-2:after,.info-wrap-contact_link:after,.ft-link:after{width:0%!important;background-color:#fff!important;}footer .luxury-link:hover:after,.copyright-box .hyperlink-style-2:hover:after,.info-wrap-contact_link:hover:after,.ft-link:hover:after{width:100%!important;}div#global-sidemenu.sidemenu a:hover{color:#FFF!important;}body>div.sidemenu .sub-nav-container .main-nav:hover::after{border-bottom:1px solid #FFF!important;border-right:1px solid #FFF!important;}body>div.sidemenu .section-options a{color:#FFF!important;}@media (max-width: 768px){body>div.sidemenu .section-options a{font-size:25px!important;}}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;}}#modal-global-contact-us .contact-form .section-message label{color:#fff!important;}#modal-global-contact-us .lp-input-group .lp-input{border-color:#fff!important;}div#modal-global-contact-us a:not(.lp-socials__link):after{background-color:#FFF!important;}.info-zone_contact_cell a:hover{color:#FFF!important;}.info-zone_contact_cell a:before{background-color:#ccc!important;width:100%;}.info-zone_contact_cell a:after{background-color:#FFF!important;}#modal-global-contact-us .contact-form .section-message label{text-transform:capitalize!important;}.section-message .lp-tcr-message{text-transform:none!important;font-weight:400;}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:25px;}}div#modal-global-contact-us .close{top:4vh;}div#modal-global-contact-us div.modal-content div.contact-form.redesign:after{background-color:rgba(0, 0, 0, 0.6);}#modal-global-contact-us .lp-disclaimer a{-webkit-text-decoration:none!important;text-decoration:none!important;position:relative;display:inline-block;vertical-align:top;}#modal-global-contact-us .lp-disclaimer a:after,#modal-global-contact-us .lp-disclaimer a:before{content:"";height:1px;position:absolute;bottom:0;left:0;box-sizing:border-box;outline:none;-webkit-transition:0.4s;transition:0.4s;}#modal-global-contact-us .lp-disclaimer a:before{background-color:#ccc;width:100%;}#modal-global-contact-us .lp-disclaimer a:after{width:0%;background-color:#FFF!important;-webkit-transition:0.4s;transition:0.4s;}#modal-global-contact-us .lp-disclaimer a:hover{-webkit-text-decoration:none!important;text-decoration:none!important;}#modal-global-contact-us .lp-disclaimer a:hover:after{width:100%;}div#modal-global-contact-us .contact-form{-webkit-background-position:center;background-position:center;}div#modal-global-contact-us .contact-form h2{color:#FFF;}div.mobile-contact-wrapper .contact-form .lp-btn{background-color:#FFF;border-color:#FFF;color:#792617;}div.mobile-contact-wrapper .contact-form .lp-btn:hover{background-color:transparent;border-color:#FFF;color:#FFF;}footer .img-wrap img{-webkit-filter:invert(1);filter:invert(1);}footer .footer .first_text_footer .img_size img{-webkit-filter:invert(1);filter:invert(1);}.navbar .navigation .navigation__item:last-child{content:""!important;display:block;height:30px;background-image:url('https://media-production.lp-cdn.com/media/58cb8d09-2b18-463c-94d6-a81a57ca19b0');background-repeat:no-repeat;-webkit-background-size:contain;background-size:contain;margin-left:15px;margin-right:15px;-webkit-filter:invert(1);filter:invert(1);}.navbar .navigation .navigation__item:last-child .navigation__link span{font-size:0px!important;display:none!important;}@media (max-width: 768px){footer .footer__layout__right{margin-top:0px!important;padding-left:0;}}
31footer .footer .newsletter{margin-bottom:0px!important;}@media (max-width: 768px){body>div.sidemenu .section-options a{font-size:20px!important;}}@media (max-width: 768px){body>div.sidemenu li{margin-bottom:0!important;}}@media (max-width: 768px){nav .header .navbar{padding-left:10px;}nav .header .logo img{max-width:80%!important;}}@media (max-width: 575px){footer .footer__layout__left{margin-left:auto!important;margin-right:auto!important;}}</style> 32 <style id="wow-hide-elements">.wow{visibility:hidden!important}</style> 33 <style id="page-css"> 34 #section-289d43ba-f5d7-4db2-b828-9a71515ca977{color:#ffffff;--fontColor:#ffffff;--fontColor_H:0;--fontColor_S:0%;--fontColor_L:100%;--fontColor_A:1;--fontColor_darkenDir:-1;--bgColor:#000000;--bgColor_H:0;--bgColor_S:0%;--bgColor_L:0%;--bgColor_A:1;--bgColor_darkenDir:1;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search .center-block{-webkit-box-pack:end!important;-ms-flex-pack:end!important;-webkit-justify-content:flex-end!important;justify-content:flex-end!important;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977{overflow:visible;z-index:1;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977>.video-wrapper-extended>.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-289d43ba-f5d7-4db2-b828-9a71515ca977>.video-wrapper-extended>.full-screen-video-component>.video-wrapper iframe,#section-289d43ba-f5d7-4db2-b828-9a71515ca977>.video-wrapper-extended>.full-screen-video-component>.video-wrapper video{pointer-events:none;-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;max-width:none;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977>.video-wrapper-extended>.full-screen-video-component>.video-wrapper.playing iframe,#section-289d43ba-f5d7-4db2-b828-9a71515ca977>.video-wrapper-extended>.full-screen-video-component>.video-wrapper.playing video{opacity:1;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977>.video-wrapper-extended>.full-screen-video-component>.video-wrapper iframe{position:absolute;top:50%;left:50%;width:100%;height:100%;-webkit-transform:translate(-50%, -50%);-moz-transform:translate(-50%, -50%);-ms-transform:translate(-50%, -50%);transform:translate(-50%, -50%);pointer-events:none;}@media (min-aspect-ratio: 16/9){#section-289d43ba-f5d7-4db2-b828-9a71515ca977>.video-wrapper-extended>.full-screen-video-component>.video-wrapper iframe{height:56.25vw;}}@media (max-aspect-ratio: 16/9){#section-289d43ba-f5d7-4db2-b828-9a71515ca977>.video-wrapper-extended>.full-screen-video-component>.video-wrapper iframe{width:177.78vh;}}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .video-wrapper{position:absolute;top:0;left:0;height:100%;width:100%;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .full-screen-video-component{position:relative;height:100%;overflow:hidden;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search{position:relative;--top-padding:170px;--bottom-padding:30px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;width:100%;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;min-height:770px;padding-top:var(--top-padding);padding-bottom:var(--bottom-padding);}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search.height-class-Full{min-height:100vh;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search.height-class-600px{min-height:600px;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search .bottom-spacer{position:relative;z-index:0;-webkit-flex:1 0 0%;-ms-flex:1 0 0%;flex:1 0 0%;max-height:calc(var(--top-padding) - var(--bottom-padding));}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search .center-block{-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 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;
34-webkit-justify-content:center;justify-content:center;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;text-align:center;position:relative;z-index:1;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search .opening-description{letter-spacing:.1em;margin-bottom:15px;}@media (max-width: 768px){#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search .opening-description a{white-space:pre-line;}}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search .opening-title{margin-bottom:15px;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search .opening-button{margin:0 15px;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search .lp-title-group{max-width:100%;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search .search-form{margin-top:30px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;width:100%;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;-webkit-align-items:stretch;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search .search-form.with-filters{padding-top:32px;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search .search-button{margin:5px;border-radius:0;outline:none;background-color:#000;color:#fff;height:44px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;padding-left:50px;padding-right:50px;-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;cursor:pointer;-webkit-transition:all .3s ease;transition:all .3s ease;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search .search-button:hover{background-color:#fff;color:#000;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search .search-lease-tabs{position:absolute;left:0;bottom:100%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search .search-lease-tab{padding:4px 20px;background-color:#000;color:#fff;cursor:pointer;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search .search-lease-tab.active{background-color:#fff;color:#000;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search .search-wrapper{margin:5px;letter-spacing:normal;width:100%;max-width:444px;position:relative;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search .search-input-container{width:100%;border:none;height:43px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;padding:0 16px;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background-color:#fff;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search .search-input-container .search-icon{color:#c0c0c0;margin-right:10px;-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto;font-size:20px;line-height:0;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search .search-input-container .search-input{color:#000;-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 0 auto;width:50px;border:none;border-radius:0;outline:none;background:transparent;font-size:16px;padding:0;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search .search-results{line-height:normal;text-align:left;background-color:rgba(0, 0, 0, 0.8);position:absolute;width:100%;left:0;top:100%;border:none;overflow:hidden;-webkit-transition:height 0.3s ease;transition:height 0.3s ease;height:0;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search .results-container,#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search .predefined-links{padding:10px 0;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search .results-container a,#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search .predefined-links a{color:#b6b6b6;-webkit-transition:color 0.3s ease;transition:color 0.3s ease;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search .results-container a:hover,#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search .predefined-links a:hover{color:#fff;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search .predefined-links{max-height:400px;overflow:auto;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search .results-block{margin:15px 0;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search .results-block-title{margin:0;padding:0 48px;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search .results-block-title .results-title-label{margin:0 20px 10px 0;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search .results-block-title .search-near-container{margin-bottom:15px;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search .results-block:nth-child(n + 2) .search-near-container{display:none;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search .results-link{display:block;padding:4px 48px;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search .results-link.selected-link{color:#fff;background-color:rgba(255, 255, 255, 0.2);}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search .search-in-progress{padding:30px 0;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;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-size:30px;opacity:0.5;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search .not-visible{display:none!important;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search .nothing-found{width:100%;padding:20px;}@media (max-width: 560px){#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search .search-form{-webkit-box-flex-wrap:wrap;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search .search-button{width:100%;max-width:444px;}}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening-with-search .search-near{cursor:pointer;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .loc-msg-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;-webkit-transition:background-color 0.3s ease;transition:background-color 0.3s ease;background-color:transparent;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .loc-msg-wrap{width:100%;height:100%;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:20px;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-clip-path:polygon(50% 50%, 50% 50%, 50% 50%, 50% 50%);clip-path:polygon(50% 50%, 50% 50%, 50% 50%, 50% 50%);-webkit-transition:clip-path 0.4s ease;transition:clip-path 0.4s ease;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .loc-msg-modal{border-radius:20px;padding:10px 20px 20px;max-width:400px;min-width:100px;background-color:rgba(0,0,0,0.9);color:#fff;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;position:relative;-webkit-flex:0 1 auto;-ms-flex:0 1 auto;flex:0 1 auto;max-height:100%;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .loc-msg-close{position:absolute;width:40px;height:40px;top:10px;right:10px;cursor:pointer;-webkit-transition:all 0.3s ease;transition:all 0.3s ease;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .loc-msg-close:before{content:'';width:20px;height:2px;background-color:#fff;position:absolute;left:10px;top:19px;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg);}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .loc-msg-close:after{content:'';width:20px;height:2px;background-color:#fff;position:absolute;left:10px;top:19px;-webkit-transform:rotate(-45deg);-moz-transform:rotate(-45deg);-ms-transform:rotate(-45deg);transform:rotate(-45deg);}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .loc-msg-close:hover{-webkit-transform:scale(1.2);-moz-transform:scale(1.2);-ms-transform:scale(1.2);transform:scale(1.2);}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .search-near-hidden .search-near-container{display:none;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .loc-msg-title{-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto;margin-bottom:20px;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .loc-msg-container{-webkit-flex:0 1 auto;-ms-flex:0 1 auto;flex:0 1 auto;overflow:auto;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .loc-msg-container p{margin:0;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .loc-msg-container p+p{margin-top:1em;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977.visible-loc-msg{z-index:1000;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977.visible-loc-msg .loc-msg-backdrop{background-color:rgba(255,255,255,0.4);}#section-289d43ba-f5d7-4db2-b828-9a71515ca977.visible-loc-msg .loc-msg-wrap{-webkit-clip-path:polygon(0 0, 0 100%, 100% 100%, 100% 0%);clip-path:polygon(0 0, 0 100%, 100% 100%, 100% 0%);}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening__carousel .title-item{display:none;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .opening__carousel.visible .title-item{display:block;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 >*:last-child{position:relative;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .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-289d43ba-f5d7-4db2-b828-9a71515ca977 .video-wrapper{position:absolute;top:0;left:0;height:100%;width:100%;}@media screen and (max-width: 900px){#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .video-wrapper.hidable{display:none;}}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 .full-screen-video-component{position:relative;height:100%;overflow:hidden;}#section-289d43ba-f5d7-4db2-b828-9a71515ca977 video{position:absolute;z-index:-1000;width:100%;object-fit:cover;}@media all and (-ms-high-contrast: none),(-ms-high-contrast: active){#section-289d43ba-f5d7-4db2-b828-9a71515ca977 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-289d43ba-f5d7-4db2-b828-9a71515ca977 .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-289d43ba-f5d7-4db2-b828-9a71515ca977 .poster{display:block;}}#section-d80ad228-fd3f-4c9e-afb6-554937747605{color:#ffffff;--fontColor:#ffffff;--fontColor_H:0;--fontColor_S:0%;--fontColor_L:100%;--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;--gradient-color:var(--overlay-color, rgba(0, 0, 0, 0.1));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/2b733cd4-cfb9-49fa-82c3-
34d2b718447cf5');background-repeat:no-repeat;-webkit-background-position:center;background-position:center;-webkit-background-size:cover;background-size:cover;}#section-d80ad228-fd3f-4c9e-afb6-554937747605{background-position-y:10%!important;}@media (max-width: 768px){#section-d80ad228-fd3f-4c9e-afb6-554937747605{background-position-x:55%!important;}}#section-d80ad228-fd3f-4c9e-afb6-554937747605{background-attachment:fixed;-webkit-background-position:center;background-position:center;background-repeat:no-repeat;-webkit-background-size:cover;background-size:cover;}@media only screen and (max-width: 768px){#section-d80ad228-fd3f-4c9e-afb6-554937747605{background-attachment:unset;}}#section-d80ad228-fd3f-4c9e-afb6-554937747605 .opening__text-holder{max-width:820px!important;}#section-d80ad228-fd3f-4c9e-afb6-554937747605 h2{letter-spacing:8px;}@media (max-width: 900px){#section-d80ad228-fd3f-4c9e-afb6-554937747605 .opening__text{margin-top:34px!important;}}@media (max-width: 560px){#section-d80ad228-fd3f-4c9e-afb6-554937747605 .lp-btn{width:100%;}}#section-d80ad228-fd3f-4c9e-afb6-554937747605>.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-d80ad228-fd3f-4c9e-afb6-554937747605>.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-d80ad228-fd3f-4c9e-afb6-554937747605>.video-wrapper>.full-screen-video-component>.video-wrapper.playing>video{opacity:1;}#section-d80ad228-fd3f-4c9e-afb6-554937747605 .video-wrapper{z-index:1;}#section-d80ad228-fd3f-4c9e-afb6-554937747605 .overlay-component{z-index:2;}#section-d80ad228-fd3f-4c9e-afb6-554937747605 .opening{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;min-height:100vh;-webkit-box-pack:end;-ms-flex-pack:end;-webkit-justify-content:flex-end;justify-content:flex-end;position:relative;}@media(max-width: 900px){#section-d80ad228-fd3f-4c9e-afb6-554937747605 .opening{display:block;min-height:1px;}}#section-d80ad228-fd3f-4c9e-afb6-554937747605 .opening__text{overflow:hidden;padding:20px 0;width:100%;position:relative;z-index:2;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: 900px){#section-d80ad228-fd3f-4c9e-afb6-554937747605 .opening__text{width:100%;padding:30px 25px 0;margin-bottom:0;margin-top:375px;}}#section-d80ad228-fd3f-4c9e-afb6-554937747605 .opening__text-holder{max-width:420px;margin:0 0 0 149px;}@media(max-width: 900px){#section-d80ad228-fd3f-4c9e-afb6-554937747605 .opening__text-holder{margin-left:0;max-width:100%;}}#section-d80ad228-fd3f-4c9e-afb6-554937747605 .opening__title{position:relative;margin-bottom:25px;}@media(max-width: 900px){#section-d80ad228-fd3f-4c9e-afb6-554937747605 .opening__title{margin-bottom:10px;}}#section-d80ad228-fd3f-4c9e-afb6-554937747605 .opening__subtitle{margin:0 0 25px;max-width:100%;}#section-d80ad228-fd3f-4c9e-afb6-554937747605 .opening__btn{margin:0 20px 20px 0;}#section-d80ad228-fd3f-4c9e-afb6-554937747605 .opening__btn:last-child{margin-right:0;}#section-d80ad228-fd3f-4c9e-afb6-554937747605 .opening__socials{z-index:2;position:absolute;bottom:0;left:0;bottom:0;width:50%;padding:50px 50px 40px 50px;-webkit-box-pack:start;-ms-flex-pack:start;-webkit-justify-content:flex-start;justify-content:flex-start;}@media(max-width: 900px){#section-d80ad228-fd3f-4c9e-afb6-554937747605 .opening__socials{padding:20px;width:auto;position:relative;}}#section-d80ad228-fd3f-4c9e-afb6-554937747605 .opening__socials li{margin-bottom:10px;}#section-d80ad228-fd3f-4c9e-afb6-554937747605 .mute-icon__container{position:absolute;bottom:50px;right:50px;width:27px;height:24px;z-index:3;}@media(max-width: 900px){#section-d80ad228-fd3f-4c9e-afb6-554937747605 .mute-icon__container{display:none;}}#section-d80ad228-fd3f-4c9e-afb6-554937747605 .mute-icon__container:hover{cursor:pointer;}#section-d80ad228-fd3f-4c9e-afb6-554937747605 .mute-icon__container .muted{dis
34play:none;}#section-d80ad228-fd3f-4c9e-afb6-554937747605 .mute-icon__container .muted:hover path{d:path("M16.6154 0.923084C16.6154 0.57053 16.4146 0.248765 16.0979 0.0938699C15.7812 -0.0610252 15.4039 -0.0219961 15.1256 0.194451L7.0679 6.46154H1.84615C1.35652 6.46154 0.886946 6.65605 0.540726 7.00227C0.194505 7.34849 0 7.81806 0 8.30769V15.6923C0 16.1819 0.194504 16.6515 0.540726 16.9977C0.886948 17.344 1.35652 17.5385 1.84615 17.5385H7.0679L15.1256 23.8055C15.4039 24.022 15.7812 24.061 16.0979 23.9061C16.4146 23.7512 16.6154 23.4295 16.6154 23.0769V0.923084ZM26.499 9.88351C26.8595 9.52303 26.8595 8.93857 26.499 8.57809C26.1385 8.2176 25.5541 8.2176 25.1936 8.57809L23.0771 10.6946L20.9606 8.57809C20.6001 8.2176 20.0156 8.2176 19.6551 8.57809C19.2946 8.93857 19.2946 9.52303 19.6551 9.88351L21.7716 12L19.6551 14.1165C19.2946 14.477 19.2946 15.0615 19.6551 15.422C20.0156 15.7825 20.6001 15.7825 20.9606 15.422L23.0771 13.3055L25.1936 15.422C25.5541 15.7825 26.1385 15.7825 26.499 15.422C26.8595 15.0615 26.8595 14.477 26.499 14.1165L24.3825 12L26.499 9.88351Z");}#section-d80ad228-fd3f-4c9e-afb6-554937747605 .mute-icon__container .unmuted{display:none;}#section-d80ad228-fd3f-4c9e-afb6-554937747605 .mute-icon__container .unmuted:hover path{d:path("M16.0979 0.0938699C16.4146 0.248765 16.6154 0.57053 16.6154 0.923084V23.0769C16.6154 23.4295 16.4146 23.7512 16.0979 23.9061C15.7812 24.061 15.4039 24.022 15.1256 23.8056L7.0679 17.5385H1.84615C1.35652 17.5385 0.886948 17.344 0.540726 16.9977C0.194504 16.6515 0 16.1819 0 15.6923V8.3077C0 7.81807 0.194505 7.34849 0.540726 7.00227C0.886946 6.65605 1.35652 6.46154 1.84615 6.46154H7.0679L15.1256 0.194451C15.4039 -0.0219961 15.7812 -0.0610252 16.0979 0.0938699ZM22.7568 5.47289C23.1173 5.11241 23.7017 5.11241 24.0622 5.47289C24.9194 6.33005 25.5993 7.34764 26.0632 8.46757C26.5271 9.58749 26.7658 10.7878 26.7658 12C26.7658 13.2122 26.5271 14.4126 26.0632 15.5325C25.5993 16.6524 24.9194 17.67 24.0622 18.5272C23.7017 18.8876 23.1173 18.8876 22.7568 18.5272C22.3963 18.1667 22.3963 17.5822 22.7568 17.2217C23.4425 16.536 23.9865 15.7219 24.3576 14.826C24.7287 13.9301 24.9197 12.9698 24.9197 12C24.9197 11.0303 24.7287 10.07 24.3576 9.17406C23.9865 8.27812 23.4425 7.46404 22.7568 6.77832C22.3963 6.41783 22.3963 5.83337 22.7568 5.47289ZM20.7986 8.73645C20.4381 8.37596 19.8537 8.37596 19.4932 8.73645C19.1327 9.09693 19.1327 9.68139 19.4932 10.0419C19.7503 10.299 19.9543 10.6043 20.0935 10.9403C20.2327 11.2763 20.3043 11.6364 20.3043 12C20.3043 12.3637 20.2327 12.7238 20.0935 13.0598C19.9543 13.3957 19.7503 13.701 19.4932 13.9582C19.1327 14.3186 19.1327 14.9031 19.4932 15.2636C19.8537 15.6241 20.4381 15.6241 20.7986 15.2636C21.2272 14.835 21.5672 14.3262 21.7991 13.7662C22.0311 13.2063 22.1504 12.6061 22.1504 12C22.1504 11.3939 22.0311 10.7937 21.7991 10.2338C21.5672 9.67382 21.2272 9.16503 20.7986 8.73645Z");}@media (min-width: 960px) and (orientation: landscape){#section-d80ad228-fd3f-4c9e-afb6-554937747605{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/2b733cd4-cfb9-49fa-82c3-d2b718447cf5');}}@media (min-width: 1280px) and (orientation: landscape){#section-d80ad228-fd3f-4c9e-afb6-554937747605{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=1920/https://media-production.lp-cdn.com/media/2b733cd4-cfb9-49fa-82c3-d2b718447cf5');}}@media (min-width: 1920px) and (orientation: landscape){#section-d80ad228-fd3f-4c9e-afb6-554937747605{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/2b733cd4-cfb9-49fa-82c3-d2b718447cf5');}}@media (min-width: 2560px) and (orientation: landscape){#section-d80ad228-fd3f-4c9e-afb6-554937747605{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/2b733cd4-cfb9-49fa-82c3-
34d2b718447cf5');}}#section-6ddcb24d-16a4-470a-8d99-8907da812ee3{color:#FFF;--fontColor:#FFF;--fontColor_H:0;--fontColor_S:0%;--fontColor_L:100%;--fontColor_A:1;--fontColor_darkenDir:-1;--bgColor:#000;--bgColor_H:0;--bgColor_S:0%;--bgColor_L:0%;--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:#000;}#section-6ddcb24d-16a4-470a-8d99-8907da812ee3 .carousel-entity{height:105px;width:250px;}#section-6ddcb24d-16a4-470a-8d99-8907da812ee3 .section-title{text-align:center;padding:0;margin:0 0 40px 0;}@media(max-width: 768px){#section-6ddcb24d-16a4-470a-8d99-8907da812ee3 .section-title{margin:0 0 20px 0;}}#section-6ddcb24d-16a4-470a-8d99-8907da812ee3 .press-carousel-component{padding:80px 0;}@media(max-width: 786px){#section-6ddcb24d-16a4-470a-8d99-8907da812ee3 .press-carousel-component{padding:50px 0;}}#section-6ddcb24d-16a4-470a-8d99-8907da812ee3 .press-item-inner{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;height:100%;border-left:1.5px solid hsla(0,7%,78%,.35);}#section-6ddcb24d-16a4-470a-8d99-8907da812ee3 .press-item-inner img{width:50%;height:100%;object-fit:contain;}#section-6ddcb24d-16a4-470a-8d99-8907da812ee3 .carousel-slide:not(.slick-slide):first-child .press-item-inner{border-left:none;}#section-6ddcb24d-16a4-470a-8d99-8907da812ee3 .slick-track{will-change:transform;}@media (-webkit-min-device-pixel-ratio: 1.5){#section-6ddcb24d-16a4-470a-8d99-8907da812ee3 .slick-track{image-rendering:-webkit-optimize-contrast;}}#section-6ddcb24d-16a4-470a-8d99-8907da812ee3 .carousel-container:not(.slick-initialized){display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-flex-wrap:nowrap;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap;overflow:hidden;}#section-6ddcb24d-16a4-470a-8d99-8907da812ee3>div:last-child{padding-top:calc(4 / 4 * var(--global-section-padding))!important;padding-bottom:calc(4 / 4 * var(--global-section-padding))!important;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d{color:#ffffff;--fontColor:#ffffff;--fontColor_H:0;--fontColor_S:0%;--fontColor_L:100%;--fontColor_A:1;--fontColor_darkenDir:-1;--bgColor:#2B2B2D;--bgColor_H:240;--bgColor_S:2%;--bgColor_L:17%;--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:#2B2B2D;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties .featured-properties__label{background:#792617!important;color:#fff!important;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .slick-links-nav .spacer{background-color:#fff!important;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .redesign.featured-properties-section ul.slick-links-nav li span.link{color:#fff;font-weight:400!important;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .redesign.featured-properties-section ul.slick-links-nav li span.link:hover{color:#fff;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .redesign.featured-properties-section ul.slick-links-nav li span.link:before{background-color:silver!important;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .redesign.featured-properties-section ul.slick-links-nav li span.link:after{background-color:#fff;}@media (min-width: 992px){#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties .featured-properties__item-cover{padding-left:20px!important;padding-right:20px!important;}}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties__text{background-color:#FDFDFD!important;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties__text h4,#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties__text h5,#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties__text p{color:#000!important;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties-header{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties__text p{display:none;}@media (min-width: 1025px){#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties .featured-properties__item{min-height:450px!important;}}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties-section{padding:140px 0;}@media (max-width: 991px){#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties-section{padding:100px 0;}}@media (max-width: 768px){#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties-section{padding:40px 0;}}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties-section .slick-list{width:100%;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties-section .slick-track{display:-webkit-box!important;display:-webkit-flex!important;display:-ms-flexbox!important;display:flex!important;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties-section .slick-slide{height:inherit!important;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-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties-section .slick-arrow:not(.slick-disabled){cursor:pointer;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties-section .slick-links-nav{display:inline-block;list-style:none;vertical-align:top;margin:0 0 0;padding:28px 0 0;white-space:nowrap;}@media (max-width: 768px){#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties-section .slick-links-nav{padding:0;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-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties-section .slick-links-nav li{display:inline-block;vertical-align:top;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties-section .slick-links-nav li+li{margin-left:40px;position:relative;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties-section .slick-links-nav .slick-hidden+.spacer{display:none;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties-section .slick-links-nav .spacer{position:absolute;left:-23px;width:1px;height:10px;margin-top:-5px;top:50%;background-color:#fff;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties-section .slick-links-nav .link.slick-disabled{cursor:default;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties-section .slick-links-nav .link.slick-disabled:hover{color:inherit;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties-section .slick-links-nav .link.slick-disabled:before,#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties-section .slick-links-nav .link.slick-disabled:after{opacity:0;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties-section .btn{min-width:250px;}@media (min-width: 561px) and (max-width: 1024px){#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties-section .btn{width:275px;}}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties-header{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;justify-content:space-between;margin-bottom:60px;text-align:center;}@media (max-width: 768px){#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties-header{display:block;margin-bottom:40px;}}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties-header h2{color:var(--fontColor);margin:0;}@media (max-width: 768px){#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties-header h2{margin-bottom:25px;}}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties-button-holder{text-align:center;margin-top:80px;}@media (max-width: 768px){#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties-button-holder{margin-top:40px;}}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties-nav{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}@media (max-width: 768px){#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties-nav{-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;}}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties-nav .slick-arrow{position:relative;left:auto;right:auto;bottom:auto;top:auto;text-align:left;font-size:14px;line-height:24px;width:auto;height:24px;text-transform:uppercase;margin-top:15px;color:#C6C6C6;opacity:1!important;-webkit-transform:translate(0, 0);-moz-transform:translate(0, 0);-ms-transform:translate(0, 0);transform:translate(0, 0);font-family:var(--global-secondary-font-family);}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties-nav .slick-arrow:hover{color:#fff;opacity:1;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties-nav .slick-arrow:before{content:'';}@media (max-width: 768px){#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties-nav .slick-arrow{margin-top:0;}}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties-nav .slick-arrow:after{content:'';position:absolute;bottom:3px;height:1px;background-color:#fff;left:0;right:0;-webkit-transition:opacity .3s;transition:opacity .3s;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties-nav .slick-arrow.slick-prev:before{content:none;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties-nav .slick-arrow.slick-next{margin-left:41px;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties-nav .slick-arrow.slick-next:before{left:-21px;width:1px;height:12px;background-color:#fff;pointer-events:none;top:8px;opacity:1;position:absolute;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties-nav .slick-arrow.slick-disabled:after{opacity:0;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties{padding:0;margin:0 -40px;color:#000;}@media (max-width: 991px){#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties{margin-left:-12px;margin-right:-12px;}}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties .featured-properties__item-cover{padding:0 40px;}@media (max-width: 991px){#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties .featured-properties__item-cover{padding:0 12px;}}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties .featured-properties__item-cover:focus{outline:none;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties .featured-properties__item{background-color:#fff;text-align:center;font-weight:bold;position:relative;height:100%;color:var(--fontColor);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: 1025px){#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties .featured-properties__item{min-height:500px;}}@media (hover: none) and (pointer: coarse){#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties .featured-properties__item{min-height:1px;background-color:transparent;}}@media (hover: hover) and (pointer: fine){#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties .featured-properties__item:hover .featured-properties__hover{opacity:1;}}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties .featured-properties__item h4{text-transform:none;color:black;margin:0 0 7px;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties .featured-properties__item p{color:black;margin:0 0 7px;}@media (max-width: 768px){#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties .featured-properties__item p{margin-bottom:3px;}}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties .featured-properties__item h5{color:black;margin:0;font-family:var(--global-secondary-font-family);text-transform:none;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties .featured-properties__item >a{width:100%;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties .featured-properties__img{vertical-align:top;width:100%;height:315px;background-color:gray;position:relative;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties .featured-properties__img img{width:100%;height:100%;object-fit:cover;}@media (max-width: 768px){#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties .featured-properties__img{height:200px;}}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties .featured-properties__text{color:var(--fontColor);background-color:#fff;padding:25px 15px 15px;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;}@media (hover: none) and (pointer: coarse){#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties .featured-properties__text{padding:13px;min-height:175px;}}@media (max-width: 768px){#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties .featured-properties__text h4{max-height:56px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;}}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties .featured-properties__text p{white-space:normal;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties .featured-properties__label{position:absolute;top:0;right:0;background:#000;color:#fff;
34padding:4px 35px;z-index:2;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties .featured-properties__hover{color:var(--bgColor);padding:15px;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;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: 991px){#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties .featured-properties__hover{display:none;}}@media(max-width: 768px){#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties .featured-properties__hover h4{display:none;}}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties .featured-properties__hover >a{position:absolute;top:0;left:0;width:100%;height:100%;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties .featured-properties__buttons{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:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;gap:10px 24px;position:relative;z-index:2;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties .featured-properties__share{display:inline-block;position:relative;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties .featured-properties__share.featured-properties__share--opened .socials{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}@media (hover: none) and (pointer: coarse){#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties .featured-properties__share{display:block;width:100%;margin-top:4px;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties .featured-properties__share .btn.btn--primary-light{display:block;}}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties .featured-properties__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;}@media (hover: none) and (pointer: coarse){#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties .featured-properties__share .socials{-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;position:static;-webkit-transform:translateX(0);-moz-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0);top:auto;left:auto;}}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties .featured-properties__share .socials .socials__link{width:69px;}@media (hover: none) and (pointer: coarse){#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties .featured-properties__share .socials .socials__link:hover{border-bottom:transparent!important;}}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties:not(.slick-initialized){display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-flex-wrap:nowrap;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap;overflow:hidden;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties:not(.slick-initialized) >.featured-properties__item-cover{-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto;width:100%;}@media (min-width: 769px){#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties:not(.slick-initialized) >.featured-properties__item-cover{width:50%;}}@media (min-width: 1100px){#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .three-slides .featured-properties:not(.slick-initialized)>.featured-properties__item-cover{width:33%;}}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties__item-info{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;height:100%;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties__item-info:has(.mls-compliance-container) .featured-properties__text{padding-bottom:0;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties__item-mls-attribution{text-shadow:none;margin:0!important;color:#000!important;width:calc(100% - 200px);}@media (max-width: 1024px){#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties__item-mls-attribution{width:100%;}}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties__item .featured-properties__item-mls-attribution+.featured-properties__item-mls-logo{position:absolute!important;right:15px!important;bottom:15px!important;display:inline-block;}@media (max-width: 1024px){#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties__item .featured-properties__item-mls-attribution+.featured-properties__item-mls-logo{position:static!important;}}@media (max-width: 1024px){#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties__item .featured-properties__item-mls-logo{display:inline-block!important;}}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .mls-compliance-container{margin-top:auto;padding:15px!important;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties__open-house{position:absolute;bottom:0;left:0;width:100%;padding:8px 0;color:black;background:rgba(255, 255, 255, 0.7);}@media (max-width: 768px){#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .featured-properties__open-house{font-size:12px;}}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d .description{margin-bottom:15px;}#section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d>div:last-child{padding-top:calc(4 / 4 * var(--global-section-padding))!important;padding-bottom:calc(4 / 4 * var(--global-section-padding))!important;}#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d{color:#FFF;--fontColor:#FFF;--fontColor_H:0;--fontColor_S:0%;--fontColor_L:100%;--fontColor_A:1;--fontColor_darkenDir:-1;--bgColor:#000000;--bgColor_H:0;--bgColor_S:0%;--bgColor_L:0%;--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:#000000;}#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .ig-feed{padding:80px 0;}#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .title{margin:0 20px 0 0;}#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .instagram-link{display:block;margin:0 20px 0 0;color:var(--global-primary-font-color);}#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .instagram-link .instagram-name{display:inline;margin:0;}#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .title+.instagram-link{margin-top:5px;}#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .top-wrapper{margin-bottom:20px;
34display:-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-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .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-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .follow-button{margin:20px 0 0 0;display:block;}#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .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-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .nav-button.slick-disabled{opacity:0.6;pointer-events:none;cursor:default;}#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .nav-button:not(.slick-disabled):hover{background-color:#1a1a1a;border-color:#1a1a1a;color:#fff;}#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .top-nav-prev{margin-left:30px;}#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .top-nav-next{margin-left:10px;}#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .hidden-control{display:none;}#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .slide-single,#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .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-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .slide-single:first-child,#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .slide-multi:first-child{margin-left:auto;}#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .slide-single:last-child,#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .slide-multi:last-child{margin-right:auto;}#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .slide-single.type2,#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .slide-multi.type2{width:calc(100% / 5 * 2);}#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .slide-single.type3,#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .slide-multi.type3{width:calc(100% / 2);}#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .slide-single.type4,#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .slide-multi.type4{width:calc(100% / 2);}#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .slide-single.type5,#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .slide-multi.type5{width:100%;}@media (max-width: 440px){#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .ig-feed-container{padding:0;width:100%;}}#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .ig-feed-feed{width:calc(100% + 20px);position:relative;left:-10px;overflow:hidden;}#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .ig-feed-slider{width:100%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .ig-feed-item__img{position:absolute;left:-1px;top:-1px;bottom:-1px;right:-1px;background:center/cover no-repeat;}#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .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-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .ig-feed-item:hover .ig-feed-item__info{opacity:1;}#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .ig-feed-item__caption{text-overflow:ellipsis;-webkit-line-clamp:4;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;}#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .video-icon{position:absolute;width:50px;height:50px;background-color:#fff;left:50%;
34top: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-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .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-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .ig-feed-item:hover .video-icon{opacity:0;}#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .slide-single .ig-feed-item__info{padding:15%;}#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .slide-single .ig-feed-item__caption{-webkit-line-clamp:7;}#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .ig-feed-item{background-color:var(--tileColor, #000);display:block;width:100%;padding-bottom:125%;overflow:hidden;position:relative;}#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .slide-multi::before{content:'';display:block;width:100%;padding-bottom:125%;}#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .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-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .slide-multi-content .ig-feed-item{width:calc(50% - 10px);padding-bottom:calc(62.5% - 12.5px);}#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .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-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .bottom-controls{width:100%;display:none;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;}#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .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;-webkit-justify-content:center;justify-content:center;width:48px;height:48px;color:#1a1a1a;border:1px solid currentColor;cursor:pointer;}#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .bottom-nav-button.slick-disabled{opacity:0.6;pointer-events:none;cursor:default;}@media (max-width: 767px){#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .top-right,#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .top-left{width:100%;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;}#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .title,#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .instagram-link{margin-right:0;text-align:center;}#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .top-nav-prev,#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .top-nav-next{display:none;}#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .bottom-controls{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}}#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .ig-feed{display:none;}#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d .has-data .ig-feed{display:block;}#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d.has-data .ig-feed,#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d#section-temp .ig-feed{display:block;}#section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d>div:last-child{padding-top:calc(4 / 4 * var(--global-section-padding))!important;padding-bottom:calc(4 / 4 * var(--global-section-padding))!important;}#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;}
34#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;}}@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
34-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;left: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;
34-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;}}nav .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;
34left: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;-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:rgba(43, 43, 45, 1);color:rgba(255, 255, 255, 1);--fontColor:rgba(255, 255, 255, 1);--fontColor_H:0;--fontColor_S:0%;--fontColor_L:100%;--fontColor_A:1;--fontColor_darkenDir:-1;--bgColor:rgba(43, 43, 45, 1);--bgColor_H:240;--bgColor_S:2%;--bgColor_L:17%;--bgColor_A:1;--bgColor_darkenDir:1;}body>div.sidemenu{background-color:transparent;}body>div.sidemenu .wrapper{--linkColor:hsla( 35 var(--fontColor_H, 0), 36 var(--fontColor_S, 0%), 37 calc(50% + var(--fontColor_darkenDir, -1) * 13%), 38 var(--fontColor_A, 1) 39 );opacity:1;-webkit-transition:-webkit-transform 0s linear,opacity 0.2s ease-out;transition:transform 0s linear,opacity 0.2s ease-out;background-color:var(--bgColor, rgba(0, 0, 0, 0.9));color:var(--fontColor, #fff);position:fixed;top:0;right:0;height:100%;width:100vw;}body>div.sidemenu .holder{font-size:20px;top:150px;left:auto;right:0;position:absolute;max-width:1200px;width:100%;height:100%;}body>div.sidemenu .title{font-size:12px;text-align:right;width:100%;padding-right:150px;margin-bottom:30px;text-transform:uppercase;letter-spacing:1px;font-weight:bold;}@media (max-width: 992px){body>div.sidemenu .title{padding-right:20px;}}body>div.sidemenu .section-options{margin:0 auto;overflow-y:scroll;height:calc(100% - 200px);}body>div.sidemenu .section-options::-webkit-scrollbar{width:7px;}body>div.sidemenu .section-options::-webkit-scrollbar-thumb{border-radius:10px;background-color:#4d5259;}body>div.sidemenu .section-options .option{text-align:right;border-bottom:2px none;}body>div.sidemenu .section-options a,body>div.sidemenu .section-options button{font-family:var(--global-primary-font-family);line-height:70px;color:var(--linkColor);font-size:35px;-webkit-text-decoration:none;text-decoration:none;display:inline-block;padding-right:150px;border:none;background-color:transparent;cursor:pointer;border-bottom:2px solid transparent;text-transform:none;-webkit-transition:.3s linear all;transition:.3s linear all;}body>div.sidemenu .section-options a:hover:not(.sub-nav-link),body>div.sidemenu .section-options button:hover:not(.sub-nav-link){color:var(--fontColor, #fff);border-bottom:2px solid var(--fontColor, #fff);}@media (max-width: 992px){body>div.sidemenu .section-options a,body>div.sidemenu .section-options button{padding-right:20px;}}body>div.sidemenu .sidemenu-close{width:24px;height:24px;display:block;padding:0;border:none;background-color:transparent;cursor:pointer;-webkit-transition:all .3s ease;transition:all .3s ease;}body>
39div.sidemenu .sidemenu-close:hover{-webkit-transform:scale(1.3);-moz-transform:scale(1.3);-ms-transform:scale(1.3);transform:scale(1.3);}body>div.sidemenu .sidemenu-close:before,body>div.sidemenu .sidemenu-close:after{content:'';display:block;width:30px;height:2px;background-color:var(--fontColor, #fff);position:absolute;left:50%;top:50%;}body>div.sidemenu .sidemenu-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 .sidemenu-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);}body>div.sidemenu button.toggle{border:none;background:none;position:absolute;right:76px;top:74px;}body>div.sidemenu button.toggle:focus,body>div.sidemenu button.toggle:active{outline:none;}body>div.sidemenu .sub-nav-container{position:relative;}body>div.sidemenu .sub-nav{opacity:0;visibility:hidden;-webkit-transition:all .5s ease;transition:all .5s ease;max-height:0;}body>div.sidemenu .sub-nav ul{margin:0;padding-top:10px;}body>div.sidemenu .sub-nav.visible{opacity:1;visibility:visible;max-height:10000px;}body>div.sidemenu .sub-nav a,body>div.sidemenu .sub-nav button{font-size:25px;line-height:45px;}body>div.sidemenu .sub-nav a:hover,body>div.sidemenu .sub-nav button:hover{color:var(--fontColor, #fff);}footer{background-color:rgba(43, 43, 45, 1);color:rgba(255, 255, 255, 1);--fontColor:rgba(255, 255, 255, 1);--fontColor_H:0;--fontColor_S:0%;--fontColor_L:100%;--fontColor_A:1;--fontColor_darkenDir:-1;--bgColor:rgba(43, 43, 45, 1);--bgColor_H:240;--bgColor_S:2%;--bgColor_L:17%;--bgColor_A:1;--bgColor_darkenDir:1;}footer .pre-wrap{white-space:pre-wrap;}footer ul{margin-top:0;margin-bottom:15px;}footer li{margin-bottom:0;}footer ul ul{margin-bottom:0;}footer a{background-color:transparent;color:inherit;-webkit-text-decoration:none;text-decoration:none;}footer a:-webkit-any-link{-webkit-text-decoration:none;text-decoration:none;}footer a:active,footer a:hover{outline:0;}footer a.underlined{-webkit-text-decoration:underline;text-decoration:underline;}footer a.underlined:hover{-webkit-text-decoration:none;text-decoration:none;}footer .container{width:100%;padding-right:16px;padding-left:16px;margin-right:auto;margin-left:auto;}@media (max-width: 576px){footer .container{max-width:100%;padding-right:16px;padding-left:16px;}}@media (min-width: 992px){footer .container{max-width:960px;}}@media (min-width: 1340px){footer .container{padding:0;max-width:1070px;}}footer h1,footer h2,footer h3{font-weight:normal;font-stretch:normal;font-style:normal;letter-spacing:normal;}footer h1{font-size:42px;line-height:1.19;}footer h2{font-size:30px;line-height:1.33;}footer h3{font-size:18px;line-height:1.67;}@media (max-width: 576px){footer h1{font-size:32px;line-height:1.31;}footer h2{font-size:26px;line-height:1.38;}footer h3{font-size:18px;line-height:1.56;}}footer .btn--subscribe{background-color:transparent;border:solid 2px;font-size:14px;line-height:1.5;color:var(--textColor);padding:14px 35px;cursor:pointer;font-weight:700;-webkit-transition:0.2s all;transition:0.2s all;}@media (min-width: 540px){footer .btn--subscribe:hover{color:var(--bgColor);background-color:var(--fontColor);border-color:var(--fontColor);}}footer .btn:disabled{background-color:#f4f4f4;color:#c1c1c1;}footer .btn--white{color:white;border-color:white;}@media (min-width: 540px){footer .btn--white:hover{background-color:#575757;border-color:#575757;color:white;}}footer .btn--white:disabled{background-color:#f4f4f4;color:#c1c1c1;}footer .footer{padding:91px 0 42px 0;}@media (max-width: 768px){footer .footer{padding:46px 0 100px;}}footer .footer .company-logo.light{display:none;}footer .footer.dark .company-logo.light{display:block;}footer .footer.dark .company-logo.dark{display:none;}footer .footer.light .company-logo.light{display:none;}footer .footer.light .company-logo.dark{display:block;}footer .footer .company-logo{display:block;
39max-width:200px;}footer .footer__layout{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: 576px){footer .footer__layout{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}}footer .footer__layout__left{-webkit-flex-basis:57%;-ms-flex-preferred-size:57%;flex-basis:57%;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;}footer .footer__layout__right{font-size:18px;-webkit-flex-basis:40%;-ms-flex-preferred-size:40%;flex-basis:40%;padding-left:15px;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;}@media (max-width: 576px){footer .footer__layout__right{margin-top:53px;padding-left:0;}}footer .footer .company{padding-right:15px;}@media (max-width: 576px){footer .footer .company{padding-right:0;}}footer .footer .company__info__newsletter{max-width:430px;}footer .footer .company__info__newsletter p{margin-bottom:0;}footer .footer .company__contacts{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin:0 -37px;margin-top:100px;-webkit-box-flex-wrap:wrap;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;}@media (max-width: 768px){footer .footer .company__contacts{margin-top:40px;}}footer .footer .company__contacts>div{padding:0 37px 35px;}footer .footer .company__contacts p{margin-bottom:10px;}@media (max-width: 576px){footer .footer .company__contacts p{margin-bottom:0;}}@media (hover: hover) and (pointer: fine){footer .footer .company__contacts a:hover{-webkit-text-decoration:underline;text-decoration:underline;}}@media (max-width: 576px){footer .footer .company__contacts{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}}footer .footer .company__address{max-width:162px;margin-right:75px;}@media (max-width: 576px){footer .footer .company__address{margin-bottom:28px;}}footer .footer .newsletter{margin-bottom:58px;overflow:hidden;}footer .footer .newsletter__info{max-width:280px;}footer .footer .newsletter__subscribe{margin-top:47px;}footer .footer .newsletter__subscribe.hide{display:none;}footer .footer .newsletter__subscribe.success .btn{display:none;}footer .footer .newsletter__subscribe input[name='email']{background:none;border:none;border-bottom:solid 1px;font-size:15px;line-height:1.67;color:var(--fontColor);width:100%;margin-bottom:0;-webkit-transition:0.3s all;transition:0.3s all;border-radius:0;}footer .footer .newsletter__subscribe input[name='email']:focus{outline:none;}footer .footer .newsletter p.success{margin-top:1em;font-style:italic;-webkit-transition:all 0.4s ease;transition:all 0.4s ease;}footer .footer .newsletter p.hide{display:none;}footer .footer__middle{-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}@media (max-width: 576px){footer .footer__middle{-webkit-align-items:flex-start;-webkit-box-align:flex-start;-ms-flex-align:flex-start;align-items:flex-start;-webkit-flex-direction:column-reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse;}}footer .footer .logos{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}@media (max-width: 576px){footer .footer .logos{margin-bottom:30px;margin-top:36px;}}footer .footer .logos__logo{width:50px;height:50px;margin-right:45px;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;}footer .footer .logos__logo img{max-width:100%;max-height:100%;}footer .footer .socials{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;font-size:12px;gap:15px;}@media (max-width: 576px){footer .footer .socials{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;width:100%;}}footer .footer .socials>li{padding:0;margin:0;}footer .footer .socials__item{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;
39-webkit-justify-content:center;justify-content:center;font-size:unset;position:relative;background-color:var(--fontColor, #000);color:var(--bgColor, #fff);}footer .footer .socials__item svg{width:1em;height:1em;}footer .footer .socials__item:hover{background-color:hsla(var(--fontColor_H, 0), var(--fontColor_S, 0%), var(--fontColor_L, 0%), .7);}footer .footer__bottom{margin-top:55px;padding-bottom:24px;}footer .footer__bottom-copyrights{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;}@media (max-width: 768px){footer .footer__bottom-copyrights{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-align-items:flex-start;-webkit-box-align:flex-start;-ms-flex-align:flex-start;align-items:flex-start;}}footer .h-pot{height:0;width:0;overflow:hidden;visibility:hidden;}footer .img-wrap{max-width:100px;width:100%;}@media (min-width: 769px){footer .img-wrap{margin:0 20px 0 0;}}footer .img-wrap img{width:100%;object-fit:cover;}footer .logo-powered{font-size:18px;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;}@media (max-width: 768px){footer .logo-powered{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-align-items:flex-start;-webkit-box-align:flex-start;-ms-flex-align:flex-start;align-items:flex-start;}}@media (max-width: 768px){footer .copyright-box{margin:5px 0 0 0;padding:0;}}footer .luxury-link{white-space:nowrap;position:relative;display:inline-block;}footer .luxury-link:after{content:"";position:absolute;display:block;width:100%;height:1px;bottom:0;left:0;-webkit-transition:.3s all linear;transition:.3s all linear;background:currentColor;}footer .luxury-link:hover:after{width:0;}footer .footer__disclaimers{padding-top:24px;padding-bottom:24px;}footer .footer .newsletter__subscribe input[name='email']::-webkit-input-placeholder{color:var(--fontColor);}footer .footer .newsletter__subscribe input[name='email']::-moz-placeholder{color:var(--fontColor);}footer .footer .newsletter__subscribe input[name='email']:-ms-input-placeholder{color:var(--fontColor);}footer .footer .newsletter__subscribe input[name='email']::placeholder{color:var(--fontColor);}body>div.mobile-contact-wrapper{z-index:200;position:relative;}body>div.mobile-contact-wrapper .lp-ico:before{content:'';width:1em;height:1em;background-color:currentColor;-webkit-background-size:cover;background-size:cover;display:block;-webkit-mask-position:center;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-transition:all .3s;transition:all .3s;}body>div.mobile-contact-wrapper .lp-ico-search:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='25' height='25' viewB
39ox='0 0 25 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M21.6231 21.3002L17.1372 16.8143M19.5606 10.9877C19.5606 15.5441 15.8669 19.2377 11.3106 19.2377C6.75421 19.2377 3.06055 15.5441 3.06055 10.9877C3.06055 6.43135 6.75421 2.73769 11.3106 2.73769C15.8669 2.73769 19.5606 6.43135 19.5606 10.9877Z' stroke='black' stroke-width='1.82813' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='25' height='25' viewBox='0 0 25 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M21.6231 21.3002L17.1372 16.8143M19.5606 10.9877C19.5606 15.5441 15.8669 19.2377 11.3106 19.2377C6.75421 19.2377 3.06055 15.5441 3.06055 10.9877C3.06055 6.43135 6.75421 2.73769 11.3106 2.73769C15.8669 2.73769 19.5606 6.43135 19.5606 10.9877Z' stroke='black' stroke-width='1.82813' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg width='25' height='25' viewBox='0 0 25 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M21.6231 21.3002L17.1372 16.8143M19.5606 10.9877C19.5606 15.5441 15.8669 19.2377 11.3106 19.2377C6.75421 19.2377 3.06055 15.5441 3.06055 10.9877C3.06055 6.43135 6.75421 2.73769 11.3106 2.73769C15.8669 2.73769 19.5606 6.43135 19.5606 10.9877Z' stroke='black' stroke-width='1.82813' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");}body>div.mobile-contact-wrapper .lp-ico-arrow-top:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='17' height='16' viewBox='0 0 17 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12.8716 9.99976L8.87158 5.99976L4.87158 9.99976' stroke='white' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='17' height='16' viewBox='0 0 17 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12.8716 9.99976L8.87158 5.99976L4.87158 9.99976' stroke='white' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg width='17' height='16' viewBox='0 0 17 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12.8716 9.99976L8.87158 5.99976L4.87158 9.99976' stroke='white' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");}body>div.mobile-contact-wrapper .lp-ico-scroll-top:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M21 3H3M12 21V7M12 7L5 14M12 7L19 14' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E ");-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M21 3H3M12 21V7M12 7L5 14M12 7L19 14' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E ");mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M21 3H3M12 21V7M12 7L5 14M12 7L19 14' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E ");}body>div.mobile-contact-wrapper .lp-ico-close:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M17.5986 6.32617L5.59863 18.3262M5.59863 6.32617L17.5986 18.3262' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E ");-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M17.5986 6.32617L5.59863 18.3262M5.59863 6.32617L17.5986 18.3262' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E ");mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M17.5986 6.32617L5.59863 18.3262M5.59863 6.32617L17.5986 18.3262' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E ");}body>div.mobile-contact-wrapper .lp-ico-phone:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M13.8
39699 6.57142C14.7459 6.74157 15.551 7.16808 16.1821 7.79637C16.8132 8.42465 17.2416 9.22612 17.4126 10.0982M13.8699 3C15.6899 3.20128 17.3871 4.01265 18.6827 5.3009C19.9784 6.58914 20.7955 8.27768 21 10.0893M10.4412 13.592C9.36357 12.5192 8.51264 11.3061 7.88843 10.0118C7.83474 9.90047 7.80789 9.84481 7.78726 9.77437C7.71397 9.52405 7.76662 9.21668 7.91909 9.00469C7.962 8.94504 8.01326 8.894 8.11578 8.79194C8.42933 8.47979 8.58611 8.32372 8.6886 8.16677C9.07515 7.57491 9.07515 6.81189 8.6886 6.22002C8.58611 6.06308 8.42933 5.90701 8.11578 5.59486L7.94101 5.42087C7.46438 4.94637 7.22607 4.70912 6.97012 4.58024C6.4611 4.32392 5.85996 4.32392 5.35093 4.58024C5.09499 4.70912 4.85667 4.94637 4.38004 5.42087L4.23867 5.56161C3.76367 6.03449 3.52617 6.27093 3.34478 6.59239C3.1435 6.94909 2.99878 7.5031 3.00001 7.91222C3.00111 8.28092 3.07295 8.53291 3.21664 9.03688C3.98881 11.7453 5.44574 14.3009 7.58743 16.4331C9.72911 18.5652 12.2963 20.0156 15.0168 20.7843C15.523 20.9274 15.7761 20.9989 16.1465 21C16.5575 21.0012 17.114 20.8571 17.4723 20.6568C17.7952 20.4762 18.0327 20.2397 18.5077 19.7669L18.649 19.6261C19.1257 19.1516 19.364 18.9144 19.4934 18.6596C19.7509 18.1528 19.7509 17.5544 19.4934 17.0476C19.364 16.7928 19.1257 16.5556 18.649 16.0811L18.4743 15.9071C18.1607 15.5949 18.0039 15.4388 17.8463 15.3368C17.2518 14.952 16.4853 14.952 15.8908 15.3368C15.7332 15.4388 15.5764 15.5949 15.2628 15.9071C15.1603 16.0091 15.1091 16.0602 15.0491 16.1029C14.8362 16.2547 14.5274 16.3071 14.276 16.2341C14.2052 16.2136 14.1493 16.1869 14.0375 16.1334C12.7374 15.512 11.5189 14.6648 10.4412 13.592Z' stroke='white' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M13.8699 6.57142C14.7459 6.74157 15.551 7.16808 16.1821 7.79637C16.8132 8.42465 17.2416 9.22612 17.4126 10.0982M13.8699 3C15.6899 3.20128 17.3871 4.01265 18.6827 5.3009C19.9784 6.58914 20.7955 8.27768 21 10.0893M10.4412 13.592C9.36357 12.5192 8.51264 11.3061 7.88843 10.0118C7.83474 9.90047 7.80789 9.84481 7.78726 9.77437C7.71397 9.52405 7.76662 9.21668 7.91909 9.00469C7.962 8.94504 8.01326 8.894 8.11578 8.79194C8.42933 8.47979 8.58611 8.32372 8.6886 8.16677C9.07515 7.57491 9.07515 6.81189 8.6886 6.22002C8.58611 6.06308 8.42933 5.90701 8.11578 5.59486L7.94101 5.42087C7.46438 4.94637 7.22607 4.70912 6.97012 4.58024C6.4611 4.32392 5.85996 4.32392 5.35093 4.58024C5.09499 4.70912 4.85667 4.94637 4.38004 5.42087L4.23867 5.56161C3.76367 6.03449 3.52617 6.27093 3.34478 6.59239C3.1435 6.94909 2.99878 7.5031 3.00001 7.91222C3.00111 8.28092 3.07295 8.53291 3.21664 9.03688C3.98881 11.7453 5.44574 14.3009 7.58743 16.4331C9.72911 18.5652 12.2963 20.0156 15.0168 20.7843C15.523 20.9274 15.7761 20.9989 16.1465 21C16.5575 21.0012 17.114 20.8571 17.4723 20.6568C17.7952 20.4762 18.0327 20.2397 18.5077 19.7669L18.649 19.6261C19.1257 19.1516 19.364 18.9144 19.4934 18.6596C19.7509 18.1528 19.7509 17.5544 19.4934 17.0476C19.364 16.7928 19.1257 16.5556 18.649 16.0811L18.4743 15.9071C18.1607 15.5949 18.0039 15.4388 17.8463 15.3368C17.2518 14.952 16.4853 14.952 15.8908 15.3368C15.7332 15.4388 15.5764 15.5949 15.2628 15.9071C15.1603 16.0091 15.1091 16.0602 15.0491 16.1029C14.8362 16.2547 14.5274 16.3071 14.276 16.2341C14.2052 16.2136 14.1493 16.1869 14.0375 16.1334C12.7374 15.512 11.5189 14.6648 10.4412 13.592Z' stroke='white' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M13.8699 6.57142C14.7459 6.74157 15.551 7.16808 16.1821 7.79637C16.8132 8.42465 17.2416 9.22612 17.4126 10.0982M13.8699 3C15.6899 3.20128 17.3871 4.01265 18.6827 5.3009C19.9784 6.58914 20.7955 8.27768 21 10.0893M10.4412 13.592C9.36357 12.5192 8.51264 11.3061 7.88843 10.0118C7.83474 9.90047 7.80789 9.84481 7.78726 9.77437C7.71397 9.52405 7.76662 9.21668 7.91909 9.00469C7.962 8.94504 8.01326 8.894 8.11578 8.79194C8.42933 8.47979 8.58611 8.32372 8.6886 8.16677C9.07515 7.57491 9.07515 6.81189 8.6886 6.22002C8.58611 6.06308 8.42933 5.90701 8.11578 5.59486L7.94101 5.42087C7.46438 4.94637 7.22607 4.70912 6.97012 4.58024C6.4611 4.32392 5.85996 4.32392 5.35093 4.58024C5.09499 4.70912 4.85667 4.94637 4.38004 5.42087L4.23867 5.56161C3.76367 6.03449 3.52617 6.27093 3.34478 6.59239C3.1435 6.94909 2.99878 7.5031 3.00001 7.91222C3.00111 8.28092 3.07295 8.53291 3.21664 9.03688C3.98881 11.7453 5.44574 14.3009 7.58743 16.4331C9.72911 18.5652 12.2963 20.0156 15.0168 20.7843C15.523 20.9274 15.7761 20.9989 16.1465 21C16.5575 21.0012 17.114 20.8571 17.4723 20.6568C17.7952 20.4762 18.0327 20.2397 18.5077 19.7669L18.649 19.6261C19.1257 19.1516 19.364 18.9144 19.4934 18.6596C19.7509 18.1528 19.7509 17.5544 19.4934 17.0476C19.364 16.7928 19.1257 16.5556 18.649 16.0811L18.4743 15.9071C18.1607 15.5949 18.0039 15.4388 17.8463 15.3368C17.2518 14.952 16.4853 14.952 15.8908 15.3368C15.7332 15.4388 15.5764 15.5949 15.2628 15.9071C15.1603 16.0091 15.1091 16.0602 15.0491 16.1029C14.8362 16.2547 14.5274 16.3071 14.276 16.2341C14.2052 16.2136 14.1493 16.1869 14.0375 16.1334C12.7374 15.512 11.5189 14.6648 10.4412 13.592Z' stroke='white' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");}body>div.mobile-contact-wrapper .lp-ico-sms:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M21 11.5C21.0034 12.8199 20.6951 14.1219 20.1 15.3C19.3944 16.7117 18.3098 17.8992 16.9674 18.7293C15.6251 19.5594 14.0782 19.9994 12.5 20C11.1801 20.0034 9.87812 19.6951 8.7 19.1L3 21L4.9 15.3C4.30493 14.1219 3.99656 12.8199 4 11.5C4.00061 9.92176 4.44061 8.37485 5.27072 7.03255C6.10083 5.69025 7.28825 4.60557 8.7 3.9C9.87812 3.30493 11.1801 2.99656 12.5 3H13C15.0843 3.11499 17.053 3.99476 18.5291 5.47086C20.0052 6.94695 20.885 8.91565 21 11V11.5Z' stroke='white' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M21 11.5C21.0034 12.8199 20.6951 14.1219 20.1 15.3C19.3944 16.7117 18.3098 17.8992 16.9674 18.7293C15.6251 19.5594 14.0782 19.9994 12.5 20C11.1801 20.0034 9.87812 19.6951 8.7 19.1L3 21L4.9 15.3C4.30493 14.1219 3.99656 12.8199 4 11.5C4.00061 9.92176 4.44061 8.37485 5.27072 7.03255C6.10083 5.69025 7.28825 4.60557 8.7 3.9C9.87812 3.30493 11.1801 2.99656 12.5 3H13C15.0843 3.11499 17.053 3.99476 18.5291 5.47086C20.0052 6.94695 20.885 8.91565 21 11V11.5Z' stroke='white' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M21 11.5C21.0034 12.8199 20.6951 14.1219 20.1 15.3C19.3944 16.7117 18.3098 17.8992 16.9674 18.7293C15.6251 19.5594 14.0782 19.9994 12.5 20C11.1801 20.0034 9.87812 19.6951 8.7 19.1L3 21L4.9 15.3C4.30493 14.1219 3.99656 12.8199 4 11.5C4.00061 9.92176 4.44061 8.37485 5.27072 7.03255C6.10083 5.69025 7.28825 4.60557 8.7 3.9C9.87812 3.30493 11.1801 2.99656 12.5 3H13C15.0843 3.11499 17.053 3.99476 18.5291 5.47086C20.0052 6.94695 20.885 8.91565 21 11V11.5Z' stroke='white' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");}body>div.mobile-contact-wrapper .lp-ico-email:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M21.5 18L14.85
3971 12M9.14286 12L2.50003 18M2 7L10.1649 12.7154C10.8261 13.1783 11.1567 13.4097 11.5163 13.4993C11.8339 13.5785 12.1661 13.5785 12.4837 13.4993C12.8433 13.4097 13.1739 13.1783 13.8351 12.7154L22 7M6.8 20H17.2C18.8802 20 19.7202 20 20.362 19.673C20.9265 19.3854 21.3854 18.9265 21.673 18.362C22 17.7202 22 16.8802 22 15.2V8.8C22 7.11984 22 6.27976 21.673 5.63803C21.3854 5.07354 20.9265 4.6146 20.362 4.32698C19.7202 4 18.8802 4 17.2 4H6.8C5.11984 4 4.27976 4 3.63803 4.32698C3.07354 4.6146 2.6146 5.07354 2.32698 5.63803C2 6.27976 2 7.11984 2 8.8V15.2C2 16.8802 2 17.7202 2.32698 18.362C2.6146 18.9265 3.07354 19.3854 3.63803 19.673C4.27976 20 5.11984 20 6.8 20Z' stroke='white' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M21.5 18L14.8571 12M9.14286 12L2.50003 18M2 7L10.1649 12.7154C10.8261 13.1783 11.1567 13.4097 11.5163 13.4993C11.8339 13.5785 12.1661 13.5785 12.4837 13.4993C12.8433 13.4097 13.1739 13.1783 13.8351 12.7154L22 7M6.8 20H17.2C18.8802 20 19.7202 20 20.362 19.673C20.9265 19.3854 21.3854 18.9265 21.673 18.362C22 17.7202 22 16.8802 22 15.2V8.8C22 7.11984 22 6.27976 21.673 5.63803C21.3854 5.07354 20.9265 4.6146 20.362 4.32698C19.7202 4 18.8802 4 17.2 4H6.8C5.11984 4 4.27976 4 3.63803 4.32698C3.07354 4.6146 2.6146 5.07354 2.32698 5.63803C2 6.27976 2 7.11984 2 8.8V15.2C2 16.8802 2 17.7202 2.32698 18.362C2.6146 18.9265 3.07354 19.3854 3.63803 19.673C4.27976 20 5.11984 20 6.8 20Z' stroke='white' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M21.5 18L14.8571 12M9.14286 12L2.50003 18M2 7L10.1649 12.7154C10.8261 13.1783 11.1567 13.4097 11.5163 13.4993C11.8339 13.5785 12.1661 13.5785 12.4837 13.4993C12.8433 13.4097 13.1739 13.1783 13.8351 12.7154L22 7M6.8 20H17.2C18.8802 20 19.7202 20 20.362 19.673C20.9265 19.3854 21.3854 18.9265 21.673 18.362C22 17.7202 22 16.8802 22 15.2V8.8C22 7.11984 22 6.27976 21.673 5.63803C21.3854 5.07354 20.9265 4.6146 20.362 4.32698C19.7202 4 18.8802 4 17.2 4H6.8C5.11984 4 4.27976 4 3.63803 4.32698C3.07354 4.6146 2.6146 5.07354 2.32698 5.63803C2 6.27976 2 7.11984 2 8.8V15.2C2 16.8802 2 17.7202 2.32698 18.362C2.6146 18.9265 3.07354 19.3854 3.63803 19.673C4.27976 20 5.11984 20 6.8 20Z' stroke='white' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");}body>div.mobile-contact-wrapper a{-webkit-text-decoration:none;text-decoration:none;}body>div.mobile-contact-wrapper .btn-holder{bottom:-50px;left:19px;position:fixed;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;gap:13px;opacity:0;-webkit-transition:all .3s;transition:all .3s;}@media (max-width: 1024px){body>div.mobile-contact-wrapper .btn-holder{right:19px;padding:0 48px;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;}}body>div.mobile-contact-wrapper .btn-holder.visible{bottom:28px;opacity:1;}body>div.mobile-contact-wrapper .search-btn{width:48px;height:48px;border-radius:999px;font-size:0;line-height:0;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-transition:all .3s;transition:all .3s;padding:12px;color:#141414;background:#fff;}@media (max-width: 1024px){body>div.mobile-contact-wrapper .search-btn{position:absolute;left:0;bottom:0;}}body>div.mobile-contact-wrapper .search-btn:before{width:24px;height:24px;}body>div.mobile-contact-wrapper .connect-btn{height:48px;padding:0 24px;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;gap:4px;text-transform:uppercase;border-radius:25px;color:var(--pillTextColor);background:var(--pillBackgroundColor);border:1px solid rgba(255, 255, 255, 0.2);cursor:pointer;font-size:10px;font-style:normal;font-weight:500;line-height:16px;letter-spacing:0.4px;-webkit-flex-direction:row-reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse;-webkit-transition:all .4s;transition:all .4s;box-shadow:0 0 0 0 rgba(255, 255, 255, 0.2);-webkit-animation:pulsate 2s ease infinite;animation:pulsate 2s ease infinite;}body>div.mobile-contact-wrapper .connect-btn:before{width:16px;height:16px;}body>div.mobile-contact-wrapper .pop-up{display:none;position:fixed;bottom:0;left:0;width:100%;-webkit-transition:all .3s;transition:all .3s;border-radius:16px 16px 0 0;color:var(--textColor);background:var(--backgroundColor);}@media (max-height: 850px){body>div.mobile-contact-wrapper .pop-up{max-height:85vh;overflow-y:auto;}}@media (min-width: 1025px){body>div.mobile-contact-wrapper .pop-up{max-height:none;overflow-y:initial;max-width:637px;border-radius:16px;bottom:28px;left:19px;}}body>div.mobile-contact-wrapper .pop-up .lp-container{padding-top:24px;padding-bottom:24px;-webkit-box-pack:center;-ms-flex-pack:center;
39-webkit-justify-content:center;justify-content:center;}@media (min-width: 1025px){body>div.mobile-contact-wrapper .pop-up .lp-container{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;padding-top:40px;padding-bottom:40px;min-height:450px;padding-left:56px;padding-right:56px;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}}body>div.mobile-contact-wrapper .pop-up .close-btn{width:44px;height:44px;background-color:transparent;border-color:transparent;display:block;margin:24px auto 0;-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;color:var(--textColor);cursor:pointer;padding:10px;border:0;}body>div.mobile-contact-wrapper .pop-up .close-btn:before{width:24px;height:24px;}@media (min-width: 1025px){body>div.mobile-contact-wrapper .pop-up .close-btn{position:absolute;top:14px;right:12px;margin:0;}}body>div.mobile-contact-wrapper .pop-up .icon-btn{width:44px;height:44px;border-radius:999px;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-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-left:8px;color:var(--textColor);position:relative;}body>div.mobile-contact-wrapper .pop-up .icon-btn:after{position:absolute;bottom:0;width:100%;left:0;border-radius:999px;
39height:100%;content:'';border:solid 1px var(--textColor);opacity:.3;}body>div.mobile-contact-wrapper .pop-up .icon-btn:before{width:24px;height:24px;}body>div.mobile-contact-wrapper .success-block{display:none;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}@media (min-width: 1025px){body>div.mobile-contact-wrapper .success-block{-webkit-align-items:flex-start;-webkit-box-align:flex-start;-ms-flex-align:flex-start;align-items:flex-start;}}body>div.mobile-contact-wrapper .success-block .lp-btn{margin-top:24px;}body>div.mobile-contact-wrapper .contact-form{margin:0;}@media (max-width: 1024px){body>div.mobile-contact-wrapper .contact-form__item{width:100%;}}body>div.mobile-contact-wrapper .contact-form__item .lp-input{width:100%;}body>div.mobile-contact-wrapper .contact-form__item .is-placeholder{color:#818181;}body>div.mobile-contact-wrapper .contact-form__item+.contact-form__item{margin-top:16px;}body>div.mobile-contact-wrapper .contact-form.show-success .contact-form__container,body>div.mobile-contact-wrapper .contact-form.success .contact-form__container{display:none;}body>div.mobile-contact-wrapper .contact-form.show-success .success-block,body>div.mobile-contact-wrapper .contact-form.success .success-block{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}body>div.mobile-contact-wrapper .contact-form .lp-disclaimer{margin-top:16px;}body>div.mobile-contact-wrapper .contact-form .lp-h3{margin-bottom:16px;}body>div.mobile-contact-wrapper .success-message{font-size:22px;}@-webkit-keyframes pulsate{0%{box-shadow:0 0 0 0 rgba(255, 255, 255, 0.2);}50%{box-shadow:0 0 4px 6px rgba(255, 255, 255, .5);}100%{box-shadow:0 0 12px 12px rgba(255, 255, 255, 0);}} 40 </style> 41 <style id="custom-style-css">.hyperlink-style-1{color:rgba(0, 0, 0, 1)!important;}.hyperlink-style-1:hover{color:rgba(26, 26, 26, 1)!important;}.button-style-1{color:rgba(121, 38, 23, 1)!important;background-color:rgba(0, 0, 0, 0)!important;border-color:rgba(121, 38, 23, 1)!important;}.button-style-1:hover{color:rgba(255,255,255,1)!important;background-color:rgba(121, 38, 23, 1)!important;border-color:rgba(121, 38, 23, 1)!important;}.social_icons-style-1 a{border-color:rgba(121, 38, 23, 1)!important;background-color:rgba(121, 38, 23, 1)!important;color:rgba(255, 255, 255, 1)!important;}.social_icons-style-1 a:hover{border-color:rgba(121, 38, 23, 1)!important;background-color:rgba(0, 0, 0, 0)!important;color:rgba(121, 38, 23, 1)!important;}.social_icons-style-1 a i{color:inherit!important;}
41.social_icons-style-1 a svg,.social_icons-style-1 a svg path{fill:currentColor!important;}.pagination-style-1 li a{color:rgba(121, 38, 23, 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(121, 38, 23, 1)!important;border-color:rgba(121, 38, 23, 1)!important;}.pagination-style-1 li.active a{color:rgba(255, 255, 255, 1)!important;background-color:rgba(121, 38, 23, 1)!important;border-color:rgba(121, 38, 23, 1)!important;}.hyperlink-style-2{color:rgba(255, 255, 255, 1)!important;}.hyperlink-style-2:hover{color:rgba(255, 255, 255, 0.7)!important;}.social_icons-style-2 a{border-color:rgba(255, 255, 255, 1)!important;background-color:rgba(255, 255, 255, 1)!important;color:rgba(121, 38, 23, 1)!important;}.social_icons-style-2 a:hover{border-color:rgba(255, 255, 255, 1)!important;background-color:rgba(255, 255, 255, 0)!important;color:rgba(255, 255, 255, 1)!important;}.social_icons-style-2 a i{color:inherit!important;}
41.social_icons-style-2 a svg,.social_icons-style-2 a svg path{fill:currentColor!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(121, 38, 23, 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(121, 38, 23, 1)!important;background-color:rgba(255, 255, 255, 1)!important;border-color:rgba(255,255,255,1)!important;}.button-style-2{color:rgba(255, 255, 255, 1)!important;background-color:rgba(0, 0, 0, 0)!important;border-color:rgba(255, 255, 255, 1)!important;}.button-style-2:hover{color:rgba(121, 38, 23, 1)!important;background-color:rgba(255, 255, 255, 1)!important;border-color:rgba(255, 255, 255, 1)!important;}.button-style-5{color:rgba(255, 255, 255, 1)!important;background-color:rgba(121, 38, 23, 1)!important;border-color:rgba(121, 38, 23, 1)!important;}.button-style-5:hover{color:rgba(121, 38, 23, 1)!important;background-color:rgba(0, 0, 0, 0.01)!important;border-color:rgba(121, 38, 23, 1)!important;}.button-style-6{color:rgba(121, 38, 23, 1)!important;background-color:#FFFFFF!important;border-color:rgba(255, 255, 255, 1)!important;}.button-style-6:hover{color:#FFFFFF!important;background-color:rgba(0, 0, 0, 0)!important;border-color:#FFFFFF!important;}</style> 42 <!-- LP Consent bootstrap: blocking; resolves consent state, pushes Consent Mode 43 defaults, and dynamically loads the locale + main (and banner if needed). --> 44
44<script src="https://cdn.luxurypresence.com/scripts/lp-consent/latest/lp-consent-boot.js" data-website-id="ff06f655-0c64-45c8-9c55-e8468b4e5303"></script>
44 45 46 47
47<script> 48 (function utmParse() { 49 const url = new URL(window.location.href); 50 if (url.search) { 51 const utm = url.search.split(/\?|&/g).reduce((acc, current) => { 52 const matched = current.match(/utm_(content|campaign|medium|source|term|id)|gclid/g); 53 if (matched) { 54 acc[matched[0]] = current.replace(`${matched[0]}=`, ''); 55 } 56 return acc; 57 }, {}); 58 if (Object.keys(utm).length) { 59 window.localStorage.setItem('utm_vars', JSON.stringify(utm)); 60 } else { 61 // Remove old utm vars 62 window.localStorage.removeItem('utm_vars'); 63 } 64 } 65 // Set referrer in local storage 66 // This is meant to be stored once to avoid self-referrals and to have the first referrer only. 67 if (!window.localStorage.getItem('referrer')) { 68 // Capture the Referrer URL 69 const referrer = document.referrer; 70 if (referrer) { 71 // Only store the referrer if it comes from outside the current domain (to avoid self-referrals) 72 const currentDomain = window.location.hostname; 73 const referrerDomain = new URL(referrer).hostname; 74 75 if (referrerDomain !== currentDomain) { 76 // Store it in localStorage 77 localStorage.setItem('referrer', referrer); 78 } 79 } 80 } 81 })(); 82 </script>
82 83 <!-- Bing Webmaster Tools Verification -->
84<script> 85 // Check if on the homepage before the body loads 86 if (window.location.pathname === '/' || window.location.pathname === '/index.html') { 87 document.write('<meta name="msvalidate.01" content="1E5445451A7B3C43718A1C599CEBE653" />'); 88 } 89</script>
89 90 91 92<!-- Google tag (gtag.js) -->
vendor: 65 bytes, lines 92-93
92 93<script async src="https://www.googletagmanager.com/gtag/js?id=
93G-FY363TT7G6
vendor: 13 bytes, line 93
93"></script>
94<script>
vendor: 130 bytes, lines 95-98
95window.dataLayer = window.dataLayer || []; 96function gtag(){dataLayer.push(arguments);} 97gtag('js', new Date()); 98gtag('config', '
98G-FY363TT7G6
vendor: 5 bytes, line 98
98');
99</script>
99 100 <!-- GOOGLE TRANSLATE STYLES are moved to external CSS --> 101</head> 102<body> 103 <div id="google_translate_element" style="display: none"></div> 104 105 <div id="global-loader" style="height:100%;width:100%;position:fixed;z-index:9999;left:0;top:0;background-color:rgba(43, 43, 45, 1);overflow-x:hidden;transition:1s;"> 106 <div style="position:absolute;height:100vh;text-align:center;bottom:0;left:0;right: 0;display:flex;align-items:center;"> 107 <img style="margin:0 auto;" src="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/3d3c6319-f7f9-41fd-bc4d-d3c27b2149fb" /> 108 </div> 109 </div> 110
110<script> 111 if (window.sessionStorage.getItem('global_loading_displayed') === 'yes') { 112 (function () { 113 document.getElementById('global-loader').remove(); 114 })(); 115 } 116 </script>
116 117 118 <nav id="global-navbar" data-el-id="43e7a874-fb1e-4cdd-91fe-eb6bf5b9179b"> 119 <div class="redesign"> 120 <div class="content-container header"> 121 <div class="container header__container"> 122 <div class="navbar"> 123 <div class="logo"> 124 <a href="/" class="logo__link"> 125 <img src="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/124e6fd1-c91a-4767-8aec-b87e6e6b1291" 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/124e6fd1-c91a-4767-8aec-b87e6e6b1291 320w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/124e6fd1-c91a-4767-8aec-b87e6e6b1291 598w" class="logo__img light" alt=""> 126 <img src="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/514fa9af-ef72-414f-b660-8b8edb538dab" 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/514fa9af-ef72-414f-b660-8b8edb538dab 320w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/514fa9af-ef72-414f-b660-8b8edb538dab 598w" class="logo__img dark" alt=""> 127 </a> 128 </div> 129 <div class="navigation"> 130 <ul> 131 <li class="navigation__item"> 132 <a href="/" class="navigation__link wow fadeInUp" data-wow-delay="2.0"><span>Home</span></a> 133 </li> 134 <li class="navigation__item"> 135 <a href="/properties/sale" class="navigation__link wow fadeInUp" data-wow-delay="2.1"><span>Listings</span></a> 136 </li> 137 <li class="navigation__item sub-nav-container"> 138 <a href="#" class="navigation__link wow fadeInUp">Solds</a> 139 <div class="sub-nav"> 140 <ul> 141 <li class="sub-nav__item"><a href="/recent-sales" class="nav-link sub-nav__link feature"><span>RECENT SALES</span></a></li> 142 <li class="sub-nav__item"><a href="/high-end-sales" class="nav-link sub-nav__link feature"><span>HIGH END SALES</span></a></li> 143 </ul> 144 </div> 145 </li> 146 <li class="navigation__item"> 147 <a href="/team" class="navigation__link wow fadeInUp" data-wow-delay="2.3"><span>About</span></a> 148 </li> 149 <li class="navigation__item"> 150 <a href="/contact-us" class="navigation__link wow fadeInUp" data-wow-delay="2.4"><span>CONTACT</span></a> 151 </li> 152 <li class="navigation__item"> 153 <a target="_blank" href="https://www.instagram.com/muskokacottagesforsale/" class="navigation__link wow fadeInUp" data-wow-delay="2.5"><span>IG</span></a> 154 </li> 155 </ul> 156 </div> 157 <div class="buttons-wrapper"> 158 <button type="button" class="hamburger-component hamburger"> 159 <span class="hamburger__bars"></span> 160 </button> 161 </div> 162 </div> 163 </div> 164 </div> 165</div> 166 167 </nav> 168 <div id="global-sidemenu" class="sidemenu" data-el-id="744a0561-da45-4129-9fa6-398537851996"> 169 <div class="wrapper"> 170 <div class="holder"> 171 <div class="title">RICHARD SCULLY & ASSOCIATES</div> 172 <ul class="section-options"> 173 <li class="option"><a href="/">Home</a></li> 174 <li class="option"><a href="/properties/sale">Listings</a></li> 175 <li class="option sub-nav-container"> 176 <a href="#" class="link sub-nav-heading">Solds</a> 177 <div class="sub-nav"> 178 <ul> 179 <li><a href="/recent-sales" class="link sub-nav-link">Recent Sales</a></li> 180 <li><a href="/high-end-sales" class="link sub-nav-link">High End Sales</a></li> 181 </ul> 182 </div> 183 </li> 184 <li class="option"><a href="/team">About</a></li> 185 <li class="option"><a href="/Vlog">Video Gallery</a></li> 186 <li class="option"><a href="/contact-us">Contact</a></li> 187 </ul> 188 </div> 189 <button class="toggle sidemenu-close"></button> 190</div> 191 192 </div> 193 <div id="global-mobile-contact" class="mobile-contact-wrapper" data-el-id="befe5af2-a6ca-4119-924a-a85d96d36b51"> 194 <div class="btn-holder" 195style=" 196--backgroundColor: rgba(43, 43, 45, 1); 197--textColor: rgba(255, 255, 255, 1); 198--pillTextColor: rgba(121, 38, 23, 1);
199--pillBackgroundColor: rgba(255, 255, 255, 1);"> 200 201 <button type="button" class="connect-btn lp-ico lp-ico-arrow-top visible">Contact Us</button> 202</div> 203 204 205<div class="pop-up" style="--backgroundColor: rgba(43, 43, 45, 1); --textColor: rgba(255, 255, 255, 1);"> 206 <div class="lp-container"> 207 <form data-type="contact-form" class="contact-form"> 208 <div class="contact-form__container"> 209 <h3 class="lp-h3">Leave a Message</h3> 210 211 <div class="contact-form__content"> 212 <div class="contact-form__inputs-container"> 213 <div class="contact-form__item"> 214 <input 215 id="__FullName" 216 type="text" name="name" 217 class="lp-input lp-input--light" 218 required 219 placeholder="Full Name"> 220 </div> 221 <div class="contact-form__item"> 222 <input 223 id="__Email" 224 type="email" name="email" 225 class="lp-input js-email-input lp-input--light" 226 required 227 placeholder="Email"> 228 </div> 229 <div class="contact-form__item"> 230 <input 231 class="lp-input lp-input--light" 232 type="tel" 233 placeholder="Phone" 234 id="__Phone" 235 name="phone" 236 required> 237 </div> 238 239 <div class="contact-form__item input-group-select"> 240 <select name="interest" id="-field-interest" placeholder="Interest" 241 class="lp-input dropdown-select js-select js-form-element lp-input--light" required> 242 <option value="" disabled selected data-label="Interest">Interested in...</option> 243 <option value="Selling & Buying">Selling & Buying</option> 244 <option value="Selling">Selling</option> 245 <option value="Buying">Buying</option> 246 <option value="Renting">Renting</option> 247 <option value="Other">Other</option> 248 </select> 249 <label for="-field-interest" class="lp-label sr-only">Interest</label> 250 </div> 251 252 <div class="contact-form__item"> 253 <textarea 254 name="message" 255 rows="4" 256 id="__Message" 257 class="lp-input lp-input--light" 258 placeholder="Message" 259 required></textarea> 260 </div> 261 <div class="lp-disclaimer"> <label style='display: none;' for='-termsAccepted'>Opt In/Disclaimer Consent:</label> 262 <label class='lp-tcr-content'> 263 <span class='lp-tcr-checkbox'> 264 <input 265 type='checkbox' 266 id='-termsAccepted' 267 name='termsAccepted' 268 oninvalid="this.setCustomValidity('Please accept the terms and conditions')" 269 oninput="this.setCustomValidity('')" 270 required 271 /></span> 272 <span class='lp-tcr-message'> 273 274 I agree to be contacted by 275 Richard Scully & Associates 276 via call, email, and text for real estate services. To opt out, you can reply 'stop' at any time or reply 'help' for assistance. 277 You can also click the unsubscribe link in the emails. Message and data rates may apply. Message frequency may vary. 278 <a href='/terms-and-conditions' target='_blank'>Privacy Policy</a>. 279 </span> 280 </label> 281 282</div> 283 <button type="submit" class="lp-btn lp-btn--filled lp-btn--dark submit contact-form__item">Submit</button> 284 285 <div class="lp-h-pot"> 286 <input id="__newsSignMiddleName" name="middleName" value="" autocomplete="off" tabindex="-1"> 287 </div> 288 289 <input style="display: none;" type="text" name="source" value="CONTACT_INQUIRY" /> 290 <input type="hidden" name="button_text" value="Contact Us"> 291 </div> 292 </div> 293 </div> 294 295 296 <div class="success-block"> 297 <h3 class="lp-h3 success-message">Thank you for your message. We will be in touch with you shortly.</h3> 298 299 </div> 300 </form> 301 302 <button type="button" class="close-btn lp-ico lp-ico-close"></button> 303 304 305 </div> 306</div> 307 308 309 </div> 310 <section id="section-289d43ba-f5d7-4db2-b828-9a71515ca977" class="video-section is-font-color-light is-background-color-dark" data-el-id="ff2fdff3-a088-41a3-b3e4-21dd3d28f032"> 311 <div class="video-wrapper"> 312 <div class="full-screen-video-component"> 313 <div class="video-wrapper hidable"> 314 <video class="lazy" 315 poster="https://res.cloudinary.com/luxuryp/videos/f_auto,q_auto/so_0,eo_0/hnid1ge7qbc6axbknm3z/4.jpg" 316 style="height:100%;" 317 loop 318 muted 319 autoplay 320 playsinline> 321 <source data-src="https://res.cloudinary.com/luxuryp/videos/f_webm,vc_vp9,q_auto:best,w_1920,c_limit/hnid1ge7qbc6axbknm3z/4.webm" type="video/webm;codecs=vp9"> 322<source data-src="https://res.cloudinary.com/luxuryp/videos/f_mp4,vc_h265,q_auto:best,w_1920,c_limit/hnid1ge7qbc6axbknm3z/4.mp4" type="video/mp4;codecs=hvc1"> 323<source data-src="https://res.cloudinary.com/luxuryp/videos/f_mp4,vc_h264,q_auto:best,w_1920,c_limit/hnid1ge7qbc6axbknm3z/4.mp4" type="video/mp4"> 324 </video> 325 </div> 326 <div class="poster" style="background-image: url('https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/48e37ce7-e415-415b-8ed2-ad62fc9bcb1f')"></div> 327 </div> 328 </div> 329 <div class="overlay-component"style="--section-overlay: rgba(0, 0, 0, 0.1);"></div> 330 331<div class="redesign opening-with-search height-class-Full" data-only-active="false" data-video-url="" data-show-neighborhood-names="false"> 332 <div class="center-block"> 333 <div class="container lp-container"> 334 335 <div class="lp-title-group"> 336 <div class="opening-description feature lp-pre-line "><p style="max-width: 450px; margin-left: auto; margin-right: auto;"><img src="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/124e6fd1-c91a-4767-8aec-b87e6e6b1291" alt=""></p></div> 337 </div> 338 339 <div class="buttons"></div> 340 </div> 341 </div>
342 <div class="bottom-spacer"></div> 343</div> 344</section> 345<section class="image-section is-font-color-light is-background-color-light" id="section-d80ad228-fd3f-4c9e-afb6-554937747605" data-el-id="649ab617-be3f-4ad2-a846-24e5fe02e2b4"> 346 <div class="opening redesign" > 347 <div class="mute-icon__container"> 348 <svg class="muted" width="27" height="24" viewBox="0 0 27 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 349 <path fill-rule="evenodd" clip-rule="evenodd" d="M16.6154 0.923084C16.6154 0.57053 16.4146 0.248765 16.0979 0.0938699C15.7811 -0.0610252 15.4039 -0.0219961 15.1256 0.194451L7.0679 6.46154H1.84615C1.35652 6.46154 0.886946 6.65605 0.540726 7.00227C0.194505 7.34849 0 7.81806 0 8.3077V15.6923C0 16.1819 0.194504 16.6515 0.540726 16.9977C0.886948 17.344 1.35652 17.5385 1.84615 17.5385H7.0679L15.1256 23.8055C15.4039 24.022 15.7811 24.061 16.0979 23.9061C16.4146 23.7512 16.6154 23.4295 16.6154 23.0769V0.923084ZM8.30787 7.83594L14.7692 2.81044V21.1896L8.30787 16.1641V7.83594ZM6.46172 8.3077H1.84615V15.6923H6.46172V8.3077ZM26.499 9.88351C26.8595 9.52303 26.8595 8.93857 26.499 8.57809C26.1385 8.2176 25.5541 8.2176 25.1936 8.57809L23.0771 10.6946L20.9606 8.57809C20.6001 8.2176 20.0156 8.2176 19.6551 8.57809C19.2946 8.93857 19.2946 9.52303 19.6551 9.88351L21.7716 12L19.6551 14.1165C19.2946 14.477 19.2946 15.0615 19.6551 15.422C20.0156 15.7825 20.6001 15.7825 20.9606 15.422L23.0771 13.3055L25.1936 15.422C25.5541 15.7825 26.1385 15.7825 26.499 15.422C26.8595 15.0615 26.8595 14.477 26.499 14.1165L24.3825 12L26.499 9.88351Z" fill="white"/> 350 </svg> 351 <svg class="unmuted" width="27" height="24" viewBox="0 0 27 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 352 <path fill-rule="evenodd" clip-rule="evenodd" d="M16.6154 0.923084C16.6154 0.57053 16.4146 0.248765 16.0979 0.0938699C15.7812 -0.0610252 15.4039 -0.0219961 15.1256 0.194451L7.0679 6.46154H1.84615C1.35652 6.46154 0.886946 6.65605 0.540726 7.00227C0.194505 7.34849 0 7.81807 0 8.3077V15.6923C0 16.1819 0.194504 16.6515 0.540726 16.9977C0.886948 17.344 1.35652 17.5385 1.84615 17.5385H7.0679L15.1256 23.8056C15.4039 24.022 15.7812 24.061 16.0979 23.9061C16.4146 23.7512 16.6154 23.4295 16.6154 23.0769V0.923084ZM8.30769 16.1639V7.83608L14.7692 2.81044V21.1896L8.30769 16.1639ZM6.46154 8.3077V15.6923H1.84615V8.3077H6.46154ZM24.0622 5.47289C23.7017 5.11241 23.1173 5.11241 22.7568 5.47289C22.3963 5.83337 22.3963 6.41783 22.7568 6.77832C23.4425 7.46404 23.9865 8.27812 24.3576 9.17406C24.7287 10.07 24.9197 11.0303 24.9197 12C24.9197 12.9698 24.7287 13.9301 24.3576 14.826C23.9865 15.7219 23.4425 16.536 22.7568 17.2217C22.3963 17.5822 22.3963 18.1667 22.7568 18.5272C23.1173 18.8876 23.7017 18.8876 24.0622 18.5272C24.9194 17.67 25.5993 16.6524 26.0632 15.5325C26.5271 14.4126 26.7658 13.2122 26.7658 12C26.7658 10.7878 26.5271 9.58749 26.0632 8.46757C25.5993 7.34764 24.9194 6.33005 24.0622 5.47289ZM20.7986 8.73645C20.4381 8.37596 19.8537 8.37596 19.4932 8.73645C19.1327 9.09693 19.1327 9.68139 19.4932 10.0419C19.7503 10.299 19.9543 10.6043 20.0935 10.9403C20.2327 11.2763 20.3043 11.6364 20.3043 12C20.3043 12.3637 20.2327 12.7238 20.0935 13.0598C19.9543 13.3957 19.7503 13.701 19.4932 13.9582C19.1327 14.3186 19.1327 14.9031 19.4932 15.2636C19.8537 15.6241 20.4381 15.6241 20.7986 15.2636C21.2272 14.835 21.5672 14.3262 21.7991 13.7662C22.0311 13.2063 22.1504 12.6061 22.1504 12C22.1504 11.3939 22.0311 10.7937 21.7991 10.2338C21.5672 9.67382 21.2272 9.16503 20.7986 8.73645Z" fill="white"/> 353 </svg> 354 </div> 355 <div class="opening__text"> 356 <div class="opening__text-holder"> 357 358 <div class="lp-pre-line opening__subtitle lp-text--subtitle"><h2>MUSKOKA <br>LUXURY<br>REAL ESTATE</h2><h4>MEET THE ASSOCIATES</h4></div> 359 360 <a 361 href="/team" 362 363 class="lp-btn lp-btn--light lp-btn--outline opening__btn button-style-6" 364 365 366 367 368 369 > 370 About Us 371 </a> 372 </div> 373 </div> 374 <ul class="lp-socials social_icons-style-1 opening__socials"> 375 376 </ul></div> 377</section> 378<section id="section-6ddcb24d-16a4-470a-8d99-8907da812ee3" class="solid-section is-font-color-light is-background-color-dark" data-el-id="b4a35264-0bc0-4282-9c41-503d9d017f6f"> 379<div class="redesign press-carousel-component"> 380 <h2 class="section-title lp-h2">SEEN IN</h2>
381 <div class="image-carousel-component"> 382 <div class="carousel-container lp-container" data-speed="10000"> 383 <div class="carousel-slide"> 384 <div class="carousel-entity"> 385 <div class="press-item-inner"> 386 <img src="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/995f83f1-39c9-4861-8f7a-aa7877596102" 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/995f83f1-39c9-4861-8f7a-aa7877596102 320w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/995f83f1-39c9-4861-8f7a-aa7877596102 390w" class="image-wrapper" alt="" sizes="125px" loading="lazy"> 387 </div> 388 </div> 389 </div> 390 <div class="carousel-slide"> 391 <div class="carousel-entity"> 392 <div class="press-item-inner"> 393 <img src="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/d530155d-af79-4902-aece-7a8e9129c9cb" class="image-wrapper" alt="" loading="lazy"> 394 </div> 395 </div> 396 </div> 397 <div class="carousel-slide"> 398 <div class="carousel-entity"> 399 <div class="press-item-inner"> 400 <img src="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/ae9f415c-7ef8-4c1b-aff3-46e78f3d1a30" class="image-wrapper" alt="" loading="lazy"> 401 </div> 402 </div> 403 </div> 404 <div class="carousel-slide"> 405 <div class="carousel-entity"> 406 <div class="press-item-inner"> 407 <img src="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/f90c25ae-5082-4afd-9acd-20a26c8180d1" 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/f90c25ae-5082-4afd-9acd-20a26c8180d1 320w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/f90c25ae-5082-4afd-9acd-20a26c8180d1 641w" class="image-wrapper" alt="" sizes="125px" loading="lazy"> 408 </div> 409 </div> 410 </div> 411 <div class="carousel-slide"> 412 <div class="carousel-entity"> 413 <div class="press-item-inner"> 414 <img src="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/51697832-f07a-43f9-b709-97d8b8f60f71" 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/51697832-f07a-43f9-b709-97d8b8f60f71 320w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/51697832-f07a-43f9-b709-97d8b8f60f71 382w" class="image-wrapper" alt="" sizes="125px" loading="lazy"> 415 </div> 416 </div> 417 </div> 418 <div class="carousel-slide"> 419 <div class="carousel-entity"> 420 <div class="press-item-inner"> 421 <img src="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/d6a56891-d0e7-4c31-a91d-823bc95f4392" 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/d6a56891-d0e7-4c31-a91d-823bc95f4392 320w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/d6a56891-d0e7-4c31-a91d-823bc95f4392 496w" class="image-wrapper" alt="" sizes="125px" loading="lazy"> 422 </div> 423 </div> 424 </div> 425 </div> 426 </div> 427</div> 428 429</section> 430<section id="section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d" class="solid-section is-font-color-light is-background-color-dark" data-el-id="09e98f83-51e3-4837-80a0-019e211aba4b"> 431<div class="redesign featured-properties-section " data-auto-scroll=true data-autoplay-speed=3000> 432 <div class="container"> 433 <div class="featured-properties-header"> 434 <h2 class="serif">OUR LISTINGS</h2> 435 436 <ul class="slick-links-nav"> 437 <li><span class="link link--white feature prev">previous</span></li> 438 <li><span class="link link--white feature next">next</span> <span class="spacer"></span></li> 439 </ul> 440 </div> 441 <ul class="featured-properties carousel-container"> 442 <li class="featured-properties__item-cover"> 443 <div class="featured-properties__item feature"> 444 <a class="featured-properties__item-info" href="/properties/lake-muskoka-2"> 445 <div class="featured-properties__img"> 446 <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/25ea76a4-c0d4-495c-aece-97c2531fe44d" 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/25ea76a4-c0d4-495c-aece-97c2531fe44d 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/25ea76a4-c0d4-495c-aece-97c2531fe44d 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/25ea76a4-c0d4-495c-aece-97c2531fe44d 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/25ea76a4-c0d4-495c-aece-97c2531fe44d 2560w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/25ea76a4-c0d4-495c-aece-97c2531fe44d 2840w" alt="" loading="lazy"> 447 </div> 448 <span class="featured-properties__label">For Sale</span> 449 450 <div class="featured-properties__text"> 451 <h4 class="serif">Lake Muskoka</h4> 452 <p> 453 21-1158 Ranwood Road, Port Carling, ON P0B 1J0 454 </p> 455 456 <p> 457 7 BD | 458 8 BA 459 | 7,640 Sq.Ft. 460 </p> 461 462 <h5> 463 $8,949,000 464 </h5> 465 </div> 466 </a> 467 <div class="featured-properties__hover"> 468 <a href="/properties/lake-muskoka-2"></a> 469 <div class="featured-properties__buttons"> 470 <a href="/properties/lake-muskoka-2" class="btn btn--primary-dark button-style-5">VIEW PROPERTY</a> 471 </div> 472 </div> 473 </div> 474 </li> 475 <li class="featured-properties__item-cover"> 476 <div class="featured-properties__item feature"> 477 <a class="featured-properties__item-info" href="/properties/lake-muskoka-9"> 478 <div class="featured-properties__img"> 479 <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/bc570824-901d-45f0-9847-469310df17f1" 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/bc570824-901d-45f0-9847-469310df17f1 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/bc570824-901d-45f0-9847-469310df17f1 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/bc570824-901d-45f0-9847-469310df17f1 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/bc570824-901d-45f0-9847-469310df17f1 2560w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/bc570824-901d-45f0-9847-469310df17f1 3384w" alt="" loading="lazy"> 480 </div> 481 <span class="featured-properties__label">For Sale</span> 482 483 <div class="featured-properties__text"> 484 <h4 class="serif">Lake Muskoka</h4> 485 <p> 486 3-1220 Parker's Point Rd, Gravenhurst, ON P1P 1R2 487 </p> 488 489 <p> 490 8 BD | 491 7 BA 492 | 6,118 Sq.Ft. 493 </p> 494 495 <h5> 496 $6,995,000 497 </h5> 498 </div> 499 </a> 500 <div class="featured-properties__hover"> 501 <a href="/properties/lake-muskoka-9"></a> 502 <div class="featured-properties__buttons"> 503 <a href="/properties/lake-muskoka-9" class="btn btn--primary-dark button-style-5">VIEW PROPERTY</a> 504 </div> 505 </div> 506 </div> 507 </li> 508 <li class="featured-properties__item-cover"> 509 <div class="featured-properties__item feature"> 510 <a class="featured-properties__item-info" href="/properties/lake-rosseau-3"> 511 <div class="featured-properties__img"> 512 <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/24dfd151-70c8-49fe-aa34-964955aad9a9" 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/24dfd151-70c8-49fe-aa34-964955aad9a9 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/24dfd151-70c8-49fe-aa34-964955aad9a9 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/24dfd151-70c8-49fe-aa34-964955aad9a9 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/24dfd151-70c8-49fe-aa34-964955aad9a9 2560w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=3456/https://media-production.lp-cdn.com/media/24dfd151-70c8-49fe-aa34-964955aad9a9 3456w" alt="" loading="lazy"> 513 </div> 514 <span class="featured-properties__label">For Sale</span> 515 516 <div class="featured-properties__text"> 517 <h4 class="serif">Lake Rosseau</h4> 518 <p> 519 22-1052 LONGHURST RD, WINDERMERE, ON P0B 1M0 520 </p> 521 522 <p> 523 524 525 </p> 526 527 <h5> 528 $4,900,000 529 </h5> 530 </div> 531 </a> 532 <div class="featured-properties__hover"> 533 <a href="/properties/lake-rosseau-3"></a> 534 <div class="featured-properties__buttons"> 535 <a href="/properties/lake-rosseau-3" class="btn btn--primary-dark button-style-5">VIEW PROPERTY</a> 536 </div> 537 </div> 538 </div> 539 </li> 540 <li class="featured-properties__item-cover"> 541 <div class="featured-properties__item feature"> 542 <a class="featured-properties__item-info" href="/properties/lake-vernon"> 543 <div class="featured-properties__img"> 544 <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/0e06ec74-d71b-4d84-81da-1a67b0e5fe34" 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/0e06ec74-d71b-4d84-81da-1a67b0e5fe34 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/0e06ec74-d71b-4d84-81da-1a67b0e5fe34 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/0e06ec74-d71b-4d84-81da-1a67b0e5fe34 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/0e06ec74-d71b-4d84-81da-1a67b0e5fe34 2560w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=3456/https://media-production.lp-cdn.com/media/0e06ec74-d71b-4d84-81da-1a67b0e5fe34 3456w" alt="" loading="lazy"> 545 </div> 546 <span class="featured-properties__label">For Sale</span> 547 548 <div class="featured-properties__text"> 549 <h4 class="serif">Lake Vernon</h4> 550 <p> 551 800 Big Island, Huntsville, ON P1H 2J2 552 </p> 553 554 <p> 555 6 BD | 556 5 BA 557 | 4,003 Sq.Ft. 558 </p> 559 560 <h5> 561 $4,499,000 562 </h5> 563 </div> 564 </a> 565 <div class="featured-properties__hover"> 566 <a href="/properties/lake-vernon"></a> 567 <div class="featured-properties__buttons"> 568 <a href="/properties/lake-vernon" class="btn btn--primary-dark button-style-5">VIEW PROPERTY</a> 569 </div> 570 </div> 571 </div> 572 </li> 573 <li class="featured-properties__item-cover"> 574 <div class="featured-properties__item feature"> 575 <a class="featured-properties__item-info" href="/properties/lake-muskoka-11"> 576 <div class="featured-properties__img"> 577 <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/fae9368a-697a-46c8-96a0-d7b0d14219f9" 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/fae9368a-697a-46c8-96a0-d7b0d14219f9 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/fae9368a-697a-46c8-96a0-d7b0d14219f9 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/fae9368a-697a-46c8-96a0-d7b0d14219f9 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/fae9368a-697a-46c8-96a0-d7b0d14219f9 2560w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=3456/https://media-production.lp-cdn.com/media/fae9368a-697a-46c8-96a0-d7b0d14219f9 3456w" alt="" loading="lazy"> 578 </div> 579 <span class="featured-properties__label">For Sale</span> 580 581 <div class="featured-properties__text"> 582 <h4 class="serif">Lake Muskoka</h4> 583 <p> 584 1-1246 Dudley Road, Bala, ON P0C1A0 585 </p> 586 587 <p> 588 5 BD | 589 3 BA 590 | 2,596 Sq.Ft. 591 </p> 592 593 <h5> 594 $2,925,000 595 </h5> 596 </div> 597 </a> 598 <div class="featured-properties__hover"> 599 <a href="/properties/lake-muskoka-11"></a> 600 <div class="featured-properties__buttons"> 601 <a href="/properties/lake-muskoka-11" class="btn btn--primary-dark button-style-5">VIEW PROPERTY</a> 602 </div> 603 </div> 604 </div> 605 </li> 606 <li class="featured-properties__item-cover"> 607 <div class="featured-properties__item feature"> 608 <a class="featured-properties__item-info" href="/properties/lake-muskoka-4"> 609 <div class="featured-properties__img"> 610 <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/ccbdae8c-2662-446a-9b82-61067bddbe78" 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/ccbdae8c-2662-446a-9b82-61067bddbe78 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/ccbdae8c-2662-446a-9b82-61067bddbe78 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/ccbdae8c-2662-446a-9b82-61067bddbe78 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/ccbdae8c-2662-446a-9b82-61067bddbe78 2560w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=3456/https://media-production.lp-cdn.com/media/ccbdae8c-2662-446a-9b82-61067bddbe78 3456w" alt="" loading="lazy"> 611 </div> 612 <span class="featured-properties__label">F
612or Sale</span> 613 614 <div class="featured-properties__text"> 615 <h4 class="serif">Lake Muskoka</h4> 616 <p> 617 4-1254 Barlochan Road, Gravenhurst, ON P1P 1R2 618 </p> 619 620 <p> 621 622 623 </p> 624 625 <h5> 626 $1,995,000 627 </h5> 628 </div> 629 </a> 630 <div class="featured-properties__hover"> 631 <a href="/properties/lake-muskoka-4"></a> 632 <div class="featured-properties__buttons"> 633 <a href="/properties/lake-muskoka-4" class="btn btn--primary-dark button-style-5">VIEW PROPERTY</a> 634 </div> 635 </div> 636 </div> 637 </li> 638 <li class="featured-properties__item-cover"> 639 <div class="featured-properties__item feature"> 640 <a class="featured-properties__item-info" href="/properties/bracebridge-2"> 641 <div class="featured-properties__img"> 642 <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/bdfc8d82-b7a6-4a61-84dd-356274670787" 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/bdfc8d82-b7a6-4a61-84dd-356274670787 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/bdfc8d82-b7a6-4a61-84dd-356274670787 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/bdfc8d82-b7a6-4a61-84dd-356274670787 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/bdfc8d82-b7a6-4a61-84dd-356274670787 2560w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=3456/https://media-production.lp-cdn.com/media/bdfc8d82-b7a6-4a61-84dd-356274670787 3456w" alt="" loading="lazy"> 643 </div> 644 <span class="featured-properties__label">For Sale</span> 645 646 <div class="featured-properties__text"> 647 <h4 class="serif">Bracebridge</h4> 648 <p> 649 99 Spencer St, Bracebridge, ON P1L 1C4 650 </p> 651 652 <p> 653 654 655 </p> 656 657 <h5> 658 $1,289,900 659 </h5> 660 </div> 661 </a> 662 <div class="featured-properties__hover"> 663 <a href="/properties/bracebridge-2"></a> 664 <div class="featured-properties__buttons"> 665 <a href="/properties/bracebridge-2" class="btn btn--primary-dark button-style-5">VIEW PROPERTY</a> 666 </div> 667 </div> 668 </div> 669 </li> 670 <li class="featured-properties__item-cover"> 671 <div class="featured-properties__item feature"> 672 <a class="featured-properties__item-info" href="/properties/barlochan-road"> 673 <div class="featured-properties__img"> 674 <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/073398ce-2ed6-4009-a72c-7cf48090bdf8" 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/073398ce-2ed6-4009-a72c-7cf48090bdf8 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/073398ce-2ed6-4009-a72c-7cf48090bdf8 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/073398ce-2ed6-4009-a72c-7cf48090bdf8 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/073398ce-2ed6-4009-a72c-7cf48090bdf8 2560w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/073398ce-2ed6-4009-a72c-7cf48090bdf8 3402w" alt="" loading="lazy"> 675 </div> 676 <span class="featured-properties__label">For Sale</span> 677 678 <div class="featured-properties__text"> 679 <h4 class="serif">Barlochan Road</h4> 680 <p> 681 PT LT 12 CON 1 WOOD PT 1 35R8852 BARLOCHAN RD, Gravenhurst, ON P1P 1R2 682 </p> 683 684 <p> 685 686 687 </p> 688 689 <h5> 690 $239,000 691 </h5> 692 </div> 693 </a> 694 <div class="featured-properties__hover"> 695 <a href="/properties/barlochan-road"></a> 696 <div class="featured-properties__buttons"> 697 <a href="/properties/barlochan-road" class="btn btn--primary-dark button-style-5">VIEW PROPERTY</a> 698 </div> 699 </div> 700 </div> 701 </li> 702 </ul> 703 <div class="featured-properties-button-holder"> <a 704 href="/properties/sale" 705 706 class="btn btn--primary-light button-style-6" 707 708 709 710 711 712 > 713 VIEW ALL LISTINGS 714 </a> 715</div> 716 </div> 717</div> 718 719</section> 720<section id="section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d" class="solid-section is-font-color-light is-background-color-dark" data-el-id="5db65d6a-01e9-4ee3-babf-2748e074a284"> 721
721<script type="text/x-handlebars-template" class="jsIGItem"> 722 <a href="{{permalink}}" target="_blank" class="ig-feed-item insta-type-{{mediaType}}"> 723 <div class="ig-feed-item__img" style="background-image: url('{{#ifEquals mediaType 'VIDEO'}}{{thumbnailUrl}}{{^}}{{mediaUrl}}{{/ifEquals}}');"></div> 724 <div class="ig-feed-item__info"><div class="ig-feed-item__caption">{{caption}}</div></div> 725 {{#ifEquals mediaType 'VIDEO'}}<div class="video-icon"></div>{{/ifEquals}} 726 </a> 727</script>
727 728<div class="ig-feed redesign"> 729 <div class="ig-feed-top lp-container"> 730 <div class="top-wrapper"> 731 <div class="top-left"> 732 <h3 class="lp-h3 title">Follow Us on Instagram</h3> 733 <a href="#" target="_blank" class="instagram-link jsIGLink"><h4 class="lp-h4 instagram-name jsIGName"></h4></a> 734 </div> 735 <div class="top-right"> 736 <a href="#" target="_blank" class="lp-btn lp-btn--dark lp-btn--outline lp-btn--mob-full-width follow-button jsIGLink button-style-6">Follow Us</a> 737 <a class="nav-button top-nav-prev hidden-control button-style-6"> 738 <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> 739 </a> 740 <a class="nav-button top-nav-next hidden-control button-style-6"> 741 <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> 742 </a> 743 </div> 744 </div> 745 </div> 746 <div class="lp-container ig-feed-container "> 747 <div class="ig-feed-feed" data-limit="33"> 748 </div> 749 </div> 750 <div class="bottom-controls"> 751 <a class="bottom-nav-button bottom-nav-prev button-style-6"> 752 <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> 753 </a> 754 <a class="bottom-nav-button bottom-nav-next button-style-6"> 755 <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> 756 </a> 757 </div> 758</div> 759 760</section> 761 762 <div id="modals" class="modals"></div> 763 <footer id="global-footer" class="is-font-color-light is-background-color-dark" data-el-id="bf83e0d0-0a3d-4cf5-a94c-daba8415ab49"> 764 <div class="footer redesign"> 765 <div class="footer__layout container"> 766 <div class="footer__layout__left company"> 767 <div class="company__info__newsletter"> 768 <h2> 769 Richard Scully & Associates 770 </h2> 771 <p class="pre-wrap"></p> 772 </div> 773 <div class="company__contacts"> 774 <div> 775 <p><b>RICHARD SCULLY & ASSOCIATES</b></p> 776 <div><div> 777<p class="contact_title"><a class="ft-link" href="/cdn-cgi/l/email-protection#cfbdbcacbaa3a3b68fa2babca4a0a4aee1aca0a2"><span class="__cf_email__" data-cfemail="8cfeffeff9e0e0f5cce1f9ffe7e3e7eda2efe3e1">[email protected]</span></a><br><a class="ft-link" href="tel:7056449393">(705) 644-9393</a></p> 778</div> 779<style>* { box-sizing: border-box; } body {margin: 0;}ul{list-style:inherit;}</style></div> 780 </div> 781 <div> 782 <p><b>ADDRESS</b></p> 783 <div><div> 784<div> 785<p class="contact_title">1A Lee Valley Dr<br>Port Carling ON P0B 1J0</p> 786</div> 787</div> 788<style>* { box-sizing: border-box; } body {margin: 0;}ul{list-style:inherit;}</style> 789<p> </p> 790<style>* { box-sizing: border-box; } body {margin: 0;}ul{list-style:inherit;}</style></div> 791 </div> 792 <div> 793 <p><b></b></p> 794 <div><p style="font-size: 12px;">All information is deemed reliable but not guaranteed and should be independently reviewed and verified.</p> 795<p style="opacity: 1;"><img style="width: 60px; height: auto; filter: invert(1); margin-left: -10px; margin-top: 10px;" src="https://res.cloudinary.com/luxuryp/image/upload/v1675453847/Single_Realtor_Black_hwazek.png"></p></div> 796 </div> 797 </div> 798 </div> 799 800 <div class="footer__layout__right"> 801 <div class="newsletter"> 802 <div class="newsletter__info"> 803 <h2>NEWSLETTER</h2> 804 <p class="pre-wrap">Sign up to be the first to know about our new listings.</p> 805 </div> 806 <form class="newsletter__subscribe" data-type="contact-form"> 807 <div class="h-pot"> 808 <label for="-middleName">Middle Name</label> 809 <input id="-middleName" name="middleName" value="" autocomplete="off" tabindex="-1"> 810 </div> 811 <input type="hidden" name="source" value="NEWSLETTER_SIGNUP" /> 812 <input required placeholder="Email Address" name="email" type="email" /> 813 <div class="lp-disclaimer"> <label style='display: none;' for='-termsAccepted'>Opt In/Disclaimer Consent:</label> 814 <label class='lp-tcr-content'> 815 <span class='lp-tcr-checkbox'> 816 <input 817 type='checkbox' 818 id='-termsAccepted' 819 name='termsAccepted' 820 oninvalid="this.setCustomValidity('Please accept the terms and conditions')"
821 oninput="this.setCustomValidity('')" 822 required 823 /></span> 824 <span class='lp-tcr-message'> 825 826 I agree to be contacted by 827 Richard Scully & Associates 828 via call, email, and text for real estate services. To opt out, you can reply 'stop' at any time or reply 'help' for assistance. 829 You can also click the unsubscribe link in the emails. Message and data rates may apply. Message frequency may vary. 830 <a href='/terms-and-conditions' target='_blank'>Privacy Policy</a>. 831 </span> 832 </label> 833 834</div> 835 <input type="submit" value="SUBSCRIBE" class="btn btn--subscribe button-style-6" /> 836 <p class="success hide">Email Submitted!</p> 837 </form> 838 839 </div> 840 </div> 841 842 843 </div> 844 <div class="container footer__layout footer__middle"> 845 <div class="footer__layout__left"> 846 <ul class="lp-socials social_icons-style-2 footer__socials socials"> 847 848 <li> 849 <a 850 href="https://www.instagram.com/muskokacottagesforsale/" 851 class="lp-socials__link socials__item wow fadeInUp" 852 data-wow-delay="0s" 853 target="_blank" 854 aria-label="INSTAGRAM" 855 > 856 <span class="lp-i lp-i--instagram" aria-hidden="true"></span> 857 </a> 858 </li> 859 <li> 860 <a 861 href="https://www.youtube.com/@muskokacottagesforsale" 862 class="lp-socials__link socials__item wow fadeInUp" 863 data-wow-delay="0.1s" 864 target="_blank" 865 aria-label="YOUTUBE" 866 > 867 <span class="lp-i lp-i--youtube" aria-hidden="true"></span> 868 </a> 869 </li> 870 </ul> </div> 871 <div class="footer__layout__right"> 872 <div class="logos"> 873 </div> 874 </div> 875 </div> 876 <div class="footer__bottom"> 877 <div class="container"> 878 <div class="footer__bottom-copyrights footer__layout"> 879 <div class="footer__layout__left logo-powered"> 880 <div class="img-wrap"> 881 <img src="https://media-production.lp-cdn.com/media/b517d231-d9f5-4e15-870d-852a977c9204" alt=""> 882 </div> 883 <div> 884 Real Estate Website Design by <a href="https://www.luxurypresence.com/real-estate-website-design/" target="_blank" class="luxury-link hyperlink-style-2">Luxury Presence</a> 885 </div> 886 </div> 887 <div class="footer__layout__right copyright-box"> 888 Copyright <span class="auto-year-update">2026</span> | <a href="/terms-and-conditions" class="hyperlink-style-2">Privacy Policy</a> 889 </div> 890 </div> 891 </div> 892 </div> 893</div> 894 895 </footer> 896 897 <div id="modal-global-contact-us" class="modal " 898 data-el-id="" 899 style="background-color: ;" 900 > 901 <div class="modal-content"> 902 <div class="contact-form redesign " style="background-image: url('')"> 903 <div class="container"> 904 <div class="section-details" style="--colorTxt: #ffffff"> 905 <h2>Contact Details</h2> 906 907 <div class="info-zone"> 908 909 <div class="info-zone_contact type_user"> 910 <h4 class="serif">RICHARD SCULLY & ASSOCIATES</h4> 911 <div class="info-zone_contact_cell"> 912 <i> 913 <svg width="30" height="25" viewBox="0 0 30 25" fill="none" xmlns="http://www.w3.org/2000/svg"> 914 <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
91415 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"/> 915 </svg> 916 </i> 917 <p class="contact_title">Phone</p> 918 <a href="tel:(705) 644-9393" class="lp-link info-zone_contact_link link hyperlink-style-2">(705) 644-9393</a> 919 </div> 920 <div class="info-zone_contact_cell"> 921 <i> 922 <svg width="30" height="19" viewBox="0 0 30 19" fill="none" xmlns="http://www.w3.org/2000/svg"> 923 <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"/> 924 </svg> 925 </i> 926 <p class="contact_title">Email</p> 927 <a href="/cdn-cgi/l/email-protection#245657475148485d644951574f4b4f450a474b49" class="lp-link info-zone_contact_link link hyperlink-style-2"><span class="__cf_email__" data-cfemail="40323323352c2c39002d35332b2f2b216e232f2d">[email protected]</span></a> 928 </div> 929 </div> 930 <div class="info-zone_contact"> 931 <div class="info-zone_contact_cell"> 932 <i> 933 <svg width="31" height="30" viewBox="0 0 31 30" fill="none" xmlns="http://www.w3.org/2000/svg"> 934 <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"/> 935 <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"/> 936 <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"/> 937 </svg> 938 </i> 939 <p class="info-wrap-contact_title">Address</p> 940 <p class="info-zone_contact_link pre-line">1A Lee Valley Dr 941 Port Carling ON P0B 1J0</p> 942 </div> 943 </div> 944 <div class="info-zone_contact"> 945 <div class="info-zone_contact_cell"> 946 <p class="pre-line"><div></div><style>* { box-sizing: border-box; } body {margin: 0;}ul{list-style:inherit;}</style></p> 947 </div> 948 </div> 949 <ul class="lp-socials social_icons-style-2 socials socials--grey socials_zone footer__c
949ontact-column"> 950 951 <li> 952 <a 953 href="https://www.instagram.com/muskokacottagesforsale/" 954 class="lp-socials__link socials__item wow fadeInUp socials__link" 955 data-wow-delay="0s" 956 target="_blank" 957 aria-label="INSTAGRAM" 958 > 959 <span class="lp-i lp-i--instagram" aria-hidden="true"></span> 960 </a> 961 </li> 962 <li> 963 <a 964 href="https://www.youtube.com/@muskokacottagesforsale" 965 class="lp-socials__link socials__item wow fadeInUp socials__link" 966 data-wow-delay="0.1s" 967 target="_blank" 968 aria-label="YOUTUBE" 969 > 970 <span class="lp-i lp-i--youtube" aria-hidden="true"></span> 971 </a> 972 </li> 973 </ul> </div> 974 </div> 975 <div class="section-message"> 976 <form data-type="contact-form"> 977 <h2>Submit a Message</h2> 978 <div class="h-pot"> 979 <label for="-middleName">Middle Name</label> 980 <input id="-middleName" name="middleName" value="" autocomplete="off" tabindex="-1"> 981 </div> 982 983 984 <div class="lp-input-group"> 985 <label for="prod-name" class="lp-label">Name</label> 986 <input id="prod-name" name="name" value="" required="" class="lp-input lp-input--light"> 987 </div> 988 <div class="lp-input-group"> 989 <label for="prod-email" class="lp-label">Email</label> 990 <input id="prod-email" type="email" name="email" value="" required="" class="lp-input lp-input--light"> 991 </div> 992 <div class="lp-input-group"> 993 <label for="prod-phone" class="lp-label">Phone</label> 994 <input id="prod-phone" type="tel" name="phoneNumber" value="" required="" class="lp-input lp-input--light"> 995 </div> 996 <div class="lp-input-group m16"> 997 <label for="prod-message" class="lp-label">Message</label> 998 <textarea id="prod-message" name="message" value="" required="" class="lp-input"></textarea> 999 </div> 1000 1001 <div class="lp-disclaimer"> <label style='display: none;' for='-termsAccepted'>Opt In/Disclaimer Consent:</label> 1002 <label class='lp-tcr-content'> 1003 <span class='lp-tcr-checkbox'> 1004 <input 1005 type='checkbox' 1006 id='-termsAccepted' 1007 name='termsAccepted' 1008 oninvalid="this.setCustomValidity('Please accept the terms and conditions')" 1009 oninput="this.setCustomValidity('')" 1010 required 1011 /></span> 1012 <span class='lp-tcr-message'> 1013 1014 I agree to be contacted by 1015 Richard Scully & Associates 1016 via call, email, and text for real estate services. To opt out, you can reply 'stop' at any time or reply 'help' for assistance. 1017 You can also click the unsubscribe link in the emails. Message and data rates may apply. Message frequency may vary. 1018 <a href='/terms-and-conditions' target='_blank'>Privacy Policy</a>. 1019 </span> 1020 </label> 1021 1022 </div> 1023 1024 <input style="display: none;" type="text" name="source" value="CONTACT_INQUIRY" /> 1025 1026 1027 <button type="submit" class="submitButton lp-btn button-style-2">
1028 <span class="label-initial">Submit</span> 1029 <span class="label-loading">Submitting</span> 1030 <span class="label-success">Submitted</span> 1031 <span class="submit-icon lp-i lp-i--circle-notch lp-i--spin"></span> 1032 </button> 1033 <p class="success-message success hide"> 1034 Message sent successfully! 1035 </p> 1036 </form> 1037 1038 1039 </div> 1040 </div> 1041 </div> 1042 1043 </div> 1044 <button class="close lp-close" type="button" aria-label="close modal"> 1045 <span class="lp-close-icon" aria-hidden="true"></span> 1046 </button> 1047 </div> 1048 <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;"> 1049 <style> 1050 #qualifying-questions-modal .custom-select-toggle { 1051 border: 1px solid #848484; 1052 border-radius: 8px; 1053 padding: 12px 16px; 1054 } 1055 1056 #qualifying-questions-modal .custom-select-toggle.is-placeholder { 1057 color: #848484; 1058 } 1059 1060 #qualifying-questions-modal #qualifying-questions-modal-phoneNumber::placeholder { 1061 color: #848484; 1062 opacity: 1; 1063 } 1064 1065 #qualifying-questions-modal .disclaimer-more { 1066 display: none; 1067 } 1068 1069 #qualifying-questions-modal #qualifying-questions-modal-disclaimer-text:not(.collapsed) .disclaimer-more { 1070 display: inline; 1071 } 1072 1073 #qualifying-questions-modal #qualifying-questions-modal-disclaimer-text:not(.collapsed) .disclaimer-ellipsis { 1074 display: none; 1075 } 1076 </style>
vendor: 119 bytes, lines 1076-1077
1076 1077 <script data-cfasync="false" src="/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js"></script>
1077<script> 1078 function toggleDisclaimerQualifyingQuestionsModal() { 1079 const disclaimerText = document.getElementById('qualifying-questions-modal-disclaimer-text'); 1080 const toggleButton = document.getElementById('qualifying-questions-modal-toggle-disclaimer'); 1081 1082 if (disclaimerText.classList.contains('collapsed')) { 1083 disclaimerText.classList.remove('collapsed'); 1084 toggleButton.textContent = 'Read less'; 1085 toggleButton.setAttribute('aria-expanded', 'true'); 1086 } else { 1087 disclaimerText.classList.add('collapsed'); 1088 toggleButton.textContent = 'Read more'; 1089 toggleButton.setAttribute('aria-expanded', 'false'); 1090 } 1091 } 1092 </script>
1092 1093 <div style="max-width: 400px; width: 95%; margin: 0 auto;"> 1094 <div style="background: #fff; border: none; border-radius: 16px; color: black; box-shadow: none; position: relative;"> 1095 <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;"> 1096 <span aria-hidden="true">×</span> 1097 </button> 1098 <div style="padding: 40px 30px 32px;"> 1099 <div style="text-align: left; margin-bottom: 32px;"> 1100 <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;"> 1101 Thanks, please provide more information to help serve you 1102 </h2> 1103 </div> 1104 <form id="qualifying-questions-modal-form" data-type="contact-form"> 1105 <input type="hidden" name="source" value="PROFILE_UPDATE" /> 1106 <input type="hidden" name="email" value="" id="qualifying-questions-modal-email" /> 1107 <input type="hidden" name="triggerSource" id="qualifying-questions-modal-triggerSource" value="" /> 1108 <label for="qualifying-questions-modal-email" style="display:none;"> 1109 Email 1110 </label> 1111 <label for="qualifying-questions-modal-triggerSource" style="display:none;"> 1112 Trigger Source 1113 </label> 1114 1115 <div style="margin-bottom: 20px;"> 1116 <label for="qualifying-questions-modal-phoneNumber" style="display:none;"> 1117 Phone Number 1118 </label> 1119 <input 1120 type="tel" 1121 id="qualifying-questions-modal-phoneNumber" 1122 name="phoneNumber" 1123 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;" 1124 pattern="^\+?1?[-.\s]?\(?[0-9]{3}\)?[-.\s]?[0-9]{3}[-.\s]?[0-9]{4}$" 1125 required 1126 placeholder="Phone" 1127 aria-label="Phone Number" 1128 inputmode="tel" 1129 autocomplete="tel" 1130 onfocus="this.style.borderColor='black';" 1131 onblur="this.style.borderColor='#848484';" 1132 /> 1133 </div> 1134 1135 <div style="margin-bottom: 20px;"> 1136 <label for="qualifying-questions-modal-interest" style="display:none;"> 1137 Interest 1138 </label> 1139 <select 1140 id="qualifying-questions-modal-interest" 1141 name="interest" 1142 required 1143 data-label="Interest" 1144 aria-label="Interest" 1145 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;" 1146 onfocus="this.style.borderColor='black'; this.style.color='black';" 1147 onblur="this.style.borderColor='#848484'; if(this.value === '') this.style.color='#848484'; else this.style.color='black';" 1148 > 1149 <option value="" style="background: #fff; color: #848484;" disabled selected>Interested in...</option> 1150 <option value="Selling & Buying" style="background: #fff; color: black;">Selling & Buying</option> 1151 <option value="Selling" style="background: #fff; color: black;">Selling</option> 1152 <option value="Buying" style="background: #fff; color: black;">Buying</option> 1153 <option value="Renting" style="background: #fff; color: black;">Renting</option> 1154 <option value="Other" style="background: #fff; color: black;">Other</option> 1155 </select> 1156 </div> 1157 1158 <div style="margin-bottom: 32px; font-size: 12px; line-height: 1.2;"> 1159 <label style='display: none;' for='qualifying-questions-modal-qualifying-questions-termsAccepted'>Opt In/Disclaimer Consent:</label> 1160 <label class='lp-tcr-content'>
1161 <span class='lp-tcr-checkbox'> 1162 <input 1163 type='checkbox' 1164 id='qualifying-questions-modal-qualifying-questions-termsAccepted' 1165 name='termsAccepted' 1166 aria-describedby='qualifying-questions-modal-disclaimer-text' 1167 oninvalid="this.setCustomValidity('Please accept the terms and conditions')" 1168 oninput="this.setCustomValidity('')" 1169 required 1170 /></span> 1171 <span class='lp-tcr-message'> 1172 <div id="qualifying-questions-modal-disclaimer-text" class="collapsed" style="color: #848484;"> 1173 1174 I agree to be contacted by 1175 <strong>Richard Scully & Associates</strong> 1176 via call, email, and text <span class="disclaimer-more">for real estate services. 1177 To opt out, you can reply 'stop' at any time or reply 'help' for assistance. 1178 You can also click the unsubscribe link in the emails. 1179 Message and data rates may apply. Message frequency may vary.</span> 1180 <span class="disclaimer-ellipsis">...</span> 1181 <a href='/terms-and-conditions' target='_blank' rel='noopener noreferrer' style='text-decoration: underline;'>Privacy Policy</a>. 1182 </div> 1183 <button 1184 id="qualifying-questions-modal-toggle-disclaimer" 1185 type="button" 1186 style="background: none; border: none; color: #848484; font-size: inherit; font-weight: bold; padding: 0; margin-top: 4px; cursor: pointer;" 1187 aria-expanded="false" 1188 onclick="toggleDisclaimerQualifyingQuestionsModal()" 1189 > 1190 Read more 1191 </button> 1192 </span> 1193 </label> 1194 </div> 1195 1196 <div> 1197 <button 1198 type="submit" 1199 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;" 1200 onmouseover="this.style.background='transparent'; this.style.color='black';" 1201 onmouseout="this.style.background='black'; this.style.color='white';" 1202 > 1203 Submit 1204 </button> 1205 </div> 1206 </form> 1207 </div> 1208 </div> 1209 </div> 1210 </div> 1211 1212
1212<script> 1213 (function() { 1214 var lazyVideos = [].slice.call(document.querySelectorAll("video.lazy")); 1215 1216 if ("IntersectionObserver" in window && lazyVideos.length > 0) { 1217 var lazyVideoObserver = new IntersectionObserver(function(entries, observer) { 1218 entries.forEach(function(video) { 1219 if (video.isIntersecting) { 1220 for (var source in video.target.children) { 1221 var videoSource = video.target.children[source]; 1222 if (typeof videoSource.tagName === "string" && videoSource.tagName === "SOURCE") { 1223 videoSource.src = videoSource.dataset.src; 1224 } 1225 } 1226 1227 video.target.load(); 1228 video.target.classList.remove("lazy"); 1229 lazyVideoObserver.unobserve(video.target); 1230 } 1231 }); 1232 }); 1233 1234 lazyVideos.forEach(function(lazyVideo) { 1235 lazyVideoObserver.observe(lazyVideo); 1236 }); 1237 } 1238 })(); 1239 </script>
1239 1240 1241 <!-- Global site tag (gtag.js) - Google Analytics --> 1242
1242<script defer src="https://www.googletagmanager.com/gtag/js"></script>
1242 1243 1244 <!-- Google Tag Manager --> 1245
1245<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': 1246 new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 1247 j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.defer=true;j.async=false;j.src= 1248 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 1249 })(window,document,'script','dataLayer','GTM-T9SFQGHZ');</script>
1249 1250 <!-- End Google Tag Manager --> 1251 1252 1253 <!-- LP Tracker (divolte.js) - LP Divolte --> 1254
1254<script>window.divolteLp=window.divolteLp||function(){(divolteLp.q=divolteLp.q||[]).push(arguments)}</script>
1254 1255 <!-- LP Tracker (eventBus) - LP EventBus --> 1256
1256<script>window.eventBusLp=window.eventBusLp||function(){(eventBusLp.q=eventBusLp.q||[]).push(arguments)}</script>
1256 1257 1258
1258<script> 1259 window.dataLayer = window.dataLayer || []; 1260 document.sendGoogleTagManagerEvent = function() { 1261 /* Honor GPC-enabled browsers and prevent GTM event if GPC is enabled. More details: https://global-privacy-control.glitch.me/ */ 1262 if (window.navigator.globalPrivacyControl) { 1263 return; 1264 } 1265 1266 dataLayer.push(arguments); 1267 } 1268 1269 document.sendGoogleTagManagerEvent('js', new Date()); 1270 document.sendGoogleTagManagerEvent('config', 'G-RP3QBYL2WD', { page: location.pathname, location: location.href }); 1271 document.sendGoogleAnalyticsEvent = function(googleEvent) { 1272 document.sendGoogleTagManagerEvent('event', googleEvent.eventAction || googleEvent.hitType, { 1273 event_category: googleEvent.eventCategory, 1274 event_label: googleEvent.eventLabel, 1275 value: googleEvent.eventValue, 1276 page: googleEvent.page, 1277 location: googleEvent.location 1278 }) 1279 }; 1280 1281 document.addEventListener("DOMContentLoaded", function() { 1282 (function() { 1283 //If the page has an element with ID of auto-year-update the element will be populated with the current year. 1284 var date = new Date(); 1285 var elements = document.getElementsByClassName('auto-year-update'); 1286 var i; 1287 for (i = 0; i < elements.length; i++) { 1288 elements[i].innerText = date.getFullYear(); 1289 } 1290 })(); 1291 if (window.divolteLp) { 1292 window.divolteLp('sendLpPageView', {}); 1293 } 1294 if (window.eventBusLp) { 1295 window.eventBusLp('sendLpPageView', {}); 1296 } 1297 }); 1298 </script>
1298 1299 1300 1301
1301<script> 1302 // Function to dynamically load a script 1303 function loadScript(url, callback) { 1304 var script = document.createElement('script'); 1305 script.type = 'text/javascript'; 1306 script.src = url; 1307 script.defer = true; 1308 script.async = true; 1309 script.onload = callback; 1310 document.head.appendChild(script); 1311 } 1312 1313 // Function to dynamically load CSS file 1314 function loadCSS(url) { 1315 var link = document.createElement("link"); 1316 link.rel = "stylesheet"; 1317 link.href = url; 1318 document.head.appendChild(link); 1319 } 1320 1321 // Global methods / variables that can be accessed by element js 1322 window.luxuryPresence = { 1323 libs: { 1324 loadJs: loadScript, 1325 loadCss: loadCSS, 1326 jsLibsMap: { 1327 paroller: { 1328 jsSrc: 'https://d1e1jt2fj4r8r.cloudfront.net/javascript/jquery.paroller.min.js', 1329 isLoaded: false, 1330 }, 1331 ionRangeSlider: { 1332 jsSrc: 'https://cdnjs.cloudflare.com/ajax/libs/ion-rangeslider/2.3.1/js/ion.rangeSlider.min.js', 1333 cssSrc: 'https://cdnjs.cloudflare.com/ajax/libs/ion-rangeslider/2.3.1/css/ion.rangeSlider.min.css', 1334 isLoaded: false, 1335 requires: ['jquery'], 1336 }, 1337 splide: { 1338 jsSrc: 'https://cdnjs.cloudflare.com/ajax/libs/splidejs/4.1.4/js/splide.min.js', 1339 cssSrc: 'https://cdnjs.cloudflare.com/ajax/libs/splidejs/4.1.4/css/splide-core.min.css', 1340 isLoaded: false, 1341 }, 1342 wow: { 1343 jsSrc: 'https://cdnjs.cloudflare.com/ajax/libs/wow/1.1.2/wow.min.js', 1344 isLoaded: false, 1345 }, 1346 jquery: { 1347 jsSrc: 'https://cdnjs.cloudflare.com/ajax/libs/jquery/3.7.1/jquery.min.js', 1348 isLoaded: false, 1349 }, 1350 slick: { 1351 jsSrc: 'https://cdnjs.cloudflare.com/ajax/libs/slick-carousel/1.8.1/slick.min.js', 1352 isLoaded: false, 1353 requires: ['jquery'], 1354 }, 1355 libphonenumber: { 1356 jsSrc: 'https://cdnjs.cloudflare.com/ajax/libs/libphonenumber-js/1.11.8/libphonenumber-js.min.js', 1357 isLoaded: false, 1358 }, 1359 }, 1360 }, 1361 }; 1362 </script>
1362 1363
1363<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>
1363 1364
1364<script defer src="https://cdnjs.cloudflare.com/ajax/libs/handlebars.js/4.7.8/handlebars.min.js"></script>
1364 1365
1365<script defer src="https://cdn.jsdelivr.net/npm/[email protected]/dist/handlebars-intl.min.js"></script>
1365 1366
1366<script defer src="https://cdnjs.cloudflare.com/ajax/libs/superagent/4.1.0/superagent.min.js"></script>
1366 1367
1367<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>
1367 1368
1368<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>
1368 1369
1369<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>
1369 1370 1371 <!-- GOOGLE TRANSLATE SCRIPT --> 1372
1372<script> 1373 function googleTranslateElementInit() { 1374 // list of languages can be overridden by setting window.customLanguages in the head JS. example `window.customLanguages = 'en,de,fr,ro,sk,pl'` 1375 // Language codes can be taken from here https://cloud.google.com/translate/docs/languages 1376 const DEFAULT_LANGUAGES = 'en,es,zh-CN,zh-TW,tl,vi,ar,ko,ru,de,fr,hi,pt'; 1377 document.querySelectorAll('[data-type="TRANSLATE"]').forEach(function(translate){ 1378 translate.innerText = ''; 1379 new google.translate.TranslateElement({ 1380 pageLanguage: 'en', 1381 layout: google.translate.TranslateElement.InlineLayout.SIMPLE, 1382 includedLanguages: window.customLanguages || DEFAULT_LANGUAGES, 1383 }, translate); 1384 }); 1385 } 1386 </script>
1386 1387
1387<script defer src="//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>
1387 1388
1388<script defer src="https://accounts.google.com/gsi/intermediate"></script>
1388 1389 1390 <!-- GOOGLE TRANSLATE SCRIPT END--> 1391
1391<script> 1392 1393 // UI helpers 1394 (function () { 1395 1396 function getSideMenu () { 1397 return document.querySelector('body > div.sidemenu'); 1398 } 1399 1400 function sideMenuHide (instant) { 1401 var sideMenu = getSideMenu(); 1402 if (!sideMenu || !sideMenu.classList.contains('visible')) { 1403 return; 1404 } 1405 sideMenu.classList.remove('visible'); 1406 sideMenu.dispatchEvent(new CustomEvent('lpui-hide', { detail: { instant: !!instant } })); 1407 window.dispatchEvent(new CustomEvent('lpui-sidemenu-hide', { detail: {instant: !!instant} })); 1408 } 1409 1410 function sideMenuShow () { 1411 var sideMenu = getSideMenu(); 1412 if (!sideMenu || sideMenu.classList.contains('visible')) { 1413 return; 1414 } 1415 sideMenu.classList.add('visible'); 1416 sideMenu.dispatchEvent(new Event('lpui-show')); 1417 window.dispatchEvent(new Event('lpui-sidemenu-show')); 1418 } 1419 1420 function sideMenuToggle () { 1421 var sideMenu = getSideMenu(); 1422 if (!sideMenu) { 1423 return; 1424 } 1425 var isSideMenuVisible = sideMenu.classList.contains('visible'); 1426 if (isSideMenuVisible) { 1427 sideMenuHide(); 1428 } else { 1429 sideMenuShow(); 1430 } 1431 } 1432 1433 var scrollLockRequests = {}; 1434 window.__debug_scrollLockRequests = scrollLockRequests; 1435 var hideScrollStyles = ''+ 1436 'body {'+ 1437 'overflow: hidden;' + 1438 '}'; 1439 var hideScrollId = 'hide-body-scroll-style'; 1440 1441 function scrollLock () { 1442 var style = document.createElement('style'); 1443 style.id = hideScrollId; 1444 style.textContent = hideScrollStyles; 1445 document.head.appendChild(style); 1446 window.dispatchEvent(new Event('lpui-scroll-locked')); 1447 } 1448 1449 function scrollUnlock () { 1450 document.getElementById(hideScrollId)?.remove(); 1451 window.dispatchEvent(new Event('lpui-scroll-unlocked')); 1452 } 1453 1454 function requestScrollLock (lockId) { 1455 var wasLocked = Object.keys(scrollLockRequests).length > 0; 1456 scrollLockRequests[lockId || '__anonymous_lock'] = true; 1457 if (!wasLocked) { 1458 scrollLock(); 1459 } 1460 } 1461 1462 function releaseScrollLock (lockId) { 1463 if (lockId) { 1464 delete scrollLockRequests[lockId]; 1465 if (!Object.keys(scrollLockRequests).length) { 1466 scrollUnlock(); 1467 } 1468 } else { 1469 scrollLockRequests = {}; 1470 window.__debug_scrollLockRequests = scrollLockRequests; 1471 scrollUnlock(); 1472 } 1473 } 1474 1475 function showModal (modalId, options) { 1476 var modal = document.getElementById(modalId); 1477 if (!modal) { 1478 return; 1479 } 1480 1481 if (!modal.classList.contains('visible')) { 1482 modal.classList.add('visible'); 1483 if (options && options.scrollLock) { 1484 window.lpUI.requestScrollLock(modalId); 1485 } 1486 modal.dispatchEvent(new Event('lpui-show')); 1487 window.dispatchEvent(new CustomEvent('lpui-modal-show', { detail: { id: modalId } })); 1488 } 1489 1490 const visibleModals = document.querySelectorAll('.modal.visible'); 1491 1492 if (visibleModals.length > 1) { 1493 1494 const maxZIndex = Array.from(visibleModals).reduce((maxZIndex, modal) => { 1495 const zIndex = window.getComputedStyle(modal).zIndex; 1496 const parsedZIndex = zIndex !== 'auto' ? parseInt(zIndex) : 0; 1497 return Math.max(maxZIndex, parsedZIndex); 1498 }, 0); 1499 1500 modal.style.zIndex = maxZIndex + 1; 1501 } 1502 1503 } 1504 1505 function _hideModal (modalEl) { 1506 if (!modalEl) { 1507 return; 1508 } 1509 if (!modalEl.classList.contains('visible')) { 1510 return; 1511 } 1512 modalEl.classList.remove('visible'); 1513 modalEl.style.zIndex = '';
1514 modalEl.dispatchEvent(new Event('lpui-hide')); 1515 var modalId = modalEl.getAttribute('id'); 1516 if (modalId) { 1517 window.lpUI.releaseScrollLock(modalId); 1518 window.dispatchEvent(new CustomEvent('lpui-modal-hide', { detail: { id: modalId } })); 1519 } 1520 } 1521 1522 function hideModal (modalId) { 1523 _hideModal(document.getElementById(modalId)); 1524 } 1525 1526 function hideClosestModal (el) { 1527 const modal = el?.closest('.modal'); 1528 if (!modal) { 1529 return; 1530 } 1531 if (modal.classList) { 1532 _hideModal(modal); 1533 return; 1534 } 1535 if (modal.length && modal[0].classList) { 1536 _hideModal(modal[0]); 1537 } 1538 } 1539 1540 window.lpUI = { 1541 sideMenuHide: sideMenuHide, 1542 sideMenuShow: sideMenuShow, 1543 sideMenuToggle: sideMenuToggle, 1544 requestScrollLock: requestScrollLock, 1545 releaseScrollLock: releaseScrollLock, 1546 showModal: showModal, 1547 hideModal: hideModal, 1548 hideClosestModal: hideClosestModal 1549 } 1550 })(); 1551 1552 var stringifyPrimitive = function(v) { 1553 switch (typeof v) { 1554 case 'string': 1555 return v; 1556 1557 case 'boolean': 1558 return v ? 'true' : 'false'; 1559 1560 case 'number': 1561 return isFinite(v) ? v : ''; 1562 1563 default: 1564 return ''; 1565 } 1566 }; 1567 1568 function objectToQuerystring(obj, sep, eq, name) { 1569 // https://github.com/Gozala/querystring/blob/master/encode.js 1570 sep = sep || '&'; 1571 eq = eq || '='; 1572 if (obj === null) { 1573 obj = undefined; 1574 } 1575 1576 if (typeof obj === 'object') { 1577 return Object.keys(obj).map(function(k) { 1578 var ks = encodeURIComponent(stringifyPrimitive(k)) + eq; 1579 if (Array.isArray(obj[k])) { 1580 return obj[k].map(function(v) { 1581 return ks + encodeURIComponent(stringifyPrimitive(v)); 1582 }).join(sep); 1583 } else { 1584 return ks + encodeURIComponent(stringifyPrimitive(obj[k])); 1585 } 1586 }).filter(Boolean).join(sep); 1587 1588 } 1589 1590 if (!name) return ''; 1591 return encodeURIComponent(stringifyPrimitive(name)) + eq + 1592 encodeURIComponent(stringifyPrimitive(obj)); 1593 } 1594 1595 function getPath(url, options) { 1596 var parser = document.createElement('a'); 1597 parser.href = url || ''; 1598 var path = parser.pathname || ''; 1599 if (path[0] !== '/') { 1600 // IE does not return path starting with a slash 1601 path = '/' + path; 1602 } 1603 1604 if (options && options.queryString) { 1605 path += parser.search; 1606 } 1607 1608 return path; 1609 } 1610 1611 function getMLSAutocomplete(keyword) { 1612 var searchURL = window.location.protocol + '//' + window.location.hostname + '/home-search/auto_complete'; 1613 var query = { 1614 kind: 'listings', 1615 query: keyword 1616 }; 1617 1618 return superagent 1619 .get(searchURL) 1620 .query(query) 1621 .then(function(res) { 1622 var data = res.body || []; 1623 // Array of listing_auto_complete documents: id, display_address, city, state, 1624 // price, sold_price, status, status_modified_at, photo_urls (array of URLs). 1625 1626 return data; 1627 }); 1628 } 1629 1630 function getMLSAutocompleteWithFilters(keyword, filters = {}) { 1631 var searchURL = window.location.protocol + '//' + window.location.hostname + '/home-search/auto_complete'; 1632 1633 return superagent 1634 .get(searchURL) 1635 .query({ kind: 'listings', query: keyword, ...filters }) 1636 .then(function(res) { 1637 // Same response shape as getMLSAutocomplete. 1638 return res.body || []; 1639 }); 1640 } 1641 1642 function makeMlsLink(data) { 1643 // Code Dupe from utils/googlePlace 1644 // mapping of google data type to mls data type 1645 var mapping = { 1646 neighborhood: 'neighborhood', 1647 locality: 'place', 1648 administrative_area_level_2: 'county', 1649 administrative_area_level_1: 'state', 1650 postal_code: 'postalcode', 1651 }; 1652 1653 function _filterTypes(types) { 1654 return types.filter(function(type) { return type !== 'political' }); 1655 } 1656 1657 if (!data || !Object.keys(data).length) { 1658 return '/home-search/listings'; 1659 } 1660 1661 var newData = {};
1662 _filterTypes(data.types).forEach(function(type) { 1663 if (mapping[type]) { 1664 newData.search_type = mapping[type]; 1665 } 1666 }); 1667 newData.omnibox = data.formatted_address; 1668 data.address_components.forEach(function(component) { 1669 _filterTypes(component.types).forEach(function(type) { 1670 if (mapping[type]) { 1671 newData[mapping[type]] = component.long_name; 1672 } 1673 }); 1674 }); 1675 var bounds = data.geometry.bounds; 1676 var convertedData = Object.assign(bounds, newData); 1677 1678 return '/home-search/listings?' + objectToQuerystring(convertedData); 1679 } 1680 1681 function debounce(func, wait) { 1682 let timeout; 1683 return function(...args) { 1684 const context = this; 1685 clearTimeout(timeout); 1686 timeout = setTimeout(() => func.apply(context, args), wait) 1687 } 1688 } 1689 1690 // Global methods / variables that can be accessed by element js 1691 window.luxuryPresence = { 1692 ...window.luxuryPresence, 1693 defaults: { 1694 companyId: 'c3076ecb-c2d7-457b-a426-bcf036133f1f', 1695 apiGatewayUrl: '/api-gw', 1696 routerUrl: '/api-nv', 1697 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\
1697n }\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 updatedAt\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
1697s: 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"}, 1698 propertyPlaceholderImage: {"id":"20c18a72-fa66-4e51-9f6a-0ab3003403c5","alt":null,"bytes":43683,"width":1920,"format":"png","height":1200,"pngUrl":"","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/c7438ea9-abb7-47be-b004-8d4abcf471e0","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/c7438ea9-abb7-47be-b004-8d4abcf471e0","authorUrl":null,"createdAt":"2025-04-17T18:38:20.808Z","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/c7438ea9-abb7-47be-b004-8d4abcf471e0","sourceUrl":null,"updatedAt":"2025-04-17T18:38:20.808Z","xLargeUrl":"https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/c7438ea9-abb7-47be-b004-8d4abcf471e0","__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/c7438ea9-abb7-47be-b004-8d4abcf471e0","de
1698scription":null,"displayName":"property_richard-scully-and-associates","originalUrl":"https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/c7438ea9-abb7-47be-b004-8d4abcf471e0","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/c7438ea9-abb7-47be-b004-8d4abcf471e0","originalFileName":"Property_Richard Scully & Associates","cloudinaryPublicId":"c7438ea9-abb7-47be-b004-8d4abcf471e0"} 1699 }, 1700 objectToQuerystring: objectToQuerystring, 1701 getPath: getPath, 1702 getMLSAutocomplete: getMLSAutocomplete, 1703 getMLSAutocompleteWithFilters: getMLSAutocompleteWithFilters, 1704 makeMlsLink: makeMlsLink, 1705 debounce: debounce, 1706 }; 1707 1708 var wowOffset = 100; 1709 </script>
1709 1710
1710<script> 1711 (()=>{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 r=i[i.length-1];r.lastIndexOf(".")>-1?r=`${r.slice(0,r.lastIndexOf("."))}.jpg`:r+=".jpg",i[i.length-1]=r;let s=3;"videos"===i[1].toLowerCase()&&""!==i[2]&&(s=2);let a=/^(?:[a-z]{1,3}|\$\w+)_\S+$/;for(;s<i.length-1&&a.test(i[s]);)s++;return i.splice(s,0,"so_0,eo_0"),t+i.join("/")}};let r={amp:"&",lt:"<",gt:">",quot:'"',apos:"'",nbsp:" "},s=/&(?:amp|lt|gt|quot|apos|nbsp|#(?:[0-9]+|[xX][0-9a-fA-F]+));/y,a=/[<&]/g,o=/["'>]/g,n=/<\/p\s*>|<br\s*\/?>|[\r\n\u2028\u2029]/g;function l(e,t){let i="";for(let l=0;l<e.length;){a.lastIndex=l;let d=a.exec(e);if(!d){i+=e.slice(l);break}let c=d.index;i+=e.slice(l,c);let u="&"===e[c]?function(e,t){s.lastIndex=t;let i=s.exec(e);return{text:i?function(e){if("#"!==e[1])return r[e.slice(1,-1)];
1711let t="x"===e[2]||"X"===e[2],i=parseInt(e.slice(t?3:2,-1),t?16:10);return 0===i||i>1114111||i>=55296&&i<=57343?e:160===i?" ":String.fromCodePoint(i)}(i[0]):"&",end:i?s.lastIndex:t+1}}(e,c):function(e,t,i){let r=function(e,t){let i=null;o.lastIndex=t+1;let r=o.exec(e);for(;r;){let t=r[0];if(i)t===i&&(i=null);else if('"'===t||"'"===t)i=t;else if(">"===t)return o.lastIndex;r=o.exec(e)}return -1}(e,t);return{text:-1===r?"<":function(e,t,i,r){if(!r)return"";let s=e.slice(t,i);if(/^<br\s*\/?>$/.test(s))return" ";if(/^<\/p\s*>$/.test(s)){n.lastIndex=i;let t=n.exec(e);if(t&&"<"===t[0][0])return" "}return""}(e,t,r,i),end:-1===r?t+1:r}}(e,c,t);i+=u.text,l=u.end}return i}t=function(e,{isEqual:t}){let r=[{field:"thumbnailUrl",w:320},{field:"smallUrl",w:960},{field:"mediumUrl",w:1280},{field:"largeUrl",w:1920},{field:"xLargeUrl",w:2560},{field:"xxLargeUrl",w:3456}],s=function(e,t,i){let r="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 s="number"==typeof i?i:0,a=Number.isInteger(e)?0:s,o={minimumFractionDigits:a,maximumFractionDigits:a};return"USD"===t?`$${e.toLocaleString(r,o)}`:"CAD"===t?`$${e.toLocaleString(r,o)} CAD`:"EUR"===t?`\u{20AC}${e.toLocaleString(r,o)}`:"GBP"===t?`\xa3${e.toLocaleString(r,o)}`:"PERCENT"===t?`${e}%`:"number"==typeof i&&i>-1?e.toLocaleString(r,{maximumFractionDigits:i}):e.toLocaleString(r)},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""}},d=function(e,t){let i,r,s=t||{};switch(s.mode){case"short":i=o(e),r=s.frequencySeparator||"/";break;case"standard":case"std":i=n(e),r=s.frequencySeparator||"/";break;default:i=a(e),r=s.frequencySeparator||" "}return i?s.frequencyTag||s.frequencyClass?`${r}<${s.frequencyTag||"span"}${s.frequencyClass?` class="${s.frequencyClass}"`:""}>${i}</${s.frequencyTag||"span"}>`:r+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,r){return t(e,i)?r.fn(this):r.inverse(this)},"raw-helper":function(e){return e.fn()},striptags:e=>e?l(e=(e=e.replace(/<\!--(.|[\r\n])*?-\->/g,"")).replace(/<(xml|style|svg)("[^"]*"|'[^']*'|[^>])*>(.|[\r\n])*?<\/\1>/gi,""),!1):"",striptagsLineBreaks:e=>e?l(e=(e=e.replace(/<\!--(.|[\r\n])*?-\->/g,"")).replace(/<(xml|style|svg)("[^"]*"|'[^']*'|[^>])*>(.|[\r\n])*?<\/\1>/gi,""),!0):"",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,r,s){s.data.root[r]=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)=>d(e,t&&t.hash),subArray(e,t,i,r){return e>=t&&e<i?r.fn(this):r.inverse(this)},formatPropertyStatus(e,t,i){let r="";switch(e){case"SOLD":r="Sold";break;case"FOR_SALE":r="For Sale";break;case"COMING_SOON":r="Coming Soon";break;case"INACTIVE":r="Inactive";break;case"POCKET_LISTING":r="Pocket Listing";break;case"PENDING":r="Pending";break;case"UNDER_CONTRACT":r="Under Contract";break;case"ACTIVE_UNDER_CONTRACT":r="Active Under Contract";break;default:r=e}return("Sold"===r||"Leased"===r)&&t&&"string"==typeof i&&i&&(r+=` on ${i}`),r},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 r=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},s="",a=e,o=t;
1711i&&(a=new Date(e).toLocaleString("en-US",{timeZone:i}),o=new Date(t).toLocaleString("en-US",{timeZone:i}),[,,,s]=new Date(t).toLocaleString("en-US",{timeZone:i,timeZoneName:"short"}).split(" "));let n=new Date(a),l=n.toLocaleDateString("en-US"),d=r(n),c=r(new Date(o));return`${l} ${d} - ${c} ${s}`},math:(e,t,i)=>(e=parseFloat(e),({"+":e+(i=parseFloat(i)),"-":e-i,"*":e*i,"/":e/i,"%":e%i})[t]),findByKey(e,t,i,r){let s=(e||[]).find(e=>e[t]===i);return r.fn(s)},capitalize(e,t,i){let r;return"string"==typeof e&&e.length&&(r=e.toLowerCase().split(t).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(" ").toString()),r},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,r){let s="",a=null;r.data&&(a=e.createFrame(r.data));let o=(i||[]).filter(Boolean);if(o&&o.length){let e=0;s=o.reduce((i,s,o)=>{let n=(t||[]).find(e=>e.id===s);return n?(a&&(a.index=o-e),i+r.fn(n,{data:a})):(e+=1,i)},"")}else for(let e=0,i=(t||[]).length;e<i;e++)a&&(a.index=e),s+=r.fn(t[e],{data:a});return s},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())),`
1711<script type="text/x-handlebars-template" class="${t} pagination-script">${i.fn()}<\/script>`),numCompare(e,t,i,r){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)?!r.fn||r.fn(this):!!r.fn&&r.inverse(this)},lpFormatNumber:s,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,r){let s=null,a=0,o=new Set;return r.data&&(s=e.createFrame(r.data)),(t||[]).reduce((e,t,n)=>{let l=i?t[i]:t;return!o.has(l)||i&&void 0===l?(o.add(l),s&&(s.index=n-a),e+r.fn(t,{data:s})):(a+=1,e)},"")},JSONstringify:(e,t)=>JSON.stringify(e),formatPropertyPrice(...t){let i=t[t.length-1].hash,r=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=" | "),r.isPasswordProtected)return"Exclusive Listing";let n=t.length>4?t[3]:i.priceUponRequestText;if("string"!=typeof n&&(n="Price Upon Request"),r.priceUponRequest)return n;let l=r.salesPrice,c=null;"SOLD"!==r.status&&"Leased"!==r.status&&r.reducedPrice&&(i.reducedClass?c=r.reducedPrice:l=r.reducedPrice);let u="";c&&(u+=`<${i.reducedTag||"span"} class="${i.reducedClass}">${s(c,r.currency,a)}</${i.reducedTag||"span"}>`),l&&(l=s(l,r.currency,a),i.priceTag||i.priceClass?u+=`<${i.priceTag||"span"}${i.priceClass?` class="${i.priceClass}"`:""}>${l}</${i.priceTag||"span"}>`:u+=l);let h=r.leasePrice&&s(r.leasePrice,r.currency,a);if(h){u&&(u+=o);let e=`${h}${d(r.leasePeriod,i)}`;i.leaseTag||i.leaseClass?u+=`<${i.leaseTag||"span"}${i.leaseClass?` class="${i.leaseClass}"`:""}>${e}</${i.leaseTag||"span"}>`:u+=e}
1711return new e.SafeString(u)},mediaImage(t,i={}){if(!t)return;let{lazy:s,...a}=i.hash,o="",n="";if("string"==typeof t)o=t;else{let e={},{height:s,width:l,altTagText:d}=t;r.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),s&&l&&(s>=l&&(a.class?a.class+=" portrait":a.class="portrait"),"setDims"in i.hash&&(a.width=l,a.height=s)),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||s)&&(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 r=i.pathname.lastIndexOf("."),s=i.pathname;return -1!==r&&(s=i.pathname.substr(0,r)),i.pathname=`${s}.${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,r=e.match(/\b\w/g)?.slice(0,i);return r?(t?.hash?.addText&&(r=r.map(e=>e+t.hash.addText)),r.join(t?.hash?.joinWith||"").toUpperCase()):""},normalizePhone(e){if(!e)return"";let t=String(e).trim();return(t.startsWith("+")?"+":"")+t.replace(/\D/g,"")}}};class d{constructor(e,t,i){if(this.config=e,this.window=t,this.document=i,!this.destroy)throw Error("Controllers must implement a deconstructor")}}let c="lp_lead_form_conversion_fired";function u(e,t){if(e&&t&&"function"==typeof t.sendGoogleTagManagerEvent&&!function(e){try{return"true"===e.sessionStorage.getItem(c)}catch{return!1}}(e))try{t.sendGoogleTagManagerEvent("event","generate_lead");try{e.sessionStorage.setItem(c,"true")}catch{}}catch{}}function h(e){return!!e&&(!!e.expired||Date.now()>=e.expiresAt)}let p="/api/v1/home-valuation";class m extends d{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={},r=t("street_number"),s=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 r&&(i.streetNumber=r),s&&(i.streetName=s),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:r}=e;r.address?.addressComponents&&(t=this._transformAddressComponents(r.address.addressComponents)),r.geocode?.location&&(i={latitude:r.geocode.location.latitude,longitude:r.geocode.location.longitude})}return{structuredAddress:t,coordinates:i}}_filterEmptyStrings(e){let t={};for(let[i,r]of Object.entries(e))""!==r&&null!=r&&(t[i]=r);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 r={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&&(r.errorMessage=i.userMessage||(i.status?`Request failed with status ${i.status}`:"An error occurred"),r.errorName=i.name,r.errorStatus=i.status),console.error(`[HomeValuation] ${e}`,JSON.stringify(r)),this.window.posthog)try{this.window.posthog.capture(e,r)}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
1711ontact 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,r){let s=this._formatStructuredAddress(i)||this._getRawAddress(e);if(!s)throw Error("Unable to extract home valuation address from form data");let a={companyId:e.companyId,homeValuationAddress:s,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
1711ourceResource,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},...r&&{coordinates:r}}}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 r=new AbortController,s=setTimeout(()=>r.abort(),1e4);try{let a=await fetch(e,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t),signal:r.signal});clearTimeout(s);let o=await a.text(),n=this._parseResponsePayload(o);if(!a.ok)throw this._createResponseError(n,a.status);if(n&&"success"===n.status&&n.redirectUrl){if(h(i))return n;if(!this._isSafeRedirectUrl(n.redirectUrl))return console.error("Home valuation: refusing redirect to unsupported protocol"),n;return this.window.location.href=n.redirectUrl,{redirected:!0,url:n.redirectUrl}}return n}catch(e){throw clearTimeout(s),e}}async _submitHomeValuationRequest(e){let t=this._resolveValuationApiBase();this._logLeadEvent("home_valuation_submission_started",e);try{let i=this._getRawAddress(e),r=null;try{r=await this._validateAddressSafely(i)}catch(t){throw this._logLeadEvent("home_valuation_address_validation_failed",e,t),t}let s=null;try{s=await this._getHomeValuationEstimateSafely(r)}catch(t){this._logLeadEvent("home_valuation_estimate_failed",e,t),s=null}let{structuredAddress:a,coordinates:o}=this._extractAddressAndCoordinates(r),n=`${t}${p}`,l=this._buildHomeValuationData(e,s,a,o),d=await this._submitLead(n,l,e.deadline);return this._logLeadEvent("home_valuation_submission_success",e),d}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,r=t.googleMapsAPIKey;if(!r&&i.luxuryPresence?.mapApiLoader&&(r=await i.luxuryPresence.mapApiLoader.getMapApiKey()),!r)throw Error("Google Maps API key not configured");let s=new AbortController,a=setTimeout(()=>s.abort(),1e4);try{let t=await fetch(`https://addressvalidation.googleapis.com/v1:validateAddress?key=${r}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({address:{addressLines:[e]},enableUspsCass:!1}),signal:s.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()}${p}`;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 r=this._buildAddressQueryString(i),s=`${t}?${r}`,a=new AbortController,o=setTimeout(()=>a.abort(),1e4);try{let e=await fetch(s,{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 g="middleName",y="redirect-pending",f=["name","firstName","lastName",g,"email","phone","phoneNumber","source","message","mlsId","sourceUrl"],v="lp_map_key_failed",w="oauthSuccess",b={cookieyes:{eventName:"cookieyes_consent_update",hasAnalyticsConsent:e=>(function(e){let t=e.cookie.match(/cookieyes-consent=([^;
1711]+)/);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 S(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}function _(e,t){t.forEach(t=>{let i=e[t];Array.isArray(i)&&0===i.length&&delete e[t]})}function I(e,t,i,r){let s=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=r?.merge?s.flat():s.find(e=>e.length>0)??[];t.forEach(t=>{delete e[t]}),a.length>0&&(e[i]=[...new Set(a)])}function E(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()||"",r=t.type?.toLowerCase()||"";return i.localeCompare(r)});t.socialLinks=i;let r={youtube:"urlYoutube",facebook:"urlFacebook",instagram:"urlInstagram",linkedin:"urlLinkedin",podcast:"urlPodcast",twitter:"urlTwitter"};i.forEach(e=>{let i=r[e.type?.toLowerCase()??""];i&&(t[i]=e.link)})}return t}function A(e){return e&&Array.isArray(e)?e.map(e=>E(e)):e}function L(e){let{region:t}=e;if(!S(t))return e;let{schools:i,pois:r,...s}=t,a={...s,schools:S(i)?i.data??[]:[],...Array.isArray(r)?{pois:r.map(e=>({...e,category:"string"==typeof e.category?e.category.toUpperCase():e.category}))}:{}};return{...e,region:a}}function x(e){return e&&Array.isArray(e)?e.map(e=>L(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 T(e){return e&&Array.isArray(e)?e.map(e=>$(e)):e}function C(e,t){return S(e)?t(e):e}function k(e,t){return Array.isArray(e)?t(e):e}var M={};M=` 1712 query PropertyDisclaimers($input: PropertyDisclaimersInput!) { 1713 propertyDisclaimers(input: $input) { 1714 feedId 1715 listingId 1716 resolvedFromListing 1717 listingCardAttribution 1718 listingDetailCourtesy 1719 listingDetailFooter 1720 logo 1721 } 1722 } 1723`;let P={mlsAttribution:"listingCardAttribution",mlsLogo:"logo",listingDetailCourtesy:"listingDetailCourtesy",listingDetailFooter:"listingDetailFooter"},U=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}}}({}),N=new class extends d{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 >
1723 .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,r=`modal-controller-${e}`;try{t.localStorage.setItem(r,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,r=i.getItem(`modal-controller-${e}`);if(!r)return!1;let s=JSON.parse(r);return!(new Date().getTime()>s)||(i.removeItem(`modal-controller-${e}`),!1)}show(e,t={}){let{window:i}=this,r=this.getModalWithExpiry(e);(e&&!r||!0===t.forced)&&(i.lpUI.showModal(`modal-${e}`,t),this.setModalWithExpiry(e))}_attachModalHandler(e){let{pageId:t}=this,{trigger:i,pageSpecific:r}=e;(!r||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:r}=this,{modalId:s}=e;function a(e){!r[s]&&(e.toElement||e.relatedTarget||(t.show(s),r[s]=!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:r}=this;if("true"!==i.localStorage.getItem("isSignedUp")){let e=r.querySelector(`#modal-${t}`),s=e?.querySelector("form"),a=s?.dataset.delay||2e3;s.addEventListener("formsubmitted",()=>{this.setLoginState()}),i.addEventListener("oauthSuccess",()=>{this.setLoginState(),s.classList.add("success"),setTimeout(()=>{i.lpUI.hideModal(`modal-${t}`),s.reset(),s.classList.remove("success")},a)}),this.show(t,{forced:!0})}}}(U,window,document),R=new class extends d{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,r=e.target.closest("button, a");if(!r)return;let s=r.dataset.type||"",a=r.href||r.dataset.href||"",o=r.target||"",{submit:n}=r.dataset;if(n){try{await this._handleSubmit(r)}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(r),"VIDEO"===s)return void this._handleVideoButton(r);if("CONTACT_US"===s)return void this._handleContactUsButton(r);if("SUBSCRIBE"===s)return void t.lpUI.showModal("modal-global-subscribe");if("MY_ACCOUNT"===s)return void t.lpUI.showModal("modal-global-my-account");if("SHARE_POPUP"===s){let t=r.querySelector(".share-popup");t&&(t.style.display="flex"),e.stopPropagation();return}if("MODAL_"===s.substring(0,6)){let e=s.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,r]=t,s=`https://player.vimeo.com/video/${i}?`;return r&&(s+=`h=${r}&`),s+="autoplay=1"}_handleVideoButton(e){let{document:t}=this,i=e.closest("section"),{src:r}=e.dataset,s="";if(r&&(r.includes("youtube.com")||r.includes("youtu.be"))&&!r.includes("youtube.com/embed")){let e=r.match(/(?:youtube\.com\/\S*(?:(?:\/e(?:mbed))?\/|watch\?(?:\S*?&?v=)
1723)|youtu.be\/)([a-zA-Z0-9_-]{6,11})/);e&&(s=e[1])}let a=this._getVimeoSrc(r);if(s?r=`https://youtube.com/embed/${s}?autoplay=1&controls=0`:a&&(r=a),!r||!i)return;let o=r.endsWith(".mp4")||r.endsWith(".webm")||r.includes("cloudinary.com"),n=` 1724 <div id="modal-${i.id}" class="modal visible"> 1725 <div class="modal-content"> 1726 <div class="lightbox-video"> 1727 <div class="video-player"> 1728 <div class="embed-container"> 1729 ${o?`<video controls autoplay src="${r}"></video>`:`<iframe frameborder="0" allowfullscreen="1" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" title="YouTube video player" width="100%" height="100%" src="${r}"></iframe>`} 1730 </div> 1731 </div> 1732 </div> 1733 </div> 1734 <button class="close lp-close" type="button" aria-label="close modal"><span class="lp-close-icon" aria-hidden="true"></span></button> 1735 </div> 1736 `;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:r,gtagConversionLabel:s,fbEventName:a}=e.dataset;if(r&&s){t.dataLayer&&t.dataLayer.length&&(t.dataLayer.some(e=>e.length&&"config"===e[0]&&e[1]===r)||i.sendGoogleTagManagerEvent("config",r));let e=`${r}/${s}`;i.sendGoogleTagManagerEvent("event","conversion",{send_to:e})}t.fbq&&a&&t.fbq("track",a,{})}}(U,window,document),B=new class extends d{constructor(e,t,i){super(e,t,i),this.validatedForms=[]}initialize(e={}){try{let{window:t,document:i}=this,{selector:r}=e,s=[];if(s=r?i.querySelectorAll(`${r} 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:r}=i;e(r.jsSrc,this.attachValidation.bind(this,s))}else this.attachValidation(s);this.validatedForms=this.validatedForms.concat(s)}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("")})}}}(U,window,document),D=new class extends d{constructor(e,t,i){super(e,t,i),this.forms=[],this.homeValuationService=new m(e,t,i)}initialize(e={}){try{let{document:t}=this,{selector:i}=e,r=[];(r=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(r)}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={},r=[],s=/^name(?:-\d+)?$/;return t.forEach((e,t)=>{if("string"==typeof e){let a=e.trim();s.test(t)&&a&&r.push(a);let o=i[t];i[t]=o?`${o} ${a}`:a}else i[t]=e}),r.length?i.name=r.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:r,config:s}=this,a=Object.keys(e).filter(e=>!f.includes(e)).reduce((t,i)=>(t[i]=e[i],t),{}),{pageId:o,companyId:n,websiteId:l,pageMeta:d}=s,c=r.localStorage.getItem("utm_vars")||"{}",u=r.localStorage.getItem("referrer")||"",h=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:r.location.href,content:{...a,...JSON.parse(c)}},page:{pageId:o,companyId:n,websiteId:l,pageMeta:{...d,formId:h}},companyId:n,referrer:u,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
1736=>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),r=this._buildSubmissionData(e,i,t);u(this.window,this.document);let s=await this._waitForLeadSubmit(e=>this._submitLeadRequest(r,e));if(this._sendGAEvent(r),s?.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},r=new Promise(e=>{t=setTimeout(()=>{i.expired=!0,e(null)},6e3)}),s=e(i).catch(e=>{if(h(i))return null;throw e});try{return await Promise.race([s,r])}finally{clearTimeout(t)}}_showRedirectPending(e){if(e.classList.add(y),e.querySelector(`.${y}__indicator`))return;let t=this.document.createElement("div");t.className=`${y}__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 r=this.window.eventBusProvider.getDistinctId();if(!r)return void console.warn("[EventBus] No anonymous ID available for alias");let s=this.window.LuxuryPresenceEventBus.generateUUIDv5FromCompanyEmail(i,t);this.window.eventBusProvider.alias({anonId:r,canonicalId:s}),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:r,name:s,type:a}=t;if(s===g)return!0;let o="";if(r){let i=e.querySelector(`label[for='${r}']`);i?o=i.textContent.trim():t.placeholder&&(o=t.placeholder.trim())}i[s]={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")}}(U,window,document),O=new class extends d{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 r=e&&!t;try{let e=await fetch(this._getMapKeyUrl(i,r));if(t=t||r,this._setFailureFlag(!1),!e.ok)throw Error(`Failed to fetch API key: ${e.status}`);let s=await e.text();if(!s)return"";return this.apiKey=s,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 r=i.length?`?${i.join("&")}`:"";return`${this._getBaseUrl()}/api/v1/map${r}`}_hadPreviousFailure(){try{return"1"===this.window.sessionStorage.getItem(v)}catch(e){return!1}}_setFailureFlag(e){try{e?this.window.sessionStorage.setItem(v,"1"):this.window.sessionStorage.removeItem(v)}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");
1736let 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}`:"",r=t.color?`color:${t.color.replace("#","0x")}`:"",s=t.lightness?`lightness:${t.lightness}`:"";return`${e}|${i}${r}${s}`},""),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,r,s,a){let{width:o,height:n}=this.resizeStaticMapDimensions(s,a),l={center:`${e},${t}`,zoom:i,scale:2,size:`${o}x${n}`,key:this.apiKey};r&&(l.style=this.convertThemeToStaticApiUrl(r));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,...r}){let{width:s,height:a}=this.resizeStaticMapDimensions(e,t),o={...r,size:`${s}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),""}}}(U,window,document),q=new class extends d{destroy(){}updateQueryString(e,t,i){i||(i=this.window.location.href);let r=RegExp(`([?&])${e}=.*?(&|#|$)`,"i"),s="";null!=t&&(Array.isArray(t)?t.length&&(s=this.serializeArray(e,t)):"object"==typeof t?(r=RegExp(`([?&])${e}\\[[^=]*\\]=.*?(&|#|$)`,"i"),s=this.serializeObj(t,"",e)):s=`${e}=${encodeURIComponent(t)}`);let a=i.split("#"),o=a[0];if(r.test(i)){let e=o;for(s=s?`$1${s}$2`:"$1";r.test(e);)o=e.replace(r,s),e=e.replace(r,"$1");o=o.replace(/(&|\?)$/,"")}else if(s){let e=-1!==o.indexOf("?")?"&":"?";o+=`${e}${s}`}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}(=([^&#]*)|&|#|$)`),r=Array.from(RegExp.prototype[Symbol.matchAll].call(i,t)).flat();if(!r.length){let i=RegExp(`[?&]${e}(\\[.*?\\])=(.*?)(?=&|#|$)`,"g");return r=Array.from(RegExp.prototype[Symbol.matchAll].call(i,t)).flat(),this._parseParamToObject(r,"advancedFilters"===e)}return r.length>3?r.reduce((e,t,i)=>((i+1)%3==0&&e.push(decodeURIComponent(t.replace(/\+/g," "))),e),[]):r[2]?decode
1736URIComponent(r[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={},r=this.makePageKey(t),s=this.getParameterByName(r);return s&&(i.page=parseInt(s)),Array.isArray(e)&&e.forEach(e=>{let t=this.makeParamKey(e,r),s=this.getParameterByName(t);if("int"===e.type)isFinite(s=parseInt(s))||(s=null);else if("bool"===e.type||"boolean"===e.type)s="true"===s||"false"!==s&&null;else if("json"===e.type)try{s=JSON.parse(s)}catch(e){}i[e.formKey||e.param]=s}),i}serializeParams(e,t,i){let r=this.window.location.href,s=this.makePageKey(t);return r=this.updateQueryString(s,i.page,r),Array.isArray(e)&&e.forEach(e=>{let t=this.makeParamKey(e,s),a=i[e.formKey||e.param];"json"===e.type&&null!=a&&(a=JSON.stringify(a)),r=this.updateQueryString(t,a,r)}),r}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,r){return t.min===e&&0!==e?`${r.lowPrefix}${this.formatSliderValue(e,i," ")}`:t.max===e?`${this.formatSliderValue(e,i," ")}${r.highSuffix}`:`${this.formatSliderValue(e,i," ")}`}formatSliderAreaRange(e,t,i,r){return t.min===e&&0!==e?`${r.lowPrefix}${this.formatSliderValue(e)} ${i}`:t.max===e?`${this.formatSliderValue(e)}${r.highSuffix} ${i}`:`${this.formatSliderValue(e)} ${i}`}getSearchFormValues(e){let{queryElement:t,priceSliderElement:i,areaSliderElement:r,neighborhoodSelect:s}=e,a={};if(t&&(a.search=t.value||null),i){let e=i.value.split(";"),t=parseInt(i.dataset.min),r=parseInt(i.dataset.max),s=parseInt(e[0]),o=parseInt(e[1]);a.priceMin=s!==t?s:null,a.priceMax=o!==r?o:null}if(r){let e=r.value.split(";"),t=parseInt(r.dataset.min),i=parseInt(r.dataset.max),s=parseInt(e[0]),o=parseInt(e[1]);a.areaMin=s!==t?s:null,a.areaMax=o!==i?o:null}return s&&(a.neighborhoodId=s.value||null),a}serializeObj(e,t="",i=""){let r=[];for(let s in e)if(e.hasOwnProperty(s)){let a,o=e[s];if(i){let e=t?`[${t}][${s}]`:`[${s}]`;a=`${i}${e}`}else a=t?`${t}[${s}]`:s;null!==o&&Array.isArray(o)?o.length&&r.push(this.serializeArray(a,o)):null!==o&&"object"==typeof o?r.push(this.serializeObj(o,a)):r.push(`${a}=${encodeURIComponent(o)}`)}return r.join("&")}serializeArray(e,t,i=""){let r=[];return t.forEach(t=>{let s=i?`${i}${e}`:e;r.push(`${s}=${encodeURIComponent(t)}`)}),r.join("&")}_parseParamToObject(e,t=!1){if(!e.length)return null;let i={};for(let r=0;r<e.length;r++)if((r+1)%3==0){let s=decodeURIComponent(e[r].replace(/\+/g," ")),a=e[r-1];Object.assign(i,this._setObjectPath(a,s,i,t))}return i}_setObjectPath(e,t,i,r=!1){let s=e.split(/[\[\]]/).filter(Boolean),a=["in","nin","btw","ciin","cinin"],o={},n=o,l=((e,t,i)=>{if(!t)return;let r=(Array.isArray(t)?t:t.match(/([^[.\]])+/g)).reduce((e,t)=>e&&e[t],e);return void 0===r?i:r})(i,s.join("."));return s.forEach((e,o)=>{o===s.length-1?l?n[e]=Array.isArray(l)?[...l,t]:[l,t]:n[e]=r&&a.includes(e)?[t]:t:(n[e]=i[e]?i[e]:{},n=n[e])}),o}}(U,window,document),V=new class extends d{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]"),r=e.dataset.append,s=i.querySelector(".lp-expand-btn");if(!s)if((s=t.createElement("button")).className="lp-expand-btn",s.setAttribute("aria-label","Open a lightbox"),s.innerHTML='<span class="lp-i lp-i--expand-alt" aria-hidden="true"></span>',r){let e=i.querySelector(r);e&&e.appendChild(s)}else{let i=t.createElement("div");i.className="lp-expand-btn-wrapper",i.style.position="relative",i.appendChild(s),e.parentNode.insertBefore(i,e.nextSibling)}s.addEventListener("click",()=>{this._createLightbox({slider:e,section:i})})}_createLightbox({slider:e,section:t,initialIndex:i}){let{window:r,document:s}=this,a=`lightbox-for-${t?.id}`,o=r.$&&r.$.fn.slick,n=o&&e.slick,l="function"==typeof r.Splide,d=e.classList.contains("is-initialized")&&e.classList.contains("splide");function c(){let t=s.createElement("div");t.id=a,t.className="lp-lightbox",t.setAttribute("tabindex","-1"),t.setAttribute("role","dialog"),t.setAttribute("aria-modal","true"),t.innerHTML=` 1737 <button class="lp-lightbox__close" aria-label="close modal"></button> 1738 <div class="lp-lightbox__content"> 1739 <div class="lp-lightbox__carousel splide" role="group" aria-label="Image Gallery"> 1740 <div class="splide__arrows"> 1741 <button class="splide__arrow splide__arrow--prev lp-lightbox-arrow lp-lightbox-arrow--prev"></button> 1742 <button class="splide__arrow splide__arrow--next lp-lightbox-arrow lp-lightbox-arrow--next"></button> 1743 </div> 1744 <div class="splide__track"> 1745 <ul class="splide__list"></ul> 1746 </div> 1747 </div> 1748 </div> 1749 `,"function"==typeof r.lpUI.requestScrollLock?r.lpUI.requestScrollLock(a):s.body.style.overflow="hidden",s.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
1749h(e=>{let t=e.cloneNode(!0);t.removeAttribute("style");let i=s.createElement("li");i.className="lp-lightbox__slide splide__slide",i.appendChild(t),n.appendChild(i)});let l=new r.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"),r=t.querySelector(".splide__arrow--next"),s=t.querySelector(".lp-lightbox__close");"ArrowLeft"===e.key&&i?(e.preventDefault(),i.click()):"ArrowRight"===e.key&&r?(e.preventDefault(),r.click()):"Escape"===e.key&&s&&(e.preventDefault(),s.click())};s.addEventListener("keydown",c),t.querySelector(".lp-lightbox__close").addEventListener("click",()=>{s.removeEventListener("keydown",c),t.classList.remove("show"),l&&l.destroy(),"function"==typeof r.lpUI.releaseScrollLock?r.lpUI.releaseScrollLock(a):s.body.style.overflow="",t.remove()})}if("function"==typeof r.lpUI.requestScrollLock?r.lpUI.requestScrollLock(a):s.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=s.createElement("div")).id=a,o.className="lp-lightbox",o.setAttribute("tabindex","-1"),o.setAttribute("role","dialog"),o.setAttribute("aria-modal","true"),o.innerHTML=` 1750 <button class="lp-lightbox__close" aria-label="close modal"></button> 1751 <div class="lp-lightbox__content"> 1752 <div class="lp-lightbox__carousel"></div> 1753 </div> 1754 `,s.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(){r.$(".lp-lightbox__carousel").append(r.$(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=s.createElement("div");i.className="lp-lightbox__slide",i.appendChild(t),l.appendChild(i)}),r.$(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"),r=o.querySelector(".lp-lightbox__close");"ArrowLeft"===e.key&&t?(e.preventDefault(),t.click()):"ArrowRight"===e.key&&i?(e.preventDefault(),i.click()):"Escape"===e.key&&r&&(e.preventDefault(),r.click())},s.addEventListener("keydown",d),o.querySelector(".lp-lightbox__close").addEventListener("click",()=>{s.removeEventListener("keydown",d),o.classList.remove("show");let t=l?.slick?r.$(l).slick("slickCurrentSlide"):0;l?.slick&&r.$(l).slick("unslick"),n&&r.$(e).slick("slickGoTo",t),"function"==typeof r.lpUI.releaseScrollLock?r.lpUI.releaseScrollLock(a):s.body.style.overflow="",o.remove()})}else l?c():(r.luxuryPresence.libs.loadCss(r.luxuryPresence.libs.jsLibsMap.splide.cssSrc),r.luxuryPresence.libs.loadJs(r.luxuryPresence.libs.jsLibsMap.splide.jsSrc,()=>{c(),r.luxuryPresence.libs.jsLibsMap.splide.isLoaded=!0}))}}(U,window,document),F=new class extends d{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:r,websiteId:s,pageId:a,shareId:o,pageMeta:n}=this.config;this.window.divolte.signal(e,Object.assign({companyId:i,templateId:r,websiteId:s,pageId:a,shareId:o,pageMeta:n},t))}sendLpPageView(){this.sendLpEvent("pageView",{})}}(U,window,document),j=new class extends d{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"}
1754)),(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",{})}}(U,window,document),H=new class extends d{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(w,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:r,origin:s}=e,{type:a,height:o,event:n,source:l,token:d}=r;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")}s===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(w);this.window.dispatchEvent(e),u(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:r,companyId:s,websiteId:a,pageId:o,pageMeta:n}=this.config,{location:l}=this.window,d=l.origin+l.pathname,c=new URL(`${r}/buttons/${i}`),u=this.window.localStorage.getItem("utm_vars"),h=this.window.localStorage.getItem("referrer");c.searchParams.append("companyId",s),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"];
1754return 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,r=4===i?t:t+"=".repeat(i);return JSON.parse(atob(r))}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")}}}(U,window,document),G=new class extends d{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 r="";if(i){let e=new Date;e.setTime(e.getTime()+864e5*i),r=`; expires=${e.toUTCString()}`}let s="; path=/; SameSite=Lax";this.window&&this.window.location&&"https:"===this.window.location.protocol&&(s+="; Secure"),this.document.cookie=`${e}=${encodeURIComponent(t||"")}${r}${s}`}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 r=t=>{(t.target===e||t.target.id===this.modalId)&&(e.style.display="none",this.restoreBodyScroll())};e.addEventListener("click",r),this.eventListeners.push({element:e,event:"click",handler:r})}}(U,window,document),K=new class extends d{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=` 1755 query { 1756 validSession { 1757 success 1758 } 1759 } 1760 `;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 r=t.data?.validSession?.success===!0;return this.lastValidationResult=r,this.lastValidationTime=Date.now(),r}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}}(U,window,document),z=new class extends d{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=b[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))}}(U,window,document),Q=new class extends d{destroy(){}transformVariables(e,t){let i;return _(i={...t},["testimonialId"]),I(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||"developments"===e||"developmentsCount"===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":_(e,["testimonialIds"]);break;case"agents":case"agentsCount":_(e,["officeId","teamId","developmentId","agentIds","tags"]),I(e,["officeId"],"officeIds"),I(e,["teamId"],"teamIds"),I(e,["developmentId"],"developmentIds");break;case"neighborhoods":case"neighborhoodsCount":_(e,["neighborhoodIds","neighborhoodId"]),I(e,["neighborhoodIds","neighborhoodId"],"neighborhoodId");break;case"developments":case"developmentsCount":_(e,["agentId","neighborhoodIds","neighborhoodId","developmentIds","tag"]),e.agentId&&Array.isArray(e.agentId)&&([e.agentId]=e.agentId),I(e,["neighborhoodIds","neighborhoodId"],"neighborhoodIds");break;case"properties":case"propertiesCount":_(e,["statusIds","statusId","propertyTypeIds","propertyTypeId","propertyId","networkId","propertyIds","agentIds","teamIds","officeIds","neighborhoodIds","
1760spaceTypeIds","addressState","addressCity","backfillProviders","backfillMLSListingIds","backfillMLSAgentIds","backfillMLSOfficeIds"]),["propertyIds","agentIds","teamIds","officeIds","neighborhoodIds","spaceTypeIds","backfillMLSListingIds","backfillMLSAgentIds","backfillMLSOfficeIds"].forEach(t=>I(e,[t],t)),I(e,["statusIds","statusId"],"propertyStatusId"),e.excludeStatusId&&(e.excludePropertyStatusId=e.excludeStatusId,delete e.excludeStatusId),I(e,["propertyTypeIds","propertyTypeId"],"propertyTypeId"),I(e,["networkId"],"networkId"),I(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":_(e,["categoryIds","categoryId","neighborhoodId"]),void 0!==e.order&&(e.sort=e.order,delete e.order),I(e,["categoryIds","categoryId"],"categoryId");break;case"postCategories":_(e,["categoryId","categoryIds"]),void 0!==e.order&&(e.sort=e.order,delete e.order),I(e,["categoryIds","categoryId"],"categoryId");break;case"pressReleases":case"pressReleasesCount":_(e,["pressReleaseId","categories","propertyId","developmentId","agentId","teamId"]),I(e,["pressReleaseId"],"pressReleaseIds");break;case"offices":case"officesCount":_(e,["officeId","officeIds","tags"]),I(e,["officeId"],"officeIds");break;case"teams":case"teamsCount":_(e,["teamId","teamIds"]),I(e,["teamId"],"teamIds");break;case"pois":_(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?C(t,E):"agents"===e||"agentsCount"===e?k(t,A):"neighborhood"===e?C(t,L):"neighborhoods"===e||"neighborhoodsCount"===e?k(t,x):"development"===e?C(t,$):"developments"===e||"developmentsCount"===e?k(t,T):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 r=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})),s=e=>{let r={};return(e||[]).forEach(e=>{r[`${e.feedId}:${e.listingId}`]=e}),t.map(e=>{let t=e&&r[`${e.vendorId}:${e.mlsId}`],s={};return i.forEach(e=>{let i=t?t[P[e]]:void 0;s[e]=i??null}),{...e,...s}})};if(!r.length)return Promise.resolve(s([]));let{websiteId:a}=this.config;return this.window.superagent?this.window.superagent.post(`${this.window.luxuryPresence.defaults.routerUrl}/graphql`).withCredentials().send({query:e(M),variables:{input:{websiteId:"string"==typeof a?a:void 0,properties:r}}}).then(e=>s(e.body&&e.body.data&&e.body.data.propertyDisclaimers),e=>(console.warn("[RouterApiController] propertyDisclaimers lookup failed:",e),s([]))):Promise.resolve(s([]))}}(U,window,document);function W(e,t){if(window.luxuryPresence[e])try{window.luxuryPresence[e].destroy()}catch(e){console.log(e)}window.luxuryPresence[e]=t}W("config",U),W("modals",N),W("buttons",R),W("validation",B),W("contactForms",D),W("mapApiLoader",O),W("pagination",q),W("expandSliders",V),W("divolte",F),W("eventBus",j),W("oauth",H),W("qualifyingQuestionsModal",G),W("session",K),W("consent",z),W("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(){}}),W("routerApi",Q),window.luxuryPresence.formatSliderPriceRange=q.formatSliderPriceRange.bind(q),window.luxuryPresence.formatSliderAreaRange=q.formatSliderAreaRange.bind(q),window.luxuryPresence.getSearchFormValues=q.getSearchFormValues.bind(q),window.luxuryPresence.handlebarsHelpersFactory=function(i){return e(t)(i,{isEqual:(e,t)=>e==t})}})(); 1761//# sourceMappingURL=lp-sdk.js.map 1762 1763 </script>
1763 1764 1765
1765<script> 1766 var lpGlobalInitialized = false; 1767 1768 function lpGlobalInit () { 1769 if (lpGlobalInitialized) { 1770 return; 1771 } 1772 lpGlobalInitialized = true; 1773 // Initialize wow animation plugin only according to turbolinks 1774 var wow; 1775 if (window.WOW) { 1776 wow = new WOW({ 1777 animateClass: 'animated', 1778 offset: wowOffset, 1779 live: false, 1780 callback: function(box) {} 1781 }); 1782 } 1783 // Initialize handlebar helpers only once 1784 function handlebarsInit() { 1785 if (!window.Handlebars) { 1786 return; 1787 } 1788 HandlebarsIntl.registerWith(Handlebars); 1789 Handlebars.registerHelper(window.luxuryPresence.handlebarsHelpersFactory(Handlebars)); 1790 } 1791 1792 handlebarsInit(); 1793 1794 /* Initialize Luxury Presence SDK */ 1795 try { 1796 window.luxuryPresence.config.setCompany("c3076ecb-c2d7-457b-a426-bcf036133f1f", {}); 1797 window.luxuryPresence.config.setWebsite("ff06f655-0c64-45c8-9c55-e8468b4e5303", { 1798 myhomeDashboardEnabled: false, 1799 mlsEnabled: false, 1800 hstValuationRedirectEnabled: true, 1801 hvStepTwoCaptureEnabled: false 1802 }); 1803 const url = new URL(window.location.href); 1804 const shareId = url.searchParams.get('shareId'); 1805 window.luxuryPresence.config.setPage("bd692399-d132-427d-aef0-16f67a3453fe", { 1806 sourceResource: "", 1807 pageElementId: "", 1808 pageQueryVariables: {}, 1809 shareId: "", 1810 }); 1811 window.luxuryPresence.config.setWebsiteApiGatewayUrl("https://wgw.luxurypresence.com", {}); 1812 window.luxuryPresence.config.setBuyerSellerServiceUrl("https://bss.luxurypresence.com", {}); 1813 window.luxuryPresence.config.setDivolteServiceUrl("https://t.luxurypresence.com", {}); 1814 window.luxuryPresence.config.setEventBusUrl("https://cdn.luxurypresence.com/scripts/event-bus-js", {}); 1815 window.luxuryPresence.config.setEventBus({ 1816 enabled: true, 1817 apiKey: "phc_PMYT31xlmXBaTCwpIRx1v6RrpLVZIuP47N3mOT6KLnr", 1818 url: "https://p.luxurypresence.com", 1819 }); 1820 window.luxuryPresence.config.setTemplateId("0c2b9641-6f2a-40f2-a2e0-dabc022eb278", {}); 1821 window.luxuryPresence.config.setLeadIngesterUrl("https://leads.luxurypresence.com", {}); 1822 window.luxuryPresence.buttons.initialize({}); 1823 window.luxuryPresence.consent.initialize({ provider: 'lp-consent' }); 1824 window.luxuryPresence.contactForms.initialize({}); 1825 window.luxuryPresence.validation.initialize({}); 1826 window.luxuryPresence.expandSliders.initialize({}); 1827 window.luxuryPresence.oauth.initialize({ googleSignOnEnabled: true, iframe: false }); 1828 window.luxuryPresence.qualifyingQuestionsModal.initialize({ qualifyingQuestionsModalEnabled: true }); 1829 } catch (e) { 1830 console.log(e); 1831 } 1832 1833 /* Inject Section Specific Javascript */ 1834 try { 1835(function init(sectionDomId) { 1836 const disclaimerLabel = document.querySelector('#' + sectionDomId + ' .lp-tcr-content'); 1837 if (disclaimerLabel) { 1838 const input = disclaimerLabel.querySelector('input'); 1839 if (input) { 1840 input.setAttribute('id', `${sectionDomId}-termsAccepted`); 1841 input.value = 'true'; 1842 const label = document.createElement('label'); 1843 label.setAttribute('for', `${sectionDomId}-termsAccepted`); 1844 label.classList.add('lp-visually-hidden'); 1845 label.textContent = 'Opt in/Disclaimer Consent:'; 1846 disclaimerLabel.prepend(label); 1847 } 1848 } 1849 function setHttp(link) { 1850 if (link.search(/^http[s]?\:\/\/|\//) == -1) { 1851 link = 'https://' + link; 1852 } 1853 return link; 1854 } 1855 const socialLinks = document.querySelectorAll('#' + sectionDomId + ' .socials__link, #' + sectionDomId + ' .lp-socials__link'); 1856 socialLinks.forEach(linkElement => { 1857 const href = linkElement.getAttribute('href'); 1858 if (href) { 1859 linkElement.setAttribute('href', setHttp(href)); 1860 } 1861 }); 1862 const redirectLink = $('#' + sectionDomId + ' .redirect-link'); 1863 if (redirectLink.length) { 1864 const rawHref = setHttp(redirectLink.attr('href')); 1865 let formEvent; 1866 if (rawHref) { 1867 formEvent = redirectLink.data('redirect') ? 'formsubmitted' : 'reset'; 1868 $('#' + sectionDomId + ' .contact-form').find('form').on(formEvent, function () { 1869 redirectLink.attr('href', rawHref); 1870 redirectLink[0].click(); 1871 }); 1872 } 1873 } 1874})('modal-global-contact-us'); 1875} catch(e) { 1876console.log(e); 1877} 1878 1879 try { 1880(function init(sectionDomId) { 1881 const $section = $('#' + sectionDomId); 1882 const $hamburger = $section.find('.hamburger-component'); 1883 function onSideMenuShow() { 1884 if (!$hamburger.hasClass('active')) { 1885 $hamburger.addClass('active'); 1886 } 1887 } 1888 function onSideMenuHide() { 1889 $hamburger.removeClass('active'); 1890 } 1891 const $window = $(window); 1892 $window.on('lpui-sidemenu-show.lpui-auto-clean', onSideMenuShow); 1893 $window.on('lpui-sidemenu-hide.lpui-auto-clean', onSideMenuHide); 1894 const $subContainers = $section.find('.navigation__item.sub-nav-container'); 1895 $subContainers.hover(function () { 1896 $(this).find('.sub-nav').addClass('visible'); 1897 }, function () { 1898 $(this).find('.sub-nav').removeClass('visible'); 1899 }); 1900 $window.on('click.lpui-auto-clean', function () { 1901 $('.sub-nav-container.visible-dropdown').removeClass('visible-dropdown'); 1902 }); 1903 let fixedWidth = 0; 1904 const rightPad = 20; 1905 function fixSubsPosition() { 1906 const wWidth = window.innerWidth; 1907 if (innerWidth === fixedWidth) { 1908 return; 1909 } 1910 fixedWidth = wWidth; 1911 $subContainers.each(function () { 1912 const $sub = $(this).find('.sub-nav'); 1913 $sub[0].style.right = '';
1914 const sRect = $sub[0].getBoundingClientRect(); 1915 const sRight = sRect.left + sRect.width; 1916 if (sRight > wWidth - rightPad) { 1917 const parentRect = $sub[0].offsetParent.getBoundingClientRect(); 1918 const parentRight = parentRect.left + parentRect.width; 1919 $sub[0].style.right = `${parentRight - wWidth + rightPad}px`; 1920 } 1921 }); 1922 } 1923 var debouncer; 1924 $window.on('resize.lpui-auto-clean', function () { 1925 clearTimeout(debouncer); 1926 debouncer = setTimeout(fixSubsPosition, 500); 1927 }); 1928 fixSubsPosition(); 1929 if ($('.property-intro').length || $('.property-intro-2').length) { 1930 $('nav').addClass('dark-opening'); 1931 $("#global-navbar").css({ 1932 "background-color": "rgb(26, 26, 26)", 1933 "color": "rgb(255, 255, 255)" 1934 }); 1935 } 1936 function initAutoTruncateMenu() { 1937 const $navbar = $section.find('.navbar'); 1938 const $navList = $section.find('.navigation > ul'); 1939 if (!$navbar.length || !$navList.length) { 1940 return; 1941 } 1942 const $logo = $section.find('.logo'); 1943 const $buttonsWrapper = $section.find('.buttons-wrapper'); 1944 const $allItems = $navList.children('.navigation__item'); 1945 const $phoneItem = $allItems.filter(function () { 1946 return $(this).find('a[href^="tel:"]').length > 0; 1947 }); 1948 const $menuItems = $allItems.not($phoneItem); 1949 if (!$menuItems.length) { 1950 return; 1951 } 1952 const buffer = 8; 1953 function measureFixedWidth() { 1954 let width = buffer; 1955 if ($logo.length) { 1956 width += $logo.outerWidth(true) || 0; 1957 } 1958 if ($buttonsWrapper.length) { 1959 width += $buttonsWrapper.outerWidth(true) || 0; 1960 } 1961 if ($phoneItem.length) { 1962 width += $phoneItem.outerWidth(true) || 0; 1963 } 1964 return width; 1965 } 1966 function truncateMenu() { 1967 if (!$navList.is(':visible')) { 1968 return; 1969 } 1970 $menuItems.css('display', ''); 1971 const availableWidth = $navbar[0].getBoundingClientRect().width - measureFixedWidth(); 1972 let widthSoFar = 0; 1973 let overflowed = false; 1974 $menuItems.each(function () { 1975 const $item = $(this); 1976 if (overflowed) { 1977 $item.css('display', 'none'); 1978 return; 1979 } 1980 widthSoFar += $item.outerWidth(true); 1981 if (widthSoFar > availableWidth) { 1982 $item.css('display', 'none'); 1983 overflowed = true; 1984 } 1985 }); 1986 } 1987 let truncateFrame; 1988 function scheduleTruncate() { 1989 if (truncateFrame) { 1990 return; 1991 } 1992 truncateFrame = window.requestAnimationFrame(function () { 1993 truncateFrame = null; 1994 truncateMenu(); 1995 }); 1996 } 1997 scheduleTruncate(); 1998 if (window.ResizeObserver) { 1999 const resizeObserver = new ResizeObserver(scheduleTruncate); 2000 resizeObserver.observe($navbar[0]); 2001 } else { 2002 $(window).on('resize.lpui-auto-truncate', scheduleTruncate); 2003 } 2004 $section.find('img').on('load.lpui-auto-truncate', scheduleTruncate); 2005 $(window).on('load.lpui-auto-truncate', scheduleTruncate); 2006 if (document.fonts && document.fonts.ready) { 2007 document.fonts.ready.then(scheduleTruncate); 2008 } 2009 } 2010 initAutoTruncateMenu(); 2011})('global-navbar'); 2012} catch(e) { 2013console.log(e); 2014} 2015 try { 2016(function init(sectionDomId, options) { 2017 var elementSelector = options.elementSelector || 'nav'; 2018 var element = document.querySelector(elementSelector); 2019 var sections = document.querySelectorAll('body > section'); 2020 var subNavContainers = element.querySelectorAll('.sub-nav'); 2021 var initialBackgroundColor = options.initialBackgroundColor || element.style.backgroundColor; 2022 var backgroundColorScroll = options.backgroundColorScroll || '#191919'; 2023 var fontColor = options.fontColor || '#fff'; 2024 var fontColorScroll = options.fontColorScroll || '#000'; 2025 var didScroll = false; 2026 var lastScrollTop = 0; 2027 var delta = 5; 2028 2029 // eslint-disable-next-line sonarjs/no-collapsible-if 2030 if (wow) { 2031 // Wowjs might not trigger for position fixed elements 2032 if (window.scrollY > 0) { 2033 element.querySelectorAll('.wow').forEach(el => wow.show(el)); 2034 } 2035 } 2036 function adjustNavPinState() { 2037 // Remove 'visible' class from all subNavContainers 2038 for (let i = 0; i < subNavContainers.length; i++) { 2039 subNavContainers[i].classList.remove('visible'); 2040 } 2041 if (window.scrollY > 0) { 2042 element.style.backgroundColor = backgroundColorScroll; 2043 element.style.color = fontColorScroll; 2044 element.classList.add('scroll'); 2045 } else {
2046 element.style.backgroundColor = initialBackgroundColor; 2047 element.style.color = fontColor; 2048 element.classList.remove('scroll'); 2049 } 2050 } 2051 adjustNavPinState(); 2052 function onScroll() { 2053 didScroll = true; 2054 } 2055 window.addEventListener('scroll', onScroll); 2056 2057 // eslint-disable-next-line 2058 var debounceInterval = setInterval(() => { 2059 if (didScroll) { 2060 // eslint-disable-next-line 2061 hasScrolled(); 2062 didScroll = false; 2063 } 2064 }, 250); 2065 function hasScrolled() { 2066 adjustNavPinState(); 2067 // eslint-disable-next-line 2068 var navbarHeight = element.offsetHeight; 2069 // eslint-disable-next-line 2070 var st = window.scrollY; 2071 2072 // Make sure they scroll more than delta 2073 if (Math.abs(lastScrollTop - st) <= delta) { 2074 return; 2075 } 2076 if (st > lastScrollTop && st > navbarHeight) { 2077 // Scroll Down 2078 element.style.transform = `translateY(-${navbarHeight}px) scaleY(0)`; 2079 document.documentElement.style.setProperty('--global-header-height', '0px'); 2080 2081 // Some sections "follow" the navbar with class sticky (i.e. Producer search) 2082 sections.forEach(section => { 2083 if (section.classList.contains('sticky')) { 2084 section.style.top = '0px'; 2085 } 2086 }); 2087 } else { 2088 // Scroll Up 2089 // eslint-disable-next-line 2090 if (st + window.innerHeight < document.documentElement.scrollHeight) { 2091 element.style.transform = `translateY(0) scaleY(1)`; 2092 document.documentElement.style.setProperty('--global-header-height', `${navbarHeight}px`); 2093 sections.forEach(section => { 2094 if (section.classList.contains('sticky')) { 2095 section.style.top = `${navbarHeight}px`; 2096 } 2097 }); 2098 } 2099 } 2100 lastScrollTop = st; 2101 } 2102})('NAVBAR', JSON.parse("{\"fontColor\":\"#fff\",\"elementSelector\":\"nav\",\"fontColorScroll\":\"#fff\",\"initialFontColor\":\"#fff\",\"backgroundColorScroll\":\"#1a1a1a\",\"initialBackgroundColor\":\"rgba(0,0,0,0)\"}")); 2103} catch(e) { 2104console.log(e); 2105} 2106 try { 2107(function init(sectionDomId) { 2108 var $sidemenu = $('#' + sectionDomId); 2109 var shown = false; 2110 function onShow() { 2111 if (shown) { 2112 return; 2113 } 2114 shown = true; 2115 window.lpUI.requestScrollLock(sectionDomId); 2116 } 2117 function onHide() { 2118 if (!shown) { 2119 return; 2120 } 2121 shown = false; 2122 window.lpUI.releaseScrollLock(sectionDomId); 2123 $('body').removeClass('locked'); 2124 $('.hamburger.active').removeClass('active'); 2125 } 2126 $sidemenu.on('lpui-show', onShow); 2127 $sidemenu.on('lpui-hide', onHide); 2128 $sidemenu.find('a:not(.sub-nav-heading)').click(function () { 2129 onHide(); 2130 window.lpUI.sideMenuHide(true); 2131 }); 2132})('global-sidemenu'); 2133} catch(e) { 2134console.log(e); 2135} 2136 2137 try { 2138(function init(sectionDomId) { 2139 function getNums(str) { 2140 return str.match(/^rgba?\((\d+),\s*(\d+),\s*(\d+)(?:,\s*(\d+))?\)$/); 2141 } 2142 function getLightness(rgbaString) { 2143 let r = getNums(rgbaString)[1]; 2144 let g = getNums(rgbaString)[2]; 2145 let b = getNums(rgbaString)[3]; 2146 r /= 255; 2147 g /= 255; 2148 b /= 255; 2149 let cmin = Math.min(r, g, b), 2150 cmax = Math.max(r, g, b), 2151 delta = cmax - cmin, 2152 l = 0; 2153 l = (cmax + cmin) / 2; 2154 l = +(l * 100).toFixed(1); 2155 return l; 2156 } 2157 const $footer = $('.footer'); 2158 let footerBackgroundColor = $('footer').css('background-color'); 2159 if (getLightness(footerBackgroundColor) >= 50) { 2160 $footer.addClass('light'); 2161 } else { 2162 $footer.addClass('dark'); 2163 } 2164 var $footerWrap = $('.footer').closest("footer"); 2165 if ($footerWrap.length === 0) { 2166 $footerWrap = $('.footer').closest("body"); 2167 } 2168 var footerWrapBackgroundColor = $footerWrap.css('background-color'); 2169 var footerColor = $footerWrap.css('color'); 2170 $footerWrap.css({ 2171 "--fontColor": footerColor, 2172 "--bgColor": footerWrapBackgroundColor 2173 }); 2174 const form = $("#" + sectionDomId).find("form"); 2175 const redirectLink = $('#' + sectionDomId + ' .redirect-link'); 2176 form.on("reset", function () { 2177 redirectPage(redirectLink); 2178 }); 2179 function redirectPage(link) { 2180 if (link.length) { 2181 const rawHref = link.attr('href'); 2182 link.attr('href', setHttp(rawHref)); 2183 link[0].click(); 2184 } 2185 } 2186 function setHttp(link) { 2187 if (link.search(/^http[s]?\:\/\/|\//) == -1) { 2188 link = 'http://' + link; 2189 } 2190 return link; 2191 } 2192})('global-footer'); 2193} catch(e) { 2194console.log(e); 2195} 2196 2197 try { 2198(function init(sectionDomId) { 2199 var _section = $('#' + sectionDomId); 2200 var _footer = document.getElementById('global-footer'); 2201 const redirectLink = _section.find('.js-redirect-link'); 2202 function setHttp(link) { 2203 if (link.search(/^(http[s]?\:\/\/|\/)/) == -1) { 2204 link = 'https://' + link; 2205 } 2206 return link; 2207 } 2208 function redirectPage(link) { 2209 if (link.length) { 2210 window.location.href = setHttp(link.attr('href')); 2211 } 2212 } 2213 const emailInput = _section.find('.js-email-input'); 2214 const emailRegex = /[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~\-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)+/; 2215 emailInput.on('input', function () { 2216 if (emailRegex.test(this.value)) { 2217 this.setCustomValidity(''); 2218 } else { 2219 this.setCustomValidity('Please enter a valid email address.'); 2220 } 2221 this.reportValidity(); 2222 }); 2223 _section.find('input[name="name"]').on("keyup", function () { 2224 if (this.value.replaceAll(/\d/g, "").trim().split(" ").length < 2 || this.value.replaceAll(/\d/g, "").trim() === "") { 2225 this.setCustomValidity("Please input your first name and last name."); 2226 } else { 2227 this.setCustomValidity(""); 2228 } 2229 }); 2230 _section.find('form').on("reset", function () { 2231 $(this).addClass("show-success"); 2232 redirectPage(redirectLink); 2233 }); 2234 $(window).scroll(function () { 2235 if ($(this).scrollTop() >= 150) _section.find('.btn-holder').addClass('visible');else _section.find('.btn-holder').removeClass('visible'); 2236 }); 2237 _section.find('.close-btn, .connect-btn').click(function () { 2238 _section.find('.pop-up').toggle(); 2239 _section.find('.btn-holder').toggle(); 2240 }); 2241 if (!_footer) return; 2242 const observer = new IntersectionObserver(entries => {
2243 entries.forEach(entry => { 2244 if (entry.isIntersecting) _section.hide();else _section.show(); 2245 }); 2246 }, { 2247 threshold: 0.1 2248 }); 2249 observer.observe(_footer); 2250 function selectToDropdown(selectItem) { 2251 let customDropdown = ` 2252 <div class="custom-select" role="presentation"> 2253 <button class="custom-select-toggle is-placeholder" type="button" aria-haspopup="true" aria-expanded="false"></button> 2254 <div class="custom-select-menu" style="display: none;max-height: none;"> 2255 <div class="custom-select-content"> 2256 </div> 2257 </div> 2258 </div>`; 2259 $(customDropdown).insertAfter(selectItem); 2260 let $dropdown = $($(selectItem).next()); 2261 let $dropdownToggle = $dropdown.find(".custom-select-toggle"); 2262 let $dropdownMenu = $dropdown.find(".custom-select-menu"); 2263 let $dropdownContent = $dropdown.find(".custom-select-content"); 2264 $dropdownToggle.addClass($(selectItem).attr("class")).removeClass("dropdown-select"); 2265 $dropdownToggle.attr("id", $(selectItem).attr("id") + "custom"); 2266 $dropdownMenu.attr("aria-labelledby", $dropdownToggle.attr("id")); 2267 appendOptionButtons(selectItem, $dropdownContent); 2268 $(selectItem).removeClass().addClass("sr-only"); 2269 var toggleText = $(selectItem).find(":selected").first().text() || $(selectItem).children().first().text(); 2270 $dropdownToggle.html(toggleText); 2271 $dropdown.on("click", ".custom-select-item", function (e) { 2272 if ($(this).hasClass("is-disabled")) return; 2273 let elementNumber = $(this).index(); 2274 let $originalSelect = $(this).closest(".custom-select").siblings("select"); 2275 let $linkedOption = $originalSelect.find("option").eq(elementNumber); 2276 if (!$linkedOption.prop("selected")) { 2277 $linkedOption.prop("selected", true); 2278 $originalSelect.change(); 2279 $(this).addClass("is-selected").siblings(".custom-select-item").removeClass("is-selected"); 2280 $dropdownToggle.html($(this).html()); 2281 closeSelectMenu($(this).closest(".custom-select-menu")); 2282 } 2283 $dropdownToggle.removeClass("is-placeholder"); 2284 }); 2285 function convertOptionToButton(option) { 2286 var optionText = $(option).text(); 2287 var optionValue = $(option).attr("value") || $(option).text(); 2288 var optionIsDisabled = $(option).prop("disabled"); 2289 var outputButton = `<button value="${optionValue}" class="custom-select-item" type="button" ${optionIsDisabled ? "disabled" : ""}>${optionText}</button>`; 2290 return outputButton; 2291 } 2292 function appendOptionButtons(selectItem, appendTarget) { 2293 $(selectItem).find("option").each(function () { 2294 let currentButton = convertOptionToButton(this); 2295 $(appendTarget).append(currentButton); 2296 }); 2297 } 2298 function showSelectMenu(selectMenu) { 2299 var customSelect = $(selectMenu).closest(".custom-select")[0]; 2300 $(customSelect).addClass("open"); 2301 $(selectMenu).slideDown(); 2302 } 2303 function closeSelectMenu(selectMenu) { 2304 var customSelect = $(selectMenu).closest(".custom-select")[0]; 2305 $(customSelect).removeClass("open"); 2306 $(selectMenu).slideUp(); 2307 } 2308 $dropdown.on("click", ".custom-select-toggle", function (e) { 2309 var $customSelect = $(this).closest(".custom-select"); 2310 var selectMenu = $customSelect.find(".custom-select-menu")[0]; 2311 if ($customSelect.hasClass("open")) { 2312 closeSelectMenu(selectMenu); 2313 } else { 2314 showSelectMenu(selectMenu); 2315 } 2316 }); 2317 $(document).on("click", function (e) { 2318 if ($(e.target).closest(".custom-select").length < 1 && $(".custom-select").hasClass("open")) { 2319 $(".custom-select.open").each(function () { 2320 var selectMenu = $(this).find(".custom-select-menu")[0]; 2321 closeSelectMenu(selectMenu); 2322 }); 2323 } 2324 }); 2325 } 2326 $(".pop-up select[name='interest']").each(function () { 2327 selectToDropdown(this); 2328 }); 2329})('global-mobile-contact'); 2330} catch(e) { 2331console.log(e); 2332} 2333 2334 try { 2335(function init(sectionDomId, options) { 2336 const $section = $('#' + sectionDomId); 2337 const showOnlyActive = $section.find('.opening-with-search')[0].dataset.onlyActive === 'true'; 2338 const showNeighborhoodNames = $section.find('.opening-with-search')[0].dataset.showNeighborhoodNames === 'true'; 2339 const $videoWrap = $section.find('.full-screen-video-component > .video-wrapper');
2340 const $url = $section.find('.opening-with-search').attr('data-video-url'); 2341 let $iframe = $section.find('.full-screen-video-component > .video-wrapper').find('iframe'); 2342 let $video = $section.find('.full-screen-video-component > .video-wrapper').find('video'); 2343 let $mute = true; 2344 if ($url) { 2345 $section.children('.video-wrapper:not(.video-wrapper-extended)').remove(); 2346 if ($iframe) { 2347 let src = $iframe.attr('data-src'); 2348 let youtubeId = ''; 2349 let vimeoId = ''; 2350 if (src && (src.indexOf('youtube.com') !== -1 || src.indexOf('youtu.be') > -1) && src.indexOf('youtube.com/embed') < 0) { 2351 const youtubeRegex = /(?:youtube\.com\/\S*(?:(?:\/e(?:mbed))?\/|watch\?(?:\S*?&?v=))|youtu.be\/)([a-zA-Z0-9_-]{6,11})/; 2352 const youtubeResult = src.match(youtubeRegex); 2353 if (youtubeResult) youtubeId = youtubeResult[1]; 2354 } 2355 if (src && src.indexOf('vimeo.com') !== -1) { 2356 const vimeoRegex = /(?:(www\.)?vimeo.com\/(?:channels\/(?:\w+\/)?|groups\/([^/]*)\/videos\/|)|player.vimeo.com\/video\/)(\d{6,})(?:|\/\?)/; 2357 const vimeoResult = src.match(vimeoRegex); 2358 if (vimeoResult) vimeoId = vimeoResult[3]; 2359 } 2360 if (youtubeId) src = `https://youtube.com/embed/${youtubeId}?autoplay=1&mute=1&loop=1&enablejsapi=1&showinfo=0&controls=0&playlist=${youtubeId}`;else if (vimeoId) src = `https://player.vimeo.com/video/${vimeoId}?autoplay=1&muted=1&loop=1&quality=320p&controls=false`; 2361 $iframe.attr('src', src); 2362 $iframe.on("load", function () { 2363 $iframe.parent().addClass('playing'); 2364 }); 2365 } 2366 } else if ($videoWrap.length) { 2367 const $video = $videoWrap.find('video'); 2368 $video.each(function () { 2369 var v = this; 2370 if (v.readyState > 0) { 2371 $videoWrap.addClass('playing'); 2372 } else { 2373 v.addEventListener('canplay', function () { 2374 $videoWrap.addClass('playing'); 2375 }, { 2376 once: true 2377 }); 2378 } 2379 }); 2380 } 2381 window.luxuryPresence.mapApiLoader.load().then(() => { 2382 var $dots = $section.find(".js-dots"); 2383 var $carousel = $section.find('.js-carousel'); 2384 $carousel.on('init', function () { 2385 $carousel.addClass('visible'); 2386 $carousel.find('.title-item').find('.lp-h1').css({ 2387 "transform": "translateX(-100px)", 2388 "opacity": "0" 2389 }); 2390 $carousel.find('.title-item').first().find('.lp-h1').css({ 2391 'transform': 'translateX(0)', 2392 'opacity': '1' 2393 }); 2394 }); 2395 $carousel.slick({ 2396 dots: false, 2397 arrows: false, 2398 appendDots: $dots, 2399 speed: 2000, 2400 fade: true, 2401 autoplay: true, 2402 pauseOnHover: false, 2403 slidesToShow: 1, 2404 adaptiveHeight: true 2405 }); 2406 $carousel.on('beforeChange', function () { 2407 $carousel.find('.slick-slide').find('.lp-h1').css({ 2408 "transform": "translateX(0)", 2409 "opacity": "1", 2410 "transition": "1s all" 2411 }); 2412 $carousel.find('.slick-slide.slick-current').find('.lp-h1').css({ 2413 'transform': 'translateX(100px)' 2414 }); 2415 }); 2416 $carousel.on('afterChange', function () { 2417 $carousel.find('.slick-slide').not('.slick-current').find('.lp-h1').css({ 2418 'transform': 'translateX(-100px)', 2419 "transition": "0s all", 2420 "opacity": "0" 2421 }); 2422 }); 2423 $(window).on('resize', function () { 2424 $carousel.slick('resize'); 2425 }); 2426 const $searchWrapper = $section.find('.search-wrapper'); 2427 if (!$searchWrapper.length) { 2428 return; 2429 } 2430 const searchMls = $searchWrapper[0].dataset.searchMls === 'true'; 2431 const searchProperties = $searchWrapper[0].dataset.searchProperties === 'true'; 2432 const selectedCountries = $searchWrapper[0].dataset.locations; 2433 let searchAreaBounds = null; 2434 try { 2435 const searchAreaRaw = $searchWrapper[0].dataset.searchArea; 2436 if (searchAreaRaw) { 2437 const searchArea = typeof searchAreaRaw === 'string' ? JSON.parse(searchAreaRaw) : searchAreaRaw; 2438 const bounds = searchArea?.fullData?.geometry?.bounds || searchArea?.fullData?.geometry?.viewport; 2439 if (bounds && typeof bounds.north === 'number' && typeof bounds.south === 'number' && typeof bounds.east === 'number' && typeof bounds.west === 'number') { 2440 searchAreaBounds = {
2441 north: bounds.north, 2442 south: bounds.south, 2443 east: bounds.east, 2444 west: bounds.west 2445 }; 2446 } 2447 } 2448 } catch (e) {} 2449 const searchPlaces = searchMls; 2450 const showNeighborhoods = searchMls; 2451 const searchNearEnabled = searchMls; 2452 const $searchInput = $section.find('.search-input'); 2453 const $searchResults = $section.find('.search-results'); 2454 const $resultsContainer = $section.find('.results-container'); 2455 const $loader = $section.find('.search-in-progress'); 2456 const $predefined = $section.find('.predefined-links'); 2457 const $searchBtn = $section.find('.search-button'); 2458 const $leaseFalseButton = $section.find('.jsLeaseFalse'); 2459 const $leaseTrueButton = $section.find('.jsLeaseTrue'); 2460 const $nextSection = $section.next(); 2461 const fixZIndex = $nextSection.length && parseInt($nextSection.css('z-index')) || 1; 2462 const searchDelay = 300; 2463 const maxPlaces = 5; 2464 const maxMls = 5; 2465 const leaseFilter = $leaseFalseButton.length > 0 && $leaseTrueButton.length > 0; 2466 const service = new google.maps.places.AutocompleteService(); 2467 const geocoder = new google.maps.Geocoder(); 2468 var keyword; 2469 var leasePropertyState = false; 2470 var leasePropertySearched; 2471 var searchActive = false; 2472 var isLoading = false; 2473 function showSearchResults() { 2474 searchActive = true; 2475 updateSearchDisplay(); 2476 } 2477 function hideSearchResults() { 2478 searchActive = false; 2479 updateSearchDisplay(); 2480 } 2481 function showLoading() { 2482 isLoading = true; 2483 updateSearchDisplay(); 2484 } 2485 function hideLoading() { 2486 isLoading = false; 2487 updateSearchDisplay(); 2488 } 2489 function updateSearchDisplay() { 2490 if (leaseFilter) { 2491 if (leasePropertyState) { 2492 $leaseTrueButton.addClass('active'); 2493 $leaseFalseButton.removeClass('active'); 2494 } else { 2495 $leaseFalseButton.addClass('active'); 2496 $leaseTrueButton.removeClass('active'); 2497 } 2498 } 2499 if (!searchActive) { 2500 $searchResults.removeClass('show'); 2501 $searchResults.css('height', '0'); 2502 if (fixZIndex) { 2503 $section.css('z-index', ''); 2504 } 2505 return; 2506 } 2507 var hasResults = !!$resultsContainer.html(); 2508 var hasPredefined = $predefined.find('a:not(.not-processed)').length > 0; 2509 if (hasResults) { 2510 $predefined.addClass('not-visible'); 2511 $loader.addClass('not-visible'); 2512 $resultsContainer.removeClass('not-visible'); 2513 } else if (isLoading) { 2514 $resultsContainer.addClass('not-visible'); 2515 $predefined.addClass('not-visible'); 2516 $loader.removeClass('not-visible'); 2517 } else if (hasPredefined) { 2518 $resultsContainer.addClass('not-visible'); 2519 $loader.addClass('not-visible'); 2520 $predefined.removeClass('not-visible'); 2521 } else { 2522 $resultsContainer.addClass('not-visible'); 2523 $loader.addClass('not-visible'); 2524 $predefined.addClass('not-visible'); 2525 } 2526 var height = 0; 2527 height += $predefined[0].getBoundingClientRect().height; 2528 height += $resultsContainer[0].getBoundingClientRect().height; 2529 height += $loader[0].getBoundingClientRect().height; 2530 if (height > 0) { 2531 if (fixZIndex) { 2532 $section.css('z-index', '' + (fixZIndex + 1)); 2533 } 2534 $searchResults.addClass('show'); 2535 } else { 2536 if (fixZIndex) { 2537 $section.css('z-index', ''); 2538 } 2539 $searchResults.removeClass('show'); 2540 } 2541 $searchResults.css('height', height + 'px'); 2542 } 2543 function clearSelection() { 2544 $searchResults.find('.selected-link').removeClass('selected-link'); 2545 } 2546 function moveSelection(up) { 2547 var $cont = $resultsContainer.html() ? $resultsContainer : $predefined; 2548 var $links = $cont.find('.results-link'); 2549 if (!$links.length) { 2550 return; 2551 } 2552 var idx = -1; 2553 $links.each(function (i) { 2554 if (idx === -1 && $(this).is('.selected-link')) { 2555 idx = i; 2556 } 2557 }); 2558 var newIdx; 2559 if (up) { 2560 newIdx = idx - 1; 2561 if (newIdx < 0) { 2562 newIdx = $links.length - 1; 2563 } 2564 } else { 2565 newIdx = idx + 1; 2566 if (newIdx > $links.length - 1) { 2567 newIdx = 0; 2568 } 2569 } 2570 if (newIdx !== idx) { 2571 $searchResults.find('.selected-link').removeClass('selected-link'); 2572 $($links.get(newIdx)).addClass('selected-link'); 2573 } 2574 } 2575 var newSearchTimer; 2576 function inputChanged(ev) { 2577 if (ev.which === 38) { 2578 ev.preventDefault(); 2579 moveSelection(true); 2580 return false;
2581 } 2582 if (ev.which === 40) { 2583 ev.preventDefault(); 2584 moveSelection(); 2585 return false; 2586 } 2587 if (ev.which === 13) { 2588 $lnk = $searchResults.find('.selected-link'); 2589 if ($lnk.length) { 2590 $lnk[0].click(); 2591 hideSearchResults(); 2592 } else { 2593 $searchBtn.click(); 2594 } 2595 } 2596 window.clearTimeout(newSearchTimer); 2597 newSearchTimer = window.setTimeout(startSearch, searchDelay); 2598 } 2599 function startSearch() { 2600 const term = $searchInput.val(); 2601 if (term === keyword && leasePropertySearched === leasePropertyState) { 2602 return; 2603 } 2604 leasePropertySearched = leasePropertyState; 2605 keyword = term; 2606 if (term) { 2607 doSearch(term, leasePropertySearched); 2608 } else { 2609 setResults(null); 2610 } 2611 } 2612 function mlsSearch(term, leaseProperty) { 2613 if (!leaseFilter) { 2614 if (showOnlyActive) { 2615 const filters = { 2616 'status[]': 'ACTIVE' 2617 }; 2618 return window.luxuryPresence.getMLSAutocompleteWithFilters(term, filters); 2619 } 2620 return window.luxuryPresence.getMLSAutocomplete(term); 2621 } 2622 var query = { 2623 omnibox: term, 2624 limit: maxMls 2625 }; 2626 if (showOnlyActive) query['status[]'] = ['ACTIVE']; 2627 if (leaseFilter && leaseProperty) { 2628 query.lease_property = true; 2629 } 2630 return superagent.get(window.location.protocol + '//' + window.location.host + '/home-search/listings.json').query(query).then(function (res) { 2631 if (!Array.isArray(res.body)) { 2632 return []; 2633 } 2634 return res.body; 2635 }, function (e) { 2636 console.log(e); 2637 return []; 2638 }); 2639 } 2640 function resolveGeoBounds(placeId, description) { 2641 return new Promise(function (resolve, reject) { 2642 geocoder.geocode({ 2643 'placeId': placeId 2644 }, function (results, status) { 2645 if (status != 'OK') { 2646 return resolve(null); 2647 } 2648 var result = results[0]; 2649 var bounds = new google.maps.LatLngBounds();
2650 bounds.extend(result.geometry.viewport.getSouthWest()); 2651 bounds.extend(result.geometry.viewport.getNorthEast()); 2652 result.geometry.bounds = bounds.toJSON(); 2653 var placeUrl = window.luxuryPresence.makeMlsLink(result); 2654 return resolve({ 2655 placeUrl: placeUrl, 2656 description: description 2657 }); 2658 }); 2659 }); 2660 } 2661 function addRestrictions(request) { 2662 if (searchAreaBounds) { 2663 request.locationRestriction = searchAreaBounds; 2664 } 2665 if (selectedCountries === 'Worldwide') { 2666 return request; 2667 } 2668 if (selectedCountries === 'US & Canada') { 2669 request.componentRestrictions = { 2670 country: ['us', 'ca'] 2671 }; 2672 return request; 2673 } 2674 request.componentRestrictions = { 2675 country: 'us' 2676 }; 2677 return request; 2678 } 2679 function resolveAutocomplete(term, deeper) { 2680 var request = addRestrictions({ 2681 input: term, 2682 types: deeper ? ['geocode'] : ['(regions)'], 2683 limit: 1 2684 }); 2685 return new Promise(function (resolve, reject) { 2686 service.getPlacePredictions(request, function (results, status) { 2687 if (status !== google.maps.places.PlacesServiceStatus.OK) { 2688 resolve(null); 2689 return; 2690 } 2691 if (!Array.isArray(results)) { 2692 resolve(null); 2693 return; 2694 } 2695 if (deeper) { 2696 var allowedTypes = { 2697 'route': true, 2698 'neighborhood': true, 2699 'administrative_area_level_3': true, 2700 'administrative_area_level_4': true, 2701 'administrative_area_level_5': true, 2702 'sublocality_level_1': true, 2703 'sublocality_level_2': true, 2704 'sublocality_level_3': true, 2705 "colloquial_area": true 2706 }; 2707 results = results.filter(function (res) { 2708 return res.types.find(t => allowedTypes[t]); 2709 }); 2710 } 2711 if (!results.length) { 2712 resolve(null); 2713 return; 2714 } 2715 resolve(results); 2716 }); 2717 }); 2718 } 2719 var placesResult = {}; 2720 function placesSearch(term, ignoreInput) { 2721 if (placesResult.term !== term) { 2722 placesResult = { 2723 term: term, 2724 result: Promise.all([resolveAutocomplete(term), resolveAutocomplete(term, true)]).then(function (res) { 2725 let results = []; 2726 if (res[0]) results.push(...res[0]); 2727 if (res[1]) results.push(...res[1]); 2728 if (!results) { 2729 return []; 2730 } 2731 const uniqueResults = []; 2732 const placeIds = new Set(); 2733 results.forEach(place => { 2734 if (!placeIds.has(place.place_id)) { 2735 placeIds.add(place.place_id); 2736 uniqueResults.push(place); 2737 } 2738 }); 2739 return uniqueResults; 2740 }).then(function (results) { 2741 if (!ignoreInput && term !== keyword) { 2742 return []; 2743 } 2744 if (!results) { 2745 return []; 2746 } 2747 var geoResultPromises = results.map(function (result) { 2748 return resolveGeoBounds(result.place_id, result.description); 2749 }); 2750 return Promise.all(geoResultPromises).then(function (geoLinks) { 2751 return geoLinks.filter(function (i) { 2752 return i; 2753 }).slice(0, maxPlaces); 2754 }); 2755 }) 2756 }; 2757 } 2758 return placesResult.result; 2759 } 2760 function propertiesSearch(term, leaseProperty) { 2761 var payload = { 2762 companyId: window.luxuryPresence.defaults.companyId, 2763 search: term, 2764 offset: 0, 2765 limit: 6, 2766 statusIds: ["5f528253-abb7-484e-95c3-330269ac1105", "959c11cf-8655-4f91-874c-292b0ab7ea6b", "a0012964-4f51-4430-abf8-6547c5ab6441", "df04ccbe-4621-4140-a504-ee1a17430bb7", "88b4ace6-f39b-4b25-a051-8f6dba976833", "96031d77-bbe5-4de3-90d8-1e4e70de8ca8"] 2767 }; 2768 if (leaseFilter) { 2769 payload.leaseProperty = !!leaseProperty; 2770 } 2771 var useRouter = Boolean(options && options.useRouterApi); 2772 return superagent.post((useRouter ? window.luxuryPresence.defaults.routerUrl : window.luxuryPresence.defaults.apiGatewayUrl) + '/graphql').send({ 2773 query: window.luxuryPresence.defaults.gql.properties, 2774 variables: useRouter ? window.luxuryPresence.routerApi.transformVariables('properties', payload) : payload 2775 }).then(function (res) { 2776 var data = res.body.data || {}; 2777 var page = data.properties || {}; 2778 return useRouter ? page.items || [] : page || []; 2779 }, function (err) { 2780 return []; 2781 }); 2782 } 2783 function doSearch(term, leaseProperty) { 2784 showLoading(); 2785 Promise.all([searchMls ? mlsSearch(term, leaseProperty) : [], searchPlaces ? placesSearch(term) : [], searchProperties ? propertiesSearch(term, leaseProperty) : []]).then(function (res) { 2786 if (term !== keyword) { 2787 return; 2788 } 2789 if (res[0].length > 0) { 2790 res[0] = res[0].map(function (item) { 2791 return { 2792 id: item.id, 2793 display_address: [item.address_1, item.city, [item.state, item.postal_code].filter(function (i) { 2794 return i; 2795 }).join(' ')].filter(function (i) { 2796 return i; 2797 }).join(', ') 2798 }; 2799 }); 2800 } 2801 setResults(res[0], res[1], res[2], leaseProperty); 2802 }); 2803 } 2804 function makeResultsBlockHtml(title, links) { 2805 if (!links || !links.length) { 2806 return ''; 2807 } 2808 var html = '<div class="results-block">'; 2809 html += '<div class="results-block-title">'; 2810 if (searchNearEnabled) { 2811 html += '<div class="search-near-container"><a class="search-near lp-link lp-link--light">Search Near Me</a></div>'; 2812 } 2813 html += '<div class="results-title-label">' + title + '</div></div>'; 2814 html += links.join('') + '</div>'; 2815 return html; 2816 } 2817 function setResults(mlsResults, placesResults, propertiesResults, leaseProperty) { 2818 clearSelection(); 2819 hideLoading(); 2820 if (!mlsResults) { 2821 $resultsContainer.html(''); 2822 updateSearchDisplay(); 2823 return; 2824 } 2825 if (!mlsResults.length && !placesResults.length && !propertiesResults.length) { 2826 $resultsContainer.html('<div class="nothing-found">No results found</div>'); 2827 updateSearchDisplay(); 2828 return; 2829 } 2830 var propertiesHtml = makeResultsBlockHtml('Featured Properties', propertiesResults.map(function (result) { 2831 return `<a href="/properties/${result.slug}" class="results-link">${result.privateAddress ? result.name : result.fullAddress}</a>`; 2832 })); 2833 var placesHtml = makeResultsBlockHtml('Locations', placesResults.map(function (result) { 2834 return `<a class="results-link" href="${result.placeUrl}${leaseProperty ? '&lease_property=true' : ''}">${result.description}</a>`; 2835 })); 2836 var mlsHtml = makeResultsBlockHtml('Address', mlsResults.map(function (result) { 2837 return `<a href="/home-search/listings/${result.id}" class="results-link">${result.display_address}</a>`; 2838 }));
2839 $resultsContainer.html(propertiesHtml + placesHtml + mlsHtml); 2840 updateSearchDisplay(); 2841 } 2842 function searchBtnClicked() { 2843 var resultsBlockHref = $("#" + sectionDomId + " .results-container .results-block .results-link").attr("href"); 2844 const term = $searchInput.val(); 2845 if (!term) { 2846 return; 2847 } 2848 if (searchMls) { 2849 if (resultsBlockHref !== undefined) window.location.href = resultsBlockHref; 2850 return; 2851 } 2852 if (searchProperties) { 2853 window.location.href = "/properties/sale"; 2854 } 2855 } 2856 var neighborhoods = null; 2857 function fetchNeighborhoods() { 2858 var url = window.luxuryPresence.defaults.apiGatewayUrl; 2859 var gqlQuery = 'query ($companyId: String, $offset: Int, $limit: Int) {' + 'neighborhoods (companyId: $companyId, offset: $offset, limit: $limit) {id, name, mlsLink, googlePlaceData}}'; 2860 var payload = {}; 2861 payload.offset = 0; 2862 payload.limit = 100; 2863 payload.companyId = window.luxuryPresence.defaults.companyId; 2864 return superagent.post(url + '/graphql').withCredentials().send({ 2865 query: gqlQuery, 2866 variables: payload 2867 }).then(function (res) { 2868 neighborhoods = res.body.data && res.body.data.neighborhoods; 2869 if (neighborhoods && !neighborhoods.length) { 2870 neighborhoods = null; 2871 } 2872 }); 2873 } 2874 function setPredefinedNeighborhoods() { 2875 return fetchNeighborhoods().then(function () { 2876 if (!neighborhoods) { 2877 return; 2878 } 2879 var leaseProperty = leaseFilter && leasePropertyState; 2880 var placesHtml = makeResultsBlockHtml('Locations', neighborhoods.map(function (item) { 2881 return `<a class="results-link" href="${item.mlsLink}${leaseProperty ? `${item.mlsLink.includes('?') ? '&lease_property=true' : '?lease_property=true'}` : ''}">${showNeighborhoodNames ? item.name : item.googlePlaceData && item.googlePlaceData.formatted_address || item.name}</a>`; 2882 })); 2883 $predefined.html(placesHtml); 2884 updateSearchDisplay(); 2885 }); 2886 } 2887 if (showNeighborhoods) { 2888 setPredefinedNeighborhoods(); 2889 } 2890 $searchInput.on('focus', showSearchResults); 2891 $searchInput.on('keyup focus', inputChanged); 2892 $searchResults.on('mouseenter', '.results-link', function (ev) { 2893 clearSelection(); 2894 }); 2895 $searchBtn.on('click', searchBtnClicked); 2896 $leaseFalseButton.on('click', function () { 2897 if (leasePropertyState) { 2898 leasePropertyState = false; 2899 if (showNeighborhoods) { 2900 setPredefinedNeighborhoods(); 2901 } 2902 updateSearchDisplay(); 2903 setResults(null); 2904 startSearch(); 2905 } 2906 }); 2907 $leaseTrueButton.on('click', function () { 2908 if (!leasePropertyState) { 2909 leasePropertyState = true; 2910 if (showNeighborhoods) { 2911 setPredefinedNeighborhoods(); 2912 } 2913 updateSearchDisplay(); 2914 setResults(null); 2915 startSearch(); 2916 } 2917 }); 2918 function createPolygonUrl(center, radius, n) { 2919 var step = Math.PI * 2 / n; 2920 var angle = 0 - step / 2; 2921 var points = []; 2922 var kx = 1.0 / Math.cos(center[1] * Math.PI / 180); 2923 for (var i = 0; i < n; i++) { 2924 points.push('[' + (center[0] + radius * Math.sin(angle) * kx).toFixed(5) + ',' + (center[1] - radius * Math.cos(angle)).toFixed(5) + ']'); 2925 angle += step; 2926 } 2927 points.push(points[0]); 2928 var str = '[[' + points.join(',') + ']]'; 2929 return '&polygon=' + encodeURIComponent(str); 2930 } 2931 function makeNearMeUrl(center, leaseProperty) { 2932 var url = '/home-search/listings?search_type=envelope'; 2933 if (leaseProperty) { 2934 url += '&lease_property=true'; 2935 } 2936 var distance = 0.11; 2937 var lat = center[1]; 2938 var lng = center[0]; 2939 url += '&south=' + (lat - distance); 2940 url += '&north=' + (lat + distance); 2941 url += '&west=' + (lng - distance); 2942 url += '&east=' + (lng + distance); 2943 url += createPolygonUrl(center, distance, 54); 2944 return url; 2945 } 2946 var $locMsg = null; 2947 $section.on('click', '.search-near', function () { 2948 showLoading(); 2949 navigator.geolocation.getCurrentPosition(function (position) { 2950 hideLoading(); 2951 hideSearchResults(); 2952 if (!position || !position.coords || !position.coords.latitude || !position.coords.longitude) { 2953 showLocationMessage('Unknown Location', '<p>Getting position of your device failed.</p><p>
2953You can type your address manually in the search field</p>'); 2954 return; 2955 } 2956 var url = makeNearMeUrl([position.coords.longitude, position.coords.latitude], leaseFilter && leasePropertyState); 2957 var link = document.createElement('a'); 2958 link.href = url; 2959 link.class = 'lp-visually-hidden'; 2960 $section[0].appendChild(link); 2961 link.click(); 2962 setTimeout(function () { 2963 $section[0].removeChild(link); 2964 }, 100); 2965 }, function (geoError) { 2966 hideLoading(); 2967 hideSearchResults(); 2968 var title = 'Unknown Location'; 2969 var msg; 2970 if (geoError.code === 1) { 2971 msg = '<p>To be able to search near you we need to know your current location.</p><p>If you don\'t want to give access to your device\'s location, you can type your address in the search field</p>'; 2972 } else { 2973 msg = '<p>Getting position of your device failed.</p><p>You can type your address manually in the search field</p>'; 2974 } 2975 showLocationMessage(title, msg); 2976 }); 2977 }); 2978 var locHideTimer = null; 2979 function showLocationMessage(title, message) { 2980 clearTimeout(locHideTimer); 2981 if (!$locMsg) { 2982 var html = `<div class="loc-msg-backdrop"> 2983 <div class="loc-msg-wrap"> 2984 <div class="loc-msg-modal"> 2985 <div class="loc-msg-close"></div> 2986 <h4 class="loc-msg-title lp-h4"></h4> 2987 <div class="loc-msg-container"></div> 2988 </div> 2989 </div> 2990 </div> 2991 `; 2992 $locMsg = $(html); 2993 $locMsg.on('click', hideLocationMessage); 2994 $section.append($locMsg); 2995 } 2996 $locMsg.find('.loc-msg-container').html(message); 2997 $locMsg.find('.loc-msg-title').html(title); 2998 setTimeout(function () { 2999 if ($locMsg) { 3000 $section.addClass('visible-loc-msg'); 3001 } 3002 }); 3003 } 3004 function hideLocationMessage() { 3005 $section.removeClass('visible-loc-msg'); 3006 locHideTimer = setTimeout(function () { 3007 $locMsg.remove(); 3008 $locMsg = null; 3009 }, 400); 3010 } 3011 function outsideClickHandler(e) { 3012 if ($searchWrapper.find($(e.target)).length > 0) { 3013 return; 3014 } 3015 hideSearchResults(); 3016 } 3017 $(document).on('click', outsideClickHandler); 3018 if ('geolocation' in navigator) { 3019 $searchWrapper.removeClass('search-near-hidden'); 3020 } 3021 updateSearchDisplay(); 3022 }); 3023})('section-289d43ba-f5d7-4db2-b828-9a71515ca977', 'undefined'); 3024} catch(e) { 3025console.log(e); 3026} 3027 try { 3028(function init(sectionDomId) { 3029 const $section = $('#' + sectionDomId); 3030 const video = $section.find('video'); 3031 const $videoWrap = $section.find('.full-screen-video-component > .video-wrapper'); 3032 if ($videoWrap.length) { 3033 video.each(function () { 3034 var v = this; 3035 if (v.readyState > 0) { 3036 $videoWrap.addClass('playing'); 3037 } else { 3038 v.addEventListener('canplay', function () { 3039 $videoWrap.addClass('playing'); 3040 }, { 3041 once: true 3042 }); 3043 } 3044 }); 3045 } 3046 if (video.length) { 3047 $section.find('.muted').css('display', 'inline'); 3048 $section.find('.mute-icon__container').on('click.lpui-auto-clean', function (evt) { 3049 if (video.prop("muted")) { 3050 $section.find('.unmuted').css('display', 'inline'); 3051 $section.find('.muted').css('display', 'none'); 3052 } else { 3053 $section.find('.muted').css('display', 'inline'); 3054 $section.find('.unmuted').css('display', 'none'); 3055 } 3056 video.prop("muted", !video.prop("muted")); 3057 }); 3058 function muteUponHide() { 3059 let videoDisplay = $('.video-wrapper .hidable').css('display'); 3060 if (videoDisplay === 'none') { 3061 video.prop("muted", true); 3062 $section.find('.muted').css('display', 'inline'); 3063 $section.find('.unmuted').css('display', 'none'); 3064 } 3065 } 3066 var debouncedMute = window.luxuryPresence.debounce(muteUponHide, 200); 3067 $(window).on('resize.lpui-auto-clean', debouncedMute); 3068 } 3069})('section-d80ad228-fd3f-4c9e-afb6-554937747605', 'undefined'); 3070} catch(e) { 3071console.log(e); 3072} 3073 try { 3074(function init(sectionDomId) { 3075 var WIDTH_TOLERANCE_PERCENT = 10; 3076 var isSliderInitialized = false;
3077 var $slider = $("#" + sectionDomId + " .carousel-container"); 3078 var slickOptions = { 3079 "speed": +$slider.data("speed") || 10000, 3080 "cssEase": "linear", 3081 "autoplay": true, 3082 "infinite": true, 3083 "nextArrow": "", 3084 "prevArrow": "", 3085 "pauseOnFocus": false, 3086 "pauseOnHover": false, 3087 "slidesToShow": 1, 3088 "autoplaySpeed": 0, 3089 "variableWidth": true, 3090 "slidesToScroll": 1 3091 }; 3092 var $slides = $("#" + sectionDomId + " .carousel-slide"); 3093 function doSlidesFit() { 3094 var containerWidth = $slider.width(); 3095 var totalSlidesWidth = 0; 3096 $slider.find(".carousel-slide").not(".slick-cloned").each(function () { 3097 totalSlidesWidth += $(this).outerWidth(); 3098 }); 3099 return totalSlidesWidth < containerWidth * (100 - WIDTH_TOLERANCE_PERCENT) / 100; 3100 } 3101 if ($slides.length > 0 && doSlidesFit() && !isSliderInitialized) { 3102 $slides.clone().appendTo($slider); 3103 while (doSlidesFit()) { 3104 $slides.clone().appendTo($slider); 3105 } 3106 } 3107 if ($slides.length > 0) { 3108 $slider.slick(slickOptions); 3109 isSliderInitialized = true; 3110 $(window).on("resize.lpui-auto-clean orientationchange.lpui-auto-clean", function () { 3111 if (!doSlidesFit() && !isSliderInitialized) { 3112 $slider.slick(slickOptions); 3113 isSliderInitialized = true; 3114 } else if (doSlidesFit() && isSliderInitialized) { 3115 $slider.slick("unslick"); 3116 $slider.slick(slickOptions); 3117 } 3118 }); 3119 } 3120})('section-6ddcb24d-16a4-470a-8d99-8907da812ee3', 'undefined'); 3121} catch(e) { 3122console.log(e); 3123} 3124 try { 3125(function init(sectionDomId) { 3126 const $section = $(`#${sectionDomId}`); 3127 const $container = $section.find('.featured-properties-section'); 3128 const $slider = $section.find('.featured-properties'); 3129 const threeSlides = $container.hasClass('three-slides'); 3130 const autoScroll = $container[0].dataset['autoScroll'] === 'true'; 3131 const autoplaySpeed = parseInt($container[0].dataset['autoplaySpeed']) || 3000; 3132 const sliderOptions = { 3133 "arrows": true, 3134 "infinite": false, 3135 autoplay: autoScroll, 3136 autoplaySpeed: autoplaySpeed, 3137 "nextArrow": $section.find('.slick-links-nav .next'), 3138 "prevArrow": $section.find('.slick-links-nav .prev'), 3139 "slidesToShow": 2, 3140 "slidesToScroll": 2, 3141 "responsive": [{ 3142 "settings": { 3143 "slidesToShow": 1, 3144 "slidesToScroll": 1 3145 }, 3146 "breakpoint": 769 3147 }] 3148 }; 3149 if (threeSlides) { 3150 sliderOptions.slidesToShow = 3; 3151 sliderOptions.slidesToScroll = 3; 3152 sliderOptions.responsive.unshift({ 3153 "settings": { 3154 "slidesToShow": 2, 3155 "slidesToScroll": 2 3156 }, 3157 "breakpoint": 1100 3158 }); 3159 } 3160 if (!$slider.hasClass('.slick-initialized')) { 3161 $slider.slick(sliderOptions); 3162 } 3163 $slider.on('beforeChange', function () { 3164 $slider.find('.featured-properties__share.featured-properties__share--opened').removeClass('featured-properties__share--opened'); 3165 }); 3166 $slider.find('.featured-properties__share .btn').on('click', function () { 3167 $parent = $(this).parent(); 3168 if ($parent.hasClass('featured-properties__share--opened')) { 3169 $parent.removeClass('featured-properties__share--opened'); 3170 } else { 3171 $slider.find('.featured-properties__share.featured-properties__share--opened').removeClass('featured-properties__share--opened'); 3172 $parent.addClass('featured-properties__share--opened'); 3173 } 3174 }); 3175})('section-e0c6e90c-c020-42c8-90a6-cba1dc204b8d', JSON.parse("{\"resource\":\"properties\",\"useRouterApi\":false,\"companyId\":\"c3076ecb-c2d7-457b-a426-bcf036133f1f\",\"usePageResource\":false,\"sectionIndex\":4,\"routerApiAux\":{\"testimonials\":true,\"agents\":false,\"neighborhoods\":false,\"developments\":false,\"properties\":false,\"posts\":true,\"pressReleases\":true,\"offices\":true,\"teams\":true,\"pois\":true,\"postCategories\":true}}")); 3176} catch(e) { 3177console.log(e); 3178} 3179 try { 3180(function init(sectionDomId, options) { 3181 let section = null; 3182 switch (sectionDomId) { 3183 case 'NAVBAR': 3184 section = document.querySelector('body > nav, #global-navbar'); 3185 break; 3186 case 'FOOTER': 3187 section = document.querySelector('body > footer, #global-footer'); 3188 break; 3189 case 'SIDEMENU': 3190 section = document.querySelector('body > div.sidemenu, #global-sidemenu'); 3191 break; 3192 case 'CONTACT':
3193 section = document.querySelector('#modal-global-contact-us'); 3194 break; 3195 case 'MOBILE_CONTACT': 3196 section = document.querySelector('body > div.mobile-contact-wrapper, #global-mobile-contact'); 3197 break; 3198 case 'SUBSCRIBE': 3199 // Subscribe Not Implemented 3200 section = null; 3201 break; 3202 case 'ACCOUNT': 3203 // Account Not Implemented 3204 section = null; 3205 break; 3206 default: 3207 section = document.querySelector('#' + sectionDomId); 3208 } 3209 if (!section) { 3210 return; 3211 } 3212 var url = window.luxuryPresence.defaults.routerUrl; 3213 var companyId = window.luxuryPresence.defaults.companyId; 3214 var limit = options.limit || 8; 3215 if (typeof limit === 'string') { 3216 limit = parseInt(limit, 10) || 8; // this NaN protection also filters out 0 - this is expected 3217 } 3218 var templateSelector = options.templateSelector || '.jsIGTemplate'; 3219 var containerSelector = options.containerSelector || '.jsIGContainer'; 3220 var hasDataClass = options.hasDataClass || 'has-data'; 3221 var hideActivateMessage = options.hasDataClass || false; 3222 var payload = { 3223 companyId: companyId, 3224 limit: limit 3225 }; 3226 if (options.resourceId && typeof options.resourceId === 'string' && !options.resourceId.match(/^{{.*}}$/)) { 3227 payload.resourceId = options.resourceId; 3228 // Federated enum values are uppercase (AGENT/TEAM); element configs carry lowercase 3229 payload.resource = String(options.resource || 'agent').toUpperCase(); 3230 payload.fallbackToNoResource = options.fallbackToNoResource === 'true' || options.fallbackToNoResource === true; 3231 } 3232 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'; 3233 var templateHTML = section.querySelector(templateSelector)?.innerHTML || ''; 3234 var template = Handlebars.compile(templateHTML); 3235 var container = section.querySelector(containerSelector); 3236 if (options.variables) { 3237 Object.keys(options.variables).forEach(function (key) { 3238 if (options.variables.hasOwnProperty(key) && (typeof options.variables[key] !== 'string' || !options.variables[key].match(/^{{.*}}$/))) { 3239 payload[key] = options.variables[key]; 3240 } 3241 }); 3242 } 3243 function getData() { 3244 var feed = { 3245 error: true 3246 }; 3247 if (payload.companyId == null || payload.companyId === '') { 3248 // instagramContentFeed requires companyId (ID!) â nothing to fetch without it. 3249 // Checked after the options.variables merge, which may override the default. 3250 // Deferred so element listeners (attached after this template runs) still receive it. 3251 setTimeout(function () { 3252 section.dispatchEvent(new CustomEvent('ig-data', { 3253 detail: feed 3254 })); 3255 }, 0); 3256 return; 3257 } 3258 superagent.post(url + '/graphql').send({ 3259 query: query, 3260 variables: payload 3261 }).then(res => { 3262 try { 3263 if (!res.body.errors) { 3264 feed = res.body.data.instagramContentFeed; 3265 if (!feed.active) { 3266 if (!hideActivateMessage && sectionDomId === 'section-temp' && container) { 3267 if (payload.resourceId) { 3268 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>'; 3269 } else { 3270 container.innerHTML = '<div style="text-align: center">Instagram account is not connected.<br /> Connect it on <a href="/profile">Profile page</a></div>'; 3271 } 3272 } 3273 } else { 3274 if (feed.items.length) { 3275 if (hasDataClass) { 3276 section.classList.add(hasDataClass); 3277 } 3278 const feedName = feed.username; 3279 section.querySelectorAll('.jsIGLink').forEach(link => link.setAttribute('href', feed.feedUrl)); 3280 section.querySelectorAll('.jsIGName').forEach(name => { 3281 name.textContent = '@' + feedName; 3282 name.setAttribute('title', '@' + feedName); 3283 }); 3284 if (container && template) { 3285 container.innerHTML = template(feed); 3286 } 3287 } 3288 } 3289 } 3290 } catch (e) {} 3291 section.dispatchEvent(new CustomEvent('ig-data', { 3292 detail: feed 3293 })); 3294 }).catch(e => { 3295 console.log('err', e); 3296 section.dispatchEvent(new CustomEvent('ig-data', { 3297 detail: feed 3298 })); 3299 }); 3300 } 3301 getData(); 3302})('section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d', JSON.parse("{\"limit\":33,\"resource\":\"agent\",\"resourceId\":\"\",\"fallbackToNoResource\":\"true\",\"companyId\":\"c3076ecb-c2d7-457b-a426-bcf036133f1f\",\"usePageResource\":false,\"sectionIndex\":5,\"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}}")); 3303} catch(e) { 3304console.log(e); 3305} 3306 try { 3307(function init(sectionDomId) { 3308 const $section = $('#' + sectionDomId); 3309 var templateHTML = $section.find('.jsIGItem').html(); 3310 var itemTemplate = templateHTML && Handlebars.compile(templateHTML); 3311 const $container = $section.find('.ig-feed-feed'); 3312 const $topPrev = $section.find('.top-nav-prev'); 3313 const $topNext = $section.find('.top-nav-next'); 3314 const $bottomPrev = $section.find('.bottom-nav-prev'); 3315 const $bottomNext = $section.find('.bottom-nav-next'); 3316 let limit = 33; 3317 try { 3318 limit = parseInt($container[0].dataset['limit']); 3319 } catch (e) {} 3320 if (!limit) { 3321 limit = 33; 3322 } 3323 let igFeed = {}; 3324 let usedWidth = 0; 3325 let slider = null; 3326 $section.on('ig-data', function (ev, feed) { 3327 feed = ev.detail || feed; 3328 igFeed = feed; 3329 if (feed.active && feed.items.length) { 3330 buildSlider(); 3331 } 3332 }); 3333 $(window).on('resize.lpui-auto-clean', onResize); 3334 let timer = null; 3335 function onResize() { 3336 clearTimeout(timer); 3337 timer = window.setTimeout(buildSlider, 50); 3338 } 3339 function getLayout(w, n) { 3340 if (w > 1100) { 3341 if (n > 7) { 3342 return { 3343 type: 'type1', 3344 single: 1, 3345 multi: n, 3346 slides: 3, 3347 slider: n > 9 3348 }; 3349 } 3350 if (n > 5) { 3351 return { 3352 type: 'type1', 3353 single: 2, 3354 multi: n, 3355 slides: 3, 3356 slider: false 3357 }; 3358 } 3359 return { 3360 type: 'type1', 3361 single: n, 3362 multi: n, 3363 slides: 3, 3364 slider: n > 3 3365 }; 3366 } else if (w > 880) { 3367 if (n > 4) { 3368 return { 3369 type: 'type2', 3370 single: 1, 3371 multi: n, 3372 slides: 2.5, 3373 slider: n > 7 3374 }; 3375 } 3376 return { 3377 type: 'type1', 3378 single: n, 3379 multi: n, 3380 slides: 3, 3381 slider: n > 3 3382 }; 3383 } else if (w > 767) { 3384 if (n > 4) { 3385 return { 3386 type: 'type3', 3387 single: 1, 3388 multi: n, 3389 slides: 2, 3390 slider: n > 5 3391 }; 3392 } 3393 return { 3394 type: 'type4', 3395 single: n, 3396 multi: n, 3397 slides: 2, 3398 slider: n > 2 3399 }; 3400 } else if (w > 460) { 3401 return { 3402 type: 'type4', 3403 single: n, 3404 multi: n, 3405 slides: 2, 3406 slider: n > 2 3407 }; 3408 } 3409 return { 3410 type: 'type5', 3411 single: n, 3412 multi: n, 3413 slides: 1, 3414 slider: n > 1 3415 }; 3416 } 3417 function ensureClass($el, className) { 3418 if ($el.hasClass(className)) { 3419 return; 3420 } 3421 $el.addClass(className); 3422 } 3423 function makeSquare($el) { 3424 const el = $el[0]; 3425 el.style.width = ''; 3426 el.style.height = ''; 3427 const rect = el.getBoundingClientRect(); 3428 if (rect.width !== rect.height) { 3429 el.style.width = rect.height + 'px'; 3430 } 3431 } 3432 function buildSlider() { 3433 const cWidth = $container[0].getBoundingClientRect().width; 3434 if (cWidth === usedWidth) { 3435 return; 3436 } 3437 $container.empty();
3438 slider = $('<div class="ig-feed-slider"></div>'); 3439 const items = igFeed.items.slice(0, limit); 3440 const layout = getLayout(cWidth, items.length); 3441 let i = 0; 3442 let slide = null; 3443 while (i < layout.single) { 3444 slide = $(`<div class="slide-single ${layout.type}"></div>`).append(itemTemplate(items[i])).appendTo(slider); 3445 i++; 3446 } 3447 while (i < layout.multi) { 3448 slide = $(`<div class="slide-multi ${layout.type}"></div>`).appendTo(slider); 3449 let slideContent = $('<div class="slide-multi-content"></div>').appendTo(slide); 3450 const lim = i + 4; 3451 while (i < lim && i < layout.multi) { 3452 slideContent.append(itemTemplate(items[i])); 3453 i++; 3454 } 3455 } 3456 $container.append(slider); 3457 if (layout.slider) { 3458 $topPrev.removeClass('hidden-control'); 3459 $topNext.removeClass('hidden-control'); 3460 $bottomPrev.removeClass('hidden-control'); 3461 $bottomNext.removeClass('hidden-control'); 3462 let prev, next; 3463 if ($bottomPrev.parent()[0].getBoundingClientRect().width) { 3464 prev = $bottomPrev; 3465 next = $bottomNext; 3466 } else { 3467 prev = $topPrev; 3468 next = $topNext; 3469 makeSquare($topPrev); 3470 makeSquare($topNext); 3471 } 3472 slider.children().each(function () { 3473 this.style.width = this.getBoundingClientRect().width + 'px'; 3474 }); 3475 slider.slick({ 3476 dots: false, 3477 prevArrow: prev, 3478 nextArrow: next, 3479 slidesToScroll: 1, 3480 infinite: false, 3481 slidesToShow: layout.slides 3482 }); 3483 } else { 3484 ensureClass($topPrev, 'hidden-control'); 3485 ensureClass($topNext, 'hidden-control'); 3486 ensureClass($bottomPrev, 'hidden-control'); 3487 ensureClass($bottomNext, 'hidden-control'); 3488 } 3489 } 3490})('section-6ac4b1a3-e9ab-4274-82f7-d4f776df248d', JSON.parse("{\"resource\":\"agent\",\"useRouterApi\":false,\"companyId\":\"c3076ecb-c2d7-457b-a426-bcf036133f1f\",\"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}}")); 3491} catch(e) { 3492console.log(e); 3493} 3494 3495 var { body } = document; 3496 var globalNav = body.querySelector(':scope > nav'); 3497 var globalSideMenu = body.querySelector(':scope > div.sidemenu'); 3498 3499 document.querySelectorAll('body > .modal .close').forEach(modalCloseBtn => { 3500 modalCloseBtn.addEventListener('click', function() { 3501 window.lpUI.hideClosestModal(modalCloseBtn); 3502 }); 3503 }); 3504 3505 window.addEventListener('click', function() { 3506 document.querySelectorAll('.share-popup').forEach(sharedPopup => { 3507 sharedPopup.style.display = 'none' ; 3508 }); 3509 }); 3510 3511 /* Misc Partials / Addons */ 3512 function initWOW() { 3513 if (wow) { 3514 wow.init(); 3515 wow.scrollHandler(); 3516 setTimeout(function () { 3517 const wowHideStyle = document.getElementById('wow-hide-elements'); 3518 if(wowHideStyle) { 3519 wowHideStyle.disabled = true; 3520 } 3521 }, 1); 3522 } 3523 } 3524 3525 const wowHideElements = document.getElementById('wow-hide-elements'); 3526 if (wowHideElements) { 3527 wowHideElements.disabled = false; 3528 } 3529 3530 var globalLoader = document.getElementById('global-loader'); 3531 if (globalLoader) { 3532 setTimeout(function() { 3533 globalLoader.style.height = "0px"; 3534 window.sessionStorage.setItem('global_loading_displayed', 'yes'); 3535 3536 // Remove global-loader to prevent caching issues with turbolinks 3537 globalLoader.addEventListener('transitionend', 3538 function(e) { 3539 globalLoader.remove(); 3540 initWOW(); 3541 }); 3542 }, 1000); 3543 } else { 3544 initWOW(); 3545 } 3546 3547 /* Generic Navbar Handling */ 3548 globalNav?.querySelectorAll('.hamburger-component').forEach(hamburgerComponent => { 3549 hamburgerComponent.addEventListener('click', function() { 3550 window.lpUI.sideMenuToggle(); 3551 }); 3552 }); 3553 globalSideMenu?.querySelectorAll('.toggle').forEach(toggleEl => { 3554 toggleEl.addEventListener('click', function() { 3555 window.lpUI.sideMenuToggle(); 3556 }); 3557 }); 3558 3559 document.querySelectorAll('body > nav .sub-nav-container > a, body > div.sidemenu .sub-nav-container > a').forEach(linkEl => { 3560 linkEl.addEventListener('click', function(e) { 3561 e.preventDefault(); 3562 e.stopPropagation();
3563 var subNav = linkEl.parentElement.querySelector(':scope > .sub-nav'); 3564 if (subNav && subNav.classList.contains('visible')){ 3565 subNav.classList.remove('visible'); 3566 } else { 3567 globalNav?.querySelectorAll('.sub-nav-container .sub-nav').forEach(globalSubNav => { 3568 globalSubNav.classList.remove('visible'); 3569 }); 3570 globalSideMenu?.querySelectorAll('.sub-nav').forEach(sideMenuSubNav => { 3571 sideMenuSubNav.classList.remove('visible'); 3572 }); 3573 subNav?.classList.add('visible'); 3574 } 3575 }); 3576 }); 3577 window.addEventListener('click', function() { 3578 document.querySelectorAll('nav .sub-nav.visible, .sidemenu .sub-nav.visible').forEach(subNavEl => { 3579 subNavEl.classList.remove('visible'); 3580 }); 3581 }); 3582 3583 } 3584 3585 document.addEventListener('DOMContentLoaded', lpGlobalInit); 3586 3587 </script>
3587 3588 3589
3589<script type="module"> 3590 function selectorExists(selector) { 3591 return document.querySelector(selector) !== null; 3592 } 3593 3594 // Function to initialize the third-party library 3595 function initParoller(selector = '.my-paroller') { 3596 var $parollerElements = $(selector); 3597 if ($parollerElements.length > 0 && typeof $parollerElements.paroller === 'function') { 3598 $parollerElements.paroller(); 3599 } 3600 } 3601 3602 const parollerSelector = '.my-paroller'; 3603 3604 if (selectorExists(parollerSelector)) { 3605 window.luxuryPresence.libs.loadJs(window.luxuryPresence.libs.jsLibsMap.paroller.jsSrc, function() { 3606 initParoller(parollerSelector); 3607 window.luxuryPresence.libs.jsLibsMap.paroller.isLoaded = true; 3608 }); 3609 } 3610 </script>
3610 3611 3612 <!-- Google Tag Manager (noscript) -->
vendor: 80 bytes, lines 3612-3613
3612 3613 <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
3613GTM-T9SFQGHZ
vendor: 107 bytes, lines 3613-3615
3613" 3614 height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> 3615
3615<!-- End Google Tag Manager --> 3616 3617
3617<script 3618 src="https://cdn.luxurypresence.com/scripts/a11y-widget/latest/widget.js" 3619 data-website-id="ff06f655-0c64-45c8-9c55-e8468b4e5303" 3620 3621 defer></script>
vendor: 1 bytes, line 3621
3621
3622<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:'a45fb3b528b2e417',t:'MTc5MTIzNzY1NQ=='};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>
3622<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>
3622 3623</body> 3624</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.