PageSourceSearch

https://cottageliferealty.com/blog

html cottageliferealty.com collected 2026-10-05 22:12:38 UTC 379,862 bytes, 3,756 lines download raw bytes

1<!DOCTYPE html>
2<html class="no-js" lang=en>
3<head>
4    <meta charset="utf-8">
5    <meta http-equiv="x-ua-compatible" content="ie=edge">
6    <meta name="viewport" content="width=device-width, initial-scale=1.0">
7    <meta name="twitter:card" content="summary_large_image">
8    <meta property="og:type" content="website">
9        <title>Georgian Bay, ON Real Estate Blog | Coxworth & Associates</title>
10        <meta property="og:title" content="Georgian Bay, ON Real Estate Blog | Coxworth &amp; Associates">
11        <meta name="twitter:title" content="Georgian Bay, ON Real Estate Blog | Coxworth &amp; Associates">
12        <meta name="description" content="Discover the best deals on Georgian Bay, ON real estate with Coxworth &amp; Associates. Find your dream home in this beautiful waterfront community today!">
13        <meta property="og:description" content="Discover the best deals on Georgian Bay, ON real estate with Coxworth &amp; Associates. Find your dream home in this beautiful waterfront community today!">
14        <meta name="twitter:description" content="Discover the best deals on Georgian Bay, ON real estate with Coxworth &amp; Associates. Find your dream home in this beautiful waterfront community today!">
15        <meta property="og:image" content="https://media-production.lp-cdn.com/cdn-cgi/image/format&#x3D;auto,quality&#x3D;85,fit&#x3D;scale-down,width&#x3D;1920/https://media-production.lp-cdn.com/media/21081fb8-719a-4b32-ae2d-225683c434ee">
16        <meta name="twitter:image" content="https://media-production.lp-cdn.com/cdn-cgi/image/format&#x3D;auto,quality&#x3D;85,fit&#x3D;scale-down,width&#x3D;1920/https://media-production.lp-cdn.com/media/21081fb8-719a-4b32-ae2d-225683c434ee">
17        <meta property="og:url" content="https://cottageliferealty.com/blog">
18        <link rel="canonical" href="https://cottageliferealty.com/blog">
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    <style>@font-face {font-family: 'MercuryDisplayRoman';src: url('https://d1e1jt2fj4r8r.cloudfront.net/fonts/MercuryDisplayRoman/MercuryDisplay-Roman.woff2') format('woff2'),url('https://d1e1jt2fj4r8r.cloudfront.net/fonts/MercuryDisplayRoman/MercuryDisplay-Roman.woff') format('woff');font-weight: 400;font-style: normal;}</style><style>@font-face {font-family: 'BentonSans';src: url('https://d1e1jt2fj4r8r.cloudfront.net/fonts/BentonSans/v3/BentonSans-Regular.woff2') format('woff2'),url('https://d1e1jt2fj4r8r.cloudfront.net/fonts/BentonSans/v3/BentonSans-Regular.woff') format('woff');font-weight: 400;font-style: normal;}@font-face {font-family: 'BentonSans';src: url('https://d1e1jt2fj4r8r.cloudfront.net/fonts/BentonSans/v3/BentonSans-Medium.woff2') format('woff2'),url('https://d1e1jt2fj4r8r.cloudfront.net/fonts/BentonSans/v3/BentonSans-Medium.woff') format('woff');font-weight: 500;font-style: normal;}</style>
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:MercuryDisplayRoman,serif;--global-primary-font-family-short:MercuryDisplayRoman;--global-secondary-font-family:BentonSans,sans-serif;--global-secondary-font-family-short:BentonSans;--global-body-padding:0px;--global-background-color:#fff;--global-body-font-size:16px;--global-h1-font-size:55px;--global-h2-font-size:43px;--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:BentonSans,sans-serif;font-size:16px;}@media (min-width: 768px){body{padding:0px 0px 0px 0px;}}h1,h2,h3,h4,h5,h6,button{font-family:MercuryDisplayRoman,serif;}h1{font-size:55px;}h2{font-size:43px;}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">nav#global-navbar .header .navigation .sub-nav ul a{cursor:pointer;}h1,.lp-h1,h2,.lp-h2,h3,.lp-h3,h4,.lp-h4,h5,.lp-h5{text-transform:uppercase!important;}p{text-transform:none!important;}div#global-sidemenu.sidemenu a,nav#global-navbar a{text-transform:uppercase;}div#global-sidemenu.sidemenu button,nav#global-navbar button{text-transform:uppercase;}nav#global-navbar a{font-weight:400;}.redesign .btn--small{padding:20px 46px;}.lp-btn{padding:20px 46px!important;}button.newsletter-signup__form-item{line-height:1;font-weight:700;}#modal-global-contact-us .contact-form .section-message form .submitButton{padding:14px 20px;}nav#global-navbar.scroll .header a.logo__link img:last-child{display:block!important;}nav#global-navbar.scroll .header a.logo__link img:first-child{display:none!important;}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:#FFF!important;}nav#global-navbar.scroll li.navigation__item a.navigation__link{color:#000!important;}nav#global-navbar.scroll li.navigation__item a.navigation__link:hover{color:#00244A!important;}nav#global-navbar.scroll li.navigation__item a.navigation__link span:after{background-color:#00244A!important;}nav#global-navbar.scroll button.hamburger-component.hamburger{color:#000;}nav#global-navbar.scroll button.hamburger-component.hamburger:hover{color:#00244A;}nav#global-navbar .header .navigation .sub-nav ul a:hover{color:#FFF!important;background-color:#00244A!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:#00244A;}nav#global-navbar.scroll li.navigation__item a.navigation__link span:after{background-color:#00244A;}nav#global-navbar .header{padding-top:5px;padding-bottom:5px;height:auto;}nav#global-navbar .header .logo{max-height:80px;}@media only screen and (min-width:768px){nav#global-navbar .header .logo a.logo__link img{max-height:80px;}}@media (max-width: 768px){nav .header .logo img{max-height:70px!important;}}@media (max-width: 768px){footer#global-footer .footer .info-wrap .type_user{margin-bottom:21px;}}@media (min-width: 1201px){footer#global-footer .footer .info-wrap .type_user{margin-bottom:21px;}}@media (max-width: 768px){footer#global-footer .footer.no_newsletter h3{margin-bottom:26px!important;}}#global-footer .info-wrap-contact_zone h4{line-height:1.8;}@media (max-width: 768px){#global-footer .info-wrap-contact_zone h4{line-height:1.5;}}footer#global-footer a.hvr_animation,footer#global-footer .lp-link{position:relative!important;color:#000!important;-webkit-transition:0.4s;transition:0.4s;}footer#global-footer a.hvr_animation:hover,footer#global-footer .lp-link:hover{color:#00244A!important;}footer#global-footer a.hvr_animation:before,footer#global-footer .lp-link:before,footer#global-footer a.hvr_animation:after,footer#global-footer .lp-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#global-footer a.hvr_animation:before,footer#global-footer .lp-link:before{width:100%!important;background-color:#ccc!important;}footer#global-footer a.hvr_animation:after,footer#global-footer .lp-link:after{width:0%!important;background-color:#00244A!important;}footer#global-footer a.hvr_animation:hover:after,footer#global-footer .lp-link:hover:after{width:100%!important;}
31#global-footer div.footer .info-wrap-contact_zone svg path{fill:#00244A!important;}#global-footer div.footer .info-wrap-contact_title{color:#000!important;}#global-footer div.footer .info-wrap .contact_title{color:#000!important;}@media only screen and (min-width: 769px){#global-footer .footer .info-privacy{border-top:1px solid #00244A!important;}}@media only screen and (max-width: 768px){#global-footer .footer .info-privacy .socials_zone{margin-top:25px;}#global-footer .footer .info-privacy .copy_zone{border-top:1px solid #00244A;}}footer#global-footer .footer .info-privacy .copy_zone a,footer#global-footer .footer .info-privacy .powered_zone a{font-weight:400;}footer#global-footer div.text_footer.first_text_footer div.images_box .img_size{height:100px;}footer .footer .text_footer .images_box{-webkit-align-items:center!important;-webkit-box-align:center!important;-ms-flex-align:center!important;align-items:center!important;}#global-footer .info-wrap-contact_zone h4{line-height:1.8;color:#00244A;}footer .footer.no_newsletter .info-wrap-contact h4{max-width:300px!important;}footer .footer.no_newsletter .info-wrap-contact{padding-left:250px!important;}@media(max-width: 768px){footer .footer.no_newsletter .info-wrap-contact{padding-left:0px!important;}}footer#global-footer .lp-link,.aiAXrc{font-weight:400;}@media only screen and (max-width:1200px){footer#global-footer .info-wrap-contact_link{overflow-wrap:anywhere;font-size:12px;white-space:normal!important;}footer#global-footer .info-wrap-contact_link:before{background-color:transparent;}footer#global-footer .info-wrap-contact_link:after{background-color:transparent;}}@media only screen and (min-width: 376px){footer#global-footer .footer div.type_user div.info-wrap-contact_cell:first-of-type{min-width:380px!important;width:480px!important;}}@media only screen and (max-width: 375px){footer#global-footer .footer div.type_user div.info-wrap-contact_cell:first-of-type{width:100%!important;min-width:unset!important;}}body>div.sidemenu .wrapper{background-image:linear-gradient(to left, rgba(255, 255, 255, 1), rgba(255, 255, 255, .2), rgba(255, 255, 255, 0)),url("https://media-production.lp-cdn.com/media/ce4bb4db-03f7-4201-9ef4-d4ccc9e770ba");-webkit-background-position:center;background-position:center;background-repeat:no-repeat;-webkit-background-size:cover;background-size:cover;background-blend-mode:normal;}body>div.sidemenu .title,body>div.sidemenu .section-options a{padding-right:50px!important;}@media(max-width: 768px){body>div.sidemenu .title,body>div.sidemenu .section-options a{padding-right:20px!important;}}div#global-sidemenu.sidemenu a:hover{color:#00244A!important;}body>div.sidemenu .sub-nav.visible+.main-nav{color:#000!important;}body>div.sidemenu .sub-nav-container .main-nav::after{border-bottom:1px solid #000!important;border-right:1px solid #000!important;}body>div.sidemenu .sub-nav-container .main-nav:hover::after{border-bottom:1px solid #00244A!important;border-right:1px solid #00244A!important;}body>div.sidemenu .sidebar__nav-link{font-size:20px!important;}body>div.sidemenu .sidebar__nav-item{border-bottom:1px solid #ccc!important;}@media (max-width: 768px){body>div.sidemenu .wrapper{background:#FFF!important;}body>div.sidemenu button.toggle{right:16px!important;}body>div.sidemenu .section-options a{font-size:22px!important;line-height:40px!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 h2{font-size:35px!important;}@media only screen and (max-width: 925px){div#modal-global-contact-us .contact-form h2{font-size:35px!important;}}@media (max-width: 768px){#modal-global-contact-us .contact-form .info-zone h4{font-size:25px!important;}div#modal-global-contact-us .contact-form h2{font-size:24px!important;}}#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:uppercase!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:49
310px;}@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;}@media(max-width: 768px){#modal-global-contact-us .contact-form .info-zone_contact_cell{font-size:12px;}}footer#global-footer .lp-link{font-weight:400;}#modal-global-contact-us .contact-form .info-zone_contact_link{font-weight:400;}div.mobile-contact-wrapper .contact-form .lp-btn{background-color:#00244A;border-color:#00244A;color:#FFF;}div.mobile-contact-wrapper .contact-form .lp-btn:hover{background-color:transparent;border-color:#00244A;color:#00244A;}@media (max-width: 768px){footer#global-footer .footer.no_newsletter h3{margin-top:40px;}}footer#global-footer .footer.no_newsletter h3,.contact-form__container .lp-h3{color:#00244A;}.contact-form__inputs-container .custom-select-toggle{text-transform:none;}.contact-form__inputs-container .custom-select-toggle.lp-input--dark{color:#000;text-transform:uppercase!important;}.contact-form__inputs-container .custom-select-toggle.lp-input--dark::after{border-color:#000;}.contact-form__inputs-container .custom-select-item{text-transform:uppercase!important;font-family:var(--global-secondary-font-family);}.contact-form__inputs-container .custom-select-item:hover{background-color:#00244A;color:#fff;}.contact-form__inputs-container .custom-select-content{background-color:#FFF;}.contact-form__inputs-container .lp-input--dark{text-transform:uppercase!important;}@media(max-width: 768px){.contact-form__item textarea.lp-input{height:70px!important;min-height:70px!important;}}@media (max-width: 768px){.lp-socials{-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;}}@media (max-width: 768px){footer .footer .info-privacy .socials_zone li{padding:0 3px 10px 3px!important;}}#modal-global-contact-us .contact-form .socials_zone li:not(:last-child){padding-right:20px!important;}@media (max-width: 768px){#modal-global-contact-us .contact-form .socials_zone li:not(:last-child){padding-right:9px!important;}}.lp-btn{white-space:inherit!important;}@media (max-width: 400px){h2{font-size:28px!important;}h1{font-size:32px!important;}}</style>
32    <style id="wow-hide-elements">.wow{visibility:hidden!important}</style>
33        <style id="page-css">
34            #section-45f448e7-c335-4c5a-9aa7-fd3cc6622af8{color:#fff;--fontColor:#fff;--fontColor_H:0;--fontColor_S:0%;--fontColor_L:100%;--fontColor_A:1;--fontColor_darkenDir:-1;--bgColor:#fff;--bgColor_H:0;--bgColor_S:0%;--bgColor_L:100%;--bgColor_A:1;--bgColor_darkenDir:-1;background-color:#fff;--gradient-color:var(--overlay-color, rgba(0, 0, 0, 0.4));background-image:linear-gradient(var(--gradient-color), var(--gradient-color)),url('https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=1280/https://media-production.lp-cdn.com/media/21081fb8-719a-4b32-ae2d-225683c434ee');background-repeat:no-repeat;-webkit-background-position:center;background-position:center;-webkit-background-size:cover;background-size:cover;}#section-45f448e7-c335-4c5a-9aa7-fd3cc6622af8 .custom-intro{position:relative;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;width:100%;height:600px;-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;}#section-45f448e7-c335-4c5a-9aa7-fd3cc6622af8 .custom-intro .container{z-index:1;text-align:center;max-width:900px;}#section-45f448e7-c335-4c5a-9aa7-fd3cc6622af8 .custom-intro__title{margin-bottom:0px;font-weight:400;margin-bottom:24px;}@media (max-width: 768px){#section-45f448e7-c335-4c5a-9aa7-fd3cc6622af8 .custom-intro__title{font-size:32px;}}@media (max-width: 360px){#section-45f448e7-c335-4c5a-9aa7-fd3cc6622af8 .custom-intro__title{font-size:22px;}}#section-45f448e7-c335-4c5a-9aa7-fd3cc6622af8 .custom-intro__subtitle{font-weight:400;white-space:pre-line;font-size:21px;line-height:1.57;}@media (max-width: 768px){#section-45f448e7-c335-4c5a-9aa7-fd3cc6622af8 .custom-intro__subtitle{font-size:18px;}}#section-45f448e7-c335-4c5a-9aa7-fd3cc6622af8 .description{margin-bottom:15px;}@media (min-width: 960px) and (orientation: landscape){#section-45f448e7-c335-4c5a-9aa7-fd3cc6622af8{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/21081fb8-719a-4b32-ae2d-225683c434ee');}}@media (min-width: 1280px) and (orientation: landscape){#section-45f448e7-c335-4c5a-9aa7-fd3cc6622af8{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/21081fb8-719a-4b32-ae2d-225683c434ee');}}@media (min-width: 1920px) and (orientation: landscape){#section-45f448e7-c335-4c5a-9aa7-fd3cc6622af8{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/21081fb8-719a-4b32-ae2d-225683c434ee');}}@media (min-width: 2560px) and (orientation: landscape){#section-45f448e7-c335-4c5a-9aa7-fd3cc6622af8{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/21081fb8-719a-4b32-ae2d-225683c434ee');}}#section-01ab6531-3f2b-4f85-b398-88e312943c07{color:#000000;--fontColor:#000000;--fontColor_H:0;--fontColor_S:0%;--fontColor_L:0%;--fontColor_A:1;--fontColor_darkenDir:1;--bgColor:#FFFFFF;--bgColor_H:0;--bgColor_S:0%;--bgColor_L:100%;--bgColor_A:1;--bgColor_darkenDir:-1;--section-padding-top:calc(4 / 4 * var(--global-section-padding));--section-padding-bottom:calc(4 / 4 * var(--global-section-padding));background-color:#FFFFFF;}@media (min-width: 768px){#section-01ab6531-3f2b-4f85-b398-88e312943c07 div.blog-list__item-content{padding:2rem;}}#section-01ab6531-3f2b-4f85-b398-88e312943c07 div.blog-list__container a.blog-list__item{background-color:#F6F1F1;color:#000;}#section-01ab6531-3f2b-4f85-b398-88e312943c07 div.blog-list__item-content h4.serif:after{background-color:#00244A;}#section-01ab6531-3f2b-4f85-b398-88e312943c07 div.blog-list__item-content span.link{color:#000;font-weight:400;}#section-01ab6531-3f2b-4f85-b398-88e312943c07 div.blog-list__item-content span.link:before{background-color:#ccc;}#section-01ab6531-3f2b-4f85-b398-88e312943c07 div.blog-list__item-content span.link:after{background-color:#00244A;}#section-01ab6531-3f2b-4f85-b398-88e312943c07 .blog-list{padding:120px 0;position:relative;z-index:1;}#section-01ab6531-3f2b-4f85-b398-88e312943c07 .blog-list .center-items{-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;}#section-01ab6531-3f2b-4f85-b398-88e312943c07 .blog-list__container{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;justify-content:space-between;-webkit-box-flex-wrap:wrap;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-align-items:stretch;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;max-width:1282px;}@media(max-width: 768px){#section-01ab6531-3f2b-4f85-b398-88e312943c07 .blog-list__container{padding:0;}}#section-01ab6531-3f2b-4f85-b398-88e312943c07 .blog-list__container.hide-date .blog-list__item-date{display:none;}#section-01ab6531-3f2b-4f85-b398-88e312943c07 .blog-list__container.hide-author .blog-list__item-author{display:none;}#section-01ab6531-3f2b-4f85-b398-88e312943c07 .blog-list__container.hide-author .blog-list__item-date{margin-left:0;padding-left:0;border-left:none;}#section-01ab6531-3f2b-4f85-b398-88e312943c07 .blog-list__container .blog-list__item{background-color:#fff;}#section-01ab6531-3f2b-4f85-b398-88e312943c07 .blog-list__section-title,#section-01ab6531-3f2b-4f85-b398-88e312943c07 .blog-list .description{text-align:center;margin-bottom:50px;max-width:75%;margin-left:auto;margin-right:auto;}@media(max-width: 768px){#section-01ab6531-3f2b-4f85-b398-88e312943c07 .blog-list__section-title,#section-01ab6531-3f2b-4f85-b398-88e312943c07 .blog-list .description{max-width:100%;}}#section-01ab6531-3f2b-4f85-b398-88e312943c07 .blog-list__item{width:calc(50% - 18px);margin-bottom:34px;}@media(max-width: 768px){#section-01ab6531-3f2b-4f85-b398-88e312943c07 .blog-list__item{width:100%;margin-bottom:32px;}}#section-01ab6531-3f2b-4f85-b398-88e312943c07 .blog-list__item:nth-child(2n) .blog-list__item-content h4:after{right:-116px;left:60%;}@media(max-width: 768px){#section-01ab6531-3f2b-4f85-b398-88e312943c07 .blog-list__item:nth-child(2n) .blog-list__item-content h4:after{right:-25px;left:40%;}}#section-01ab6531-3f2b-4f85-b398-88e312943c07 .blog-list__item-image{padding-top:70.16%;position:relative;background-color:#808080;}#section-01ab6531-3f2b-4f85-b398-88e312943c07 .blog-list__item-image img{position:absolute;object-fit:cover;height:100%;width:100%;top:0;z-index:0;}#section-01ab6531-3f2b-4f85-b398-88e312943c07 .blog-list__item-content{padding:46px 36px;}@media(max-width: 768px){#section-01ab6531-3f2b-4f85-b398-88e312943c07 .blog-list__item-content{padding:40px 25px;}}#section-01ab6531-3f2b-4f85-b398-88e312943c07 .blog-list__item-content h4{margin:0 0 36px;position:relative;}@media(max-width: 768px){#section-01ab6531-3f2b-4f85-b398-88e312943c07 .blog-list__item-content h4{margin:0 0 38px;}}#section-01ab6531-3f2b-4f85-b398-88e312943c07 .blog-list__item-content h4:after{content:'';position:absolute;bottom:-17px;left:-116px;right:60%;height:1px;background-color:#c0c0c0;}@media(max-width: 768px){#section-01ab6531-3f2b-4f85-b398-88e312943c07 .blog-list__item-content h4:after{right:40%;left:-25px;bottom:-21px;}}#section-01ab6531-3f2b-4f85-b398-88e312943c07 .blog-list__item-content .link{display:inline-block;margin-top:36px;text-transform:uppercase;font-size:14px;}#section-01ab6531-3f2b-4f85-b398-88e312943c07 .blog-list__item-details{list-style-type:none;display:block;margin:0 0 9px;}#section-01ab6531-3f2b-4f85-b398-88e312943c07 .blog-list__item-details >li{display:inline-block;position:relative;font-size:14px;font-weight:700;line-height:1.4;text-transform:uppercase;}#section-01ab6531-3f2b-4f85-b398-88e312943c07 .blog-list__item-details >li+li{margin-left:3px;padding-left:5px;border-left:2px solid;}#section-01ab6531-3f2b-4f85-b398-88e312943c07 .search-container{margin-bottom:48px;}@media (max-width: 768px){#section-01ab6531-3f2b-4f85-b398-88e312943c07 .search-container{margin-bottom:32px;}}#section-01ab6531-3f2b-4f85-b398-88e312943c07 .search-container__row{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:flex-end;-webkit-box-align:flex-end;-ms-flex-align:flex-end;align-items:flex-end;gap:12px;}#section-01ab6531-3f2b-4f85-b398-88e312943c07 .search-container__row:has(.lp-btn.lp-i--chevron-down){-webkit-box-pack:justify;-webkit-justify-content:space-between;justify-content:space-between;}@media (max-width: 768px){#section-01ab6531-3f2b-4f85-b398-88e312943c07 .search-container__row{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}}#section-01ab6531-3f2b-4f85-b398-88e312943c07 .input-container{width:100%;max-width:485px;position:relative;}@media (max-width: 1024px){#section-01ab6531-3f2b-4f85-b398-88e312943c07 .input-container{max-width:350px;}}@media (max-width: 768px){#section-01ab6531-3f2b-4f85-b398-88e312943c07 .input-container{max-width:100%;}}#section-01ab6531-3f2b-4f85-b398-88e312943c07 .input-container .lp-input{height:50px;width:100%;}#section-01ab6531-3f2b-4f85-b398-88e312943c07 .input-container .search-icon{position:absolute;top:50%;right:0;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);}#section-01ab6531-3f2b-4f85-b398-88e312943c07 .empty-results{text-align:center;display:none;}#section-01ab6531-3f2b-4f85-b398-88e312943c07 .empty-results.visible{display:block;}#section-01ab6531-3f2b-4f85-b398-88e312943c07 .filter-container{padding-top:16px;display:none;}#section-01ab6531-3f2b-4f85-b398-88e312943c07 .category-cell{margin:0 8px 8px 0;border-width:2px;padding:10px 15px;opacity:.3;position:relative;cursor:pointer;}#section-01ab6531-3f2b-4f85-b398-88e312943c07 .category-cell.active{opacity:1;}@media(hover: hover) and (pointer: fine){#section-01ab6531-3f2b-4f85-b398-88e312943c07 .category-cell:hover{opacity:1;}}#section-01ab6531-3f2b-4f85-b398-88e312943c07 .lp-btn.lp-i--chevron-down{display:none;gap:10px;-webkit-flex-direction:row-reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse;-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;}@media (max-width: 768px){#section-01ab6531-3f2b-4f85-b398-88e312943c07 .lp-btn.lp-i--chevron-down{width:100%;}}#section-01ab6531-3f2b-4f85-b398-88e312943c07 .lp-btn.lp-i--chevron-down:before{-webkit-transition:-webkit-transform .3s;transition:transform .3s;}#section-01ab6531-3f2b-4f85-b398-88e312943c07 .lp-btn.lp-i--chevron-down.active:before{-webkit-transform:scaleY(-1);-moz-transform:scaleY(-1);-ms-transform:scaleY(-1);transform:scaleY(-1);}#section-01ab6531-3f2b-4f85-b398-88e312943c07 .category{position:absolute;top:0;left:0;background-color:#fff;color:#000;padding:8px 34px;font-size:14px;font-weight:700;line-height:24px;letter-spacing:1.5px;text-transform:uppercase;z-index:2;}#section-01ab6531-3f2b-4f85-b398-88e312943c07 h1{color:#00244A;}#section-01ab6531-3f2b-4f85-b398-88e312943c07 h2{color:#00244A;}#section-01ab6531-3f2b-4f85-b398-88e312943c07 h3{color:#00244A;}#section-01ab6531-3f2b-4f85-b398-88e312943c07 p{color:#000000;}#section-01ab6531-3f2b-4f85-b398-88e312943c07>div:last-child{padding-top:calc(4 / 4 * var(--global-section-padding))!important;padding-bottom:calc(4 / 4 * var(--global-section-padding))!important;}#section-910a61ad-2067-4b52-a160-61bbac832465{color:#FFFFFF;--fontColor:#FFFFFF;--fontColor_H:0;--fontColor_S:0%;--fontColor_L:100%;--fontColor_A:1;--fontColor_darkenDir:-1;--bgColor:#00244A;--bgColor_H:211;--bgColor_S:100%;--bgColor_L:15%;--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:#00244A;}#section-910a61ad-2067-4b52-a160-61bbac832465 input.lp-input--light{color:#FFF;border-color:#FFF;}#section-910a61ad-2067-4b52-a160-61bbac832465 input.lp-input--light:-webkit-autofill{border:1px solid#FFF;-webkit-text-fill-color:#FFF;}#section-910a61ad-2067-4b52-a160-61bbac832465 h2:before{content:"Newsletter";font-family:var(--global-secondary-font-family);
34display:block;font-size:16px;letter-spacing:4px;text-transform:uppercase;margin-bottom:15px;color:#917035;}#section-910a61ad-2067-4b52-a160-61bbac832465 .newsletter-signup{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;}@media (max-width: 768px){#section-910a61ad-2067-4b52-a160-61bbac832465 .newsletter-signup{min-height:80vh;}#section-910a61ad-2067-4b52-a160-61bbac832465 .newsletter-signup .lp-container-custom{padding:0 25px;}}#section-910a61ad-2067-4b52-a160-61bbac832465 .newsletter-signup__form{margin:0;}#section-910a61ad-2067-4b52-a160-61bbac832465 .newsletter-signup__form.success .newsletter-signup__form-container{display:none;}#section-910a61ad-2067-4b52-a160-61bbac832465 .newsletter-signup__form.success .success-block{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}#section-910a61ad-2067-4b52-a160-61bbac832465 .newsletter-signup__inputs-container{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;}@media (max-width: 768px){#section-910a61ad-2067-4b52-a160-61bbac832465 .newsletter-signup__inputs-container{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}}#section-910a61ad-2067-4b52-a160-61bbac832465 .newsletter-signup__form-container{position:relative;z-index:1;}@media (max-width: 768px){#section-910a61ad-2067-4b52-a160-61bbac832465 .newsletter-signup__form-container .lp-h2{margin-bottom:32px;}}@media (max-width: 768px){#section-910a61ad-2067-4b52-a160-61bbac832465 .newsletter-signup__form-container .lp-text--subtitle{margin-bottom:32px;}}#section-910a61ad-2067-4b52-a160-61bbac832465 .newsletter-signup__form-item +.newsletter-signup__form-item{margin-left:16px;}@media (max-width: 768px){#section-910a61ad-2067-4b52-a160-61bbac832465 .newsletter-signup__form-item +.newsletter-signup__form-item{margin-left:0px;margin-top:32px;}}@media (min-width: 769px){#section-910a61ad-2067-4b52-a160-61bbac832465 .newsletter-signup__form-item.lp-input{padding-top:0;padding-bottom:0;width:250px;}}#section-910a61ad-2067-4b52-a160-61bbac832465 .newsletter-signup__form-item.lp-btn{text-transform:uppercase;font-weight:700;}@media (min-width: 769px){#section-910a61ad-2067-4b52-a160-61bbac832465 .newsletter-signup__form-item.lp-btn{width:200px;}}#section-910a61ad-2067-4b52-a160-61bbac832465 .newsletter-signup .success-block{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;visibility:visible;opacity:1;z-index:2;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:none;text-align:center;}#section-910a61ad-2067-4b52-a160-61bbac832465 .newsletter-signup .success-block.hide{display:none;}#section-910a61ad-2067-4b52-a160-61bbac832465 .lp-text--subtitle{margin-left:auto;margin-right:auto;text-transform:none;}#section-910a61ad-2067-4b52-a160-61bbac832465 .lp-h-pot{max-width:1px;}#section-910a61ad-2067-4b52-a160-61bbac832465 .lp-title-group{max-width:unset;padding:0 20px;}#section-910a61ad-2067-4b52-a160-61bbac832465 input:-webkit-autofill,#section-910a61ad-2067-4b52-a160-61bbac832465 input:-webkit-autofill:hover,#section-910a61ad-2067-4b52-a160-61bbac832465 input:-webkit-autofill:focus,#section-910a61ad-2067-4b52-a160-61bbac832465 input:-webkit-autofill:active{-webkit-text-fill-color:var(--fontColor);-webkit-box-shadow:0 0 0px 1000px var(--bgColor) inset;-webkit-transition:background-color 5000s ease-in-out 0s;transition:background-color 5000s ease-in-out 0s;}#section-910a61ad-2067-4b52-a160-61bbac832465 .lp-disclaimer{max-width:730px;margin:20px auto 0 auto;}#section-910a61ad-2067-4b52-a160-61bbac832465 h1{color:#FFFFFF;}#section-910a61ad-2067-4b52-a160-61bbac832465 h2{color:#FFFFFF;}#section-910a61ad-2067-4b52-a160-61bbac832465 h3{color:#FFFFFF;}#section-910a61ad-2067-4b52-a160-61bbac832465 p{color:#FFFFFF;}#section-910a61ad-2067-4b52-a160-61bbac832465>div:last-child{padding-top:calc(4 / 4 * var(--global-section-padding))!important;padding-bottom:calc(4 / 4 * var(--global-section-padding))!important;}#section-910a61ad-2067-4b52-a160-61bbac832465 input.lp-input--light::-webkit-input-placeholder{color:#FFF;}#section-910a61ad-2067-4b52-a160-61bbac832465 input.lp-input--light::-moz-placeholder{color:#FFF;}#section-910a61ad-2067-4b52-a160-61bbac832465 input.lp-input--light:-ms-input-placeholder{color:#FFF;}#section-910a61ad-2067-4b52-a160-61bbac832465 input.lp-input--light::placeholder{color:#FFF;}#section-56a0f81a-5721-42c1-ad3c-7b29258fa8bd{color:#ffffff;--fontColor:#ffffff;--fontColor_H:0;--fontColor_S:0%;--fontColor_L:100%;--fontColor_A:1;--fontColor_darkenDir:-1;--bgColor:#fff;--bgColor_H:0;--bgColor_S:0%;--bgColor_L:100%;--bgColor_A:1;--bgColor_darkenDir:-1;background-color:#fff;--gradient-color:var(--overlay-color, rgba(0, 0, 0, 0.30));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/35e9cf1d-8290-489e-b79a-5c24feee416f');background-repeat:no-repeat;-webkit-background-position:center;background-position:center;-webkit-background-size:cover;background-size:cover;}#section-56a0f81a-5721-42c1-ad3c-7b29258fa8bd div.redesign.work-with-us div.container{max-width:1000px;}#section-56a0f81a-5721-42c1-ad3c-7b29258fa8bd div.redesign.work-with-us h2:after{background-color:#FFF;}#section-56a0f81a-5721-42c1-ad3c-7b29258fa8bd.parallax-enabled{-webkit-clip-path:polygon(0px 0px, 100% 0%, 100% 100%, 0% 100%);clip-path:polygon(0px 0px, 100% 0%, 100% 100%, 0% 100%);}#section-56a0f81a-5721-42c1-ad3c-7b29258fa8bd.parallax-enabled>div.video-wrapper{position:fixed;left:0;top:0;width:100vw;height:100vh;z-index:-9999;}#section-56a0f81a-5721-42c1-ad3c-7b29258fa8bd.parallax-enabled .work-with-us:before{display:block;content:'';left:0;top:0;width:100%;
34background:var(--sectionBackground) center no-repeat;-webkit-background-size:cover;background-size:cover;position:fixed;z-index:-1;height:100%;}#section-56a0f81a-5721-42c1-ad3c-7b29258fa8bd .redesign.work-with-us{position:relative;color:var(--fontColor, #ffffff);}#section-56a0f81a-5721-42c1-ad3c-7b29258fa8bd .redesign.work-with-us .container{text-align:center;max-width:750px;min-height:689px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding-top:50px;padding-bottom:50px;position:relative;z-index:1;}@media (max-width: 768px){#section-56a0f81a-5721-42c1-ad3c-7b29258fa8bd .redesign.work-with-us .container{min-height:auto;padding-top:100px;padding-bottom:100px;}}#section-56a0f81a-5721-42c1-ad3c-7b29258fa8bd .redesign.work-with-us h2{position:relative;padding-bottom:28px;margin:0 0 30px;}@media(max-width: 768px){#section-56a0f81a-5721-42c1-ad3c-7b29258fa8bd .redesign.work-with-us h2{padding-bottom:40px;}}#section-56a0f81a-5721-42c1-ad3c-7b29258fa8bd .redesign.work-with-us h2:after{content:'';position:absolute;bottom:0;left:50%;margin-left:-55px;width:110px;height:1px;background-color:var(--fontColor, #ffffff);}#section-56a0f81a-5721-42c1-ad3c-7b29258fa8bd .redesign.work-with-us .description{margin:0 0 30px;}@media(max-width: 768px){#section-56a0f81a-5721-42c1-ad3c-7b29258fa8bd .redesign.work-with-us .description{margin-bottom:40px;}}#section-56a0f81a-5721-42c1-ad3c-7b29258fa8bd .redesign.work-with-us .btn-container{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;gap:23px;margin-top:32px;}@media(max-width: 560px){#section-56a0f81a-5721-42c1-ad3c-7b29258fa8bd .redesign.work-with-us .btn-container{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:10px;}}@media (min-width: 960px) and (orientation: landscape){#section-56a0f81a-5721-42c1-ad3c-7b29258fa8bd{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/35e9cf1d-8290-489e-b79a-5c24feee416f');}}@media (min-width: 1280px) and (orientation: landscape){#section-56a0f81a-5721-42c1-ad3c-7b29258fa8bd{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/35e9cf1d-8290-489e-b79a-5c24feee416f');}}@media (min-width: 1920px) and (orientation: landscape){#section-56a0f81a-5721-42c1-ad3c-7b29258fa8bd{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/35e9cf1d-8290-489e-b79a-5c24feee416f');}}@media (min-width: 2560px) and (orientation: landscape){#section-56a0f81a-5721-42c1-ad3c-7b29258fa8bd{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/35e9cf1d-8290-489e-b79a-5c24feee416f');}}#section-1ae84a2f-352a-40df-9967-03972ee58fc7{color:rgba(0, 0, 0, 1);--fontColor:rgba(0, 0, 0, 1);--fontColor_H:0;--fontColor_S:0%;--fontColor_L:0%;--fontColor_A:1;--fontColor_darkenDir:1;--bgColor:rgba(255, 255, 255, 1);--bgColor_H:0;--bgColor_S:0%;--bgColor_L:100%;--bgColor_A:1;--bgColor_darkenDir:-1;background-color:rgba(255, 255, 255, 1);}#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .ig-feed{padding:80px 0;}#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .title{margin:0 20px 0 0;}#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .instagram-link{display:block;margin:0 20px 0 0;color:var(--global-primary-font-color);}#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .instagram-link .instagram-name{display:inline;margin:0;}#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .title+.instagram-link{margin-top:5px;}#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .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-1ae84a2f-352a-40df-9967-03972ee58fc7 .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-1ae84a2f-352a-40df-9967-03972ee58fc7 .follow-button{margin:20px 0 0 0;display:block;}#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .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-1ae84a2f-352a-40df-9967-03972ee58fc7 .nav-button.slick-disabled{opacity:0.6;pointer-events:none;cursor:default;}#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .nav-button:not(.slick-disabled):hover{background-color:#1a1a1a;border-color:#1a1a1a;color:#fff;}#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .top-nav-prev{margin-left:30px;}#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .top-nav-next{margin-left:10px;}#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .hidden-control{display:none;}#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .slide-single,#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .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-1ae84a2f-352a-40df-9967-03972ee58fc7 .slide-single:first-child,#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .slide-multi:first-child{margin-left:auto;}#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .slide-single:last-child,#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .slide-multi:last-child{margin-right:auto;}#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .slide-single.type2,#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .slide-multi.type2{width:calc(100% / 5 * 2);}#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .slide-single.type3,#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .slide-multi.type3{width:calc(100% / 2);}#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .slide-single.type4,#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .slide-multi.type4{width:calc(100% / 2);}#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .slide-single.type5,#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .slide-multi.type5{width:100%;}@media (max-width: 440px){#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .ig-feed-container{padding:0;width:100%;}}#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .ig-feed-feed{width:calc(100% + 20px);position:relative;left:-10px;overflow:hidden;}#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .ig-feed-slider{width:100%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .ig-feed-item__img{position:absolute;left:-1px;top:-1px;bottom:-1px;right:-1px;background:center/cover no-repeat;}#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .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-1ae84a2f-352a-40df-9967-03972ee58fc7 .ig-feed-item:hover .ig-feed-item__info{opacity:1;}#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .ig-feed-item__caption{text-overflow:ellipsis;-webkit-line-clamp:4;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;}#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .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-1ae84a2f-352a-40df-9967-03972ee58fc7 .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-1ae84a2f-352a-40df-9967-03972ee58fc7 .ig-feed-item:hover .video-icon{opacity:0;}#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .slide-single .ig-feed-item__info{padding:15%;}#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .slide-single .ig-feed-item__caption{-webkit-line-clamp:7;}#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .ig-feed-item{background-color:var(--tileColor, #000);display:block;width:100%;padding-bottom:125%;overflow:hidden;position:relative;}#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .slide-multi::before{content:'';display:block;width:100%;padding-bottom:125%;}#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .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-1ae84a2f-352a-40df-9967-03972ee58fc7 .slide-multi-content .ig-feed-item{width:calc(50% - 10px);padding-bottom:calc(62.5% - 12.5px);}#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .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-1ae84a2f-352a-40df-9967-03972ee58fc7 .bottom-controls{width:100%;display:none;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;}#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .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-1ae84a2f-352a-40df-9967-03972ee58fc7 .bottom-nav-button.slick-disabled{opacity:0.6;pointer-events:none;cursor:default;}@media (max-width: 767px){#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .top-right,#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .top-left{width:100%;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;}#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .title,#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .instagram-link{margin-right:0;text-align:center;}#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .top-nav-prev,#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .top-nav-next{display:none;}#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .bottom-controls{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}}#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .ig-feed{display:none;}#section-1ae84a2f-352a-40df-9967-03972ee58fc7 .has-data .ig-feed{display:block;}#section-1ae84a2f-352a-40df-9967-03972ee58fc7.has-data .ig-feed,#section-1ae84a2f-352a-40df-9967-03972ee58fc7#section-temp .ig-feed{display:block;}#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:#fff;color:#000;--fontColor:#000;--fontColor_H:0;--fontColor_S:0%;--fontColor_L:0%;--fontColor_A:1;--fontColor_darkenDir:1;--bgColor:#fff;--bgColor_H:0;--bgColor_S:0%;--bgColor_L:100%;--bgColor_A:1;--bgColor_darkenDir:-1;}body>div.sidemenu{background-color:transparent;}body>div.sidemenu .wrapper{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);list-style:none;}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(--fontColor, #fff);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, #7a7a7a);}@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>
34div.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;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column-reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse;}body>div.sidemenu .sub-nav-container:hover .main-nav:after{border-bottom:2px solid var(--fontColor, #7a7a7a);border-right:2px solid var(--fontColor, #7a7a7a);}body>div.sidemenu .sub-nav-container .main-nav{position:relative;display:inline-block;}body>div.sidemenu .sub-nav-container .main-nav:after{content:'';display:inline-block;position:relative;width:8px;height:8px;margin-left:25px;-webkit-transform:rotate(45deg) translateX(-150%);-moz-transform:rotate(45deg) translateX(-150%);-ms-transform:rotate(45deg) translateX(-150%);transform:rotate(45deg) translateX(-150%);border-bottom:2px solid var(--fontColor, #fff);border-right:2px solid var(--fontColor, #fff);top:0%;bottom:auto;left:auto;-webkit-transition:0.5s all ease;transition:0.5s all ease;background-color:transparent;}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:400px;}body>div.sidemenu .sub-nav.visible+.main-nav{color:#7a7a7a;}body>div.sidemenu .sub-nav.visible+.main-nav:after{margin-left:40px;border-bottom:2px solid var(--fontColor, #7a7a7a);border-right:2px solid var(--fontColor, #7a7a7a);}body>div.sidemenu .sub-nav 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:#fff;color:#000000;--fontColor:#000000;--fontColor_H:0;--fontColor_S:0%;--fontColor_L:0%;--fontColor_A:1;--fontColor_darkenDir:1;--bgColor:#fff;--bgColor_H:0;--bgColor_S:0%;--bgColor_L:100%;--bgColor_A:1;--bgColor_darkenDir:-1;--greyColor:hsla(
35var(--fontColor_H),
36var(--fontColor_S),
37calc(var(--fontColor_L) + (50% - var(--fontColor_L)) * 0.445),
38var(--fontColor_A));}footer .redesign .inp--dark-bg input{color:var(--fontColor);border-color:hsla(
39      var(--fontColor_H),
40      var(--fontColor_S),
41      calc(var(--fontColor_L) + (50% - var(--fontColor_L)) * 0.445),
42      var(--fontColor_A));}footer .redesign .inp--dark-bg input:hover{border-color:var(--fontColor);}footer .redesign .inp+.inp{margin-top:24px;}footer .redesign .btn--primary-light{border-color:var(--fontColor);color:var(--fontColor);}footer .redesign .btn--primary-light:hover{background-color:var(--fontColor);color:var(--bgColor);}footer.is-background-color-light .redesign .btn--primary-light{border-width:1px;}footer .redesign .socials--grey{-webkit-box-pack:end;-ms-flex-pack:end;-webkit-justify-content:flex-end;justify-content:flex-end;}footer .redesign .socials--grey .socials__link{background-color:hsla(
43      var(--bgColor_H),
44      var(--bgColor_S),
45      calc(var(--bgColor_L) + (50% - var(--bgColor_L)) * 0.15),
46      var(--bgColor_A));color:var(--greyColor);}
46footer .redesign .socials--grey .socials__link svg{fill:var(--greyColor);}footer .redesign .socials--grey .socials__link:hover{background-color:hsla(
47        var(--bgColor_H),
48        var(--bgColor_S),
49        calc(var(--bgColor_L) + (50% - var(--bgColor_L)) * 0.4),
50        var(--bgColor_A));color:var(--fontColor);}footer .redesign .socials--grey .socials__link:hover svg{fill:var(--fontColor);}footer .redesign.footer .grey-text{color:var(--fontColor);}footer .footer{position:relative;padding-top:60px;padding-bottom:30px;}@media (max-width: 560px){footer .footer{padding-top:10px;}}@media (max-width: 500px){footer .footer{padding-bottom:70px;}}footer .footer .text_content_wrap p{margin-bottom:15px;}footer .footer .text_content_wrap p:last-of-type{margin-bottom:0;}footer .footer .container{max-width:1440px;}@media (max-width: 768px){footer .footer .container{padding-left:25px;padding-right:25px;}}@media (max-width: 560px){footer .footer .container{padding-left:20px;padding-right:20px;}}footer .footer h3{margin:0 0 15px 0;}footer .footer h5{text-transform:capitalize;}footer .footer .info-wrap{margin-bottom:40px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-flex-wrap:wrap;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;}footer .footer .info-wrap .agent_box{width:70%;}@media (max-width: 1280px){footer .footer .info-wrap .agent_box{width:50%;}}@media (max-width: 768px){footer .footer .info-wrap .agent_box{width:100%;}}footer .footer .info-wrap .newsletter_box{width:30%;}@media (max-width: 1280px){footer .footer .info-wrap .newsletter_box{width:50%;}}@media (max-width: 768px){footer .footer .info-wrap .newsletter_box{width:100%;}}footer .footer .info-wrap .newsletter_box--padding{padding-top:44px;}@media (max-width: 768px){footer .footer .info-wrap .newsletter_box--padding{padding-top:0;}}footer .footer .info-wrap .newsletter_box .contact_title{margin-bottom:13px;line-height:1.6;}@media (max-width: 768px){footer .footer .info-wrap .newsletter_box .info-wrap-contact_cell{margin-bottom:0;padding-left:0;}}@media (max-width: 768px){footer .footer .info-wrap .newsletter_box .icon_text{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-bottom:22px;position:relative;}footer .footer .info-wrap .newsletter_box .icon_text i{position:relative;width:30px;margin-right:20px;}footer .footer .info-wrap .newsletter_box .icon_text .contact_title{margin-bottom:0;}}@media (max-width: 768px){footer .footer .info-wrap .newsletter_box .info-wrap-contact_zone{margin-bottom:0;}}footer .footer .info-wrap-contact{position:relative;}footer .footer .info-wrap-contact_zone{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-flex-wrap:wrap;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:justify;-webkit-justify-content:space-between;justify-content:space-between;margin-bottom:39px;}@media (max-width: 768px){footer .footer .info-wrap-contact_zone{margin-bottom:21px;}footer .footer .info-wrap-contact_zone:last-child{margin-bottom:51px;}}footer .footer .info-wrap-contact_zone i{position:absolute;left:0;display:block;}footer .footer .info-wrap-contact_zone i svg path{fill:currentColor;}footer .footer .info-wrap-contact_zone h4{margin:0 0 13px 0;width:100%;}footer .footer .info-wrap-contact_cell{position:relative;padding-left:50px;width:400px;font-size:14px;text-transform:uppercase;font-weight:bold;letter-spacing:1.5px;}@media (max-width: 1280px){footer .footer .info-wrap-contact_cell:first-of-type{margin-bottom:21px;}}footer .footer .info-wrap-contact_cell .contact_title{line-height:1;margin-bottom:5px;}footer .footer .info-wrap-contact_link{color:var(--greyColor);position:relative;}@media (max-width: 560px){footer .footer .info-wrap-contact_link{letter-spacing:0;}}footer .footer .hvr_animation{position:relative;-webkit-text-decoration:none!important;text-decoration:none!important;}footer .footer .hvr_animation:after{content:'';position:absolute;
50left:0;bottom:0;width:0%;height:1px;background:var(--greyColor);-webkit-transition:.3s linear;transition:.3s linear;}footer .footer .hvr_animation:hover:after{width:100%;}footer .footer .hvr_animation.underlined:after{width:100%;}footer .footer .hvr_animation.underlined:hover:after{width:0%;}footer .footer .form-content{padding:0!important;}footer .footer .form-content label{color:var(--fontColor);text-transform:none;letter-spacing:1;}footer .footer .form-content input{padding:2px 24px 2px 0;}footer .footer .form-content .subscribe_btn{margin-top:20px;position:relative;}footer .footer .form-content .subscribe_btn i{font-size:18px;position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%, -50%);-moz-transform:translate(-50%, -50%);-ms-transform:translate(-50%, -50%);transform:translate(-50%, -50%);opacity:0;}footer .footer .form-content.success i{opacity:1;}footer .footer .form-content.success .subscribe_btn span{opacity:0;}footer .footer .form-content.success .hide{opacity:0;}footer .footer .form-content.success .hide +span{opacity:1;}footer .footer .text_footer{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;width:100%;margin-bottom:39px;}@media (max-width: 1280px){footer .footer .text_footer{-webkit-box-flex-wrap:wrap;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;}}@media (max-width: 560px){footer .footer .text_footer{text-align:center;}}footer .footer .text_footer p{white-space:normal;}footer .footer .text_footer .images_box{max-width:186px;width:100%;margin-right:43px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;justify-content:space-between;}@media (max-width: 560px){footer .footer .text_footer .images_box{margin:0 auto 20px auto;}}@media (max-width: 1280px){footer .footer .text_footer .img_size{margin-bottom:20px;}}@media (max-width: 560px){footer .footer .text_footer .img_size{margin-bottom:0;}}footer .footer .text_footer .img_size img{width:100%;height:100%;object-fit:contain;}footer .footer .first_text_footer .img_size{width:100%;height:63px;}footer .footer .first_text_footer .img_size img{width:100%;height:100%;object-fit:contain;}@media (max-width: 768px){footer .footer .first_text_footer{margin-bottom:51px;}}footer .footer .second_text_footer .first_img_size{width:45px;height:45px;margin-right:15px;}footer .footer .second_text_footer .second_img_size{width:100px;height:45px;}@media (max-width: 560px){footer .footer .second_text_footer{margin-bottom:21px;}}footer .footer .info-privacy{padding-top:45px;padding-bottom:30px;border-top:1px solid hsla(
51        var(--bgColor_H),
52        var(--bgColor_S),
53        calc(var(--bgColor_L) + (50% - var(--bgColor_L)) * 0.55),
54        var(--bgColor_A));}@media (max-width: 768px){footer .footer .info-privacy{padding-top:0;border-top:none;}}footer .footer .info-privacy__row{-webkit-box-flex-wrap:wrap;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;}footer .footer .info-privacy .copy_zone{font-size:18px;}@media (min-width: 1350px){footer .footer .info-privacy .copy_zone{text-align:center;}}@media (min-width: 1281px){footer .footer .info-privacy .copy_zone{padding-top:8px;padding-bottom:8px;}}@media (max-width: 768px){footer .footer .info-privacy .copy_zone{text-align:center;margin-bottom:10px;padding-top:45px;border-top:1px solid hsla(
55            var(--bgColor_H),
56            var(--bgColor_S),
57            calc(var(--bgColor_L) + (50% - var(--bgColor_L)) * 0.55),
58            var(--bgColor_A));}}footer .footer .info-privacy .copy_zone a{color:var(--greyColor);}footer .footer .info-privacy .powered_zone{font-size:18px;}@media (min-width: 1281px){footer .footer .info-privacy .powered_zone{padding-top:8px;padding-bottom:8px;}}@media (max-width: 1280px){footer .footer .info-privacy .powered_zone{text-align:center;}}@media (max-width: 768px){footer .footer .info-privacy .powered_zone{text-align:center;margin-bottom:24px;}}footer .footer .info-privacy .powered_zone a{color:var(--greyColor);}@media (min-width: 1281px){footer .footer .info-privacy .socials_zone{-webkit-box-flex-wrap:nowrap;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap;}}@media (max-width: 1280px){footer .footer .info-privacy .socials_zone{width:100%;margin-top:20px;-webkit-box-pack:start;-ms-flex-pack:start;
58-webkit-justify-content:flex-start;justify-content:flex-start;}}@media (max-width: 768px){footer .footer .info-privacy .socials_zone{-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;margin-top:0;margin-bottom:20px;}footer .footer .info-privacy .socials_zone li{padding:0 7px 10px 7px;}}footer .footer.one_contact .type_user{margin-bottom:73px;}@media (max-width: 768px){footer .footer.one_contact .type_user{margin-bottom:51px;}}footer .footer.no_newsletter h3{margin-bottom:46px;}footer .footer.no_newsletter .newsletter_box{display:none;}footer .footer.no_newsletter .info-wrap-contact{width:calc(70% + 230px);width:100%;padding-left:230px;}@media (max-width: 1200px){footer .footer.no_newsletter .info-wrap-contact{padding-left:0;}}@media (max-width: 768px){footer .footer.no_newsletter .info-wrap-contact{width:100%;}}@media (max-width: 1200px){footer .footer.no_newsletter .info-wrap-contact_cell{width:50%;}}@media (max-width: 768px){footer .footer.no_newsletter .info-wrap-contact_cell{width:100%;}}footer .footer.no_newsletter .info-wrap-contact h4{position:absolute;margin-top:-8px;left:0;max-width:200px;}@media (max-width: 1200px){footer .footer.no_newsletter .info-wrap-contact h4{position:relative;left:auto;max-width:100%;width:100%;margin-bottom:20px;margin-top:0;}}@media (max-width: 768px){footer .footer.no_newsletter .info-wrap-contact h4{position:relative;left:auto;max-width:100%;}}footer .footer.no_newsletter .info-wrap-contact_zone:first-of-type{margin-bottom:71px;}@media (max-width: 1200px){footer .footer.no_newsletter .info-wrap-contact_zone:first-of-type{margin-bottom:39px;}}@media (max-width: 768px){footer .footer.no_newsletter .info-wrap-contact_zone:first-of-type{margin-bottom:51px;}}footer .footer.no_newsletter .info-wrap-contact_zone:last-child{margin-bottom:0;}footer .footer.no_icon .info-wrap-contact_cell{padding-left:0;}footer .footer.no_icon .info-wrap-contact_cell i{display:none;}footer .footer.no-names .info-wrap-contact{padding-left:0;}footer .form-row{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-flex-wrap:wrap;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-webkit-justify-content:space-between;justify-content:space-between;margin-left:-15px;margin-right:-15px;}@media (min-width: 1281px){footer .form-row{-webkit-box-flex-wrap:nowrap;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap;}}@media (max-width: 900px){footer .form-row{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}}footer .form-col{-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%;padding-left:15px;padding-right:15px;}@media (min-width: 768px){footer .form-col{-webkit-flex:1 1 0;-ms-flex:1 1 0;flex:1 1 0;}}@media (min-width: 768px){footer .form-col--socials{-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%;}}@media (min-width: 1281px){footer .form-col--socials{-webkit-flex-basis:0;-ms-flex-preferred-size:0;flex-basis:0;}}@media (max-width: 768px){footer .form-col--socials{-webkit-order:-1;-ms-flex-order:-1;order:-1;}}@media (min-width: 1281px){footer .form-col--xl-auto{-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto;}}footer .additional-links-separator{display:block;width:100%;height:0;overflow:hidden;}@media (min-width: 768px){footer .additional-links-separator{display:inline;width:auto;height:auto;}footer .additional-links-separator:before{content:"|";}}footer .h-pot{height:0;width:0;overflow:hidden;visibility:hidden;}footer .img-wrap{max-width:100px;width:100%;display:block;margin-right:20px;}@media (max-width: 900px){footer .img-wrap{margin-right:0;margin-bottom:10px;}}footer .img-wrap img{width:100%;object-fit:cover;}footer .powered-box{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 0 auto;}@media (max-width: 900px){footer .powered-box{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}}footer .form-col--copyright{-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 0 auto;margin:10px 0;}footer .luxury-link{white-space:nowrap;}footer .footer__disclaimers{padding-top:24px;padding-bottom:24px;}@media (max-width: 900px){footer .footer__disclaimers{text-align:center;}}body>div.mobile-contact-wrapper{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
58ox='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
58699 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
5871 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;
58-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;
58height: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);}}
59        </style>
60    <style id="custom-style-css">.button-style-1{color:#00244A!important;background-color:rgba(0, 0, 0, 0)!important;border-color:#00244A!important;}.button-style-1:hover{color:rgba(255,255,255,1)!important;background-color:#00244A!important;border-color:#00244A!important;}.pagination-style-1 li a{color:#00244A!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:#00244A!important;border-color:#00244A!important;}.pagination-style-1 li.active a{color:rgba(255, 255, 255, 1)!important;background-color:#00244A!important;border-color:#00244A!important;}.hyperlink-style-1{color:rgba(0, 0, 0, 1)!important;}.hyperlink-style-1:hover{color:#00244A!important;}.social_icons-style-1 a{border-color:#00244A!important;background-color:#00244A!important;color:#FFFFFF!important;}.social_icons-style-1 a:hover{border-color:#00244A!important;background-color:rgba(0, 0, 0, 0)!important;color:#00244A!important;}.social_icons-style-1 a i{color:inherit!important;}
60.social_icons-style-1 a svg,.social_icons-style-1 a svg path{fill:currentColor!important;}.social_icons-style-2 a{border-color:rgba(255, 255, 255, 1)!important;background-color:#FFFFFF!important;color:#00244A!important;}.social_icons-style-2 a:hover{border-color:rgba(255, 255, 255, 1)!important;background-color:rgba(0, 0, 0, 0)!important;color:#FFFFFF!important;}.social_icons-style-2 a i{color:inherit!important;}.social_icons-style-2 a svg,.social_icons-style-2 a svg path{fill:currentColor!important;}.hyperlink-style-2{color:rgba(255, 255, 255, 1)!important;}.hyperlink-style-2:hover{color:rgba(255, 255, 255, 0.7)!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:#00244A!important;background-color:rgba(255, 255, 255, 1)!important;border-color:rgba(255,255,255,1)!important;}.pagination-style-2 li.active a{color:#00244A!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:#00244A!important;background-color:rgba(255, 255, 255, 1)!important;border-color:rgba(255, 255, 255, 1)!important;}.button-style-3{color:#FFFFFF!important;background-color:#00244A!important;border-color:#00244A!important;}.button-style-3:hover{color:#00244A!important;background-color:rgba(0, 0, 0, 0)!important;border-color:#00244A!important;}.button-style-4{color:#00244A!important;background-color:#FFFFFF!important;border-color:#FFFFFF!important;}.button-style-4:hover{color:#FFFFFF!important;background-color:rgba(0, 0, 0, 0)!important;border-color:#FFFFFF!important;}</style>
61        <!-- LP Consent bootstrap: blocking; resolves consent state, pushes Consent Mode
62             defaults, and dynamically loads the locale + main (and banner if needed). -->
63        
63<script src="https://cdn.luxurypresence.com/scripts/lp-consent/latest/lp-consent-boot.js" data-website-id="0a323938-1109-46c4-b822-46ace916f333"></script>
63
64
65
66        
66<script>
67            (function utmParse() {
68                const url = new URL(window.location.href);
69                if (url.search) {
70                    const utm = url.search.split(/\?|&/g).reduce((acc, current) => {
71                        const matched = current.match(/utm_(content|campaign|medium|source|term|id)|gclid/g);
72                        if (matched) {
73                        acc[matched[0]] = current.replace(`${matched[0]}=`, '');
74                        }
75                        return acc;
76                    }, {});
77                    if (Object.keys(utm).length) {
78                        window.localStorage.setItem('utm_vars', JSON.stringify(utm));
79                    } else {
80                        // Remove old utm vars
81                        window.localStorage.removeItem('utm_vars');
82                    }
83                }
84                // Set referrer in local storage
85                // This is meant to be stored once to avoid self-referrals and to have the first referrer only.
86                if (!window.localStorage.getItem('referrer')) {
87                    // Capture the Referrer URL
88                    const referrer = document.referrer;
89                    if (referrer) {
90                        // Only store the referrer if it comes from outside the current domain (to avoid self-referrals)
91                        const currentDomain = window.location.hostname;
92                        const referrerDomain = new URL(referrer).hostname;
93
94                        if (referrerDomain !== currentDomain) {
95                            // Store it in localStorage
96                            localStorage.setItem('referrer', referrer);
97                        }
98                    }
99                }
100            })();
101        </script>
101
102        <!-- Bing Webmaster Tools Verification -->
103<script>
104       // Check if on the homepage before the body loads
105       if (window.location.pathname === '/' || window.location.pathname === '/index.html') {
106       document.write('<meta name="msvalidate.01" content="6F6D563899A42C028420CB015EF73B27" />');
107       }
108</script>
108
109
110    <!-- GOOGLE TRANSLATE STYLES are moved to external CSS -->
111</head>
112<body>
113    <div id="google_translate_element" style="display: none"></div>
114
115        <nav id="global-navbar" data-el-id="43e7a874-fb1e-4cdd-91fe-eb6bf5b9179b">
116            <div class="redesign">
117  <div class="content-container header">
118    <div class="container header__container">
119      <div class="navbar">
120        <div class="logo">
121          <a href="/" class="logo__link">
122            <img src="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/04aea726-e37d-45c1-88cd-052d667cd5aa" 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/04aea726-e37d-45c1-88cd-052d667cd5aa 320w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/04aea726-e37d-45c1-88cd-052d667cd5aa 960w" class="logo__img light" alt="">
123            <img src="https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/56742797-c03f-4454-9ccf-92007a24b6ec" 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/56742797-c03f-4454-9ccf-92007a24b6ec 320w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/56742797-c03f-4454-9ccf-92007a24b6ec 960w" class="logo__img dark" alt="Coxworth &amp; Associates">
124          </a>
125        </div>
126        <div class="navigation">
127          <ul>
128            <li class="navigation__item sub-nav-container">
129              <a href="#" class="navigation__link wow fadeInUp">Properties</a>
130              <div class="sub-nav">
131                <ul>
132                  <li class="sub-nav__item"><a  href="/properties/sale" class="nav-link sub-nav__link feature"><span>Featured Properties</span></a></li>
133                  <li class="sub-nav__item"><a  href="/properties/sold" class="nav-link sub-nav__link feature"><span>Past Transactions</span></a></li>
134                </ul>
135              </div>
136            </li>
137            <li class="navigation__item">
138              <a  href="/home-search/listings" class="navigation__link wow fadeInUp" data-wow-delay="2.1"><span>Home Search</span></a>
139            </li>
140            <li class="navigation__item">
141              <a  href="/home-valuation-international" class="navigation__link wow fadeInUp" data-wow-delay="2.2"><span>Home Valuation</span></a>
142            </li>
143            <li class="navigation__item">
144              <a  href="/communities" class="navigation__link wow fadeInUp" data-wow-delay="2.3"><span>Neighbourhoods</span></a>
145            </li>
146            <li class="navigation__item">
147              <a data-type="CONTACT_US" class="navigation__link wow fadeInUp"><span>Contact Us</span></a>
148            </li>
149          </ul>
150        </div>
151        <div class="buttons-wrapper">
152          <button type="button" class="hamburger-component hamburger">
153            <span class="hamburger__bars"></span>
154          </button>
155        </div>
156      </div>
157    </div>
158  </div>
159</div>
160
161        </nav>
162        <div id="global-sidemenu" class="sidemenu" data-el-id="dd409a90-defd-4b7a-a4fb-816ab12adf2a">
163            <div class="wrapper">
164    <div class="holder">
165        <div class="title">Coxworth &amp; Associates</div>
166        <ul class="section-options">
167                    <li class="option"><a  href="/">Home</a></li>
168                    <li class="option"><a  href="/team">Meet the Team</a></li>
169                  <li class="option sub-nav-container">
170                  <div class="sub-nav">
171                      <ul>
172                                  <li><a  href="/properties/sale" class="link sub-nav-link">Featured Properties</a></li>
173                                  <li><a  href="/properties/sold" class="link sub-nav-link">Past Transactions</a></li>
174                      </ul>
175                  </div>
176                  <a href="#" class="link main-nav">Properties</a>
177                  </li>
178                    <li class="option"><a  href="/home-search/listings">Home Search</a></li>
179                    <li class="option"><a  href="/home-valuation-international">Home Valuation</a></li>
180                    <li class="option"><a  href="/communities">Communities</a></li>
181                    <li class="option"><a  href="/testimonials">Testimonials</a></li>
182                    <li class="option"><a  href="/about-sir">About the Brand</a></li>
183                    <li class="option"><a  href="/auction">Sotheby&#x27;
183s Auction House</a></li>
184                  <li class="option sub-nav-container">
185                  <div class="sub-nav">
186                      <ul>
187                                  <li><a  href="/buyers-guide" class="link sub-nav-link">Buyer&#x27;s Guide</a></li>
188                                  <li><a  href="/sellers-guide" class="link sub-nav-link">Seller&#x27;s Guide</a></li>
189                                  <li><a  href="/mortgage-calculator" class="link sub-nav-link">Mortgage Calculator</a></li>
190                                  <li><a  href="/video-gallery" class="link sub-nav-link">Video Gallery</a></li>
191                      </ul>
192                  </div>
193                  <a href="#" class="link main-nav">Resources</a>
194                  </li>
195                    <li class="option"><a  href="/blog">Blog</a></li>
196                    <li class="option"><a  href="/contact">Contact Us</a></li>
197                    <li class="option"><a  href="/home-search/account">My Search Portal</a></li>
198        </ul>
199    </div>
200    <button class="toggle sidemenu-close"></button>
201</div>
202
203        </div>
204        <div  id="global-mobile-contact" class="mobile-contact-wrapper" data-el-id="befe5af2-a6ca-4119-924a-a85d96d36b51">
205            <div class="btn-holder" 
206style="
207--backgroundColor: rgba(255, 255, 255, 1); 
208--textColor: rgba(26, 26, 26, 1); 
209--pillTextColor: rgba(255, 255, 255, 1); 
210--pillBackgroundColor: rgba(0, 36, 74, 1);">
211
212    <button type="button" class="connect-btn lp-ico lp-ico-arrow-top visible">Contact Us</button>
213</div>
214
215
216<div class="pop-up" style="--backgroundColor: rgba(255, 255, 255, 1); --textColor: rgba(26, 26, 26, 1);">
217  <div class="lp-container">
218    <form data-type="contact-form" class="contact-form">
219      <div class="contact-form__container">
220          <h3 class="lp-h3">Leave a Message</h3>
221      
222        <div class="contact-form__content">
223          <div class="contact-form__inputs-container">
224            <div class="contact-form__item">
225              <input
226                id="__FullName"
227                type="text" name="name"
228                class="lp-input lp-input--dark"
229                required
230                placeholder="Full Name">
231            </div>
232            <div class="contact-form__item">
233              <input
234                id="__Email"
235                type="email" name="email"
236                class="lp-input js-email-input lp-input--dark"
237                required
238                placeholder="Email">
239            </div>
240            <div class="contact-form__item"> 
241              <input
242                class="lp-input lp-input--dark"
243                type="tel" 
244                placeholder="Phone"
245                id="__Phone"
246                name="phone"
247                required>
248            </div>
249
250            <div class="contact-form__item input-group-select">
251              <select name="interest" id="-field-interest" placeholder="Interest"
252                class="lp-input dropdown-select js-select js-form-element lp-input--dark" required>
253                <option value="" disabled selected data-label="Interest">Interested in...</option>
254                <option value="Selling &amp; Buying">Selling &amp; Buying</option>
255                <option value="Selling">Selling</option>
256                <option value="Buying">Buying</option>
257                <option value="Renting">Renting</option>
258                <option value="Other">Other</option>
259              </select>
260              <label for="-field-interest" class="lp-label sr-only">Interest</label>
261            </div>
262
263            <div class="contact-form__item">
264              <textarea
265                name="message"
266                rows="4"
267                id="__Message"
268                class="lp-input lp-input--dark"
269                placeholder="Message"
270                required></textarea>
271            </div>
272            <div class="lp-disclaimer">  <label style='display: none;' for='-termsAccepted'>Opt In/Disclaimer Consent:</label>
273  <label class='lp-tcr-content'>
274    <span class='lp-tcr-checkbox'>
275      <input
276        type='checkbox'
277        id='-termsAccepted'
278        name='termsAccepted'
279        oninvalid="this.setCustomValidity('Please accept the terms and conditions')"
280        oninput="this.setCustomValidity('')"
281        required
282      /></span>
283    <span class='lp-tcr-message'>
284      
285        I agree to be contacted by
286        Bryan Coxworth
287        via call, email, and text for real estate services. To opt out, you can reply 'stop' at any time or reply 'help' for assistance.
288        You can also click the unsubscribe link in the emails. Message and data rates may apply. Message frequency may vary.
289        <a href='/terms-and-conditions' target='_blank'>Privacy Policy</a>.
290    </span>
291  </label>
292
293</div>
294            <button type="submit" class="lp-btn lp-btn--filled lp-btn--dark submit  contact-form__item">Submit</button>
295            
296            <div class="lp-h-pot">
297              <input id="__newsSignMiddleName" name="middleName" value="" autocomplete="off" tabindex="-1">
298            </div>
299            
300            <input style="display: none;" type="text" name="source" value="CONTACT_INQUIRY" />
301            <input type="hidden" name="button_text" value="Contact Us">
302          </div>
303        </div>
304      </div>
305
306
307      <div class="success-block">
308          <h3 class="lp-h3 success-message">Thank you for your message. We will be in touch with you shortly.</h3>
309
310      </div>
311    </form>
312
313    <button type="button" class="close-btn lp-ico lp-ico-close"></button>
314
315    
316  </div>
317</div>
318
319
320        </div>
321        <section  class="image-section is-font-color-light is-background-color-light" id="section-45f448e7-c335-4c5a-9aa7-fd3cc6622af8" data-el-id="e6c6941b-dd32-4d6b-b4aa-56593f2d58bb">
322    <div class="redesign custom-intro">
323    <div class="container">
324        <h1 class="custom-intro__title">Blog</h1>
325        
326    </div>
327</div>
328
329</section>
330<section id="section-01ab6531-3f2b-4f85-b398-88e312943c07"  class="solid-section is-font-color-dark is-background-color-light" data-el-id="1e77e4a0-6624-43db-b736-bd434565fece">
331<script type="text/x-handlebars-template" class="gridItem pagination-script"><a href="/blog/{{slug}}" class="blog-list__item">
332  <div class="blog-list__item-image">
333    
334    
335
336    {{#if media.length}}
337      {{{mediaImage media.[0] alt=title}}}
338    {{/if}}
339  </div>
340  
341  <div class="blog-list__item-content">
342    <h4 class="serif">{{title}}</h4>
343    <ul class="blog-list__item-details">
344      
345      {{#isEmpty customAuthor}}
346        {{#if (or createdBy.firstName createdBy.lastName)}}<li class="blog-list__item-author">{{createdBy.firstName}} {{createdBy.lastName}}</li>{{/if}}
347      {{else}}
348        <li class="blog-list__item-author">{{customAuthor}}</li>
349      {{/isEmpty}}
350 
351      <li class="blog-list__item-date">{{hbFormatDate publishedAt 'MM/DD/YY'}}</li>            
352    </ul>
353    
354    {{#if subtitle}}
355    <p>{{truncate (striptags subtitle) 130 "..."}}</p>
356    {{/if}}
357    <span class="link hyperlink-style-1">Read MORE</span>
358  </div>
359</a>
360</script>
360
361
362
363
364
365
366
367<div class="redesign blog-list">
368
369  
370  <div class="container blog-list__container data-container hide-date hide-author">
371      <a href="/blog/the-port-carling-average-that-skips-its-own-best-sales" class="blog-list__item">
372        <div class="blog-list__item-image">
373          
374          
375      
376            <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/4d52d486-9e20-46a3-8f54-f382fe5c733b" 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/4d52d486-9e20-46a3-8f54-f382fe5c733b 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/4d52d486-9e20-46a3-8f54-f382fe5c733b 1280w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/4d52d486-9e20-46a3-8f54-f382fe5c733b 1536w" alt="Cedar cottage with a glazed wall and deck above granite steps, beneath a leaning pine." loading="lazy">
377        </div>
378        
379        <div class="blog-list__item-content">
380          <h4 class="serif">The Port Carling Average That Skips Its Own Best Sales</h4>
381          <ul class="blog-list__item-details">
382            
383              
384       
385            <li class="blog-list__item-date">10/1/26</li>            
386          </ul>
387          
388          <span class="link hyperlink-style-1">Read MORE</span>
389        </div>
390      </a>
391      <a href="/blog/the-wasaga-beach-rental-license-gap-that-could-break-your-investment-math" class="blog-list__item">
392        <div class="blog-list__item-image">
393          
394          
395      
396            <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/a0a2861b-7f05-4655-99bf-697bf202d87f" 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/a0a2861b-7f05-4655-99bf-697bf202d87f 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/a0a2861b-7f05-4655-99bf-697bf202d87f 1280w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/a0a2861b-7f05-4655-99bf-697bf202d87f 1408w" alt="Contemporary cottage entry with charcoal cedar siding, granite steps, and a serviceberry tree against dense forest." loading="lazy">
397        </div>
398        
399        <div class="blog-list__item-content">
400          <h4 class="serif">The Wasaga Beach Rental License Gap That Could Break Your Investment Math</h4>
401          <ul class="blog-list__item-details">
402            
403              
404       
405            <li class="blog-list__item-date">09/24/26</li>            
406          </ul>
407          
408          <span class="link hyperlink-style-1">Read MORE</span>
409        </div>
410      </a>
411      <a href="/blog/the-beach-isnt-closed-what-beach-drive-construction-actually-means-for-wasaga-beach-this-fall" class="blog-list__item">
412        <div class="blog-list__item-image">
413          
414          
415      
416            <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/2e0a931e-3bff-44f5-bc8f-696e2f3a6b6d" 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/2e0a931e-3bff-44f5-bc8f-696e2f3a6b6d 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/2e0a931e-3bff-44f5-bc8f-696e2f3a6b6d 1280w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/2e0a931e-3bff-44f5-bc8f-696e2f3a6b6d 1408w" alt="Charcoal metal roof overlooks a fieldstone terrace, framed by an orange-red serviceberry and autumn tree canopy." loading="lazy">
417        </div>
418        
419        <div class="blog-list__item-content">
420          <h4 class="serif">The Beach Isn&#x27;t Closed: What Beach Drive Construction Actually Means for Wasaga Beach This Fall</h4>
421          <ul class="blog-list__item-details">
422            
423              
424       
425            <li class="blog-list__item-date">09/17/26</li>            
426          </ul>
427          
428          <span class="link hyperlink-style-1">Read MORE</span>
429        </div>
430      </a>
431      <a href="/blog/why-the-biggest-name-on-muskokas-big-three-has-the-smaller-average-price" class="blog-list__item">
432        <div class="blog-list__item-image">
433          
434          
435      
436            <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/952f9546-1e1d-44fc-9da0-e28e7f081684" 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/952f9546-1e1d-44fc-9da0-e28e7f081684 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/952f9546-1e1d-44fc-9da0-e28e7f081684 1280w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/952f9546-1e1d-44fc-9da0-e28e7f081684 1408w" alt="Dark cedar log lodge with a stone chimney and timber gable rises above a granite shoreline beside a pine." loading="lazy">
437        </div>
438        
439        <div class="blog-list__item-content">
440          <h4 class="serif">Why the Biggest Name on Muskoka&#x27;s Big Three Has the Smaller Average Price</h4>
441          <ul class="blog-list__item-details">
442            
443              
444       
445            <li class="blog-list__item-date">09/10/26</li>            
446          </ul>
447          
448          <span class="link hyperlink-style-1">Read MORE</span>
449        </div>
450      </a>
451      <a href="/blog/same-asking-price-different-deal-what-water-access-costs-you-at-the-bank-on-go-home-lake" class="blog-list__item">
452        <div class="blog-list__item-image">
453          
454          
455      
456            <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/4d55f498-5a73-4e5e-a6e9-51be75205fae" 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/4d55f498-5a73-4e5e-a6e9-51be75205fae 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/4d55f498-5a73-4e5e-a6e9-51be75205fae 1280w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/4d55f498-5a73-4e5e-a6e9-51be75205fae 1408w" alt="Contemporary lake house overlooking granite steps that descend to a dock with two green Adirondack chairs." loading="lazy">
457        </div>
458        
459        <div class="blog-list__item-content">
460          <h4 class="serif">Same Asking Price, Different Deal: What Water Access Costs You at the Bank on Go Home Lake</h4>
461          <ul class="blog-list__item-details">
462            
463              
464       
465            <li class="blog-list__item-date">09/3/26</li>            
466          </ul>
467          
468          <span class="link hyperlink-style-1">Read MORE</span>
469        </div>
470      </a>
471      <a href="/blog/muskokas-fall-calendar-runs-on-two-clocks-and-most-locals-only-watch-one" class="blog-list__item">
472        <div class="blog-list__item-image">
473          
474          
475      
476            <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/9a10fe7b-92e5-4c75-9050-de960bb9a697" 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/9a10fe7b-92e5-4c75-9050-de960bb9a697 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/9a10fe7b-92e5-4c75-9050-de960bb9a697 1280w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/9a10fe7b-92e5-4c75-9050-de960bb9a697 1408w" alt="Silvered cedar dock beside rippling water, with a stone retaining wall, timber stairs, and house framed by autumn trees." loading="lazy">
477        </div>
478        
479        <div class="blog-list__item-content">
480          <h4 class="serif">Muskoka&#x27;s Fall Calendar Runs on Two Clocks, and Most Locals Only Watch One</h4>
481          <ul class="blog-list__item-details">
482            
483              
484       
485            <li class="blog-list__item-date">08/27/26</li>            
486          </ul>
487          
488          <span class="link hyperlink-style-1">Read MORE</span>
489        </div>
490      </a>
491  </div>
492  <div class="empty-results">Sorry, we couldn't find any results that match that search. Try another search.</div>
493  <div class="pagination-container pagination-container--dark pagination-style-1"></div>
494</div>
495</section>
496<section id="section-910a61ad-2067-4b52-a160-61bbac832465"  class="solid-section is-font-color-dark is-background-color-light" data-el-id="19e4a145-7cee-4338-8873-657ce2636b4c">
497  
498<div class="newsletter-signup lp-vertical-paddings redesign">
499  <div class="lp-container-custom">
500    <form data-type="contact-form" class="newsletter-signup__form">
501      <div class="newsletter-signup__form-container">
502        <div class="lp-title-group">
503          <h2 class="lp-h2">Join the insiders list</h2>
504          <div class="lp-text--subtitle"><p>Sign up to get updates on the latest listings, neighbourhood trends, and local real estate insights.</p></div>
505        </div>
506        <div class="newsletter-signup-form">
507          <div class="newsletter-signup__inputs-container">
508              <input id="section-910a61ad-2067-4b52-a160-61bbac832465__newsSignFirstName" type="text" name="name" class="lp-input lp-input--light newsletter-signup__form-item" required placeholder="Name">
509              
510            <input id="section-910a61ad-2067-4b52-a160-61bbac832465__newsSignEmail" type="email" name="email" class="lp-input lp-input--light newsletter-signup__form-item" required placeholder="Email" pattern="[a-zA-Z0-9.!#$%&amp;’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)+">
511            
512            <button type="submit" class="lp-btn lp-btn--filled lp-btn--light submit button-style-4 newsletter-signup__form-item lp-btn--mob-full-width">Submit</button>
513            
514            <div class="lp-h-pot">
515              <input id="section-910a61ad-2067-4b52-a160-61bbac832465__newsSignMiddleName" name="middleName" value="" autocomplete="off" tabindex="-1">
516            </div>
517            
518            <input style="display: none;" type="text" name="source" value="NEWSLETTER_SIGNUP" />
519          </div>
520        </div>
521        <div class="lp-disclaimer">  <label style='display: none;' for='section-910a61ad-2067-4b52-a160-61bbac832465-termsAccepted'>Opt In/Disclaimer Consent:</label>
522  <label class='lp-tcr-content'>
523    <span class='lp-tcr-checkbox'>
524      <input
525        type='checkbox'
526        id='section-910a61ad-2067-4b52-a160-61bbac832465-termsAccepted'
527        name='termsAccepted'
528        oninvalid="this.setCustomValidity('Please accept the terms and conditions')"
529        oninput="this.setCustomValidity('')"
530        required
531      /></span>
532    <span class='lp-tcr-message'>
533      
534        I agree to be contacted by
535        Bryan Coxworth
536        via call, email, and text for real estate services. To opt out, you can reply 'stop' at any time or reply 'help' for assistance.
537        You can also click the unsubscribe link in the emails. Message and data rates may apply. Message frequency may vary.
538        <a href='/terms-and-conditions' target='_blank'>Privacy Policy</a>.
539    </span>
540  </label>
541
542</div>
543      </div>
544      <div class="success-block">
545        <div class="lp-title-group">
546          <h2 class="lp-h2">Thank You</h2>
547          <div class="lp-text--subtitle"><p>You have successfully been added to our Newsletter. Stay tuned for the latest updates sent straight to your inbox!</p></div>
548        </div>
549      </div>
550    </form>
551    
552  </div>
553</div>
554</section>
555<section  class="image-section is-font-color-light is-background-color-light" id="section-56a0f81a-5721-42c1-ad3c-7b29258fa8bd" data-el-id="e6b1ae9f-5b8d-4ac5-a23f-bfb55ef91c3c">
556    
556<script>
557  (function(){
558    const sectionId = 'section-56a0f81a-5721-42c1-ad3c-7b29258fa8bd'
559    const section = document.querySelector(`#${sectionId}`);
560    var sectionBg = window.getComputedStyle(section, null).getPropertyValue('background-image');
561
562    if('true' === 'true') {
563      section.classList.add('parallax-enabled');
564      section.style.setProperty('--sectionBackground', sectionBg);
565      section.style.setProperty('background', 'none');
566    }
567  })()
568</script>
568
569<div class="redesign work-with-us parallax">
570	<div class="container">
571			<h2 class="serif">Work With Us</h2>
572			<div class="description">Reach out anytime for a no-obligation conversation — Bryan and Megan look forward to learning more about your plans and helping you move toward your next chapter.</div>
573		<div class="btn-container">
574              <a
575                  role="button"
576                  data-type="CONTACT_US"
577                  class="btn btn--primary-light button-style-4"
578                  
579                  
580                  
581                  
582                  
583                  >
584                          Contact Us
585                  </a>
586    </div>
587	</div>
588</div> 
589</section>
590<section id="section-1ae84a2f-352a-40df-9967-03972ee58fc7"  class="solid-section is-font-color-dark is-background-color-light" data-el-id="5db65d6a-01e9-4ee3-babf-2748e074a284">
591  
591<script type="text/x-handlebars-template" class="jsIGItem">
592    <a href="{{permalink}}" target="_blank" class="ig-feed-item insta-type-{{mediaType}}">
593      <div class="ig-feed-item__img" style="background-image: url('{{#ifEquals mediaType 'VIDEO'}}{{thumbnailUrl}}{{^}}{{mediaUrl}}{{/ifEquals}}');"></div>
594      <div class="ig-feed-item__info"><div class="ig-feed-item__caption">{{caption}}</div></div>
595      {{#ifEquals mediaType 'VIDEO'}}<div class="video-icon"></div>{{/ifEquals}}
596    </a> 
597</script>
597
598<div class="ig-feed redesign">
599  <div class="ig-feed-top lp-container">
600    <div class="top-wrapper">
601      <div class="top-left">
602          <h3 class="lp-h3 title">Follow Me on Instagram</h3>
603        <a href="#" target="_blank" class="instagram-link jsIGLink"><h4 class="lp-h4 instagram-name jsIGName"></h4></a>
604      </div>
605      <div class="top-right">
606          <a href="#" target="_blank" class="lp-btn lp-btn--dark lp-btn--outline lp-btn--mob-full-width follow-button jsIGLink button-style-1">Follow Me</a>
607        <a class="nav-button top-nav-prev hidden-control button-style-1">
608          <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>
609        </a>
610        <a class="nav-button top-nav-next hidden-control button-style-1">
611          <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>
612        </a>
613      </div>
614    </div>
615  </div>
616  <div class="lp-container ig-feed-container ">
617    <div class="ig-feed-feed" data-limit="33">
618    </div>
619  </div>
620  <div class="bottom-controls">
621    <a class="bottom-nav-button bottom-nav-prev button-style-1">
622      <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>
623    </a>
624    <a class="bottom-nav-button bottom-nav-next button-style-1">
625      <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>
626    </a>
627  </div>
628</div>
629
630</section>
631
632        <div id="modals" class="modals"></div>
633        <footer id="global-footer" class="is-font-color-dark is-background-color-light" data-el-id="874a9373-949d-4275-b72f-04c2a6ec373b">
634            <div class="footer redesign  no_newsletter "> 
635    <div class="container">
636        <h3>Coxworth &amp; Associates</h3>
637        <div class="info-wrap">
638            <div class="info-wrap-contact agent_box">
639                <div class="info-wrap-contact_zone type_user">
640                    <h4 class="serif"> Bryan Coxworth</h4>
641                    <div class="info-wrap-contact_cell">
642                        <i>
643                            <svg width="30" height="19" viewBox="0 0 30 19" fill="none" xmlns="http://www.w3.org/2000/svg">
644                                <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" />
645                            </svg>
646                        </i>
647                        <p class="contact_title">Email</p>
648                        <a href="/cdn-cgi/l/email-protection#c0a2b2b9a1ae80a3afb4b4a1a7a5aca9a6a5b2a5a1acb4b9eea3afad" class="lp-link info-wrap-contact_link grey-text hyperlink-style-1"><span class="__cf_email__" data-cfemail="a2c0d0dbc3cce2c1cdd6d6c3c5c7cecbc4c7d0c7c3ced6db8cc1cdcf">[email&#160;protected]</span></a>
649                    </div>
650                    <div class="info-wrap-contact_cell">
651                        <i><svg width="30" height="25" viewBox="0 0 30 25" fill="none" xmlns="http://www.w3.org/2000/svg">
652                        <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.23
65213 5.154 12.5265H6.9996C9.0918 12.5265 10.797 10.8207 10.797 8.7285V8.1207H10.7964ZM11.46 16.5807C11.46 14.6565 13.0188 13.0977 14.943 13.0977C16.8666 13.0977 18.4254 14.6571 18.4254 16.5807C18.4254 18.5055 16.8678 20.0631 14.943 20.0631C13.02 20.0637 11.46 18.5043 11.46 16.5807ZM14.943 12.0381C12.4344 12.0381 10.4004 14.0721 10.4004 16.5807C10.4004 19.0887 12.435 21.1233 14.943 21.1233C17.4486 21.1233 19.485 19.0869 19.485 16.5807C19.485 14.0727 17.451 12.0381 14.943 12.0381ZM9.0846 4.8363C8.22 4.8363 7.512 5.5443 7.512 6.4089V8.7285C7.512 9.0093 7.2804 9.2415 6.999 9.2415H1.5726C1.2906 9.2415 1.0596 9.0111 1.0596 8.7285V6.9285C1.0596 6.4797 1.1628 6.0945 1.3902 5.7069C1.896 4.8465 2.7294 4.1013 3.795 3.4749C9.279 0.2517 20.7192 0.2523 26.2044 3.4749C27.2706 4.1013 28.104 4.8465 28.6098 5.7069C28.8354 6.0921 28.9398 6.4815 28.9398 6.9285V8.7285C28.9398 9.0111 28.71 9.2415 28.4268 9.2415H23.0004C22.719 9.2415 22.4874 9.0093 22.4874 8.7285V6.4089C22.4874 5.5425 21.7806 4.8363 20.9148 4.8363H9.0846ZM8.571 6.4089C8.571 6.1263 8.8026 5.8965 9.0846 5.8965H20.9154C21.1968 5.8965 21.429 6.1275 21.429 6.4089V8.7285C21.429 9.5943 22.1352 10.3017 23.001 10.3017H28.4274C29.292 10.3017 30 9.5931 30 8.7285V6.9285C30 6.2835 29.8464 5.7291 29.5206 5.1729C28.9188 4.1493 27.9564 3.2799 26.7384 2.5641C20.9214 -0.8547 9.0798 -0.8547 3.2622 2.5641C2.0436 3.2799 1.0812 4.1487 0.48 5.1729C0.153 5.7291 0 6.2835 0 6.9279V8.7279C0 9.5925 0.7092 10.3011 1.5726 10.3011H6.999C7.8648 10.3011 8.571 9.5937 8.571 8.7279V6.4089ZM9.7368 7.5915V8.7285C9.7368 10.2387 8.5092 11.4669 6.999 11.4669H4.6686C4.3914 11.4669 4.164 11.6799 4.1412 11.9511C3.8892 14.8347 3.7386 17.7435 3.5448 20.6331C3.4116 22.6425 4.989 24.3315 7.0032 24.3315H22.8822C24.882 24.3315 26.475 22.6575 26.3406 20.6343L25.7622 11.9607C25.7436 11.6811 25.5102 11.4675 25.2342 11.4675L23.001 11.4663C21.4902 11.4663 20.2632 10.2375 20.2632 8.7279V7.5909C20.2632 7.2981 20.0262 7.0611 19.7334 7.0611H10.2666C9.9738 7.0611 9.7368 7.2987 9.7368 7.5915Z" fill="#1A1A1A" />
653                        </svg></i>
654                        <p class="contact_title">Phone Number</p>
655                        <a href="tel:7057907629" class="lp-link info-wrap-contact_link grey-text hyperlink-style-1">705.790.7629</a>
656                    </div>
657                </div>
658                <div class="info-wrap-contact_zone type_user">
659                    <h4 class="serif"> Megan Coxworth</h4>
660                    <div class="info-wrap-contact_cell">
661                        <i>
662                            <svg width="30" height="19" viewBox="0 0 30 19" fill="none" xmlns="http://www.w3.org/2000/svg">
663                                <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" />
664                            </svg>
665                        </i>
666                        <p class="contact_title">Email</p>
667                        <a href="/cdn-cgi/l/email-protection#81ece2eef9f6eef3f5e9c1f2eef5e9e4e3f8f2f3e4e0edf5f8afe2e0" class="lp-link info-wrap-contact_link grey-text hyperlink-style-1"><span class="__cf_email__" data-cfemail="ff929c908788908d8b97bf8c908b979a9d868c8d9a9e938b86d19c9e">[email&#160;protected]</span></a>
668                    </div>
669                    <div class="info-wrap-contact_cell">
670                        <i>
671                        <svg width="30" height="25" viewBox="0 0 30 25" fill="none" xmlns="http://www.w3.org/2000/svg">
672                            <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.23
67213 5.154 12.5265H6.9996C9.0918 12.5265 10.797 10.8207 10.797 8.7285V8.1207H10.7964ZM11.46 16.5807C11.46 14.6565 13.0188 13.0977 14.943 13.0977C16.8666 13.0977 18.4254 14.6571 18.4254 16.5807C18.4254 18.5055 16.8678 20.0631 14.943 20.0631C13.02 20.0637 11.46 18.5043 11.46 16.5807ZM14.943 12.0381C12.4344 12.0381 10.4004 14.0721 10.4004 16.5807C10.4004 19.0887 12.435 21.1233 14.943 21.1233C17.4486 21.1233 19.485 19.0869 19.485 16.5807C19.485 14.0727 17.451 12.0381 14.943 12.0381ZM9.0846 4.8363C8.22 4.8363 7.512 5.5443 7.512 6.4089V8.7285C7.512 9.0093 7.2804 9.2415 6.999 9.2415H1.5726C1.2906 9.2415 1.0596 9.0111 1.0596 8.7285V6.9285C1.0596 6.4797 1.1628 6.0945 1.3902 5.7069C1.896 4.8465 2.7294 4.1013 3.795 3.4749C9.279 0.2517 20.7192 0.2523 26.2044 3.4749C27.2706 4.1013 28.104 4.8465 28.6098 5.7069C28.8354 6.0921 28.9398 6.4815 28.9398 6.9285V8.7285C28.9398 9.0111 28.71 9.2415 28.4268 9.2415H23.0004C22.719 9.2415 22.4874 9.0093 22.4874 8.7285V6.4089C22.4874 5.5425 21.7806 4.8363 20.9148 4.8363H9.0846ZM8.571 6.4089C8.571 6.1263 8.8026 5.8965 9.0846 5.8965H20.9154C21.1968 5.8965 21.429 6.1275 21.429 6.4089V8.7285C21.429 9.5943 22.1352 10.3017 23.001 10.3017H28.4274C29.292 10.3017 30 9.5931 30 8.7285V6.9285C30 6.2835 29.8464 5.7291 29.5206 5.1729C28.9188 4.1493 27.9564 3.2799 26.7384 2.5641C20.9214 -0.8547 9.0798 -0.8547 3.2622 2.5641C2.0436 3.2799 1.0812 4.1487 0.48 5.1729C0.153 5.7291 0 6.2835 0 6.9279V8.7279C0 9.5925 0.7092 10.3011 1.5726 10.3011H6.999C7.8648 10.3011 8.571 9.5937 8.571 8.7279V6.4089ZM9.7368 7.5915V8.7285C9.7368 10.2387 8.5092 11.4669 6.999 11.4669H4.6686C4.3914 11.4669 4.164 11.6799 4.1412 11.9511C3.8892 14.8347 3.7386 17.7435 3.5448 20.6331C3.4116 22.6425 4.989 24.3315 7.0032 24.3315H22.8822C24.882 24.3315 26.475 22.6575 26.3406 20.6343L25.7622 11.9607C25.7436 11.6811 25.5102 11.4675 25.2342 11.4675L23.001 11.4663C21.4902 11.4663 20.2632 10.2375 20.2632 8.7279V7.5909C20.2632 7.2981 20.0262 7.0611 19.7334 7.0611H10.2666C9.9738 7.0611 9.7368 7.2987 9.7368 7.5915Z" fill="#1A1A1A" />
673                        </svg>
674                    </i>
675                        <p class="contact_title">Phone Number</p>
676                        <a href="tel:7055439989" class="lp-link info-wrap-contact_link grey-text hyperlink-style-1">705.543.9989</a>
677                    </div>
678                </div>
679                <div class="info-wrap-contact_zone">
680                    <div class="info-wrap-contact_cell">
681                        <i>
682                            <svg width="31" height="30" viewBox="0 0 31 30" fill="none" xmlns="http://www.w3.org/2000/svg">
683                                <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" />
684                                <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" />
685                                <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" />
686                            </svg>
687                        </i>
688                        <p class="info-wrap-contact_title">Address</p>
689                        <p class="info-wrap-contact_link grey-text"><div class="aiAXrc"><span class="fMYBhe">97 Joseph St Unit 101</span></div>
690<div class="aiAXrc"><span class="fMYBhe">Port Carling ON P0B 1J0</span></div>
691<div class="aiAXrc">&nbsp;</div>
692<div class="aiAXrc"><span class="fMYBhe">243 Hurontario St<br>Collingwood ON L9Y 2M1</span></div></p>
693                    </div>
694                </div>
695            </div>
696        </div>
697        <div class="text_footer first_text_footer">
698            <div class="images_box">
699                <div class="img_size">
700                    <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/ad9c37fe-f70d-4f8e-a491-0dab87ed4f99" 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/ad9c37fe-f70d-4f8e-a491-0dab87ed4f99 320w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85,fit=scale-down,width=960/https://media-production.lp-cdn.com/media/ad9c37fe-f70d-4f8e-a491-0dab87ed4f99 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/ad9c37fe-f70d-4f8e-a491-0dab87ed4f99 1280w, https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/ad9c37fe-f70d-4f8e-a491-0dab87ed4f99 1920w" alt="Sotheby&#x27;s International Realty Canada" sizes="200px">
701                </div>
702            </div>
703            <div class="luxury-text">
704                <p style="font-size: 12px;">Sotheby&rsquo;s International Realty Canada is Independently Owned and Operated.<br><br>This website is not the official website of Sotheby&rsquo;s International Realty, Inc. Sotheby&rsquo;s International Realty, Inc. does not make any representation or warranty regarding any information, including without limitation its accuracy or c
704ompleteness, contained on this website.<br><img style="margin-top: 20px; width: 50px; filter: invert();" src="https://res.cloudinary.com/luxuryp/images/w_1280,c_limit,f_auto,q_auto/o3dp4jbwaleselnqffvw/light-realtor-png"></p>
705            </div>
706        </div>
707        <div class="text_footer second_text_footer">
708            <div class="text_content_wrap">
709                <div>
710                    This Website is not the official website of Sotheby’s International Realty, Inc. Sotheby’s International Realty, Inc. does not make any representation or warranty regarding any information, including without limitation its accuracy or completeness, contained on this Website.
711                </div>
712                <div>
713                    <div>&nbsp;</div>
714<style>* { box-sizing: border-box; } body {margin: 0;}ul{list-style:inherit;}</style>
715                </div>
716            </div>
717        </div>
718        <div class="info-privacy">
719          <div class="form-row info-privacy__row">
720
721            <div class="form-col form-col--powered powered-box">
722                    <div class="img-wrap">
723                        <img src="https://media-production.lp-cdn.com/media/b517d231-d9f5-4e15-870d-852a977c9204" alt="">
724                    </div>
725                <div class="powered_zone">
726                    Real Estate Website Design by <a href="https://www.luxurypresence.com/real-estate-website-design/" target="_blank" class="lp-link grey-text luxury-link underlined hyperlink-style-1">Luxury Presence</a>
727                </div>
728            </div>
729
730            <div class="form-col form-col--copyright">
731              <div class="copy_zone">
732                <span class="copy_words">Copyright &copy;</span> <span class="auto-year-update">2026</span>
733                | <a href="/terms-and-conditions" class="lp-link grey-text hyperlink-style-1">Privacy Policy</a>
734
735              </div>
736            </div>
737
738            <div class="form-col form-col--socials">
739                <ul class="lp-socials social_icons-style-1 socials socials--grey socials_zone">
740                
741                        <li>
742                          <a
743                            href="https://www.facebook.com/coxworthassociates/"
744                            class="lp-socials__link socials__item socials__link wow fadeInUp"
745                            data-wow-delay="0s"
746                            target="_blank"
747                            aria-label="FACEBOOK"
748                          >
749                              <span class="lp-i lp-i--facebook" aria-hidden="true"></span>
750                          </a>
751                        </li>
752                        <li>
753                          <a
754                            href="https://www.instagram.com/coxworthassociates"
755                            class="lp-socials__link socials__item socials__link wow fadeInUp"
756                            data-wow-delay="0.1s"
757                            target="_blank"
758                            aria-label="INSTAGRAM"
759                          >
760                              <span class="lp-i lp-i--instagram" aria-hidden="true"></span>
761                          </a>
762                        </li>
763                        <li>
764                          <a
765                            href="https://www.linkedin.com/company/coxworthassociates/about/"
766                            class="lp-socials__link socials__item socials__link wow fadeInUp"
767                            data-wow-delay="0.2s"
768                            target="_blank"
769                            aria-label="LINKEDIN"
770                          >
771                              <span class="lp-i lp-i--linkedin" aria-hidden="true"></span>
772                          </a>
773                        </li>
774                        <li>
775                          <a
776                            href="https://youtube.com/channel/UCeVaG97L4Be4LHmm-jGQH9A"
777                            class="lp-socials__link socials__item socials__link wow fadeInUp"
778                            data-wow-delay="0.3s"
779                            target="_blank"
780                            aria-label="YOUTUBE"
781                          >
782                              <span class="lp-i lp-i--youtube" aria-hidden="true"></span>
783                          </a>
784                        </li>
785                  </ul>            </div>
786          </div>
787        </div>
788    </div>
789</div>
790
791        </footer>
792
793        <div id="modal-global-contact-us" class="modal "
794            data-el-id=""
795            style="background-color: ;"
796            >
797            <div class="modal-content">
798                <div class="contact-form redesign " style="background-image: url('https://media-production.lp-cdn.com/cdn-cgi/image/format&#x3D;auto,quality&#x3D;85,fit&#x3D;scale-down,width&#x3D;1920/https://media-production.lp-cdn.com/media/63d7b384-33de-47ca-8861-990f8d749f00')">
799          <div class="container">
800              <div class="section-details" style="--colorTxt: #ffffff">
801                  <h2>Coxworth &amp; Associates</h2>
802                  
803                  <div class="info-zone">
804        
805                          <div class="info-zone_contact type_user">
806                                <h4 class="serif">Bryan Coxworth</h4>
807                                <div class="info-zone_contact_cell">
808                                        <i>
809                                            <svg width="30" height="25" viewBox="0 0 30 25" fill="none" xmlns="http://www.w3.org/2000/svg">
810                                                <path fill-rule="evenodd" clip-rule="evenodd" d="M10.7964 8.1207H19.2036V8.7279C19.2036 10.8195 20.9082 12.5259 23.001 12.5259H24.741L25.2852 20.7051C25.3776 22.1235 24.2868 23.2719 22.8822 23.2719H7.0032C5.5944 23.2719 4.5084 22.1085 4.6002 20.7039C4.782 17.9895 4.9152 15.2313 5.154 12.5265H6.9996C9.0918 12.5265 10.797 10.8207 10.797 8.7285V8.1207H10.7964ZM11.46 16.5807C11.46 14.6565 13.0188 13.0977 14.943 13.0977C16.8666 13.0977 18.4254 14.6571 18.4254 16.5807C18.4254 18.5055 16.8678 20.0631 14.943 20.0631C13.02 20.0637 11.46 18.5043 11.46 16.5807ZM14.943 12.0381C12.4344 12.0381 10.4004 14.0721 10.4004 16.5807C10.4004 19.0887 12.435 21.1233 14.943 21.1233C17.4486 21.1233 19.485 19.0869 19.485 16.5807C19.485 14.0727 17.451 12.0381 14.943 12.0381ZM9.0846 4.8363C8.22 4.8363 7.512 5.5443 7.512 6.4089V8.7285C7.512 9.0093 7.2804 9.2415 6.999 9.2415H1.5726C1.2906 9.2415 1.0596 9.0111 1.0596 8.7285V6.9285C1.0596 6.4797 1.1628 6.0945 1.3902 5.7069C1.896 4.8465 2.7294 4.1013 3.795 3.4749C9.279 0.2517 20.7192 0.2523 26.2044 3.4749C27.2706 4.1013 28.104 4.8465 28.6098 5.7069C28.8354 6.0921 28.9398 6.4815 28.9398 6.9285V8.7285C28.9398 9.0111 28.71 9.2415 28.4268 9.2415H23.0004C22.719 9.2415 22.4874 9.0093 22.4874 8.7285V6.4089C22.4874 5.5425 21.7806 4.8363 20.9148 4.8363H9.0846ZM8.571 6.4089C8.571 6.1263 8.8026 5.8965 9.0846 5.8965H20.9154C21.1968 5.8965 21.429 6.1275 21.429 6.4089V8.7285C21.429 9.5943 22.1352 10.3017 23.001 10.3017H28.4274C29.292 10.3017 30 9.5931 30 8.7285V6.9285C30 6.2835 29.8464 5.7291 29.5206 5.1729C28.9188 4.1493 27.9564 3.2799 26.7384 2.5641C20.9214 -0.8547 9.0798 -0.8547 3.2622 2.5641C2.0436 3.2799 1.0812 4.1487 0.48 5.1729C0.153 5.7291 0 6.2835 0 6.9279V8.7279C0 9.5925 0.7092 10.3011 1.5726 10.3011H6.999C7.8648 10.3011 8.571 9.5937 8.571 8.7279V6.4089ZM9.7368 7.5915V8.7285C9.7368 10.2387 8.5092 11.4669 6.999 11.4669H4.6686C4.3914 11.4669 4.164 11.6799 4.1412 11.9511C3.8892 14.8347 3.7386 17.7435 3.5448 20.6331C3.4116 22.6425 4.989 24.3315 7.0032 24.3315H22.8822C24.882 24.3315 26.475 22.6575 26.3406 20.6343L25.7622 11.9607C25.7436 11.6811 25.5102 11.4675 25.2342 11.4675L23.001 11.4663C21.4902 11.4663 20.2632 10.2375 20.2632 8.7279V7.5909C20.2632 7.2981 20.0262 7.0611 19.7334 7.0611H10.2666C9.9738 7.0611 9.7368 7.2987 9.7368 7.5915Z" fill="#1A1A1A"/>
811                                            </svg>
812                                        </i>
813                                    <p class="contact_title">Phone</p>
814                                    <a href="tel:705.790.7629" class="lp-link info-zone_contact_link link hyperlink-style-2">705.790.7629</a>
815                                </div>
816                                <div class="info-zone_contact_cell">
817                                        <i>
818                                            <svg width="30" height="19" viewBox="0 0 30 19" fill="none" xmlns="http://www.w3.org/2000/svg">
819                                                <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"/>
820                                            </svg>
821                                        </i>
822                                    <p class="contact_title">Email</p>
823                                    <a href="/cdn-cgi/l/email-protection#9af8e8e3fbf4daf9f5eeeefbfdfff6f3fcffe8fffbf6eee3b4f9f5f7" class="lp-link info-zone_contact_link link hyperlink-style-2"><span class="__cf_email__" data-cfemail="1a7868637b745a79756e6e7b7d7f76737c7f687f7b766e6334797577">[email&#160;protected]</span></a>
824                                </div>
825                          </div>
826                          <div class="info-zone_contact type_user">
827                                <h4 class="serif">Megan Coxworth</h4>
828                                <div class="info-zone_contact_cell">
829                                        <i>
830                                            <svg width="30" height="25" viewB
830ox="0 0 30 25" fill="none" xmlns="http://www.w3.org/2000/svg">
831                                                <path fill-rule="evenodd" clip-rule="evenodd" d="M10.7964 8.1207H19.2036V8.7279C19.2036 10.8195 20.9082 12.5259 23.001 12.5259H24.741L25.2852 20.7051C25.3776 22.1235 24.2868 23.2719 22.8822 23.2719H7.0032C5.5944 23.2719 4.5084 22.1085 4.6002 20.7039C4.782 17.9895 4.9152 15.2313 5.154 12.5265H6.9996C9.0918 12.5265 10.797 10.8207 10.797 8.7285V8.1207H10.7964ZM11.46 16.5807C11.46 14.6565 13.0188 13.0977 14.943 13.0977C16.8666 13.0977 18.4254 14.6571 18.4254 16.5807C18.4254 18.5055 16.8678 20.0631 14.943 20.0631C13.02 20.0637 11.46 18.5043 11.46 16.5807ZM14.943 12.0381C12.4344 12.0381 10.4004 14.0721 10.4004 16.5807C10.4004 19.0887 12.435 21.1233 14.943 21.1233C17.4486 21.1233 19.485 19.0869 19.485 16.5807C19.485 14.0727 17.451 12.0381 14.943 12.0381ZM9.0846 4.8363C8.22 4.8363 7.512 5.5443 7.512 6.4089V8.7285C7.512 9.0093 7.2804 9.2415 6.999 9.2415H1.5726C1.2906 9.2415 1.0596 9.0111 1.0596 8.7285V6.9285C1.0596 6.4797 1.1628 6.0945 1.3902 5.7069C1.896 4.8465 2.7294 4.1013 3.795 3.4749C9.279 0.2517 20.7192 0.2523 26.2044 3.4749C27.2706 4.1013 28.104 4.8465 28.6098 5.7069C28.8354 6.0921 28.9398 6.4815 28.9398 6.9285V8.7285C28.9398 9.0111 28.71 9.2415 28.4268 9.2415H23.0004C22.719 9.2415 22.4874 9.0093 22.4874 8.7285V6.4089C22.4874 5.5425 21.7806 4.8363 20.9148 4.8363H9.0846ZM8.571 6.4089C8.571 6.1263 8.8026 5.8965 9.0846 5.8965H20.9154C21.1968 5.8965 21.429 6.1275 21.429 6.4089V8.7285C21.429 9.5943 22.1352 10.3017 23.001 10.3017H28.4274C29.292 10.3017 30 9.5931 30 8.7285V6.9285C30 6.2835 29.8464 5.7291 29.5206 5.1729C28.9188 4.1493 27.9564 3.2799 26.7384 2.5641C20.9214 -0.8547 9.0798 -0.8547 3.2622 2.5641C2.0436 3.2799 1.0812 4.1487 0.48 5.1729C0.153 5.7291 0 6.2835 0 6.9279V8.7279C0 9.5925 0.7092 10.3011 1.5726 10.3011H6.999C7.8648 10.3011 8.571 9.5937 8.571 8.7279V6.4089ZM9.7368 7.5915V8.7285C9.7368 10.2387 8.5092 11.4669 6.999 11.4669H4.6686C4.3914 11.4669 4.164 11.6799 4.1412 11.9511C3.8892 14.8347 3.7386 17.7435 3.5448 20.6331C3.4116 22.6425 4.989 24.3315 7.0032 24.3315H22.8822C24.882 24.3315 26.475 22.6575 26.3406 20.6343L25.7622 11.9607C25.7436 11.6811 25.5102 11.4675 25.2342 11.4675L23.001 11.4663C21.4902 11.4663 20.2632 10.2375 20.2632 8.7279V7.5909C20.2632 7.2981 20.0262 7.0611 19.7334 7.0611H10.2666C9.9738 7.0611 9.7368 7.2987 9.7368 7.5915Z" fill="#1A1A1A"/>
832                                            </svg>
833                                        </i>
834                                    <p class="contact_title">Phone</p>
835                                    <a href="tel:705.543.9989" class="info-zone_contact_link hvr_animation link link--white hyperlink-style-2">705.543.9989</a>
836                                </div>
837                                <div class="info-zone_contact_cell">
838                                        <i>
839                                            <svg width="30" height="19" viewBox="0 0 30 19" fill="none" xmlns="http://www.w3.org/2000/svg">
840                                                <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"/>
841                                            </svg>
842                                        </i>
843                                    <p class="contact_title">Email</p>
844                                    <a href="/cdn-cgi/l/email-protection#4528262a3d322a37312d05362a312d20273c3637202429313c6b2624" class="info-zone_contact_link hvr_animation link link--white hyperlink-style-2"><span class="__cf_email__" data-cfemail="1c717f73646b736e68745c6f736874797e656f6e797d706865327f7d">[email&#160;protected]</span></a>
845                                </div>
846                          </div>
847                          <div class="info-zone_contact">
848                                <div class="info-zone_contact_cell">
849                                        <i>
850                                            <svg width="31" height="30" viewBox="0 0 31 30" fill="none" xmlns="http://www.w3.org/2000/svg">
851                                                <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 3
8510.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"/>
852                                                <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"/>
853                                                <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"/>
854                                            </svg>
855                                        </i>
856                                    <p class="info-wrap-contact_title">Address</p>
857                                    <p class="info-zone_contact_link pre-line">97 Joseph St Unit 101
858        Port Carling ON P0B 1J0
859        
860        243 Hurontario St
861        Collingwood ON L9Y 2M1</p>
862                                </div>
863                          </div>
864                        <div class="info-zone_contact">
865                            <div class="info-zone_contact_cell">
866                                <p class="pre-line"><div></div><style>* { box-sizing: border-box; } body {margin: 0;}ul{list-style:inherit;}</style></p>
867                            </div>
868                        </div>
869                        <ul class="lp-socials social_icons-style-2 socials socials--grey socials_zone footer__contact-column">
870                        
871                                <li>
872                                  <a
873                                    href="https://www.facebook.com/coxworthassociates/"
874                                    class="lp-socials__link socials__item wow fadeInUp socials__link"
875                                    data-wow-delay="0s"
876                                    target="_blank"
877                                    aria-label="FACEBOOK"
878                                  >
879                                      <span class="lp-i lp-i--facebook" aria-hidden="true"></span>
880                                  </a>
881                                </li>
882                                <li>
883                                  <a
884                                    href="https://www.instagram.com/coxworthassociates"
885                                    class="lp-socials__link socials__item wow fadeInUp socials__link"
886                                    data-wow-delay="0.1s"
887                                    target="_blank"
888                                    aria-label="INSTAGRAM"
889                                  >
890                                      <span class="lp-i lp-i--instagram" aria-hidden="true"></span>
891                                  </a>
892                                </li>
893                                <li>
894                                  <a
895                                    href="https://youtube.com/channel/UCeVaG97L4Be4LHmm-jGQH9A"
896                                    class="lp-socials__link socials__item wow fadeInUp socials__link"
897                                    data-wow-delay="0.2s"
898                                    target="_blank"
899                                    aria-label="YOUTUBE"
900                                  >
901                                      <span class="lp-i lp-i--youtube" aria-hidden="true"></span>
902                                  </a>
903                                </li>
904                                <li>
905                                  <a
906                                    href="https://www.linkedin.com/company/coxworthassociates/about/"
907                                    class="lp-socials__link socials__item wow fadeInUp socials__link"
908                                    data-wow-delay="0.3s"
909                                    target="_blank"
910                                    aria-label="LINKEDIN"
911                                  >
912                                      <span class="lp-i lp-i--linkedin" aria-hidden="true"></span>
913                                  </a>
914                                </li>
915                          </ul>          </div>
916              </div>
917              <div class="section-message">
918                  <form data-type="contact-form">
919                      <h2>Submit a Message</h2>
920                       <div class="h-pot">
921                        <label for="-middleName">Middle Name</label>
922                        <input id="-middleName" name="middleName" value="" autocomplete="off" tabindex="-1">
923                      </div>
924        
925        
926                      <div class="lp-input-group">
927                          <label for="prod-name" class="lp-label">Name</label>
928                          <input id="prod-name" name="name" value="" required="" class="lp-input lp-input--light">
929                      </div>
930                      <div class="lp-input-group">
931                          <label for="prod-email" class="lp-label">Email</label>
932                          <input id="prod-email" type="email" name="email" value="" required="" class="lp-input lp-input--light">
933                      </div>
934                      <div class="lp-input-group">
935                          <label for="prod-phone" class="lp-label">Phone</label>
936                          <input id="prod-phone" type="tel" name="phoneNumber" value="" required="" class="lp-input lp-input--light">
937                      </div>
938                      <div class="lp-input-group m16">
939                          <label for="prod-message" class="lp-label">Message</label>
940                          <textarea id="prod-message" name="message" value="" required="" class="lp-input"></textarea>
941                      </div>
942        
943                      <div class="lp-disclaimer">  <label style='display: none;' for='-termsAccepted'>Opt In/Disclaimer Consent:</label>
944          <label class='lp-tcr-content'>
945            <span class='lp-tcr-checkbox'>
946              <input
947                type='checkbox'
948                id='-termsAccepted'
949                name='termsAccepted'
950                oninvalid="this.setCustomValidity('Please accept the terms and conditions')"
951                oninput="this.setCustomValidity('')"
952                required
953              /></span>
954            <span class='lp-tcr-message'>
955              
956                I agree to be contacted by
957                Bryan Coxworth
958                via call, email, and text for real estate services. To opt out, you can reply 'stop' at any time or reply 'help' for assistance.
959                You can also click the unsubscribe link in the emails. Message and data rates may apply. Message frequency may vary.
960                <a href='/terms-and-conditions' target='_blank'>Privacy Policy</a>.
961            </span>
962          </label>
963        
964        </div>
965                      
966                      <input style="display: none;" type="text" name="source" value="CONTACT_INQUIRY" />
967                      
968                      
969                      <button type="submit" class="submitButton lp-btn button-style-4">
970                          <span class="label-initial">Submit</span>
971                          <span class="label-loading">Submitting</span>
972                          <span class="label-success">Submitted</span>
973                          <span class="submit-icon lp-i lp-i--circle-notch lp-i--spin"></span>
974                      </button>
975                      <p class="success-message success hide">
976                        Message sent successfully!
977                      </p>
978                  </form>
979                  
980                  
981              </div>
982          </div>
983        </div>
984        
985            </div>
986            <button class="close lp-close" type="button" aria-label="close modal">
987                <span class="lp-close-icon" aria-hidden="true"></span>
988            </button>
989        </div>
990        <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;">
991          <style>
992            #qualifying-questions-modal .custom-select-toggle {
993              border: 1px solid #848484;
994              border-radius: 8px;
995              padding: 12px 16px;
996            }
997        
998            #qualifying-questions-modal .custom-select-toggle.is-placeholder {
999              color: #848484;
1000            }
1001        
1002            #qualifying-questions-modal #qualifying-questions-modal-phoneNumber::placeholder {
1003              color: #848484;
1004              opacity: 1;
1005            }
1006        
1007            #qualifying-questions-modal .disclaimer-more {
1008              display: none;
1009            }
1010        
1011            #qualifying-questions-modal #qualifying-questions-modal-disclaimer-text:not(.collapsed) .disclaimer-more {
1012              display: inline;
1013            }
1014        
1015            #qualifying-questions-modal #qualifying-questions-modal-disclaimer-text:not(.collapsed) .disclaimer-ellipsis {
1016              display: none;
1017            }
1018          </style>
vendor: 119 bytes, lines 1018-1019
1018
1019          <script data-cfasync="false" src="/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js"></script>
1019<script>
1020            function toggleDisclaimerQualifyingQuestionsModal() {
1021              const disclaimerText = document.getElementById('qualifying-questions-modal-disclaimer-text');
1022              const toggleButton = document.getElementById('qualifying-questions-modal-toggle-disclaimer');
1023        
1024              if (disclaimerText.classList.contains('collapsed')) {
1025                disclaimerText.classList.remove('collapsed');
1026                toggleButton.textContent = 'Read less';
1027                toggleButton.setAttribute('aria-expanded', 'true');
1028              } else {
1029                disclaimerText.classList.add('collapsed');
1030                toggleButton.textContent = 'Read more';
1031                toggleButton.setAttribute('aria-expanded', 'false');
1032              }
1033            }
1034          </script>
1034
1035          <div style="max-width: 400px; width: 95%; margin: 0 auto;">
1036            <div style="background: #fff; border: none; border-radius: 16px; color: black; box-shadow: none; position: relative;">
1037              <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;">
1038                <span aria-hidden="true">&times;</span>
1039              </button>
1040              <div style="padding: 40px 30px 32px;">
1041                <div style="text-align: left; margin-bottom: 32px;">
1042                  <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;">
1043                    Thanks, please provide more information to help serve you
1044                  </h2>
1045                </div>
1046                <form id="qualifying-questions-modal-form" data-type="contact-form">
1047                  <input type="hidden" name="source" value="PROFILE_UPDATE" />
1048                  <input type="hidden" name="email" value="" id="qualifying-questions-modal-email" />
1049                  <input type="hidden" name="triggerSource" id="qualifying-questions-modal-triggerSource" value="" />
1050                  <label for="qualifying-questions-modal-email" style="display:none;">
1051                    Email
1052                  </label>
1053                  <label for="qualifying-questions-modal-triggerSource" style="display:none;">
1054                    Trigger Source
1055                  </label>
1056        
1057                  <div style="margin-bottom: 20px;">
1058                    <label for="qualifying-questions-modal-phoneNumber" style="display:none;">
1059                      Phone Number
1060                    </label>
1061                    <input
1062                      type="tel"
1063                      id="qualifying-questions-modal-phoneNumber"
1064                      name="phoneNumber"
1065                      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;"
1066                      pattern="^\+?1?[-.\s]?\(?[0-9]{3}\)?[-.\s]?[0-9]{3}[-.\s]?[0-9]{4}$"
1067                      required
1068                      placeholder="Phone"
1069                      aria-label="Phone Number"
1070                      inputmode="tel"
1071                      autocomplete="tel"
1072                      onfocus="this.style.borderColor='black';"
1073                      onblur="this.style.borderColor='#848484';"
1074                    />
1075                  </div>
1076        
1077                  <div style="margin-bottom: 20px;">
1078                    <label for="qualifying-questions-modal-interest" style="display:none;">
1079                      Interest
1080                    </label>
1081                    <select
1082                      id="qualifying-questions-modal-interest"
1083                      name="interest"
1084                      required
1085                      data-label="Interest"
1086                      aria-label="Interest"
1087                      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;"
1088                      onfocus="this.style.borderColor='black'; this.style.color='black';"
1089                      onblur="this.style.borderColor='#848484'; if(this.value === '') this.style.color='#848484'; else this.style.color='black';"
1090                    >
1091                      <option value="" style="background: #fff; color: #848484;" disabled selected>Interested in...</option>
1092                      <option value="Selling & Buying" style="background: #fff; color: black;">Selling & Buying</option>
1093                      <option value="Selling" style="background: #fff; color: black;">Selling</option>
1094                      <option value="Buying" style="background: #fff; color: black;">Buying</option>
1095                      <option value="Renting" style="background: #fff; color: black;">Renting</option>
1096                      <option value="Other" style="background: #fff; color: black;">Other</option>
1097                    </select>
1098                  </div>
1099        
1100                  <div style="margin-bottom: 32px; font-size: 12px; line-height: 1.2;">
1101                    <label style='display: none;' for='qualifying-questions-modal-qualifying-questions-termsAccepted'>Opt In/Disclaimer Consent:</label>
1102                    <label class='lp-tcr-content'>
1103                      <span class='lp-tcr-checkbox'>
1104                        <input
1105                          type='checkbox'
1106                          id='qualifying-questions-modal-qualifying-questions-termsAccepted'
1107                          name='termsAccepted'
1108                          aria-describedby='qualifying-questions-modal-disclaimer-text'
1109                          oninvalid="this.setCustomValidity('Please accept the terms and conditions')"
1110                          oninput="this.setCustomValidity('')"
1111                          required
1112                        /></span>
1113                      <span class='lp-tcr-message'>
1114                        <div id="qualifying-questions-modal-disclaimer-text" class="collapsed" style="color: #848484;">
1115                          
1116                            I agree to be contacted by
1117                            <strong>Bryan Coxworth</strong>
1118                            via call, email, and text <span class="disclaimer-more">for real estate services. 
1119                            To opt out, you can reply 'stop' at any time or reply 'help' for assistance. 
1120                            You can also click the unsubscribe link in the emails. 
1121                            Message and data rates may apply. Message frequency may vary.</span>
1122                            <span class="disclaimer-ellipsis">...</span>
1123                            <a href='/terms-and-conditions' target='_blank' rel='noopener noreferrer' style='text-decoration: underline;'>Privacy Policy</a>.
1124                        </div>
1125                        <button
1126                          id="qualifying-questions-modal-toggle-disclaimer"
1127                          type="button"
1128                          style="background: none; border: none; color: #848484; font-size: inherit; font-weight: bold; padding: 0; margin-top: 4px; cursor: pointer;"
1129                          aria-expanded="false"
1130                          onclick="toggleDisclaimerQualifyingQuestionsModal()"
1131                        >
1132                          Read more
1133                        </button>
1134                      </span>
1135                    </label>
1136                  </div>
1137        
1138                  <div>
1139                    <button
1140                      type="submit"
1141                      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;"
1142                      onmouseover="this.style.background='transparent'; this.style.color='black';"
1143                      onmouseout="this.style.background='black'; this.style.color='white';"
1144                    >
1145                      Submit
1146                    </button>
1147                  </div>
1148                </form>
1149              </div>
1150            </div>
1151          </div>
1152        </div>
1153
1154    
1154<script>
1155        (function() {
1156        var lazyVideos = [].slice.call(document.querySelectorAll("video.lazy"));
1157
1158        if ("IntersectionObserver" in window && lazyVideos.length > 0) {
1159            var lazyVideoObserver = new IntersectionObserver(function(entries, observer) {
1160            entries.forEach(function(video) {
1161                if (video.isIntersecting) {
1162                for (var source in video.target.children) {
1163                    var videoSource = video.target.children[source];
1164                    if (typeof videoSource.tagName === "string" && videoSource.tagName === "SOURCE") {
1165                    videoSource.src = videoSource.dataset.src;
1166                    }
1167                }
1168
1169                video.target.load();
1170                video.target.classList.remove("lazy");
1171                lazyVideoObserver.unobserve(video.target);
1172                }
1173            });
1174            });
1175
1176            lazyVideos.forEach(function(lazyVideo) {
1177                lazyVideoObserver.observe(lazyVideo);
1178            });
1179        }
1180        })();
1181    </script>
1181
1182
1183        <!-- Global site tag (gtag.js) - Google Analytics -->
1184        
1184<script defer src="https://www.googletagmanager.com/gtag/js"></script>
1184
1185
1186            <!-- Google Tag Manager -->
1187            
1187<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
1188                new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
1189                j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.defer=true;j.async=false;j.src=
1190                'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
1191            })(window,document,'script','dataLayer','GTM-T9SFQGHZ');</script>
1191
1192            <!-- End Google Tag Manager -->
1193
1194
1195        <!-- LP Tracker (divolte.js) - LP Divolte -->
1196            
1196<script>window.divolteLp=window.divolteLp||function(){(divolteLp.q=divolteLp.q||[]).push(arguments)}</script>
1196
1197        <!-- LP Tracker (eventBus) - LP EventBus -->
1198            
1198<script>window.eventBusLp=window.eventBusLp||function(){(eventBusLp.q=eventBusLp.q||[]).push(arguments)}</script>
1198
1199
1200    
1200<script>
1201        window.dataLayer = window.dataLayer || [];
1202        document.sendGoogleTagManagerEvent = function() {
1203            /* Honor GPC-enabled browsers and prevent GTM event if GPC is enabled. More details: https://global-privacy-control.glitch.me/ */
1204            if (window.navigator.globalPrivacyControl) {
1205                return;
1206            }
1207
1208            dataLayer.push(arguments);
1209        }
1210
1211        document.sendGoogleTagManagerEvent('js', new Date());
1212            document.sendGoogleTagManagerEvent('config', 'G-SETRJE929R', { page: location.pathname, location: location.href });
1213        document.sendGoogleAnalyticsEvent = function(googleEvent) {
1214            document.sendGoogleTagManagerEvent('event', googleEvent.eventAction || googleEvent.hitType, {
1215                event_category: googleEvent.eventCategory,
1216                event_label: googleEvent.eventLabel,
1217                value: googleEvent.eventValue,
1218                page: googleEvent.page,
1219                location: googleEvent.location
1220            })
1221        };
1222
1223        document.addEventListener("DOMContentLoaded", function() {
1224            (function() {
1225                //If the page has an element with ID of auto-year-update the element will be populated with the current year.
1226                var date = new Date();
1227                var elements = document.getElementsByClassName('auto-year-update');
1228                var i;
1229                for (i = 0; i < elements.length; i++) {
1230                    elements[i].innerText = date.getFullYear();
1231                }
1232            })();
1233            if (window.divolteLp) {
1234                window.divolteLp('sendLpPageView', {});
1235            }
1236            if (window.eventBusLp) {
1237                window.eventBusLp('sendLpPageView', {});
1238            }
1239        });
1240    </script>
1240
1241
1242
1243    
1243<script>
1244    // Function to dynamically load a script
1245    function loadScript(url, callback) {
1246        var script = document.createElement('script');
1247        script.type = 'text/javascript';
1248        script.src = url;
1249        script.defer = true;
1250        script.async = true;
1251        script.onload = callback;
1252        document.head.appendChild(script);
1253    }
1254
1255    // Function to dynamically load CSS file
1256    function loadCSS(url) {
1257        var link = document.createElement("link");
1258        link.rel = "stylesheet";
1259        link.href = url;
1260        document.head.appendChild(link);
1261    }
1262
1263    // Global methods / variables that can be accessed by element js
1264    window.luxuryPresence = {
1265        libs: {
1266            loadJs: loadScript,
1267            loadCss: loadCSS,
1268            jsLibsMap: {
1269                paroller: {
1270                    jsSrc: 'https://d1e1jt2fj4r8r.cloudfront.net/javascript/jquery.paroller.min.js',
1271                    isLoaded: false,
1272                },
1273                ionRangeSlider: {
1274                    jsSrc: 'https://cdnjs.cloudflare.com/ajax/libs/ion-rangeslider/2.3.1/js/ion.rangeSlider.min.js',
1275                    cssSrc: 'https://cdnjs.cloudflare.com/ajax/libs/ion-rangeslider/2.3.1/css/ion.rangeSlider.min.css',
1276                    isLoaded: false,
1277                    requires: ['jquery'],
1278                },
1279                splide: {
1280                    jsSrc: 'https://cdnjs.cloudflare.com/ajax/libs/splidejs/4.1.4/js/splide.min.js',
1281                    cssSrc: 'https://cdnjs.cloudflare.com/ajax/libs/splidejs/4.1.4/css/splide-core.min.css',
1282                    isLoaded: false,
1283                },
1284                wow: {
1285                    jsSrc: 'https://cdnjs.cloudflare.com/ajax/libs/wow/1.1.2/wow.min.js',
1286                    isLoaded: false,
1287                },
1288                jquery: {
1289                    jsSrc: 'https://cdnjs.cloudflare.com/ajax/libs/jquery/3.7.1/jquery.min.js',
1290                    isLoaded: false,
1291                },
1292                slick: {
1293                    jsSrc: 'https://cdnjs.cloudflare.com/ajax/libs/slick-carousel/1.8.1/slick.min.js',
1294                    isLoaded: false,
1295                    requires: ['jquery'],
1296                },
1297                libphonenumber: {
1298                    jsSrc: 'https://cdnjs.cloudflare.com/ajax/libs/libphonenumber-js/1.11.8/libphonenumber-js.min.js',
1299                    isLoaded: false,
1300                },
1301            },
1302        },
1303    };
1304    </script>
1304
1305    
1305<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>
1305
1306    
1306<script defer src="https://cdnjs.cloudflare.com/ajax/libs/handlebars.js/4.7.8/handlebars.min.js"></script>
1306
1307    
1307<script defer src="https://cdn.jsdelivr.net/npm/[email protected]/dist/handlebars-intl.min.js"></script>
1307
1308    
1308<script defer src="https://cdnjs.cloudflare.com/ajax/libs/superagent/4.1.0/superagent.min.js"></script>
1308
1309    
1309<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>
1309
1310    
1310<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>
1310
1311    
1311<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>
1311
1312
1313    <!-- GOOGLE TRANSLATE SCRIPT -->
1314    
1314<script>
1315        function googleTranslateElementInit() {
1316            // list of languages can be overridden by setting window.customLanguages in the head JS. example `window.customLanguages = 'en,de,fr,ro,sk,pl'`
1317            // Language codes can be taken from here https://cloud.google.com/translate/docs/languages
1318            const DEFAULT_LANGUAGES = 'en,es,zh-CN,zh-TW,tl,vi,ar,ko,ru,de,fr,hi,pt';
1319            document.querySelectorAll('[data-type="TRANSLATE"]').forEach(function(translate){
1320                translate.innerText = '';
1321                new google.translate.TranslateElement({
1322                    pageLanguage: 'en',
1323                    layout: google.translate.TranslateElement.InlineLayout.SIMPLE,
1324                    includedLanguages: window.customLanguages || DEFAULT_LANGUAGES,
1325                }, translate);
1326            });
1327        }
1328    </script>
1328
1329    
1329<script defer src="//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>
1329
1330            
1330<script defer src="https://accounts.google.com/gsi/intermediate"></script>
1330
1331
1332    <!-- GOOGLE TRANSLATE SCRIPT END-->
1333    
1333<script>
1334
1335        // UI helpers
1336        (function () {
1337
1338            function getSideMenu () {
1339                return document.querySelector('body > div.sidemenu');
1340            }
1341
1342            function sideMenuHide (instant) {
1343                var sideMenu = getSideMenu();
1344                if (!sideMenu || !sideMenu.classList.contains('visible')) {
1345                  return;
1346                }
1347                sideMenu.classList.remove('visible');
1348                sideMenu.dispatchEvent(new CustomEvent('lpui-hide', { detail: { instant: !!instant } }));
1349                window.dispatchEvent(new CustomEvent('lpui-sidemenu-hide', { detail: {instant: !!instant} }));
1350            }
1351
1352            function sideMenuShow () {
1353                var sideMenu = getSideMenu();
1354                if (!sideMenu || sideMenu.classList.contains('visible')) {
1355                  return;
1356                }
1357                sideMenu.classList.add('visible');
1358                sideMenu.dispatchEvent(new Event('lpui-show'));
1359                window.dispatchEvent(new Event('lpui-sidemenu-show'));
1360            }
1361
1362            function sideMenuToggle () {
1363                var sideMenu = getSideMenu();
1364                if (!sideMenu) {
1365                  return;
1366                }
1367                var isSideMenuVisible = sideMenu.classList.contains('visible');
1368                if (isSideMenuVisible) {
1369                    sideMenuHide();
1370                } else {
1371                    sideMenuShow();
1372                }
1373            }
1374
1375            var scrollLockRequests = {};
1376            window.__debug_scrollLockRequests = scrollLockRequests;
1377            var hideScrollStyles = ''+
1378                    'body {'+
1379                    'overflow: hidden;' +
1380                    '}';
1381            var hideScrollId = 'hide-body-scroll-style';
1382
1383            function scrollLock () {
1384                var style = document.createElement('style');
1385                style.id = hideScrollId;
1386                style.textContent = hideScrollStyles;
1387                document.head.appendChild(style);
1388                window.dispatchEvent(new Event('lpui-scroll-locked'));
1389            }
1390
1391            function scrollUnlock () {
1392                document.getElementById(hideScrollId)?.remove();
1393                window.dispatchEvent(new Event('lpui-scroll-unlocked'));
1394            }
1395
1396            function requestScrollLock (lockId) {
1397                var wasLocked = Object.keys(scrollLockRequests).length > 0;
1398                scrollLockRequests[lockId || '__anonymous_lock'] = true;
1399                if (!wasLocked) {
1400                    scrollLock();
1401                }
1402            }
1403
1404            function releaseScrollLock (lockId) {
1405                if (lockId) {
1406                    delete scrollLockRequests[lockId];
1407                    if (!Object.keys(scrollLockRequests).length) {
1408                        scrollUnlock();
1409                    }
1410                } else {
1411                    scrollLockRequests = {};
1412                    window.__debug_scrollLockRequests = scrollLockRequests;
1413                    scrollUnlock();
1414                }
1415            }
1416
1417            function showModal (modalId, options) {
1418                var modal = document.getElementById(modalId);
1419                if (!modal) {
1420                    return;
1421                }
1422
1423                if (!modal.classList.contains('visible')) {
1424                    modal.classList.add('visible');
1425                    if (options && options.scrollLock) {
1426                        window.lpUI.requestScrollLock(modalId);
1427                    }
1428                    modal.dispatchEvent(new Event('lpui-show'));
1429                    window.dispatchEvent(new CustomEvent('lpui-modal-show', { detail: { id: modalId } }));
1430                }
1431
1432                const visibleModals = document.querySelectorAll('.modal.visible');
1433
1434                if (visibleModals.length > 1) {
1435
1436                    const maxZIndex = Array.from(visibleModals).reduce((maxZIndex, modal) => {
1437                        const zIndex = window.getComputedStyle(modal).zIndex;
1438                        const parsedZIndex = zIndex !== 'auto' ? parseInt(zIndex) : 0;
1439                        return Math.max(maxZIndex, parsedZIndex);
1440                    }, 0);
1441
1442                    modal.style.zIndex = maxZIndex + 1;
1443                }
1444
1445            }
1446
1447            function _hideModal (modalEl) {
1448                if (!modalEl) {
1449                    return;
1450                }
1451                if (!modalEl.classList.contains('visible')) {
1452                    return;
1453                }
1454                modalEl.classList.remove('visible');
1455                modalEl.style.zIndex = '';
1456                modalEl.dispatchEvent(new Event('lpui-hide'));
1457                var modalId = modalEl.getAttribute('id');
1458                if (modalId) {
1459                    window.lpUI.releaseScrollLock(modalId);
1460                    window.dispatchEvent(new CustomEvent('lpui-modal-hide', { detail: { id: modalId } }));
1461                }
1462            }
1463
1464            function hideModal (modalId) {
1465                _hideModal(document.getElementById(modalId));
1466            }
1467
1468            function hideClosestModal (el) {
1469              const modal = el?.closest('.modal');
1470              if (!modal) {
1471                return;
1472              }
1473              if (modal.classList) {
1474                _hideModal(modal);
1475                return;
1476              }
1477              if (modal.length && modal[0].classList) {
1478                _hideModal(modal[0]);
1479              }
1480            }
1481
1482            window.lpUI = {
1483                sideMenuHide: sideMenuHide,
1484                sideMenuShow: sideMenuShow,
1485                sideMenuToggle: sideMenuToggle,
1486                requestScrollLock: requestScrollLock,
1487                releaseScrollLock: releaseScrollLock,
1488                showModal: showModal,
1489                hideModal: hideModal,
1490                hideClosestModal: hideClosestModal
1491            }
1492        })();
1493
1494        var stringifyPrimitive = function(v) {
1495            switch (typeof v) {
1496                case 'string':
1497                    return v;
1498
1499                case 'boolean':
1500                    return v ? 'true' : 'false';
1501
1502                case 'number':
1503                    return isFinite(v) ? v : '';
1504
1505                default:
1506                    return '';
1507            }
1508        };
1509
1510        function objectToQuerystring(obj, sep, eq, name) {
1511            // https://github.com/Gozala/querystring/blob/master/encode.js
1512            sep = sep || '&';
1513            eq = eq || '=';
1514            if (obj === null) {
1515                obj = undefined;
1516            }
1517
1518            if (typeof obj === 'object') {
1519                return Object.keys(obj).map(function(k) {
1520                    var ks = encodeURIComponent(stringifyPrimitive(k)) + eq;
1521                    if (Array.isArray(obj[k])) {
1522                        return obj[k].map(function(v) {
1523                            return ks + encodeURIComponent(stringifyPrimitive(v));
1524                        }).join(sep);
1525                    } else {
1526                        return ks + encodeURIComponent(stringifyPrimitive(obj[k]));
1527                    }
1528                }).filter(Boolean).join(sep);
1529
1530            }
1531
1532            if (!name) return '';
1533            return encodeURIComponent(stringifyPrimitive(name)) + eq +
1534                    encodeURIComponent(stringifyPrimitive(obj));
1535        }
1536
1537        function getPath(url, options) {
1538            var parser = document.createElement('a');
1539            parser.href = url || '';
1540            var path = parser.pathname || '';
1541            if (path[0] !== '/') {
1542              // IE does not return path starting with a slash
1543              path = '/' + path;
1544            }
1545
1546            if (options && options.queryString) {
1547                path += parser.search;
1548            }
1549
1550            return path;
1551        }
1552
1553        function getMLSAutocomplete(keyword) {
1554            var searchURL = window.location.protocol + '//' + window.location.hostname + '/home-search/auto_complete';
1555            var query = {
1556                kind: 'listings',
1557                query: keyword
1558            };
1559
1560            return superagent
1561                .get(searchURL)
1562                .query(query)
1563                .then(function(res) {
1564                    var data = res.body || [];
1565                    // Array of listing_auto_complete documents: id, display_address, city, state,
1566                    // price, sold_price, status, status_modified_at, photo_urls (array of URLs).
1567
1568                    return data;
1569                });
1570        }
1571
1572        function getMLSAutocompleteWithFilters(keyword, filters = {}) {
1573            var searchURL = window.location.protocol + '//' + window.location.hostname + '/home-search/auto_complete';
1574
1575            return superagent
1576                .get(searchURL)
1577                .query({ kind: 'listings', query: keyword, ...filters })
1578                .then(function(res) {
1579                    // Same response shape as getMLSAutocomplete.
1580                    return res.body || [];
1581                });
1582        }
1583
1584        function makeMlsLink(data) {
1585            // Code Dupe from utils/googlePlace
1586            // mapping of google data type to mls data type
1587            var mapping = {
1588                neighborhood: 'neighborhood',
1589                locality: 'place',
1590                administrative_area_level_2: 'county',
1591                administrative_area_level_1: 'state',
1592                postal_code: 'postalcode',
1593            };
1594
1595            function _filterTypes(types) {
1596                return types.filter(function(type) { return type !== 'political' });
1597            }
1598
1599            if (!data || !Object.keys(data).length) {
1600                return '/home-search/listings';
1601            }
1602
1603            var newData = {};
1604            _filterTypes(data.types).forEach(function(type) {
1605                if (mapping[type]) {
1606                    newData.search_type = mapping[type];
1607                }
1608            });
1609            newData.omnibox = data.formatted_address;
1610            data.address_components.forEach(function(component) {
1611                _filterTypes(component.types).forEach(function(type) {
1612                    if (mapping[type]) {
1613                        newData[mapping[type]] = component.long_name;
1614                    }
1615                });
1616            });
1617            var bounds = data.geometry.bounds;
1618            var convertedData = Object.assign(bounds, newData);
1619
1620            return '/home-search/listings?' + objectToQuerystring(convertedData);
1621        }
1622
1623        function debounce(func, wait) {
1624            let timeout;
1625            return function(...args) {
1626                const context = this;
1627                clearTimeout(timeout);
1628                timeout = setTimeout(() => func.apply(context, args), wait)
1629            }
1630        }
1631
1632        // Global methods / variables that can be accessed by element js
1633        window.luxuryPresence = {
1634            ...window.luxuryPresence,
1635            defaults: {
1636                companyId: '71d4b9b5-d2d9-47f2-ab55-cbbab0ea5089',
1637                apiGatewayUrl: '/api-gw',
1638                routerUrl: '/api-nv',
1639                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\
1639n    }\n    propertiesCount(\n    \n      agentIds: $agentIds\n      teamIds: $teamIds\n      propertyId: $propertyId\n      propertyIds: $propertyIds\n      prioritizeIds: $prioritizeIds\n      companyId: $companyId\n      network: $network\n      networkId: $networkId\n      statusId: $statusId\n      statusIds: $statusIds\n      excludeStatusId: $excludeStatusId\n      neighborhoodId: $neighborhoodId\n      neighborhoodIds: $neighborhoodIds\n      officeIds: $officeIds\n      addressState: $addressState\n      addressCity: $addressCity\n      developmentId: $developmentId\n      featuredListing: $featuredListing\n      leaseProperty: $leaseProperty\n      search: $search\n      searchTermMode: $searchTermMode\n      salesPriceGTE: $salesPriceGTE\n      salesPriceLTE: $salesPriceLTE\n      leasePriceGTE: $leasePriceGTE\n      leasePriceLTE: $leasePriceLTE\n      livingSpaceSizeGTE: $livingSpaceSizeGTE\n      livingSpaceSizeLTE: $livingSpaceSizeLTE\n      bathCountGTE: $bathCountGTE\n      bathCountLTE: $bathCountLTE\n      bedroomCountGTE: $bedroomCountGTE\n      bedroomCountLTE: $bedroomCountLTE\n      architectureStyle: $architectureStyle\n      lifestyle: $lifestyle\n      propertyTypeId: $propertyTypeId\n      propertyTypeIds: $propertyTypeIds\n      spaceTypeIds: $spaceTypeIds\n      tag: $tag\n      archived: $archived\n      globalProperty: $globalProperty\n      withGeo: $withGeo\n      openHouse: $openHouse\n      displayMLSListings: $displayMLSListings\n      advancedFilters: $advancedFilters\n      seasonalPriceId: $seasonalPriceId\n\n    ) {\n      count\n    }\n  }\n","pressReleases":"\n  query PressReleases (\n    $companyId: ID\n    $pressReleaseIds: [ID!]\n    $offset: Int\n    $limit: Int\n    $sort: String\n    $sortDir: String\n    $search: String\n    $categories: [String!]\n    $propertyId: [ID!]\n    $developmentId: [ID!]\n    $agentId: [ID!]\n    $teamId: [ID!]\n    $year: [Int!]\n  ) {\n    pressReleases (\n      companyId: $companyId\n      pressReleaseIds: $pressReleaseIds\n      offset: $offset\n      limit: $limit\n      sort: $sort\n      sortDir: $sortDir\n      search: $search\n      categories: $categories\n      propertyId: $propertyId\n      developmentId: $developmentId\n      agentId: $agentId\n      teamId: $teamId\n      year: $year\n    ) {\n      items {\n        id\n        title\n        description\n        author\n        externalUrl\n        media {\n          smallUrl\n          mediumUrl\n          largeUrl\n          xLargeUrl\n          xxLargeUrl\n          height\n          width\n          altTagText\n        }\n        publishedAt\n        categories\n      }\n      total\n    }\n  }\n","posts":"\n  query Posts (\n    $companyId: String\n    $postId: [ID!]\n    $slug: String\n    $offset: Int\n    $limit: Int\n    $sort: String\n    $sortDir: String\n    $search: String\n    $featured: Boolean\n    $categoryId: [String!]\n    $neighborhoodId: [String!]\n  ) {\n    posts (\n      companyId: $companyId\n      postId: $postId\n      slug: $slug\n      offset: $offset\n      limit: $limit\n      sort: $sort\n      sortDir: $sortDir\n      search: $search\n      featured: $featured\n      postStatusId: \"5f528253-abb7-484e-95c3-330269ac1102\"\n      categoryId: $categoryId\n      neighborhoodId: $neighborhoodId\n    ) {\n      items {\n        id\n        postId\n        title\n        subtitle\n        description\n        status: postStatus\n        featured\n        slug\n        categories {\n          id\n          name\n        }\n        createdAt\n        publishedAt\n        scheduledAt\n        createdBy {\n          ... on Agent {\n            firstName\n            lastName\n          }\n        }\n        customAuthor\n        media {\n          smallUrl\n          mediumUrl\n          largeUrl\n          xLargeUrl\n          xxLargeUrl\n          height\n          width\n          altTagText\n        }\n        seoTitle\n        seoDescription\n      }\n      total\n    }\n  }\n","testimonials":"\n  query Testimonials (\n    $companyId: String\n    $agentId: ID\n    $teamId: ID\n    $testimonialIds: [ID!]\n    $offset: Int\n    $limit: Int\n    $sort: String\n    $sortDir: String\n    $search: String\n  ) {\n    testimonials (\n      companyId: $companyId\n      agentId: $agentId\n      teamId: $teamId\n      testimonialIds: $testimonialIds\n      offset: $offset\n      limit: $limit\n      sort: $sort\n      sortDir: $sortDir\n      search: $search\n    ) {\n      items {\n        id\n        testimonialId\n        body\n        author\n        position\n        media {\n          smallUrl\n          mediumUrl\n          largeUrl\n          xLargeUrl\n          xxLargeUrl\n          height\n          width\n          altTagText\n        }\n        seoTitle\n        seoDescription\n        agents {\n          slug\n          email\n          firstName\n          lastName\n          avatar {\n            smallUrl\n            height\n            width\n          }\n        }\n      }\n      total\n    }\n  }\n","neighborhoods":"\n  query Neighborhoods (\n    $neighborhoodId: ID\n    $companyId: String\n    $search: String\n    $tag: String\n    $offset: Int\n    $limit: Int\n    $sort: String\n    $sortDir: SortDirectionEnum\n  ) {\n    neighborhoods (\n      neighborhoodId: $neighborhoodId\n      companyId: $companyId\n      search: $search\n      tag: $tag\n      offset: $offset\n      limit: $limit\n      sort: $sort\n      sortDir: $sortDir\n    ) {\n      id\n      name\n      description\n      descriptionShort\n      slug\n      tags\n      googlePlaceData\n      mlsLink\n      createdAt\n      media {\n        smallUrl\n        mediumUrl\n        largeUrl\n        xLargeUrl\n        xxLargeUrl\n        height\n        width\n      }\n      seoTitle\n      seoDescription\n    }\n    neighborhoodsCount(\n      companyId: $companyId\n      search: $search\n      tag: $tag\n    ) {\n      count\n    }\n  }\n","developments":"\n  query Developments (\n    $developmentId: ID\n    $companyId: String\n    $offset: Int\n    $limit: Int\n    $sort: String\n    $sortDir: SortDirectionEnum\n    $search: String\n    $tag: [String!]\n    $agentId: [ID!]\n    $neighborhoodId: ID\n    $neighborhoodIds: [ID!]\n  ) {\n    developments (\n      developmentId: $developmentId\n      companyId: $companyId\n      offset: $offset\n      limit: $limit\n      sort: $sort\n      sortDir: $sortDir\n      search: $search\n      tag: $tag\n      agentId: $agentId\n      neighborhoodId: $neighborhoodId\n      neighborhoodIds: $neighborhoodIds\n    ) {\n      id\n      name\n      description\n      descriptionShort\n      slug\n      createdAt\n      media {\n        smallUrl\n        mediumUrl\n        largeUrl\n        xLargeUrl\n        xxLargeUrl\n        height\n        width\n      }\n      googlePlaceData\n      seoTitle\n      seoDescription\n      tags\n    }\n    developmentsCount(\n      companyId: $companyId\n      search: $search\n      tag: $tag\n      agentId: $agentId\n      neighborhoodId: $neighborhoodId\n      neighborhoodIds: $neighborhoodIds\n    ) {\n      count\n    }\n  }\n","pois":"\n  query PointsOfInterest (\n    $regionId: UUID!\n    $radiu
1639s: 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"},
1640                propertyPlaceholderImage: {"id":"86f4a1ee-ad27-463d-a7fe-5ef9cd4afdd7","alt":null,"bytes":68170,"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/6b8afe1d-64d4-43b2-8a9b-173671403481","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/6b8afe1d-64d4-43b2-8a9b-173671403481","authorUrl":null,"createdAt":"2025-12-04T23:18:40.490Z","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/6b8afe1d-64d4-43b2-8a9b-1
164073671403481","sourceUrl":null,"updatedAt":"2025-12-04T23:18:40.490Z","xLargeUrl":"https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/6b8afe1d-64d4-43b2-8a9b-173671403481","__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/6b8afe1d-64d4-43b2-8a9b-173671403481","description":null,"displayName":"property-placeholder","originalUrl":"https://media-production.lp-cdn.com/cdn-cgi/image/format=auto,quality=85/https://media-production.lp-cdn.com/media/6b8afe1d-64d4-43b2-8a9b-173671403481","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/6b8afe1d-64d4-43b2-8a9b-173671403481","originalFileName":"Property Placeholder","cloudinaryPublicId":"6b8afe1d-64d4-43b2-8a9b-173671403481"}
1641            },
1642            objectToQuerystring: objectToQuerystring,
1643            getPath: getPath,
1644            getMLSAutocomplete: getMLSAutocomplete,
1645            getMLSAutocompleteWithFilters: getMLSAutocompleteWithFilters,
1646            makeMlsLink: makeMlsLink,
1647            debounce: debounce,
1648        };
1649
1650        var wowOffset = 100;
1651    </script>
1651
1652    
1652<script>
1653        (()=>{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)];
1653let 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"&#10;";if(/^<\/p\s*>$/.test(s)){n.lastIndex=i;let t=n.exec(e);if(t&&"<"===t[0][0])return"&#10;"}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;
1653i&&(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())),`
1653<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}
1653return 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
1653ontact 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
1653ourceResource,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=([^;
1653]+)/);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=`
1654  query PropertyDisclaimers($input: PropertyDisclaimersInput!) {
1655    propertyDisclaimers(input: $input) {
1656      feedId
1657      listingId
1658      resolvedFromListing
1659      listingCardAttribution
1660      listingDetailCourtesy
1661      listingDetailFooter
1662      logo
1663    }
1664  }
1665`;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 >
1665 .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=)
1665)|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=`
1666      <div id="modal-${i.id}" class="modal visible">
1667        <div class="modal-content">
1668          <div class="lightbox-video">
1669            <div class="video-player">
1670              <div class="embed-container">
1671                ${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>`}
1672              </div>
1673            </div>
1674          </div>
1675        </div>
1676        <button class="close lp-close" type="button" aria-label="close modal"><span class="lp-close-icon" aria-hidden="true"></span></button>
1677      </div>
1678    `;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
1678=>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");
1678let 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
1678URIComponent(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=`
1679      <button class="lp-lightbox__close" aria-label="close modal"></button>
1680      <div class="lp-lightbox__content">
1681        <div class="lp-lightbox__carousel splide" role="group" aria-label="Image Gallery">
1682          <div class="splide__arrows">
1683            <button class="splide__arrow splide__arrow--prev lp-lightbox-arrow lp-lightbox-arrow--prev"></button>
1684            <button class="splide__arrow splide__arrow--next lp-lightbox-arrow lp-lightbox-arrow--next"></button>
1685          </div>
1686          <div class="splide__track">
1687            <ul class="splide__list"></ul>
1688          </div>
1689        </div>
1690      </div>
1691    `,"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
1691h(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=`
1692        <button class="lp-lightbox__close" aria-label="close modal"></button>
1693        <div class="lp-lightbox__content">
1694          <div class="lp-lightbox__carousel"></div>
1695        </div>
1696      `,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"}
1696)),(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"];
1696return 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=`
1697      query {
1698        validSession {
1699          success
1700        }
1701      }
1702    `;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","
1702spaceTypeIds","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})}})();
1703//# sourceMappingURL=lp-sdk.js.map
1704
1705    </script>
1705
1706
1707    
1707<script>
1708        var lpGlobalInitialized = false;
1709
1710        function lpGlobalInit () {
1711          if (lpGlobalInitialized) {
1712            return;
1713          }
1714            lpGlobalInitialized = true;
1715            // Initialize wow animation plugin only according to turbolinks
1716            var wow;
1717            if (window.WOW) {
1718                wow = new WOW({
1719                    animateClass: 'animated',
1720                    offset: wowOffset,
1721                    live: false,
1722                    callback: function(box) {}
1723                });
1724            }
1725            // Initialize handlebar helpers only once
1726            function handlebarsInit() {
1727              if (!window.Handlebars) {
1728                return;
1729              }
1730              HandlebarsIntl.registerWith(Handlebars);
1731              Handlebars.registerHelper(window.luxuryPresence.handlebarsHelpersFactory(Handlebars));
1732            }
1733
1734            handlebarsInit();
1735
1736              var modalContentUrl = "/modals.html";
1737                const modalsContainer = document.getElementById('modals');
1738                if (modalsContainer) {
1739                  fetch(modalContentUrl).then(function(res) {
1740                    if (!res.ok) {
1741                      throw new Error(`HTTP error! Status: ${res.status}`);
1742                    }
1743                    return res.text();
1744                  }).then(function(resultText) {
1745                    modalsContainer.innerHTML = resultText;
1746
1747                    // now we need to execute all script elements
1748                    Array.from(modalsContainer.getElementsByTagName('script')).forEach(function (s) {
1749                      const script  = document.createElement("script");
1750                      script.text = s.innerHTML;
1751                      Array.from(s.attributes).forEach(function (a) {
1752                        script.setAttribute(a.name, a.value);
1753                      })
1754                      s.parentNode.replaceChild(script, s);
1755                    });
1756
1757                    try {
1758                      window.luxuryPresence.modals.initialize(window.luxuryPresence._modalIncludes);
1759                      window.luxuryPresence.contactForms.initialize({ selector: '#modals' });
1760                      window.luxuryPresence.validation.initialize({ selector: '#modals' });
1761                      window.luxuryPresence.oauth.initialize({
1762                        googleSignOnEnabled: true,
1763                        iframe: false });
1764                    } catch (e) {
1765                      console.log(e);
1766                    }
1767                    document.querySelectorAll('.modals > .modal .close').forEach(closeModalBtn => {
1768                      closeModalBtn.addEventListener('click', function() {
1769                        window.lpUI.hideClosestModal(closeModalBtn);
1770                      });
1771                    });
1772                  }).catch((e) => console.log(e));
1773                }
1774            /* Initialize Luxury Presence SDK */
1775            try {
1776                window.luxuryPresence.config.setCompany("71d4b9b5-d2d9-47f2-ab55-cbbab0ea5089", {});
1777                window.luxuryPresence.config.setWebsite("0a323938-1109-46c4-b822-46ace916f333", {
1778                    myhomeDashboardEnabled: false,
1779                    mlsEnabled: true,
1780                    hstValuationRedirectEnabled: true,
1781                    hvStepTwoCaptureEnabled: false
1782                });
1783                const url = new URL(window.location.href);
1784                const shareId = url.searchParams.get('shareId');
1785                window.luxuryPresence.config.setPage("2de89b36-fa79-47c8-9117-7e9c999a7750", {
1786                    sourceResource: "",
1787                    pageElementId: "",
1788                    pageQueryVariables: {},
1789                    shareId: "",
1790                });
1791                window.luxuryPresence.config.setWebsiteApiGatewayUrl("https://wgw.luxurypresence.com", {});
1792                window.luxuryPresence.config.setBuyerSellerServiceUrl("https://bss.luxurypresence.com", {});
1793                    window.luxuryPresence.config.setDivolteServiceUrl("https://t.luxurypresence.com", {});
1794                  window.luxuryPresence.config.setEventBusUrl("https://cdn.luxurypresence.com/scripts/event-bus-js", {});
1795                  window.luxuryPresence.config.setEventBus({
1796                    enabled: true,
1797                    apiKey: "phc_PMYT31xlmXBaTCwpIRx1v6RrpLVZIuP47N3mOT6KLnr",
1798                    url: "https://p.luxurypresence.com",
1799                  });
1800                window.luxuryPresence.config.setTemplateId("0c2b9641-6f2a-40f2-a2e0-dabc022eb278", {});
1801                window.luxuryPresence.config.setLeadIngesterUrl("https://leads.luxurypresence.com", {});
1802                window.luxuryPresence.buttons.initialize({});
1803                    window.luxuryPresence.consent.initialize({ provider: 'lp-consent' });
1804                window.luxuryPresence.contactForms.initialize({});
1805                window.luxuryPresence.validation.initialize({});
1806                window.luxuryPresence.expandSliders.initialize({});
1807                window.luxuryPresence.oauth.initialize({ googleSignOnEnabled: true, iframe: false });
1808                window.luxuryPresence.qualifyingQuestionsModal.initialize({ qualifyingQuestionsModalEnabled: true });
1809            } catch (e) {
1810                console.log(e);
1811            }
1812
1813            /* Inject Section Specific Javascript */
1814                try {
1815(function init(sectionDomId) {
1816  const disclaimerLabel = document.querySelector('#' + sectionDomId + ' .lp-tcr-content');
1817  if (disclaimerLabel) {
1818    const input = disclaimerLabel.querySelector('input');
1819    if (input) {
1820      input.setAttribute('id', `${sectionDomId}-termsAccepted`);
1821      input.value = 'true';
1822      const label = document.createElement('label');
1823      label.setAttribute('for', `${sectionDomId}-termsAccepted`);
1824      label.classList.add('lp-visually-hidden');
1825      label.textContent = 'Opt in/Disclaimer Consent:';
1826      disclaimerLabel.prepend(label);
1827    }
1828  }
1829  function setHttp(link) {
1830    if (link.search(/^http[s]?\:\/\/|\//) == -1) {
1831      link = 'https://' + link;
1832    }
1833    return link;
1834  }
1835  const socialLinks = document.querySelectorAll('#' + sectionDomId + ' .socials__link, #' + sectionDomId + ' .lp-socials__link');
1836  socialLinks.forEach(linkElement => {
1837    const href = linkElement.getAttribute('href');
1838    if (href) {
1839      linkElement.setAttribute('href', setHttp(href));
1840    }
1841  });
1842  const redirectLink = $('#' + sectionDomId + ' .redirect-link');
1843  if (redirectLink.length) {
1844    const rawHref = setHttp(redirectLink.attr('href'));
1845    let formEvent;
1846    if (rawHref) {
1847      formEvent = redirectLink.data('redirect') ? 'formsubmitted' : 'reset';
1848      $('#' + sectionDomId + ' .contact-form').find('form').on(formEvent, function () {
1849        redirectLink.attr('href', rawHref);
1850        redirectLink[0].click();
1851      });
1852    }
1853  }
1854})('modal-global-contact-us');
1855} catch(e) {
1856console.log(e);
1857}
1858                
1859                try {
1860(function init(sectionDomId) {
1861  const $section = $('#' + sectionDomId);
1862  const $hamburger = $section.find('.hamburger-component');
1863  function onSideMenuShow() {
1864    if (!$hamburger.hasClass('active')) {
1865      $hamburger.addClass('active');
1866    }
1867  }
1868  function onSideMenuHide() {
1869    $hamburger.removeClass('active');
1870  }
1871  const $window = $(window);
1872  $window.on('lpui-sidemenu-show.lpui-auto-clean', onSideMenuShow);
1873  $window.on('lpui-sidemenu-hide.lpui-auto-clean', onSideMenuHide);
1874  const $subContainers = $section.find('.navigation__item.sub-nav-container');
1875  $subContainers.hover(function () {
1876    $(this).find('.sub-nav').addClass('visible');
1877  }, function () {
1878    $(this).find('.sub-nav').removeClass('visible');
1879  });
1880  $window.on('click.lpui-auto-clean', function () {
1881    $('.sub-nav-container.visible-dropdown').removeClass('visible-dropdown');
1882  });
1883  let fixedWidth = 0;
1884  const rightPad = 20;
1885  function fixSubsPosition() {
1886    const wWidth = window.innerWidth;
1887    if (innerWidth === fixedWidth) {
1888      return;
1889    }
1890    fixedWidth = wWidth;
1891    $subContainers.each(function () {
1892      const $sub = $(this).find('.sub-nav');
1893      $sub[0].style.right = '';
1894      const sRect = $sub[0].getBoundingClientRect();
1895      const sRight = sRect.left + sRect.width;
1896      if (sRight > wWidth - rightPad) {
1897        const parentRect = $sub[0].offsetParent.getBoundingClientRect();
1898        const parentRight = parentRect.left + parentRect.width;
1899        $sub[0].style.right = `${parentRight - wWidth + rightPad}px`;
1900      }
1901    });
1902  }
1903  var debouncer;
1904  $window.on('resize.lpui-auto-clean', function () {
1905    clearTimeout(debouncer);
1906    debouncer = setTimeout(fixSubsPosition, 500);
1907  });
1908  fixSubsPosition();
1909  if ($('.property-intro').length || $('.property-intro-2').length) {
1910    $('nav').addClass('dark-opening');
1911    $("#global-navbar").css({
1912      "background-color": "rgb(26, 26, 26)",
1913      "color": "rgb(255, 255, 255)"
1914    });
1915  }
1916  function initAutoTruncateMenu() {
1917    const $navbar = $section.find('.navbar');
1918    const $navList = $section.find('.navigation > ul');
1919    if (!$navbar.length || !$navList.length) {
1920      return;
1921    }
1922    const $logo = $section.find('.logo');
1923    const $buttonsWrapper = $section.find('.buttons-wrapper');
1924    const $allItems = $navList.children('.navigation__item');
1925    const $phoneItem = $allItems.filter(function () {
1926      return $(this).find('a[href^="tel:"]').length > 0;
1927    });
1928    const $menuItems = $allItems.not($phoneItem);
1929    if (!$menuItems.length) {
1930      return;
1931    }
1932    const buffer = 8;
1933    function measureFixedWidth() {
1934      let width = buffer;
1935      if ($logo.length) {
1936        width += $logo.outerWidth(true) || 0;
1937      }
1938      if ($buttonsWrapper.length) {
1939        width += $buttonsWrapper.outerWidth(true) || 0;
1940      }
1941      if ($phoneItem.length) {
1942        width += $phoneItem.outerWidth(true) || 0;
1943      }
1944      return width;
1945    }
1946    function truncateMenu() {
1947      if (!$navList.is(':visible')) {
1948        return;
1949      }
1950      $menuItems.css('display', '');
1951      const availableWidth = $navbar[0].getBoundingClientRect().width - measureFixedWidth();
1952      let widthSoFar = 0;
1953      let overflowed = false;
1954      $menuItems.each(function () {
1955        const $item = $(this);
1956        if (overflowed) {
1957          $item.css('display', 'none');
1958          return;
1959        }
1960        widthSoFar += $item.outerWidth(true);
1961        if (widthSoFar > availableWidth) {
1962          $item.css('display', 'none');
1963          overflowed = true;
1964        }
1965      });
1966    }
1967    let truncateFrame;
1968    function scheduleTruncate() {
1969      if (truncateFrame) {
1970        return;
1971      }
1972      truncateFrame = window.requestAnimationFrame(function () {
1973        truncateFrame = null;
1974        truncateMenu();
1975      });
1976    }
1977    scheduleTruncate();
1978    if (window.ResizeObserver) {
1979      const resizeObserver = new ResizeObserver(scheduleTruncate);
1980      resizeObserver.observe($navbar[0]);
1981    } else {
1982      $(window).on('resize.lpui-auto-truncate', scheduleTruncate);
1983    }
1984    $section.find('img').on('load.lpui-auto-truncate', scheduleTruncate);
1985    $(window).on('load.lpui-auto-truncate', scheduleTruncate);
1986    if (document.fonts && document.fonts.ready) {
1987      document.fonts.ready.then(scheduleTruncate);
1988    }
1989  }
1990  initAutoTruncateMenu();
1991})('global-navbar');
1992} catch(e) {
1993console.log(e);
1994}
1995                try {
1996(function init(sectionDomId, options) {
1997  var elementSelector = options.elementSelector || 'nav';
1998  var element = document.querySelector(elementSelector);
1999  var sections = document.querySelectorAll('body > section');
2000  var subNavContainers = element.querySelectorAll('.sub-nav');
2001  var initialBackgroundColor = options.initialBackgroundColor || element.style.backgroundColor;
2002  var backgroundColorScroll = options.backgroundColorScroll || '#191919';
2003  var fontColor = options.fontColor || '#fff';
2004  var fontColorScroll = options.fontColorScroll || '#000';
2005  var didScroll = false;
2006  var lastScrollTop = 0;
2007  var delta = 5;
2008
2009  // eslint-disable-next-line sonarjs/no-collapsible-if
2010  if (wow) {
2011    // Wowjs might not trigger for position fixed elements
2012    if (window.scrollY > 0) {
2013      element.querySelectorAll('.wow').forEach(el => wow.show(el));
2014    }
2015  }
2016  function adjustNavPinState() {
2017    // Remove 'visible' class from all subNavContainers
2018    for (let i = 0; i < subNavContainers.length; i++) {
2019      subNavContainers[i].classList.remove('visible');
2020    }
2021    if (window.scrollY > 0) {
2022      element.style.backgroundColor = backgroundColorScroll;
2023      element.style.color = fontColorScroll;
2024      element.classList.add('scroll');
2025    } else {
2026      element.style.backgroundColor = initialBackgroundColor;
2027      element.style.color = fontColor;
2028      element.classList.remove('scroll');
2029    }
2030  }
2031  adjustNavPinState();
2032  function onScroll() {
2033    didScroll = true;
2034  }
2035  window.addEventListener('scroll', onScroll);
2036
2037  // eslint-disable-next-line
2038  var debounceInterval = setInterval(() => {
2039    if (didScroll) {
2040      // eslint-disable-next-line
2041      hasScrolled();
2042      didScroll = false;
2043    }
2044  }, 250);
2045  function hasScrolled() {
2046    adjustNavPinState();
2047    // eslint-disable-next-line
2048    var navbarHeight = element.offsetHeight;
2049    // eslint-disable-next-line
2050    var st = window.scrollY;
2051
2052    // Make sure they scroll more than delta
2053    if (Math.abs(lastScrollTop - st) <= delta) {
2054      return;
2055    }
2056    if (st > lastScrollTop && st > navbarHeight) {
2057      // Scroll Down
2058      element.style.transform = `translateY(-${navbarHeight}px) scaleY(0)`;
2059      document.documentElement.style.setProperty('--global-header-height', '0px');
2060
2061      // Some sections "follow" the navbar with class sticky (i.e. Producer search)
2062      sections.forEach(section => {
2063        if (section.classList.contains('sticky')) {
2064          section.style.top = '0px';
2065        }
2066      });
2067    } else {
2068      // Scroll Up
2069      // eslint-disable-next-line
2070      if (st + window.innerHeight < document.documentElement.scrollHeight) {
2071        element.style.transform = `translateY(0) scaleY(1)`;
2072        document.documentElement.style.setProperty('--global-header-height', `${navbarHeight}px`);
2073        sections.forEach(section => {
2074          if (section.classList.contains('sticky')) {
2075            section.style.top = `${navbarHeight}px`;
2076          }
2077        });
2078      }
2079    }
2080    lastScrollTop = st;
2081  }
2082})('NAVBAR', JSON.parse("{\"fontColor\":\"#fff\",\"elementSelector\":\"nav\",\"fontColorScroll\":\"#fff\",\"initialFontColor\":\"#fff\",\"backgroundColorScroll\":\"#1a1a1a\",\"initialBackgroundColor\":\"rgba(0,0,0,0)\"}"));
2083} catch(e) {
2084console.log(e);
2085}
2086                try {
2087(function init(sectionDomId) {
2088  var $sidemenu = $('#' + sectionDomId);
2089  var $link = $sidemenu.find('.sub-nav-link');
2090  var shown = false;
2091  function onShow() {
2092    if (shown) {
2093      return;
2094    }
2095    shown = true;
2096    window.lpUI.requestScrollLock(sectionDomId);
2097  }
2098  function onHide() {
2099    if (!shown) {
2100      return;
2101    }
2102    shown = false;
2103    window.lpUI.releaseScrollLock(sectionDomId);
2104    $('body').removeClass('locked');
2105    $('.hamburger.active').removeClass('active');
2106  }
2107  const handleLinkClick = href => {
2108    if (href && href.match(/^#[^#].*$/)) {
2109      window.lpUI.sideMenuHide();
2110    }
2111  };
2112  $sidemenu.find('a').click(function () {
2113    const href = $(this).attr('href');
2114    handleLinkClick(href);
2115  });
2116  $sidemenu.on('lpui-show', onShow);
2117  $sidemenu.on('lpui-hide', onHide);
2118  $link.click(function () {
2119    lpUI.sideMenuHide();
2120  });
2121})('global-sidemenu');
2122} catch(e) {
2123console.log(e);
2124}
2125                
2126                try {
2127(function init(footerId) {
2128  var textContent = $(".text_content_wrap p").text().trim().length;
2129  const socialLinks = $(`#${footerId} .lp-socials__link`);
2130  if (textContent < 1) {
2131    $(".text_content_wrap").remove();
2132    $(".second_text_footer").css({
2133      'margin-bottom': 0
2134    });
2135  }
2136  if (socialLinks.length > 0) {
2137    socialLinks.attr('data-wow-offset', '10');
2138  }
2139  if ($(window).width() > 1280) {
2140    let footer = document.querySelector("#" + footerId);
2141    let copyrightElem = footer.querySelector(".copy_zone");
2142    if (copyrightElem) {
2143      copyrightElem.style.whiteSpace = "nowrap";
2144      let nowrapElemWidth = copyrightElem.clientWidth;
2145      copyrightElem.style.whiteSpace = "";
2146      let normalElemWidth = copyrightElem.clientWidth;
2147      if (nowrapElemWidth > normalElemWidth) {
2148        footer.querySelector(".form-col--socials").classList.add("form-col--xl-auto");
2149      }
2150    }
2151  }
2152  const form = $("#" + footerId).find("form");
2153  const redirectLink = $('#' + footerId + ' .redirect-link');
2154  form.on("reset", function () {
2155    redirectPage(redirectLink);
2156  });
2157  function redirectPage(link) {
2158    if (link.length) {
2159      const rawHref = link.attr('href');
2160      link.attr('href', setHttp(rawHref));
2161      link[0].click();
2162    }
2163  }
2164  function setHttp(link) {
2165    if (link.search(/^http[s]?\:\/\/|\//) == -1) {
2166      link = 'http://' + link;
2167    }
2168    return link;
2169  }
2170})('global-footer');
2171} catch(e) {
2172console.log(e);
2173}
2174                
2175                try {
2176(function init(sectionDomId) {
2177  var _section = $('#' + sectionDomId);
2178  var _footer = document.getElementById('global-footer');
2179  const redirectLink = _section.find('.js-redirect-link');
2180  function setHttp(link) {
2181    if (link.search(/^(http[s]?\:\/\/|\/)/) == -1) {
2182      link = 'https://' + link;
2183    }
2184    return link;
2185  }
2186  function redirectPage(link) {
2187    if (link.length) {
2188      window.location.href = setHttp(link.attr('href'));
2189    }
2190  }
2191  const emailInput = _section.find('.js-email-input');
2192  const emailRegex = /[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~\-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)+/;
2193  emailInput.on('input', function () {
2194    if (emailRegex.test(this.value)) {
2195      this.setCustomValidity('');
2196    } else {
2197      this.setCustomValidity('Please enter a valid email address.');
2198    }
2199    this.reportValidity();
2200  });
2201  _section.find('input[name="name"]').on("keyup", function () {
2202    if (this.value.replaceAll(/\d/g, "").trim().split(" ").length < 2 || this.value.replaceAll(/\d/g, "").trim() === "") {
2203      this.setCustomValidity("Please input your first name and last name.");
2204    } else {
2205      this.setCustomValidity("");
2206    }
2207  });
2208  _section.find('form').on("reset", function () {
2209    $(this).addClass("show-success");
2210    redirectPage(redirectLink);
2211  });
2212  $(window).scroll(function () {
2213    if ($(this).scrollTop() >= 150) _section.find('.btn-holder').addClass('visible');else _section.find('.btn-holder').removeClass('visible');
2214  });
2215  _section.find('.close-btn, .connect-btn').click(function () {
2216    _section.find('.pop-up').toggle();
2217    _section.find('.btn-holder').toggle();
2218  });
2219  if (!_footer) return;
2220  const observer = new IntersectionObserver(entries => {
2221    entries.forEach(entry => {
2222      if (entry.isIntersecting) _section.hide();else _section.show();
2223    });
2224  }, {
2225    threshold: 0.1
2226  });
2227  observer.observe(_footer);
2228  function selectToDropdown(selectItem) {
2229    let customDropdown = `
2230        <div class="custom-select" role="presentation">
2231        <button class="custom-select-toggle is-placeholder" type="button" aria-haspopup="true" aria-expanded="false"></button>
2232        <div class="custom-select-menu" style="display: none;max-height: none;">
2233        <div class="custom-select-content">
2234        </div>
2235        </div>
2236        </div>`;
2237    $(customDropdown).insertAfter(selectItem);
2238    let $dropdown = $($(selectItem).next());
2239    let $dropdownToggle = $dropdown.find(".custom-select-toggle");
2240    let $dropdownMenu = $dropdown.find(".custom-select-menu");
2241    let $dropdownContent = $dropdown.find(".custom-select-content");
2242    $dropdownToggle.addClass($(selectItem).attr("class")).removeClass("dropdown-select");
2243    $dropdownToggle.attr("id", $(selectItem).attr("id") + "custom");
2244    $dropdownMenu.attr("aria-labelledby", $dropdownToggle.attr("id"));
2245    appendOptionButtons(selectItem, $dropdownContent);
2246    $(selectItem).removeClass().addClass("sr-only");
2247    var toggleText = $(selectItem).find(":selected").first().text() || $(selectItem).children().first().text();
2248    $dropdownToggle.html(toggleText);
2249    $dropdown.on("click", ".custom-select-item", function (e) {
2250      if ($(this).hasClass("is-disabled")) return;
2251      let elementNumber = $(this).index();
2252      let $originalSelect = $(this).closest(".custom-select").siblings("select");
2253      let $linkedOption = $originalSelect.find("option").eq(elementNumber);
2254      if (!$linkedOption.prop("selected")) {
2255        $linkedOption.prop("selected", true);
2256        $originalSelect.change();
2257        $(this).addClass("is-selected").siblings(".custom-select-item").removeClass("is-selected");
2258        $dropdownToggle.html($(this).html());
2259        closeSelectMenu($(this).closest(".custom-select-menu"));
2260      }
2261      $dropdownToggle.removeClass("is-placeholder");
2262    });
2263    function convertOptionToButton(option) {
2264      var optionText = $(option).text();
2265      var optionValue = $(option).attr("value") || $(option).text();
2266      var optionIsDisabled = $(option).prop("disabled");
2267      var outputButton = `<button value="${optionValue}" class="custom-select-item" type="button" ${optionIsDisabled ? "disabled" : ""}>${optionText}</button>`;
2268      return outputButton;
2269    }
2270    function appendOptionButtons(selectItem, appendTarget) {
2271      $(selectItem).find("option").each(function () {
2272        let currentButton = convertOptionToButton(this);
2273        $(appendTarget).append(currentButton);
2274      });
2275    }
2276    function showSelectMenu(selectMenu) {
2277      var customSelect = $(selectMenu).closest(".custom-select")[0];
2278      $(customSelect).addClass("open");
2279      $(selectMenu).slideDown();
2280    }
2281    function closeSelectMenu(selectMenu) {
2282      var customSelect = $(selectMenu).closest(".custom-select")[0];
2283      $(customSelect).removeClass("open");
2284      $(selectMenu).slideUp();
2285    }
2286    $dropdown.on("click", ".custom-select-toggle", function (e) {
2287      var $customSelect = $(this).closest(".custom-select");
2288      var selectMenu = $customSelect.find(".custom-select-menu")[0];
2289      if ($customSelect.hasClass("open")) {
2290        closeSelectMenu(selectMenu);
2291      } else {
2292        showSelectMenu(selectMenu);
2293      }
2294    });
2295    $(document).on("click", function (e) {
2296      if ($(e.target).closest(".custom-select").length < 1 && $(".custom-select").hasClass("open")) {
2297        $(".custom-select.open").each(function () {
2298          var selectMenu = $(this).find(".custom-select-menu")[0];
2299          closeSelectMenu(selectMenu);
2300        });
2301      }
2302    });
2303  }
2304  $(".pop-up select[name='interest']").each(function () {
2305    selectToDropdown(this);
2306  });
2307})('global-mobile-contact');
2308} catch(e) {
2309console.log(e);
2310}
2311                
2312                try {
2313(function init(sectionDomId, options) {
2314  let section = null;
2315  switch (sectionDomId) {
2316    case 'NAVBAR':
2317      section = document.querySelector('body > nav, #global-navbar');
2318      break;
2319    case 'FOOTER':
2320      section = document.querySelector('body > footer, #global-footer');
2321      break;
2322    case 'SIDEMENU':
2323      section = document.querySelector('body > div.sidemenu, #global-sidemenu');
2324      break;
2325    case 'CONTACT':
2326      section = document.querySelector('#modal-global-contact-us');
2327      break;
2328    case 'MOBILE_CONTACT':
2329      section = document.querySelector('body > div.mobile-contact-wrapper, #global-mobile-contact');
2330      break;
2331    case 'SUBSCRIBE':
2332      // Subscribe Not Implemented
2333      section = null;
2334      break;
2335    case 'ACCOUNT':
2336      // Account Not Implemented
2337      section = null;
2338      break;
2339    default:
2340      section = document.querySelector('#' + sectionDomId);
2341  }
2342  if (!section) {
2343    return;
2344  }
2345
2346  // Where content / items are rendered
2347  const dataContainer = section.querySelector('.data-container');
2348  if (!dataContainer) {
2349    // no place to render items = no need to query server or do anything else
2350    return;
2351  }
2352  let variables = options.variables || {};
2353
2354  // Some variables in options may not have been injected - remove
2355  Object.keys(variables).forEach(function (variableName) {
2356    if (typeof variables[variableName] === 'string' && variables[variableName].match(/^{{.*}}$/)) {
2357      delete variables[variableName];
2358    }
2359  });
2360
2361  // Merge page query variables
2362  if (options.usePageResource) {
2363    variables = {
2364      ...variables,
2365      ...window.luxuryPresence.config.pageMeta.pageQueryVariables[options.resource]
2366    };
2367  }
2368
2369  // ROUTER-CLEANUP: keep router branch, drop legacy when API retired. Callers
2370  // resolve the flag — fetchData reads the section stamp, aux fetches read
2371  // their own resource's stamp (auxUsesRouter).
2372  function apiUrl(useRouter) {
2373    return options.url || (useRouter ? window.luxuryPresence.defaults.routerUrl : window.luxuryPresence.defaults.apiGatewayUrl);
2374  }
2375
2376  // ROUTER-CLEANUP: aux resources roll out on their own flag, not the section's
2377  // (options.routerApiAux is stamped per aux resource server-side).
2378  function auxUsesRouter(resource) {
2379    return !!(options.routerApiAux && options.routerApiAux[resource]);
2380  }
2381
2382  // Pagination Executes on a Numbered Pagination Container
2383  //  Or via a load more button
2384  let mode = 'BUTTONLESS_PAGINATION';
2385  const container = section.querySelector('.pagination-container');
2386  const loadMoreButton = section.querySelector(options?.loadMoreSelector);
2387  if (container) {
2388    mode = 'NUMBERED_PAGINATION';
2389  }
2390  if (loadMoreButton) {
2391    mode = 'LOAD_MORE_BUTTON';
2392  }
2393  let searchContainer = section.querySelector('.search-container');
2394  const hidePaginationOnFirstPage = options.hidePaginationOnFirstPage || false;
2395  const eventPrefix = '__pagination-';
2396  const searchFormParams = options.searchFormParams || (options.resource === 'properties' ? [{
2397    param: 'neighborhoodId',
2398    urlKey: 'neighborhood'
2399  }, {
2400    param: 'search',
2401    urlKey: 'search'
2402  }, {
2403    param: 'salesPriceGTE',
2404    urlKey: 'pricemin',
2405    formKey: 'priceMin',
2406    type: 'int'
2407  }, {
2408    param: 'salesPriceLTE',
2409    urlKey: 'pricemax',
2410    formKey: 'priceMax',
2411    type: 'int'
2412  }, {
2413    param: 'livingSpaceSizeGTE',
2414    urlKey: 'areamin',
2415    formKey: 'areaMin',
2416    type: 'int'
2417  }, {
2418    param: 'livingSpaceSizeLTE',
2419    urlKey: 'areamax',
2420    formKey: 'areaMax',
2421    type: 'int'
2422  }] : []);
2423
2424  // Total entries - initialized in first render
2425  let totalNumber = 0;
2426  const DefaultSearchParams = {
2427    page: 1
2428  };
2429  searchFormParams.forEach(function (formParam) {
2430    DefaultSearchParams[formParam.formKey || formParam.param] = null;
2431  });
2432  let searchParams = {
2433    ...DefaultSearchParams
2434  };
2435  const offset = options.variables?.offset || 0;
2436  let scrollTarget = options.scrollTargetSelector ? section.querySelector(options.scrollTargetSelector) || section : section;
2437  let scrollOffset = (parseInt(options.scrollOffset, 10) || 0) ?? 100;
2438
2439  // entries of per page
2440  // when query variables for a given section would't be filled options.pageSize can store
2441  // template string, ex: "{{variables.limit}}", below code handles that case and set 9 as a default value
2442  let pageSize = parseInt(options.pageSize, 10) || 9;
2443
2444  // Adding mobile pageRange support
2445  var NARROW_BREAKPOINT = 600;
2446  var mobileBreakpoint = options.mobileBreakpoint > 0 ? options.mobileBreakpoint : NARROW_BREAKPOINT;
2447  var paginationMql = window.matchMedia(`(max-width: ${mobileBreakpoint}px)`);
2448
2449  // Page range (pages on both sides of the current page)
2450  var mobilePageRange = options.mobilePageRange > 0 ? options.mobilePageRange : 0;
2451  var desktopPageRange = options.pageRange >= 0 ? options.pageRange : 2;
2452  var pageRange = paginationMql.matches ? mobilePageRange : desktopPageRange;
2453
2454  // Whether to display the 'Previous' button
2455  var showPrevious = true;
2456
2457  // Whether to display the 'Next' button
2458  var showNext = true;
2459
2460  // Whether to display the page buttons
2461  var showPageNumbers = true;
2462
2463  // 'Previous' text
2464  var prevText = options.prevText || '&laquo;';
2465
2466  // 'Next' text
2467  var nextText = options.nextText || '&raquo;';
2468
2469  // Ellipsis text
2470  var ellipsisText = '&hellip;';
2471  var classPrefix = 'paginationjs';
2472
2473  // Default active class
2474  var activeClassName = 'active';
2475
2476  // Default disable class
2477  var disableClassName = 'disabled';
2478
2479  // Pagination element's position in the container
2480  var position = 'bottom';
2481
2482  // Whether to trigger pagination at initialization
2483  var triggerPagingOnInit = !options.skipInitialLoad;
2484  var showFirstOnEllipsisShow = true;
2485  var showLastOnEllipsisShow = true;
2486
2487  // Instantiated in init()
2488  var el = null;
2489
2490  // Controls scrollTop logic
2491  var firstRender = true;
2492  var renderBySearch = false;
2493  var disabled = false;
2494
2495  // Pagination script class selector
2496  var paginationScriptSelector = options.paginationPartialName ? `.${options.paginationPartialName}` : '.pagination-script';
2497
2498  // Property Specific Image Override if No Image
2499  var propertyPlaceholderImage = window.luxuryPresence.defaults.propertyPlaceholderImage;
2500
2501  // Construct template
2502  var templateHTML = section.querySelector(`script${paginationScriptSelector}`)?.innerHTML || '';
2503  var template = Handlebars.compile(templateHTML);
2504
2505  // Initialize
2506  init();
2507  function init() {
2508    Object.assign(searchParams, window.luxuryPresence.pagination.deserializeParams(searchFormParams, sectionDomId));
2509
2510    // Append/prepend pagination element to the pagination container
2511    if (mode === 'NUMBERED_PAGINATION') {
2512      el = document.createElement('div');
2513      el.className = 'paginationjs';
2514      container[position === 'bottom' ? 'append' : 'prepend'](el);
2515    }
2516    if (searchContainer) {
2517      initSearchContainer({
2518        fetchNeighborhoods: searchContainer.dataset.fetchNeighborhoods === 'true',
2519        fetchPostCategories: searchContainer.dataset.fetchPostCategories === 'true',
2520        fetchOffices: searchContainer.dataset.fetchOffices === 'true',
2521        fetchRentalRates: searchContainer.dataset.fetchRentalRates === 'true'
2522      }, function () {
2523        syncSearchFormState(searchParams);
2524      });
2525    }
2526
2527    // Bind events
2528    observer();
2529  }
2530  function syncSearchFormState(params) {
2531    searchContainer.dispatchEvent(new CustomEvent('sync', {
2532      detail: params
2533    }));
2534  }
2535  function initSearchContainer(options, done) {
2536    var promises = [];
2537    if (options.fetchNeighborhoods) {
2538      promises.push(fetchAllNeighborhoods(function (neighborhoods) {
2539        searchContainer.dispatchEvent(new CustomEvent('neighborhoods-data', {
2540          detail: {
2541            data: neighborhoods.map(function (item) {
2542              return {
2543                value: item.id,
2544                label: item.name
2545              };
2546            })
2547          }
2548        }));
2549      }));
2550    }
2551    if (options.fetchPostCategories) {
2552      promises.push(fetchPostCategories(function (categories) {
2553        searchContainer.dispatchEvent(new CustomEvent('post-categories-data', {
2554          detail: {
2555            data: categories
2556          }
2557        }));
2558      }));
2559    }
2560    if (options.fetchOffices) {
2561      promises.push(fetchOffices(function (offices) {
2562        searchContainer.dispatchEvent(new CustomEvent('offices-data', {
2563          detail: {
2564            data: offices
2565          }
2566        }));
2567      }));
2568    }
2569    if (options.fetchRentalRates) {
2570      promises.push(fetchAllRentalRates(function (rentalRates) {
2571        searchContainer.dispatchEvent(new CustomEvent('rental-rates-data', {
2572          detail: {
2573            data: rentalRates
2574          }
2575        }));
2576      }));
2577    }
2578    if (promises.length > 0) {
2579      Promise.all(promises).then(function () {
2580        done();
2581      });
2582    } else {
2583      // element's custom code is not executed yet, so we're scheduling callback to after element's code
2584      setTimeout(done);
2585    }
2586  }
2587  function fetchAllNeighborhoods(done) {
2588    var useRouter = auxUsesRouter('neighborhoods');
2589    // ROUTER-CLEANUP: keep router branch, drop legacy when API retired. Same
2590    // args on both APIs (the federated neighborhoods field accepts
2591    // withProperties/withBlogPosts); only the selection set differs.
2592    var gqlQuery = 'query ($companyId: String, $withProperties: NeighborhoodPropertiesFilter, $withBlogPosts: NeighborhoodBlogPostsFilter, $offset: Int, $limit: Int) {' + 'neighborhoods (companyId: $companyId, withProperties: $withProperties, withBlogPosts: $withBlogPosts, offset: $offset, limit: $limit) {' + (useRouter ? 'items {id, name}' : 'id, name') + '}}';
2593    var payload = {};
2594    payload.offset = 0;
2595    payload.limit = 100;
2596    payload.companyId = variables.companyId;
2597    if (options.resource === 'properties') {
2598      payload.withProperties = {
2599        active: true
2600      };
2601      ['agentIds', 'tag', 'propertyTypeId', 'statusIds', 'architectureStyle', 'lifestyle', 'salesPriceGTE', 'salesPriceLTE', 'leasePriceGTE', 'leasePriceLTE', 'livingSpaceSizeGTE', 'livingSpaceSizeLTE', 'bathCountGTE', 'bathCountLTE', 'bedroomCountGTE', 'bedroomCountLTE', 'bathCountGTE', 'bathCountLTE', 'bedroomCountGTE', 'bedroomCountLTE', 'featuredListing', 'leaseProperty', 'neighborhoodId', 'developmentId', 'openHouse'].forEach(function (field) {
2602        if (variables[field] !== undefined && variables[field] !== null) {
2603          payload.withProperties[field] = variables[field];
2604        }
2605      });
2606    }
2607    if (options.resource === 'posts') {
2608      payload.withBlogPosts = {
2609        active: true
2610      };
2611      ['search', 'postStatusId', 'featured', 'categoryId', 'categoryIds', 'neighborhoodId', 'slug'].forEach(function (field) {
2612        if (variables[field] !== undefined && variables[field] !== null) {
2613          payload.withBlogPosts[field] = variables[field];
2614        }
2615      });
2616    }
2617
2618    // ROUTER-CLEANUP: keep router branch, drop legacy when API retired
2619    if (useRouter) {
2620      payload = window.luxuryPresence.routerApi.transformVariables('neighborhoods', payload);
2621    }
2622    superagent.post(apiUrl(useRouter) + '/graphql').withCredentials().send({
2623      query: gqlQuery,
2624      variables: payload
2625    }).then(function (res) {
2626      var value = res.body.data && res.body.data.neighborhoods || {};
2627      // ROUTER-CLEANUP: keep router branch, drop legacy when API retired
2628      var items = useRouter ? window.luxuryPresence.routerApi.transformPage(value).items : value || [];
2629      done(items, items.length);
2630    });
2631  }
2632  function fetchPostCategories(done) {
2633    var featured = options.resource === 'posts' && !!variables.featured;
2634    var useRouter = auxUsesRouter('postCategories');
2635    // ROUTER-CLEANUP: keep router branch, drop legacy when API retired. Only the
2636    // selection set differs ({ items {...} } on the router).
2637    var selection = 'id, name, publishedCount, featuredPublishedCount';
2638    var gqlQuery = 'query ($companyId: String, $offset: Int, $limit: Int) {' + 'postCategories (companyId: $companyId, offset: $offset, limit: $limit ' + (featured ? ' withFeaturedPublishedOnly: true' : ' withPublishedOnly: true') + ') {' + (useRouter ? 'items {' + selection + '}' : selection) + '}}';
2639    var payload = {};
2640    payload.offset = 0;
2641    payload.limit = 100;
2642    payload.companyId = variables.companyId;
2643    superagent.post(apiUrl(useRouter) + '/graphql').withCredentials().send({
2644      query: gqlQuery,
2645      variables: payload
2646    }).then(function (res) {
2647      var value = res.body.data && res.body.data.postCategories || {};
2648      // ROUTER-CLEANUP: keep router branch, drop legacy when API retired
2649      var items = useRouter ? window.luxuryPresence.routerApi.transformPage(value).items : value || [];
2650      done(items.map(function (item) {
2651        item.count = featured ? item.featuredPublishedCount : item.publishedCount;
2652        return item;
2653      }), items.length);
2654    });
2655  }
2656  function fetchOffices(done) {
2657    var useRouter = auxUsesRouter('offices');
2658    // ROUTER-CLEANUP: keep router branch, drop legacy when API retired. Only the
2659    // selection set differs ({ items {...} } on the router).
2660    var selection = 'id, name, tags';
2661    // ROUTER-CLEANUP: keep router branch, drop legacy when API retired. The two
2662    // APIs differ in more than the items wrapper: federated offices takes
2663    // companyId: ID! (legacy gateway: String), so each branch builds its whole doc.
2664    var gqlQuery = useRouter ? 'query ($companyId: ID!, $offset: Int, $limit: Int) {' + 'offices (companyId: $companyId, offset: $offset, limit: $limit) {' + 'items {' + selection + '}}}' : 'query ($companyId: String, $offset: Int, $limit: Int) {' + 'offices (companyId: $companyId, offset: $offset, limit: $limit) {' + selection + '}}';
2665    var payload = {
2666      offset: 0,
2667      limit: 100,
2668      companyId: variables.companyId
2669    };
2670
2671    // ROUTER-CLEANUP: keep router branch, drop legacy when API retired
2672    if (useRouter) {
2673      payload = window.luxuryPresence.routerApi.transformVariables('office
2673s', payload);
2674    }
2675    superagent.post(apiUrl(useRouter) + '/graphql').withCredentials().send({
2676      query: gqlQuery,
2677      variables: payload
2678    }).then(function (res) {
2679      var value = res.body.data && res.body.data.offices || {};
2680      // ROUTER-CLEANUP: keep router branch, drop legacy when API retired
2681      var items = useRouter ? window.luxuryPresence.routerApi.transformPage(value).items : value || [];
2682      done(items, items.length);
2683    });
2684  }
2685
2686  // ROUTER-CLEANUP: no rentalRates field on the federated router — legacy only.
2687  function fetchAllRentalRates(done) {
2688    var url = options.url || window.luxuryPresence.defaults.apiGatewayUrl;
2689    var gqlQuery = 'query ($companyId: String, $offset: Int, $limit: Int) {' + 'rentalRates (companyId: $companyId, offset: $offset, limit: $limit) {rentalRateId, label}}';
2690    var payload = {
2691      offset: 0,
2692      limit: 100,
2693      companyId: variables.companyId
2694    };
2695    superagent.post(url + '/graphql').withCredentials().send({
2696      query: gqlQuery,
2697      variables: payload
2698    }).then(function (res) {
2699      var items = res.body.data && res.body.data.rentalRates || [];
2700      done(items, items.length);
2701    }).catch(function (err) {
2702      console.error('Error fetching rental rates:', err);
2703      done([], 0);
2704    });
2705  }
2706  function fetchData(params, done) {
2707    var resource = options.resource;
2708    var gqlQuery = options.query || window.luxuryPresence.defaults.gql[resource];
2709    var payload = {};
2710    try {
2711      payload = JSON.parse(JSON.stringify(variables));
2712    } catch (e) {
2713      Object.keys(variables).forEach(function (variableName) {
2714        payload[variableName] = variables[variableName];
2715      });
2716    }
2717    payload.offset = (params.page - 1) * pageSize + offset;
2718    payload.limit = pageSize;
2719    payload.companyId = options.companyId;
2720    searchFormParams.forEach(function (formParam) {
2721      var val = params[formParam.formKey || formParam.param];
2722      if (val !== null && val !== undefined) {
2723        objSet(payload, formParam.param, val);
2724      }
2725    });
2726
2727    // ROUTER-CLEANUP: keep router branch, drop legacy when API retired
2728    if (options.useRouterApi) {
2729      payload = window.luxuryPresence.routerApi.transformVariables(resource, payload);
2730    }
2731
2732    // TODO: Disabled loading due to jarring effect
2733    // dataContainer.html('Loading...');
2734    superagent.post(apiUrl(options.useRouterApi) + '/graphql').withCredentials().send({
2735      query: gqlQuery,
2736      variables: payload
2737    }).then(function (res) {
2738      if (res.body.errors) {
2739        done(res.body.errors);
2740        return;
2741      }
2742      var data = res.body.data || {};
2743      // ROUTER-CLEANUP: keep router branch, drop legacy when API retired
2744      var resources;
2745      var resourceCount;
2746      if (options.useRouterApi) {
2747        var page = window.luxuryPresence.routerApi.transformPage(data[resource]);
2748        resources = window.luxuryPresence.routerApi.transformResponse(resource, page.items);
2749        resourceCount = page.count;
2750      } else {
2751        resources = data[resource] || [];
2752        resourceCount = data[resource + 'Count'] && data[resource + 'Count'].count ? data[resource + 'Count'].count : 0;
2753      }
2754      const finish = function (items) {
2755        if (resource === 'properties' && propertyPlaceholderImage?.id) {
2756          items = items.map(item => {
2757            if (item.media?.length === 0) {
2758              return Object.assign(item, {
2759                media: [propertyPlaceholderImage]
2760              });
2761            }
2762            return item;
2763          });
2764        }
2765        done(null, items, resourceCount);
2766      };
2767
2768      // ROUTER-CLEANUP: client half of PLAT-4073 — resolve the requested
2769      // disclaimers before rendering; older SDKs skip (keys stay unset).
2770      if (options.useRouterApi && resource === 'properties' && options.routerPropertyDisclaimers && options.routerPropertyDisclaimers.length && window.luxuryPresence.routerApi && typeof window.luxuryPresence.routerApi.applyPropertyDisclaimers === 'function') {
2771        window.luxuryPresence.routerApi.applyPropertyDisclaimers(resources, options.routerPropertyDisclaimers).then(finish);
2772        return;
2773      }
2774      finish(resources);
2775    });
2776  }
2777  function getTotalPage() {
2778    return Math.ceil(totalNumber / pageSize);
2779  }
2780  function renderPaginationList() {
2781    var totalPages = getTotalPage();
2782    var rangeStart = searchParams.page - pageRange;
2783    var rangeEnd = searchParams.page + pageRange;
2784    if (rangeEnd > totalPages) {
2785      rangeEnd = totalPages;
2786      rangeStart = totalPages - pageRange * 2;
2787      rangeStart = rangeStart < 1 ? 1 : rangeStart;
2788    }
2789    if (rangeStart <= 1) {
2790      rangeStart = 1;
2791      rangeEnd = Math.min(pageRange * 2 + 1, totalPages);
2792    }
2793
2794    // Making sure that 1 more page button is shown in edge positions
2795    if (pageRange === 0) {
2796      if (searchParams.page === totalPages) {
2797        rangeStart = totalPages <= 1 ? 1 : totalPages - 1;
2798      }
2799      if (searchParams.page === 1) {
2800        rangeEnd = Math.min(2, totalPages);
2801      }
2802    }
2803
2804    // Render pagination list
2805    if (mode === 'NUMBERED_PAGINATION') {
2806      el.innerHTML = generateHTML({
2807        currentPage: searchParams.page,
2808        pageRange: pageRange,
2809        rangeStart: rangeStart,
2810        rangeEnd: rangeEnd
2811      });
2812      if (totalPages < 2 && hidePaginationOnFirstPage) {
2813        container.style.display = 'none';
2814      } else {
2815        container.style.display = '';
2816      }
2817    } else if (mode === 'LOAD_MORE_BUTTON') {
2818      if (searchParams.page >= totalPages) {
2819        loadMoreButton.style.display = 'none';
2820      } else {
2821        loadMoreButton.style.display = '';
2822      }
2823    }
2824  }
2825  function render(data) {
2826    renderPaginationList();
2827
2828    // Render new content with handlebars
2829    var html = '';
2830    if (mode === 'LOAD_MORE_BUTTON' && searchParams.page > 1) {
2831      // If using load more, append search results to existing results
2832      html = dataContainer.innerHTML;
2833    }
2834    for (var i = 0; i < data.length; i++) {
2835      var itemData = recursivelyParse(data[i]);
2836      itemData.sectionIndex = options.sectionIndex;
2837      itemData.renderOptions = options.renderOptions;
2838      html += template(itemData);
2839    }
2840    dataContainer.innerHTML = html;
2841
2842    // Scroll Top
2843    if (!firstRender && mode === 'NUMBERED_PAGINATION' && (!renderBySearch || !options.skipScrollOnSearch)) {
2844      // Only animate to the top if we replace dataContainer (numbered pagination)
2845      setTimeout(() => {
2846        const scrollTargetOffsetTop = scrollTarget.getBoundingClientRect().top + window.scrollY - scrollOffset;
2847        window.scrollTo({
2848          top: scrollTargetOffsetTop,
2849          behavior: 'smooth'
2850        });
2851      }, 250);
2852    }
2853    return true;
2854  }
2855  function generateHTML(args) {
2856    const totalPages = getTotalPage();
2857    const {
2858      rangeStart,
2859      rangeEnd
2860    } = args;
2861    const makeLnk = page => window.luxuryPresence.pagination.serializeParams(searchFormParams, sectionDomId, {
2862      ...searchParams,
2863      page
2864    });
2865    let html = '';
2866    if (showPrevious || showPageNumbers || showNext) {
2867      html += '<div class="paginationjs-pages"><ul>';
2868
2869      // Previous button
2870      if (showPrevious) {
2871        if (searchParams.page <= 1) {
2872          html += `<li class="${classPrefix}-prev ${disableClassName}"><a>${prevText}</a></li>`;
2873        } else {
2874          html += `<li class="${classPrefix}-prev J-paginationjs-previous" data-num="${searchParams.page - 1}" title="Previous page"><a href="${makeLnk(searchParams.page - 1)}">${prevText}</a></li>`;
2875        }
2876      }
2877
2878      // Pages
2879      if (showPageNumbers) {
2880        if (rangeStart <= 3) {
2881          for (let i = 1; i < rangeStart; i++) {
2882            html += `<li class="${classPrefix}-page J-paginationjs-page ${i === searchParams.page ? activeClassName : ''}" data-num="${i}"><a ${i === searchParams.page ? '' : `href="${makeLnk(i)}"`}>${i}</a></li>`;
2883          }
2884        } else {
2885          if (showFirstOnEllipsisShow) {
2886            html += `<li class="${classPrefix}-page ${classPrefix}-first J-paginationjs-page" data-num="1"><a href="${makeLnk(1)}">1</a></li>`;
2887          }
2888          html += `<li class="${classPrefix}-ellipsis ${disableClassName}"><a>${ellipsisText}</a></li>`;
2889        }
2890        for (let i = rangeStart; i <= rangeEnd; i++) {
2891          html += `<li class="${classPrefix}-page J-paginationjs-page ${i === searchParams.page ? activeClassName : ''}" data-num="${i}"><a ${i === searchParams.page ? '' : `href="${makeLnk(i)}"`}>${i}</a></li>`;
2892        }
2893        if (rangeEnd < totalPages - 2) {
2894          html += `<li class="${classPrefix}-ellipsis ${disableClassName}"><a>${ellipsisText}</a></li>`;
2895          if (showLastOnEllipsisShow) {
2896            html += `<li class="${classPrefix}-page ${classPrefix}-last J-paginationjs-page" data-num="${totalPages}"><a href="${makeLnk(totalPages)}">${totalPages}</a></li>`;
2897          }
2898        } else {
2899          for (let i = rangeEnd + 1; i <= totalPages; i++) {
2900            html += `<li class="${classPrefix}-page J-paginationjs-page" data-num="${i}"><a href="${makeLnk(i)}">${i}</a></li>`;
2901          }
2902        }
2903      }
2904
2905      // Next button
2906      if (showNext) {
2907        if (searchParams.page >= totalPages) {
2908          html += `<li class="${classPrefix}-next ${disableClassName}"><a>${nextText}</a></li>`;
2909        } else {
2910          html += `<li class="${classPrefix}-next J-paginationjs-next" data-num="${searchParams.page + 1}" title="Next page"><a href="${makeLnk(searchParams.page + 1)}">${nextText}</a></li>`;
2911        }
2912      }
2913      html += '</ul></div>';
2914    }
2915    return html;
2916  }
2917  function go(newSearchParams, callback, restorationVisit) {
2918    if (disabled) return;
2919    var goToPageNumber = newSearchParams.page;
2920
2921    // Page number is out of bounds
2922    if (!goToPageNumber || goToPageNumber < 1) return;
2923    var totalPage = getTotalPage();
2924
2925    // Page number is out of bounds
2926    if (!restorationVisit && totalNumber > 0) {
2927      if (goToPageNumber > totalPage) return;
2928    }
2929    if (!options.skipSerialization && (mode === 'NUMBERED_PAGINATION' || searchContainer)) {
2930      var newURL = window.luxuryPresence.pagination.serializeParams(searchFormParams, sectionDomId, {
2931        ...newSearchParams,
2932        page: goToPageNumber !== 1 && mode === 'NUMBERED_PAGINATION' ? newSearchParams.page : null
2933      });
2934      if (!areQueryParamsEqual(newSearchParams, searchParams) && !restorationVisit) {
2935        window.history.pushState({}, '', window.luxuryPresence.getPath(newURL, {
2936          queryString: true
2937        }));
2938      }
2939    }
2940
2941    // Fetch and update page
2942    fetchData(newSearchParams, renderWithData);
2943    disabled = true;
2944    function renderWithData(err, data, count) {
2945      if (err) {
2946        dataContainer.dispatchEvent(new Event('error'));
2947      } else {
2948        searchParams = {
2949          ...newSearchParams
2950        };
2951        totalNumber = count - offset;
2952        if (data.length === 0) {
2953          dataContainer.dispatchEvent(new Event('no-data'));
2954        } else {
2955          dataContainer.dispatchEvent(new Event('data'));
2956        }
2957        render(data);
2958        firstRender = false;
2959      }
2960      disabled = false;
2961      renderBySearch = false;
2962    }
2963  }
2964  function areQueryParamsEqual(first, second) {
2965    var differ = Object.keys(first).find(function (key) {
2966      return first[key] !== undefined && first[key] !== null && first[key] !== second[key];
2967    });
2968    if (differ) {
2969      return false;
2970    }
2971    differ = Object.keys(second).find(function (key) {
2972      return second[key] !== undefined && second[key] !== null && second[key] !== first[key];
2973    });
2974    return !differ;
2975  }
2976  function next(callback) {
2977    go({
2978      ...searchParams,
2979      page: searchParams.page + 1
2980    }, callback);
2981  }
2982  function previous(callback) {
2983    go({
2984      ...searchParams,
2985      page: searchParams.page - 1
2986    }, callback);
2987  }
2988  function refresh(callback) {
2989    go(searchParams, callback);
2990  }
2991  function update(params, callback) {
2992    renderBySearch = true;
2993    go(params, callback);
2994  }
2995  function observer() {
2996    if (searchContainer) {
2997      searchContainer.addEventListener('search', function (event, newSearchParams) {
2998        newSearchParams = event.detail || newSearchParams;
2999        update({
3000          ...searchParams,
3001          ...newSearchParams,
3002          page: 1
3003        });
3004      });
3005      searchContainer.addEventListener('clear-search', function () {
3006        const defaultSearchParams = {
3007          ...DefaultSearchParams
3008        };
3009        const isCurrentSearchFormStateDefault = areQueryParamsEqual({
3010          ...defaultSearchParams,
3011          page: null
3012        }, {
3013          ...searchParams,
3014          page: null
3015        });
3016
3017        // if mode is LOAD_MORE_BUTTON we should't make anything on clear
3018        // when search form have default state
3019        if (isCurrentSearchFormStateDefault && mode !== 'NUMBERED_PAGINATION') {
3020          return;
3021        }
3022
3023        // if someone initially go to some page and click 'Clear' on search from
3024        // we should't navigate to first page. We should preserve page value
3025        if (isCurrentSearchFormStateDefault) {
3026          defaultSearchParams.page = searchParams.page;
3027        }
3028        syncSearchFormState(defaultSearchParams);
3029        update(defaultSearchParams);
3030      });
3031    }
3032    if (mode === 'LOAD_MORE_BUTTON') {
3033      loadMoreButton.addEventListener('click', function (event) {
3034        go({
3035          ...searchParams,
3036          page: searchParams.page + 1
3037        });
3038        return false;
3039      });
3040    }
3041    if (mode === 'LOAD_MORE_BUTTON' || mode === 'BUTTONLESS_PAGINATION') {
3042      // Do initial render
3043      go(Object.assign({}, searchParams, {
3044        page: 1
3045      }));
3046      return;
3047    }
3048    if (mode === 'NUMBERED_PAGINATION') {
3049      // Go to specified page number
3050      container.addEventListener(eventPrefix + 'go', function (event) {
3051        let {
3052          pageNumber,
3053          done
3054        } = event.detail || {};
3055        pageNumber = parseInt(pageNumber, 10);
3056        if (!pageNumber) {
3057          return;
3058        }
3059        go({
3060          ...searchParams,
3061          page: pageNumber
3062        }, done);
3063      });
3064
3065      // Page number button click
3066      el.addEventListener('click', function (event) {
3067        let clickTarget = event.target;
3068        let current = clickTarget.closest('.J-paginationjs-page, .J-paginationjs-previous, .J-paginationjs-next');
3069        let pageNumber = current?.getAttribute('data-num');
3070        if (!pageNumber || current.classList.contains(disableClassName) || current.classList.contains(activeClassName)) {
3071          return;
3072        } else {
3073          go({
3074            ...searchParams,
3075            page: parseInt(pageNumber, 10)
3076          });
3077        }
3078        event.preventDefault();
3079      });
3080
3081      // Whether to load the default page
3082      var defaultPageNumber = searchParams.page;
3083      if (triggerPagingOnInit) {
3084        container.dispatchEvent(new CustomEvent(eventPrefix + 'go', {
3085          detail: {
3086            pageNumber: defaultPageNumber
3087          }
3088        }));
3089      }
3090    }
3091    window.addEventListener('popstate', function (event) {
3092      var newParams = Object.assign({}, DefaultSearchParams, window.luxuryPresence.pagination.deserializeParams(searchFormParams, sectionDomId));
3093      if (!areQueryParamsEqual(newParams, searchParams)) {
3094        go(newParams, null, true);
3095        if (searchContainer) {
3096          syncSearchFormState(newParams);
3097        }
3098      }
3099    });
3100  }
3101  function replaceVariables(template, variables) {
3102    var formattedString;
3103    for (var key in variables) {
3104      var value = variables[key];
3105      var regexp = new RegExp('<%=\\s*' + key + '\\s*%>', 'img');
3106      formattedString = (formattedString || template).replace(regexp, value);
3107    }
3108    return formattedString;
3109  }
3110  function isTextEditorValue(obj) {
3111    return 'raw' in obj || 'gjs' in obj;
3112  }
3113  function getTextEditorValue(obj) {
3114    if (!obj.html) {
3115      return '';
3116    }
3117    var data = obj.html;
3118    var css = (obj.raw || obj.gjs || {}).css;
3119    if (css) {
3120      data = data + '<style>' + css + '</style>';
3121    }
3122    return data;
3123  }
3124
3125  /**
3126   * check rendered resources for html and raw properties that could indicate if resource is from an advanced text editor.
3127   * strips out raw proprties and returns only HTML if it exists.
3128   * @param {Object} resources a collection retrieved from the database
3129   * @return {Object} the newly modified object.
3130   */
3131  function recursivelyParse(resources) {
3132    forEach(resources, function (value, key) {
3133      if (!value) {
3134        return;
3135      }
3136      if (value instanceof Object) {
3137        if (isTextEditorValue(value)) {
3138          resources[key] = getTextEditorValue(value);
3139          return;
3140        } else {
3141          return recursivelyParse(value);
3142        }
3143      }
3144      try {
3145        var parsedData = JSON.parse(value);
3146        if (isTextEditorValue(parsedData)) {
3147          resources[key] = getTextEditorValue(parsedData);
3148        }
3149      } catch (e) {
3150        // do nothing if we failed to parse value as JSON
3151      }
3152    });
3153    return resources;
3154  }
3155  function forEach(collection, iteratee) {
3156    var func = Array.isArray(collection) ? arrayEach : baseFor;
3157    return func(collection, iteratee);
3158  }
3159  function baseFor(object, iteratee) {
3160    if (!object) {
3161      return;
3162    }
3163    var iterable = Object(object);
3164    var props = Object.keys(object);
3165    var length = props.length;
3166    var index = -1;
3167    while (length--) {
3168      var key = props[++index];
3169      if (iteratee(iterable[key], key, iterable) === false) {
3170        break;
3171      }
3172    }
3173    return object;
3174  }
3175  function objSet(obj, path, value) {
3176    const pathArray = Array.isArray(path) ? path : path.match(/([^[.\]])+/g);
3177    pathArray.reduce((acc, key, i) => {
3178      if (acc[key] === undefined) acc[key] = {};
3179      if (i === pathArray.length - 1) acc[key] = value;
3180      return acc[key];
3181    }, obj);
3182  }
3183  function arrayEach(array, iteratee) {
3184    var index = -1;
3185    var length = array.length;
3186    while (++index < length) {
3187      if (iteratee(array[index], index, array) === false) {
3188        break;
3189      }
3190    }
3191    return array;
3192  }
3193  function selectPageRangeMode(e) {
3194    pageRange = e.matches ? mobilePageRange : desktopPageRange;
3195    renderPaginationList();
3196  }
3197  paginationMql.addEventListener('change', selectPageRangeMode);
3198})('section-01ab6531-3f2b-4f85-b398-88e312943c07', JSON.parse("{\"pageSize\":\"6\",\"resource\":\"posts\",\"pageRange\":0,\"variables\":{\"limit\":6,\"order\":\"publishedAt\",\"offset\":0,\"sortDir\":\"DESC\",\"companyId\":\"71d4b9b5-d2d9-47f2-ab55-cbbab0ea5089\",\"categoryId\":\"{{pageElement.categoryId}}\"},\"searchFormParams\":[{\"param\":\"search\",\"urlKey\":\"search\"},{\"param\":\"categoryIds\",\"urlKey\":\"category\"}],\"skipScrollOnSearch\":true,\"scrollTargetSelector\":\".blog-list__container\",\"hidePaginationOnFirstPage\":true,\"companyId\":\"71d4b9b5-d2d9-47f2-ab55-cbbab0ea5089\",\"usePageResource\":false,\"sectionIndex\":2,\"useRouterApi\":true,\"routerApiAux\":{\"testimonials\":true,\"agents\":false,\"neighborhoods\":false,\"developments\":false,\"properties\":false,\"posts\":true,\"pressReleases\":true,\"offices\":true,\"teams\":true,\"pois\":true,\"postCategories\":true}}"));
3199} catch(e) {
3200console.log(e);
3201}
3202                try {
3203(function init(sectionDomId) {
3204  const section = $(`#${sectionDomId}`);
3205  const searchInput = section.find('.js-search-input');
3206  const searchContainer = section.find('.search-container');
3207  const dataContainer = section.find('.data-container');
3208  const categoryFilter = section.find('.js-category-filter');
3209  const btnCategory = section.find('.js-btn-category');
3210  let activeFilters = null;
3211  if (searchContainer.length === 0) return;
3212  const {
3213    debounce
3214  } = window.luxuryPresence;
3215  const emptyResultsText = section.find('.empty-results');
3216  searchInput.on('input', debounce(doSearch, 700));
3217  dataContainer.on('data', function () {
3218    emptyResultsText.removeClass("visible");
3219  });
3220  dataContainer.on('no-data', function () {
3221    emptyResultsText.addClass("visible");
3222  });
3223  btnCategory.click(function () {
3224    $(this).toggleClass('active');
3225    categoryFilter.slideToggle();
3226  });
3227  function doSearch() {
3228    let values = categoryFilter.find('.active').map(function () {
3229      return $(this).data('value');
3230    }).get();
3231    const params = {
3232      categoryIds: values || null,
3233      search: searchInput.val().trim() || null
3234    };
3235    searchContainer[0]?.dispatchEvent(new CustomEvent('search', {
3236      detail: params
3237    }));
3238  }
3239  categoryFilter.on('click', '.category-cell', function () {
3240    if ($(this).hasClass('js-category-all')) {
3241      section.find('.category-cell').removeClass('active');
3242      $(this).addClass('active');
3243    } else {
3244      $(this).toggleClass('active');
3245      section.find('.js-category-all').removeClass('active');
3246    }
3247    doSearch();
3248  });
3249  searchContainer.on('post-categories-data', function (ev, category) {
3250    category = ev.detail || category;
3251    categoryFilter.find('.js-category-cell').remove();
3252    categoryFilter.find('.active').removeClass('active');
3253    let btnClass = categoryFilter.data('button-style');
3254    if (Array.isArray(category.data) && category.data.length) {
3255      btnCategory.css('display', 'inline-flex');
3256      categoryFilter.append(category.data.map(item => `<button id="filter-${item.id}"  data-value="${item.id}" class="category-cell js-category-cell lp-btn ${btnClass}">${item.name}</button>`).join('\n'));
3257    } else {
3258      btnCategory.remove();
3259    }
3260    setActiveFilters();
3261  });
3262  searchContainer.on('sync', function (event, params) {
3263    params = event.detail || params;
3264    activeFilters = params;
3265    setActiveFilters();
3266  });
3267  function setActiveFilters() {
3268    categoryFilter.find('.active').removeClass('active');
3269    if (activeFilters.categoryIds !== null && activeFilters.categoryIds.length > 0) {
3270      activeFilters.categoryIds.forEach(function (categoryId) {
3271        categoryFilter.find(`#filter-${categoryId}`).addClass('active');
3272      });
3273    } else {
3274      categoryFilter.find('.js-category-all').addClass('active');
3275    }
3276  }
3277})('section-01ab6531-3f2b-4f85-b398-88e312943c07', JSON.parse("{\"resource\":\"posts\",\"useRouterApi\":true,\"companyId\":\"71d4b9b5-d2d9-47f2-ab55-cbbab0ea5089\",\"usePageResource\":false,\"sectionIndex\":2,\"routerApiAux\":{\"testimonials\":true,\"agents\":false,\"neighborhoods\":false,\"developments\":false,\"properties\":false,\"posts\":true,\"pressReleases\":true,\"offices\":true,\"teams\":true,\"pois\":true,\"postCategories\":true}}"));
3278} catch(e) {
3279console.log(e);
3280}
3281                try {
3282(function init(sectionDomId) {
3283  var $contactForm = $('#' + sectionDomId + ' .newsletter-signup__form');
3284  $contactForm.find('.contact-form__reset').click(function (e) {
3285    e.preventDefault();
3286    $(this).closest('form').removeClass('success').trigger("reset");
3287  });
3288  $contactForm.find('input[name="name"]').on("keyup", function () {
3289    if (this.value.replaceAll(/\d/g, "").trim() === "") {
3290      this.setCustomValidity("Please enter your name.");
3291    } else {
3292      this.setCustomValidity("");
3293    }
3294  });
3295  const form = $("#" + sectionDomId).find("form");
3296  const redirectLink = $('#' + sectionDomId + ' .redirect-link');
3297  form.on("reset", function () {
3298    redirectPage(redirectLink);
3299  });
3300  function redirectPage(link) {
3301    if (link.length) {
3302      const rawHref = link.attr('href');
3303      link.attr('href', setHttp(rawHref));
3304      link[0].click();
3305    }
3306  }
3307  function setHttp(link) {
3308    if (link.search(/^http[s]?\:\/\/|\//) == -1) {
3309      link = 'http://' + link;
3310    }
3311    return link;
3312  }
3313})('section-910a61ad-2067-4b52-a160-61bbac832465', 'undefined');
3314} catch(e) {
3315console.log(e);
3316}
3317                try {
3318(function init(sectionDomId) {
3319  const $section = $('#' + sectionDomId);
3320  if ($section.find('.parallax').length) $section.addClass('parallax-enabled');
3321  if ($section.find('.video-wrapper').length) $section.addClass('video');
3322})('section-56a0f81a-5721-42c1-ad3c-7b29258fa8bd', 'undefined');
3323} catch(e) {
3324console.log(e);
3325}
3326                try {
3327(function init(sectionDomId, options) {
3328  let section = null;
3329  switch (sectionDomId) {
3330    case 'NAVBAR':
3331      section = document.querySelector('body > nav, #global-navbar');
3332      break;
3333    case 'FOOTER':
3334      section = document.querySelector('body > footer, #global-footer');
3335      break;
3336    case 'SIDEMENU':
3337      section = document.querySelector('body > div.sidemenu, #global-sidemenu');
3338      break;
3339    case 'CONTACT':
3340      section = document.querySelector('#modal-global-contact-us');
3341      break;
3342    case 'MOBILE_CONTACT':
3343      section = document.querySelector('body > div.mobile-contact-wrapper, #global-mobile-contact');
3344      break;
3345    case 'SUBSCRIBE':
3346      // Subscribe Not Implemented
3347      section = null;
3348      break;
3349    case 'ACCOUNT':
3350      // Account Not Implemented
3351      section = null;
3352      break;
3353    default:
3354      section = document.querySelector('#' + sectionDomId);
3355  }
3356  if (!section) {
3357    return;
3358  }
3359  var url = window.luxuryPresence.defaults.routerUrl;
3360  var companyId = window.luxuryPresence.defaults.companyId;
3361  var limit = options.limit || 8;
3362  if (typeof limit === 'string') {
3363    limit = parseInt(limit, 10) || 8; // this NaN protection also filters out 0 - this is expected
3364  }
3365  var templateSelector = options.templateSelector || '.jsIGTemplate';
3366  var containerSelector = options.containerSelector || '.jsIGContainer';
3367  var hasDataClass = options.hasDataClass || 'has-data';
3368  var hideActivateMessage = options.hasDataClass || false;
3369  var payload = {
3370    companyId: companyId,
3371    limit: limit
3372  };
3373  if (options.resourceId && typeof options.resourceId === 'string' && !options.resourceId.match(/^{{.*}}$/)) {
3374    payload.resourceId = options.resourceId;
3375    // Federated enum values are uppercase (AGENT/TEAM); element configs carry lowercase
3376    payload.resource = String(options.resource || 'agent').toUpperCase();
3377    payload.fallbackToNoResource = options.fallbackToNoResource === 'true' || options.fallbackToNoResource === true;
3378  }
3379  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';
3380  var templateHTML = section.querySelector(templateSelector)?.innerHTML || '';
3381  var template = Handlebars.compile(templateHTML);
3382  var container = section.querySelector(containerSelector);
3383  if (options.variables) {
3384    Object.keys(options.variables).forEach(function (key) {
3385      if (options.variables.hasOwnProperty(key) && (typeof options.variables[key] !== 'string' || !options.variables[key].match(/^{{.*}}$/))) {
3386        payload[key] = options.variables[key];
3387      }
3388    });
3389  }
3390  function getData() {
3391    var feed = {
3392      error: true
3393    };
3394    if (payload.companyId == null || payload.companyId === '') {
3395      // instagramContentFeed requires companyId (ID!) — nothing to fetch without it.
3396      // Checked after the options.variables merge, which may override the default.
3397      // Deferred so element listeners (attached after this template runs) still receive it.
3398      setTimeout(function () {
3399        section.dispatchEvent(new CustomEvent('ig-data', {
3400          detail: feed
3401        }));
3402      }, 0);
3403      return;
3404    }
3405    superagent.post(url + '/graphql').send({
3406      query: query,
3407      variables: payload
3408    }).then(res => {
3409      try {
3410        if (!res.body.errors) {
3411          feed = res.body.data.instagramContentFeed;
3412          if (!feed.active) {
3413            if (!hideActivateMessage && sectionDomId === 'section-temp' && container) {
3414              if (payload.resourceId) {
3415                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>';
3416              } else {
3417                container.innerHTML = '<div style="text-align: center">Instagram account is not connected.<br /> Connect it on <a href="/profile">Profile page</a></div>';
3418              }
3419            }
3420          } else {
3421            if (feed.items.length) {
3422              if (hasDataClass) {
3423                section.classList.add(hasDataClass);
3424              }
3425              const feedName = feed.username;
3426              section.querySelectorAll('.jsIGLink').forEach(link => link.setAttribute('href', feed.feedUrl));
3427              section.querySelectorAll('.jsIGName').forEach(name => {
3428                name.textContent = '@' + feedName;
3429                name.setAttribute('title', '@' + feedName);
3430              });
3431              if (container && template) {
3432                container.innerHTML = template(feed);
3433              }
3434            }
3435          }
3436        }
3437      } catch (e) {}
3438      section.dispatchEvent(new CustomEvent('ig-data', {
3439        detail: feed
3440      }));
3441    }).catch(e => {
3442      console.log('err', e);
3443      section.dispatchEvent(new CustomEvent('ig-data', {
3444        detail: feed
3445      }));
3446    });
3447  }
3448  getData();
3449})('section-1ae84a2f-352a-40df-9967-03972ee58fc7', JSON.parse("{\"limit\":33,\"resource\":\"agent\",\"resourceId\":\"\",\"fallbackToNoResource\":\"true\",\"companyId\":\"71d4b9b5-d2d9-47f2-ab55-cbbab0ea5089\",\"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}}"));
3450} catch(e) {
3451console.log(e);
3452}
3453                try {
3454(function init(sectionDomId) {
3455  const $section = $('#' + sectionDomId);
3456  var templateHTML = $section.find('.jsIGItem').html();
3457  var itemTemplate = templateHTML && Handlebars.compile(templateHTML);
3458  const $container = $section.find('.ig-feed-feed');
3459  const $topPrev = $section.find('.top-nav-prev');
3460  const $topNext = $section.find('.top-nav-next');
3461  const $bottomPrev = $section.find('.bottom-nav-prev');
3462  const $bottomNext = $section.find('.bottom-nav-next');
3463  let limit = 33;
3464  try {
3465    limit = parseInt($container[0].dataset['limit']);
3466  } catch (e) {}
3467  if (!limit) {
3468    limit = 33;
3469  }
3470  let igFeed = {};
3471  let usedWidth = 0;
3472  let slider = null;
3473  $section.on('ig-data', function (ev, feed) {
3474    feed = ev.detail || feed;
3475    igFeed = feed;
3476    if (feed.active && feed.items.length) {
3477      buildSlider();
3478    }
3479  });
3480  $(window).on('resize.lpui-auto-clean', onResize);
3481  let timer = null;
3482  function onResize() {
3483    clearTimeout(timer);
3484    timer = window.setTimeout(buildSlider, 50);
3485  }
3486  function getLayout(w, n) {
3487    if (w > 1100) {
3488      if (n > 7) {
3489        return {
3490          type: 'type1',
3491          single: 1,
3492          multi: n,
3493          slides: 3,
3494          slider: n > 9
3495        };
3496      }
3497      if (n > 5) {
3498        return {
3499          type: 'type1',
3500          single: 2,
3501          multi: n,
3502          slides: 3,
3503          slider: false
3504        };
3505      }
3506      return {
3507        type: 'type1',
3508        single: n,
3509        multi: n,
3510        slides: 3,
3511        slider: n > 3
3512      };
3513    } else if (w > 880) {
3514      if (n > 4) {
3515        return {
3516          type: 'type2',
3517          single: 1,
3518          multi: n,
3519          slides: 2.5,
3520          slider: n > 7
3521        };
3522      }
3523      return {
3524        type: 'type1',
3525        single: n,
3526        multi: n,
3527        slides: 3,
3528        slider: n > 3
3529      };
3530    } else if (w > 767) {
3531      if (n > 4) {
3532        return {
3533          type: 'type3',
3534          single: 1,
3535          multi: n,
3536          slides: 2,
3537          slider: n > 5
3538        };
3539      }
3540      return {
3541        type: 'type4',
3542        single: n,
3543        multi: n,
3544        slides: 2,
3545        slider: n > 2
3546      };
3547    } else if (w > 460) {
3548      return {
3549        type: 'type4',
3550        single: n,
3551        multi: n,
3552        slides: 2,
3553        slider: n > 2
3554      };
3555    }
3556    return {
3557      type: 'type5',
3558      single: n,
3559      multi: n,
3560      slides: 1,
3561      slider: n > 1
3562    };
3563  }
3564  function ensureClass($el, className) {
3565    if ($el.hasClass(className)) {
3566      return;
3567    }
3568    $el.addClass(className);
3569  }
3570  function makeSquare($el) {
3571    const el = $el[0];
3572    el.style.width = '';
3573    el.style.height = '';
3574    const rect = el.getBoundingClientRect();
3575    if (rect.width !== rect.height) {
3576      el.style.width = rect.height + 'px';
3577    }
3578  }
3579  function buildSlider() {
3580    const cWidth = $container[0].getBoundingClientRect().width;
3581    if (cWidth === usedWidth) {
3582      return;
3583    }
3584    $container.empty();
3585    slider = $('<div class="ig-feed-slider"></div>');
3586    const items = igFeed.items.slice(0, limit);
3587    const layout = getLayout(cWidth, items.length);
3588    let i = 0;
3589    let slide = null;
3590    while (i < layout.single) {
3591      slide = $(`<div class="slide-single ${layout.type}"></div>`).append(itemTemplate(items[i])).appendTo(slider);
3592      i++;
3593    }
3594    while (i < layout.multi) {
3595      slide = $(`<div class="slide-multi ${layout.type}"></div>`).appendTo(slider);
3596      let slideContent = $('<div class="slide-multi-content"></div>').appendTo(slide);
3597      const lim = i + 4;
3598      while (i < lim && i < layout.multi) {
3599        slideContent.append(itemTemplate(items[i]));
3600        i++;
3601      }
3602    }
3603    $container.append(slider);
3604    if (layout.slider) {
3605      $topPrev.removeClass('hidden-control');
3606      $topNext.removeClass('hidden-control');
3607      $bottomPrev.removeClass('hidden-control');
3608      $bottomNext.removeClass('hidden-control');
3609      let prev, next;
3610      if ($bottomPrev.parent()[0].getBoundingClientRect().width) {
3611        prev = $bottomPrev;
3612        next = $bottomNext;
3613      } else {
3614        prev = $topPrev;
3615        next = $topNext;
3616        makeSquare($topPrev);
3617        makeSquare($topNext);
3618      }
3619      slider.children().each(function () {
3620        this.style.width = this.getBoundingClientRect().width + 'px';
3621      });
3622      slider.slick({
3623        dots: false,
3624        prevArrow: prev,
3625        nextArrow: next,
3626        slidesToScroll: 1,
3627        infinite: false,
3628        slidesToShow: layout.slides
3629      });
3630    } else {
3631      ensureClass($topPrev, 'hidden-control');
3632      ensureClass($topNext, 'hidden-control');
3633      ensureClass($bottomPrev, 'hidden-control');
3634      ensureClass($bottomNext, 'hidden-control');
3635    }
3636  }
3637})('section-1ae84a2f-352a-40df-9967-03972ee58fc7', JSON.parse("{\"resource\":\"agent\",\"useRouterApi\":false,\"companyId\":\"71d4b9b5-d2d9-47f2-ab55-cbbab0ea5089\",\"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}}"));
3638} catch(e) {
3639console.log(e);
3640}
3641
3642            var { body } = document;
3643            var globalNav = body.querySelector(':scope > nav');
3644            var globalSideMenu = body.querySelector(':scope > div.sidemenu');
3645
3646            document.querySelectorAll('body > .modal .close').forEach(modalCloseBtn => {
3647                modalCloseBtn.addEventListener('click', function() {
3648                window.lpUI.hideClosestModal(modalCloseBtn);
3649              });
3650            });
3651
3652            window.addEventListener('click', function() {
3653                document.querySelectorAll('.share-popup').forEach(sharedPopup => {
3654                    sharedPopup.style.display = 'none' ;
3655                });
3656            });
3657
3658            /* Misc Partials / Addons */
3659            function initWOW() {
3660                if (wow) {
3661                    wow.init();
3662                    wow.scrollHandler();
3663                    setTimeout(function () {
3664                        const wowHideStyle = document.getElementById('wow-hide-elements');
3665                        if(wowHideStyle) {
3666                            wowHideStyle.disabled = true;
3667                        }
3668                    }, 1);
3669                }
3670            }
3671
3672            const wowHideElements =  document.getElementById('wow-hide-elements');
3673            if (wowHideElements) {
3674               wowHideElements.disabled = false;
3675            }
3676
3677                initWOW();
3678
3679            /* Generic Navbar Handling */
3680            globalNav?.querySelectorAll('.hamburger-component').forEach(hamburgerComponent => {
3681                hamburgerComponent.addEventListener('click', function() {
3682                window.lpUI.sideMenuToggle();
3683              });
3684            });
3685            globalSideMenu?.querySelectorAll('.toggle').forEach(toggleEl => {
3686                toggleEl.addEventListener('click', function() {
3687                window.lpUI.sideMenuToggle();
3688              });
3689            });
3690
3691            document.querySelectorAll('body > nav .sub-nav-container > a, body > div.sidemenu .sub-nav-container > a').forEach(linkEl => {
3692                linkEl.addEventListener('click', function(e) {
3693                  e.preventDefault();
3694                  e.stopPropagation();
3695                  var subNav = linkEl.parentElement.querySelector(':scope > .sub-nav');
3696                  if (subNav && subNav.classList.contains('visible')){
3697                    subNav.classList.remove('visible');
3698                  } else {
3699                    globalNav?.querySelectorAll('.sub-nav-container .sub-nav').forEach(globalSubNav => {
3700                      globalSubNav.classList.remove('visible');
3701                    });
3702                    globalSideMenu?.querySelectorAll('.sub-nav').forEach(sideMenuSubNav => {
3703                        sideMenuSubNav.classList.remove('visible');
3704                    });
3705                    subNav?.classList.add('visible');
3706                  }
3707                });
3708            });
3709            window.addEventListener('click', function() {
3710                document.querySelectorAll('nav .sub-nav.visible, .sidemenu .sub-nav.visible').forEach(subNavEl => {
3711                    subNavEl.classList.remove('visible');
3712                });
3713            });
3714
3715        }
3716
3717        document.addEventListener('DOMContentLoaded', lpGlobalInit);
3718
3719    </script>
3719
3720
3721    
3721<script type="module">
3722    function selectorExists(selector) {
3723        return document.querySelector(selector) !== null;
3724    }
3725
3726    // Function to initialize the third-party library
3727    function initParoller(selector = '.my-paroller') {
3728        var $parollerElements = $(selector);
3729        if ($parollerElements.length > 0 && typeof $parollerElements.paroller === 'function') {
3730            $parollerElements.paroller();
3731        }
3732    }
3733
3734    const parollerSelector = '.my-paroller';
3735
3736    if (selectorExists(parollerSelector)) {
3737        window.luxuryPresence.libs.loadJs(window.luxuryPresence.libs.jsLibsMap.paroller.jsSrc, function() {
3738            initParoller(parollerSelector);
3739            window.luxuryPresence.libs.jsLibsMap.paroller.isLoaded = true;
3740        });
3741    }
3742    </script>
3742
3743
3744            <!-- Google Tag Manager (noscript) -->
vendor: 80 bytes, lines 3744-3745
3744
3745            <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
3745GTM-T9SFQGHZ
vendor: 107 bytes, lines 3745-3747
3745"
3746            height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
3747            
3747<!-- End Google Tag Manager -->
3748        
3749            
3749<script
3750                src="https://cdn.luxurypresence.com/scripts/a11y-widget/latest/widget.js"
3751                data-website-id="0a323938-1109-46c4-b822-46ace916f333"
3752                
3753                defer></script>
vendor: 1 bytes, line 3753
3753
3754<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:'a45fc4dd2e62f865',t:'MTc5MTIzODM1OA=='};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>
3754<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>
3754
3755</body>
3756</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.