1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 2<html lang="en" xmlns="http://www.w3.org/1999/xhtml"> 3<head id="head"> 4 <!-- OneTrust consent script must load before GTM and any tracking/analytics tag (TFS 2965948). --> 5 <!-- OneTrust Cookies Consent Notice start for 777mainstreet.com -->
6<script type="text/javascript" src="https://cdn.cookielaw.org/consent/4c8a5c01-9ebd-427b-9411-86d8597dd282/OtAutoBlock.js"></script>
vendor: 1 bytes, line 6
6
7<script src="https://cdn.cookielaw.org/scripttemplates/otSDKStub.js" data-document-language="true" type="text/javascript" charset="UTF-8" data-domain-script="4c8a5c01-9ebd-427b-9411-86d8597dd282"></script>
vendor: 1 bytes, line 7
7
8<script type="text/javascript"> 9function OptanonWrapper() { } 10</script>
10 11<!-- OneTrust Cookies Consent Notice end for 777mainstreet.com --><meta name="viewport" content="width=device-width, initial-scale=1" /><title> 12 Apartment Rental Amenities in Hartford, CT | 777 Main Street Amenities 13</title><meta name="description" content="Find Apartments for Rent in Hartford, CT. 777 Main Street has many of the amenities you are looking for. Take a look today! (860) 467-1206" /> 14<meta http-equiv="content-type" content="text/html; charset=UTF-8" /> 15<meta http-equiv="pragma" content="no-cache" /> 16<meta http-equiv="content-style-type" content="text/css" /> 17<meta http-equiv="content-script-type" content="text/javascript" /> 18<meta name="keywords" content="CT Apartment Amenities, Amenities for apartments in Hartford, CT, 777 Main Street Apartment amenities CT" /> 19<link href="/CMSPages/GetResource.ashx?stylesheetname=RPcssMaster_S0097-Moderna" type="text/css" rel="stylesheet" /> 20<!-- MasterPageIncludes --><link href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.9.1/themes/ui-lightness/jquery-ui.css" type="text/css" rel="preload" as="style" onload="this.rel='stylesheet'" integrity="sha256-YUNa6t/JONQ+iBynZFpRTKfiPdqfpMKCPOQEFmtF70Q=" crossorigin="anonymous"></link>
20<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js" type="text/javascript" integrity="sha256-9VTS8JJyxvcUR+v+RTLTsd0ZWbzmafmlzMmeZO9RFyk=" crossorigin="anonymous"></script>
20<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.9.0/jquery-ui.min.js" type="text/javascript" integrity="sha256-KcG2ZvBcPZjk4GfR49kpfXemCzwSulQxLRvBus92Vv4=" crossorigin="anonymous"></script>
20<script src="https://cs-cdn.realpage.com/CWS/2623272/CMSScripts/Custom/RPWebParts/global.min.js" type="text/javascript" integrity="" crossorigin="anonymous"></script>
20<script src="https://cs-cdn.realpage.com/CWS/2623272/Accessibe/Accessibe.js" type="text/javascript" integrity="" crossorigin="anonymous"></script>
20<!-- /MasterPageIncludes --><meta name="viewport" content="width=device-width,initial-scale=1" /> 21<meta name="geo.position" content="41.766219;-72.6738298" /> 22<meta name="geo.placename" content="Hartford" /> 23<meta name="geo.region" content="US-CT" /> 24<meta name="ICBM" content="41.766219, -72.6738298" /> 25 26<link type="text/css" href="https://cs-cdn.realpage.com/CWS/2623272/TemplateResources/Global/Icons/font-awesome.min.css" rel="stylesheet" /> 27<link type="text/css" href="https://cs-cdn.realpage.com/CWS/2623272/TemplateResources/Global/Icons/fontello.css" rel="stylesheet" /> 28<link rel="stylesheet" href="https://cs-cdn.realpage.com/CWS/2623272/GlobalResources/Bootstrap/css/bootstrap.min.css" /> 29
30<script src="https://cs-cdn.realpage.com/CWS/2623272/CMSScripts/Custom/RPWebParts/global.min.js" type="text/javascript"></script>
vendor: 1 bytes, line 30
30
31<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.4/jquery.min.js" type="text/javascript"></script>
vendor: 1 bytes, line 31
31
32<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/jquery-ui.js" type="text/javascript"></script>
vendor: 1 bytes, line 32
32
33<script src="https://code.jquery.com/jquery-migrate-1.4.1.js" type="text/javascript"></script>
vendor: 1 bytes, line 33
33
34<script src="https://cs-cdn.realpage.com/CWS/2623272/GlobalResources/Bootstrap/js/bootstrap.min.js" type="text/javascript"></script>
vendor: 1 bytes, line 34
34
35<script src="https://cs-cdn.realpage.com/CWS/2623272/TemplateResources/Standard/Moderna/scripts/app.js" type="text/javascript"></script>
35 36 37 38
39<script type="text/javascript" src="https://doorway.knck.io/latest/doorway.min.js"></script>
vendor: 1 bytes, line 39
39
40<script text="text/javascript" type="text/javascript"> 41 window.knockDoorway.init('d580e5bc11eb96081658fed1313ddf8a', 'community', '1ed5e6dd5cc9c0b1'); 42</script>
42 43 44<!-- Google tag (gtag.js) -->
vendor: 72 bytes, lines 44-45
44 45<script async="async" src="https://www.googletagmanager.com/gtag/js?id=
45G-KF90BLESK8
vendor: 35 bytes, line 45
45" type="text/javascript"></script>
46<script type="text/javascript"> 47
vendor: 134 bytes, lines 47-51
47window.dataLayer = window.dataLayer || []; 48 function gtag(){dataLayer.push(arguments);} 49 gtag('js', new Date()); 50 51 gtag('config', '
51G-KF90BLESK8
vendor: 4 bytes, line 51
51');
52</script>
52<script src="https://cdnjs.cloudflare.com/ajax/libs/gsap/2.1.2/TweenLite.min.js" type="text/javascript"></script>
vendor: 1 bytes, line 52
52
53<script src="https://cdnjs.cloudflare.com/ajax/libs/ScrollMagic/2.0.5/ScrollMagic.min.js" type="text/javascript"></script>
vendor: 1 bytes, line 53
53
54<script src="https://cdnjs.cloudflare.com/ajax/libs/ScrollMagic/2.0.5/plugins/animation.gsap.js" type="text/javascript"></script>
vendor: 1 bytes, line 54
54
55<script src="https://cdnjs.cloudflare.com/ajax/libs/gsap/1.17.0/plugins/ScrollToPlugin.min.js" type="text/javascript"></script>
vendor: 1 bytes, line 55
55
56<script src="https://cs-cdn.realpage.com/CWS/2623272/SPS/sps-v3.js" type="text/javascript"></script>
vendor: 1 bytes, line 56
56
57<script src="https://cs-cdn.realpage.com/CWS/2623272/TemplateResources/Standard/Moderna/scripts/app-home.js" type="text/javascript"></script>
57 58
59<script type="text/javascript"> 60 // Seo Values 61 var seohome = {title: "Apartments for Rent in Hartford, CT | 777 Main Street - Home", keywords: "CT Apartments Great Hartford, CT, Apartments for rent in CT, (860) 467-1206 Apartments CT", description: "Come to a home you deserve located in Hartford, CT. 777 Main Street has everything you need . Call (860) 467-1206 today!"}; 62 var seofloorplans = {title: "Hartford, CT 777 Main Street Floor Plans | Apartments in Hartford, CT - Floor Plans", keywords: "CT Apartment Floor Plans, Floor plans for apartments in Hartford, CT, 777 Main Street Apartment Floor plans CT", description: "See our spacious floor plans at our apartments in Hartford, CT. We have many floor plans available with multiple features."}; 63 var seoamenities = {title: "Apartment Rental Amenities in Hartford, CT | 777 Main Street Amenities", keywords: "CT Apartment Amenities, Amenities for apartments in Hartford, CT, 777 Main Street Apartment amenities CT", description: "Find Apartments for Rent in Hartford, CT. 777 Main Street has many of the amenities you are looking for. Take a look today! (860) 467-1206 "}; 64 var seogallery = {title: "777 Main Street Photo Gallery | Hartford, CT Apartment Pictures", keywords: "CT Apartment Gallery, Gallery for apartments in Hartford, CT, 777 Main Street Apartment Gallery CT", description: "View all 777 Main Street Apartments here. Quality Photo Gallery of 777 Main Street! Contact us at (860) 467-1206."}; 65 var seoneighborhood = {title: "Hartford, CT Neighborhood | 777 Main Street Hartford, CT Neighborhood", keywords: "CT Apartment Neighborhood, Neighborhood for apartments in Hartford, CT, 777 Main Street Apartment Neighborhood CT", description: "Located in Hartford, CT. 777 Main Street has all the features you need in the Hartford area. Find out why so many call us home."}; 66 var seocontact = {title: "Contact Us 777 Main Street | 777 Main Street Hartford, CT - Contact Us", keywords: "CT Apartments, Apartments for rent in CT, 777 Main Street, Contact 777 Main Street ", description: "Contact us today at 777 Main Street and make Hartford your new home today. You will be happy you did! Call us (860) 467-1206"}; 67 var seostudents = {title: "", keywords: "", description: ""}; 68 69 70 71 var RP_SPS = new SPS_CONSTRUCTOR({ 72 add_pages: [], 73 remove_pages: ['residents'], 74 add_non_SPS_links: [], 75 header: '#header-sps-placeholder', 76 scene_container_class: 'block-area', 77 offset_header: true, 78 offset_mobile: true, 79 mobile_offset_end: 1024 80 }); 81 $(window).ready(function () { 82 //Init SPS 83 RP_SPS.init(); 84 }); 85</script>
85 86<link href="https://capi.myleasestar.com/v2/dimg/154012577/75x75/154012577.png" type="image/png" rel="shortcut icon" /> 87<link href="https://capi.myleasestar.com/v2/dimg/154012577/75x75/154012577.png" type="image/png" rel="icon" /> 88<link href="/CmsPages/GetResource.ashx?stylesheetname=rpWebpartCss_MediaViewer;rpWebpartCss_BackgroundVideo;rpWebpartCss_AmenitiesStacked;rpWebpartCss_GallerySquareTiles;rpWebpartCss_MediaViewer;rpWebpartCss_NeighborhoodFullWidth;rpWebpartCss_GallerySocial;rpWebpartCss_ContactUsEnhanced;rpWebpartCss_TimeOut;rpWebPartCSS_SocialMedia;RpWebpartCss_PopUp;rpWebpartCss_CCPA" type="text/css" rel="stylesheet" /> 89 90
90<script type="text/javascript">var firstTouchEnabled=true</script>
90 91 92 93 <style> 94 :root { 95 --RPcolor1: #ffffff !important; 96 --RPcolor2: #333333 !important; 97 --RPcolor3: #6a780f !important; 98 --RPcolor4: #888888 !important; 99 --RPcolor5: #eaeaea !important; 100 --RPcolor6: #ffffff !important; 101 --RPcolor7: #ffffff !important; 102 --RPcolor8: #ffffff !important; 103 --RPcolor9: #ffffff !important; 104 105 --RPHeaderFont: 'Playfair Display', Helvetica, Arial, sans-serif; 106 --RPBodyFont: 'Roboto', Helvetica, Arial, sans-serif; 107 108 --FPCardImageHeight: 200px; 109 --FPCardImageHeight-Medium: 200px; 110 --FPCardImageHeight-Large: 200px; 111 --FPModalImageHeight: 500px; 112 --FPModalImageHeightMedium: 500px; 113 --FPModalImageHeightLarge: 500px; 114 --FPCardCarouselPadding: 15px; 115 --FPCardCarouselPadding-Large: 30px; 116 } 117 118 /* WCAG 2.4.11 â footer content not obscured by the OneTrust cookie banner. All 3 rules gated on the banner being visible so nothing applies when OneTrust is dismissed / absent. */ 119 html:has(#onetrust-banner-sdk:not([style*="display: none"])) { 120 scroll-padding-bottom: 220px; 121 } 122 body:has(#onetrust-banner-sdk:not([style*="display: none"])) { 123 padding-bottom: 220px; 124 } 125 html:has(#onetrust-banner-sdk:not([style*="display: none"])) :focus-visible { 126 scroll-margin-bottom: 220px; 127 } 128 129 /* WCAG 1.4.10 (TFS 3041085) â OneTrust's own responsive CSS for the banner 130 (and its "Cookies Settings" button) can render briefly at desktop width 131 before its breakpoint styles finish applying, pushing the page into 132 horizontal scroll on mobile. This stylesheet is inline in <head>, so it 133 applies to #onetrust-banner-sdk the instant OneTrust injects it â no 134 dependency on OneTrust's own script/CSS load order. */ 135 @media (max-width: 767px) { 136 #onetrust-banner-sdk { 137 max-width: 100vw !important; 138 box-sizing: border-box !important; 139 overflow-x: hidden; 140 } 141 } 142 </head></style> 143 144
144<script src="https://cdn.jsdelivr.net/npm/css-vars-ponyfill@1" type="text/javascript"></script>
144 145
145<script src="/RPWebParts/General/CommonData.js" type="text/javascript"></script>
145 146
146<script type="text/javascript"> 147 cssVars(); 148 </script>
148 149 150
150<script type="text/javascript"> 151 var sourcesList = JSON.parse('[{"DisplayName":"Affordable Housing","PmSourceId":"ah"},{"DisplayName":"AffordableSearch.com","PmSourceId":"affs"},{"DisplayName":"Apartment Finder","PmSourceId":"af"},{"DisplayName":"Apartment Guide","PmSourceId":"ag"},{"DisplayName":"Apartment List","PmSourceId":"al"},{"DisplayName":"Apartment Ratings","PmSourceId":"ar"},{"DisplayName":"Apartments.com","PmSourceId":"a"},{"DisplayName":"Apple Maps","PmSourceId":"am"},{"DisplayName":"Bing.com","PmSourceId":"bng"},{"DisplayName":"Brochure/Flyer","PmSourceId":"br"},{"DisplayName":"Broker","PmSourceId":"broker"},{"DisplayName":"Corporate Site","PmSourceId":"corw"},{"DisplayName":"Craigslist","PmSourceId":"cl"},{"DisplayName":"Direct Mail","PmSourceId":"dm"},{"DisplayName":"Drive-by","PmSourceId":"db"},{"DisplayName":"Facebook","PmSourceId":"fb"},{"DisplayName":"GeoTargeter","PmSourceId":"gtg"},{"DisplayName":"Google","PmSourceId":"g"},{"DisplayName":"Google My Business","PmSourceId":"gmb"},{"DisplayName":"Locator","PmSourceId":"l"},{"DisplayName":"Outreach","PmSourceId":"outr"},{"DisplayName":"Paid Social Ads","PmSourceId":"psa"},{"DisplayName":"Property Website","PmSourceId":"w"},{"DisplayName":"Referral - Current Resident","PmSourceId":"refcr"},{"DisplayName":"Referral - Former Resident","PmSourceId":"reffr"},{"DisplayName":"Referral - Sister Property","PmSourceId":"sist"},{"DisplayName":"Referral - Word of Mouth","PmSourceId":"refwom"},{"DisplayName":"Rent.com","PmSourceId":"r"},{"DisplayName":"Search Engine Ad","PmSourceId":"sea"},{"DisplayName":"Signage","PmSourceId":"signage"},{"DisplayName":"Social Media","PmSourceId":"sm"},{"DisplayName":"Yelp","PmSourceId":"y"},{"DisplayName":"Zillow","PmSourceId":"z"},{"DisplayName":"Zumper","PmSourceId":"zu"}]'); 152 var propertyKey = '3G6043728712'; 153 var propertyId = '6437872'; 154 var leadList = [ 155 { hcLeadChannelName: "Apartment Finder", Domain: "ApartmentFinder.com"}, 156 { hcLeadChannelName: "Apartment Home Living Export", Domain: "ApartmentHomeLiving.com"}, 157 { hcLeadChannelName: "ApartmentGuide.com", Domain: "ApartmentGuide.com"}, 158 { hcLeadChannelName: "Apartments.com Network", Domain: "Apartments.com" }, 159 { hcLeadChannelName: "Rent.com", Domain: "Rent.com" }, 160 { hcLeadChannelName: "ForRent.com", Domain: "ForRent.com" }, 161 { hcLeadChannelName: "Move.com", Domain: "Move.com" }, 162 { hcLeadChannelName: "ApartmentFinder.com", Domain: "ApartmentFinder.com" }, 163 { hcLeadChannelName: "ApartmentShowcase.com", Domain: "ApartmentShowcase.com" }, 164 { hcLeadChannelName: "ApartmentList.com", Domain: "ApartmentList.com" }, 165 { hcLeadChannelName: "Zillow Rental Network", Domain: "zillow.com" }, 166 { hcLeadChannelName: "LiveLovely.com", Domain: "LiveLovely.com" }, 167 { hcLeadChannelName: "Google.com", Domain: "Google.com" }, 168 { hcLeadChannelName: "MyLeasestar", Domain: "myleasestar.com" }, 169 { hcLeadChannelName: "Greystar", Domain: "greystar.com" } 170 ]; 171 172 //Defined in CommonData 173 //matchedSource = f_getSessionStorage('matchedSource'); 174 //matchedSourceId = f_getSessionStorage('matchedSourceId'); 175 176 tryMatchingSourceFromReferrerUrl(window.document, sourcesList); 177 </script>
177 178 179
179<script type="text/javascript"> 180 var utmConfigInfo = ''; 181 182 $(document).ready(function () { 183 commonDataOnReady(document, sourcesList); 184 }); 185 186 187 function setSEONumber(phoneNumber) { 188 $('.seo-number').each(function() { 189 if ($(this).find('span').length) { 190 $(this).find('span').html(phoneNumber); 191 } else { 192 $(this).html(phoneNumber); 193 } 194 195 if ($(this).attr('href') && $(this).attr('href').indexOf('tel:') > -1) 196 $(this).attr('href', 'tel: ' + phoneNumber); 197 if ($(this).attr('onclick') && $(this).attr('onclick').indexOf('f_analyticsSendEvent(') > -1) { 198 $(this).attr('onclick', "f_analyticsSendEvent('general', 'click-phone-number', '" + phoneNumber + '\')'); 199 } 200 }); 201 202 203 } 204 205 </script>
205 206 207
207<script type="text/javascript"> 208 try { 209 let myAccessibe = new RpAcsb() 210 myAccessibe.config = { 211 positionX: 'right', 212 positionY: 'bottom', 213 offsetX: 120, 214 offsetY: 20, 215 hideTrigger: false, 216 statementLink: 'https://www.realpage.com/accessibility-statement/' 217 } 218 myAccessibe.init() 219 } 220 catch (err) { 221 console.log("Accessibe Script not available"); 222 } 223 </script>
223 224 225 <!-- OG Image Information --> 226 <meta property="og:image" content="https://capi.myleasestar.com/v2/dimg-crop/60437946/1200x1200/60437946.png" /> 227 <!-- END OG Image Information -->
227<script type="text/javascript">var propertyId='6437872';var lsApi='https://c-leasestar-api.realpage.com';var cacheUrl='';</script>
227<script type="text/javascript">var leadObj=[{"PhoneNumber":"","LeadChannelName":"MyNewPlace"},{"PhoneNumber":"(860) 856-7777","LeadChannelName":"Syndication"},{"PhoneNumber":"","LeadChannelName":"Moving ILS"},{"PhoneNumber":"(860) 856-7777","LeadChannelName":"Zillow Rental Network"},{"PhoneNumber":"(860) 851-4946","LeadChannelName":"Apartments.com Network"},{"PhoneNumber":"(860) 926-3512","LeadChannelName":"Website"}];var googleCallTrackingEnabled = false;</script>
227 228<link rel="canonical" href="https://www.777mainstreet.com/Amenities.aspx" /> 229 <!-- ExternalResources_Header --> 230 231 <!-- /ExternalResources_Header --> 232 <style> 233 /* WCAG 2.4.1 Bypass Blocks ââ¬â visible-on-focus skip-to-content link (TFS 2850320). */ 234 .skip-link { 235 position: absolute; 236 left: -10000px; 237 top: auto; 238 width: 1px; 239 height: 1px; 240 overflow: hidden; 241 } 242 .skip-link:focus { 243 position: fixed; 244 top: 0; 245 left: 0; 246 width: auto; 247 height: auto; 248 padding: 0.5rem 1rem; 249 background: #000; 250 color: #fff; 251 text-decoration: underline; 252 z-index: 10000; 253 outline: 3px solid #fff; 254 outline-offset: -3px; 255 } 256 257 /* WCAG 3.2.5/2.4.4 ââ¬â screen-reader-only utility (TFS 2991863). 258 RealPage-owned definition; the class is currently only reachable via vendor CSS 259 (Bootstrap / Font Awesome) on several templates. Mirrors header.css:1481. */ 260 .sr-only { 261 position: absolute; width: 1px; height: 1px; 262 padding: 0; margin: -1px; overflow: hidden; 263 clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; 264 } 265 .sr-only-focusable:active, .sr-only-focusable:focus { 266 position: static; width: auto; height: auto; 267 margin: 0; overflow: visible; clip: auto; white-space: normal; 268 } 269 </style>
270<script type="text/javascript">dataLayer = [{'propertyId': '6437872' ,'companyId': '860' ,'productTypeId': '6131'}];</script>
270<script type="text/javascript">function gtag(){dataLayer.push(arguments);}</script>
270<!-- Google Tag Manager Header -->
270<script type="text/javascript">
vendor: 453 bytes, lines 270-274
270(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({"gtm.start": 271 new Date().getTime(),event:"gtm.js"});var f=d.getElementsByTagName(s)[0], 272 j=d.createElement(s),dl=l!="dataLayer"?"&l="+l:"";j.async=true;j.src= 273 "//www.googletagmanager.com/gtm.js?id="+i+dl;f.parentNode.insertBefore(j,f); 274 })(window,document,"script","dataLayer","
274GTM-P97H5L
vendor: 33 bytes, lines 274-275
274"); 275
275</script>
275<script type="application/ld+json">{"@context":"http://schema.org","@type":"Apartment","name":"777 Main","image":"https://capi.myleasestar.com/v2/dimg/60437946/400x400/60437946.png","url":"https://www.777mainstreet.com","telephone":"(860) 926-3512","address":{"@type":"PostalAddress","streetAddress":"777 Main St","addressLocality":"Hartford","addressRegion":"CT","postalCode":"06103","addressCountry":"USA"},"geo":{"@type":"GeoCoordinates","latitude":41.766219,"longitude":-72.6738298},"openingHoursSpecification":[{"@type":"OpeningHoursSpecification","dayOfWeek":"Monday","opens":"9:00AM","closes":"6:00PM"},{"@type":"OpeningHoursSpecification","dayOfWeek":"Tuesday","opens":"9:00AM","closes":"6:00PM"},{"@type":"OpeningHoursSpecification","dayOfWeek":"Wednesday","opens":"9:00AM","closes":"6:00PM"},{"@type":"OpeningHoursSpecification","dayOfWeek":"Thursday","opens":"9:00AM","closes":"6:00PM"},{"@type":"OpeningHoursSpecification","dayOfWeek":"Friday","opens":"9:00AM","closes":"6:00PM"}]}</script>
275<link href="https://cs-cdn.realpage.com/CWS/2623272/CMSScripts/Custom/RPWebParts/fancybox3/jquery.fancybox.css" type="text/css" rel="preload" as="style" onload="this.rel='stylesheet'" />
276<script type="text/javascript">var mvTourText = ''; var mvColor = '6a780f'; mvBtnAnimation = 'spin'</script>
276<script type="text/javascript">var mvTours = null</script>
276<script src="https://cs-cdn.realpage.com/CWS/2623272/CMSScripts/Custom/RPWebParts/fancybox3/jquery.fancybox.js" type="text/javascript" defer="defer"></script>
276<script src="https://cs-cdn.realpage.com/CWS/2623272/CMSScripts/Custom/RPWebParts/media-viewer.js" type="text/javascript" defer="defer"></script>
276<link href="https://cs-cdn.realpage.com/CWS/2623272/App_Themes/Global/RPWebParts/flexslider.css" type="text/css" rel="preload" as="style" onload="this.rel='stylesheet'" />
277<script src="https://cs-cdn.realpage.com/CWS/2623272/CMSScripts/Custom/RPWebParts/jquery.flexslider-min.js" type="text/javascript" defer="defer"></script>
277<link href="/CMSPages/GetResource.ashx?stylesheetfile=/Assets/common/wcag/css/pause-control.min.css" type="text/css" rel="stylesheet" /> 278<link href="https://cs-cdn.realpage.com/CWS/2623272/CMSScripts/Custom/RPWebParts/fancybox3/jquery.fancybox.css" type="text/css" rel="preload" as="style" onload="this.rel='stylesheet'" />
279<script type="text/javascript">var floorPlanTemplate = 'floorplan1';</script>
279<link href="https://cs-cdn.realpage.com/CWS/2623272/CMSScripts/Custom/RPWebParts/fancybox3/jquery.fancybox.css" type="text/css" rel="preload" as="style" onload="this.rel='stylesheet'" />
280<script src="https://cs-cdn.realpage.com/CWS/2623272/CMSScripts/Custom/RPWebParts/masonry/masonry.pkgd.min.js" type="text/javascript" defer="defer"></script>
280<script type="text/javascript">var p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneGalleryMain_WebPartLoader2_ctl00_GalleryContainer= {galleryId:'42848',hideColumnSelector:'false',defaultView:'mosaic',openCloseEffect:'elastic',openCloseSpeed:'normal',nextPrefEffect:'fade',nextPrevSpeed:'normal',playSpeed:'3000'};</script>
280<script type="text/javascript">var latitude='41.766219',longitude='-72.6738298',name='777 Main',addressLine1='777 Main St',city='Hartford',addressState='CT',addressPostalCode='06103',phonesNumber='(860) 926-3512',website='',walkScore='91',searchRadius='1609.34';</script>
280<link href="https://cs-cdn.realpage.com/CWS/2623272/CMSScripts/Custom/RPWebParts/fancybox3/jquery.fancybox.css" type="text/css" rel="preload" as="style" onload="this.rel='stylesheet'" /> 281<link href="https://cs-cdn.realpage.com/CWS/2623272/GlobalResources/datepicker.css" type="text/css" rel="preload" as="style" onload="this.rel='stylesheet'" />
282<script src="https://cs-cdn.realpage.com/CWS/2623272/GlobalResources/datepicker.js" type="text/javascript" defer="defer"></script>
282<link href="https://cs-cdn.realpage.com/CWS/2623272/TemplateResources/Global/Icons/font-awesome.min.css" type="text/css" rel="preload" as="style" onload="this.rel='stylesheet'" /> 283<link href="/CMSPages/GetResource.ashx?stylesheetfile=/assets/common/footer/css/footer.min.css" type="text/css" rel="stylesheet" />
284<script type="text/javascript">var footerTemplate = 'footer7';</script>
284<script type="text/javascript">var propertyOfficeHours = [{"DayOfWeek":"Monday","OfficeHoursText":"","StartTime1":"9:00AM","EndTime1":"6:00PM","StartTime2":null,"EndTime2":null},{"DayOfWeek":"Tuesday","OfficeHoursText":"","StartTime1":"9:00AM","EndTime1":"6:00PM","StartTime2":null,"EndTime2":null},{"DayOfWeek":"Wednesday","OfficeHoursText":"","StartTime1":"9:00AM","EndTime1":"6:00PM","StartTime2":null,"EndTime2":null},{"DayOfWeek":"Thursday","OfficeHoursText":"","StartTime1":"9:00AM","EndTime1":"6:00PM","StartTime2":null,"EndTime2":null},{"DayOfWeek":"Friday","OfficeHoursText":"","StartTime1":"9:00AM","EndTime1":"6:00PM","StartTime2":null,"EndTime2":null}]</script>
284<script type="text/javascript">var latitude='41.766219',longitude='-72.6738298',name='777 Main',addressLine1='777 Main St',city='Hartford',addressState='CT',addressPostalCode='06103',phonesNumber='(860) 926-3512',website='';</script>
284<script type="text/javascript">$(function(){ 285 $('.footer-widget .residents a[target="_blank"]').each(function() { 286 if (!$(this).find('.sr-only').length) { 287 $(this).append('<span class="sr-only"> (opens in a new tab)</span>'); 288 } 289 }); 290 });</script>
290<script type="text/javascript"> 291(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
vendor: 323 bytes, line 291
291(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src='https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);})(window,document,'script','dataLayer','
291GTM-PGXC6VC
vendor: 3 bytes, line 291
291');
291var RpUniqueUserId = f_getAnalyticsUserValueFromCookie('RP_LSWS_USER');let customDimensions = {}; customDimensions.dimension4 = '6437872'; customDimensions.dimension5 = '860'; customDimensions.dimension9 = RpUniqueUserId; customDimensions.dimension10 = 's0097-moderna'; customDimensions.dimension11 = new Date().getTime(); customDimensions.dimension18 = '0'; customDimensions.dimension19 = '48111'; dataLayer.push({customDimensions});ga('set', { 'dimension4': 6437872, 'dimension5': 860, 'dimension9': RpUniqueUserId, 'dimension10': 's0097-moderna', 'dimension11': new Date().getTime(), 'dimension18':'0', 'dimension19': 48111 });ga('send', 'pageview'); 292</script>
292<!-- Google tag (gtag.js) -->
vendor: 72 bytes, line 292
292 <script async="async" src="https://www.googletagmanager.com/gtag/js?id=
292G-KF90BLESK8
vendor: 34 bytes, line 292
292" type="text/javascript"></script>
292<script type="text/javascript">
vendor: 127 bytes, line 292
292window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', '
292G-KF90BLESK8
vendor: 3 bytes, line 292
292')
292</script>
292<link href="/CMSPages/GetResource.ashx?_webparts=1483" type="text/css" rel="stylesheet" /> 293
294<script>(window.BOOMR_mq=window.BOOMR_mq||[]).push(["addVar",{"rua.upush":"false","rua.cpush":"false","rua.upre":"false","rua.cpre":"false","rua.uprl":"false","rua.cprl":"false","rua.cprf":"false","rua.trans":"","rua.cook":"false","rua.ims":"false","rua.ufprl":"false","rua.cfprl":"false","rua.isuxp":"false","rua.texp":"norulematch","rua.ceh":"false","rua.ueh":"false","rua.ieh.st":"0"}]);</script>
294 295
295<script>!function(e){var n="https://s.go-mpulse.net/boomerang/";if("False"=="True")e.BOOMR_config=e.BOOMR_config||{},e.BOOMR_config.PageParams=e.BOOMR_config.PageParams||{},e.BOOMR_config.PageParams.pci=!0,n="https://s2.go-mpulse.net/boomerang/";if(window.BOOMR_API_key="Y2PYZ-3WZ5U-9VEDC-WUEHY-8N7AV",function(){function e(){if(!i){var e=document.createElement("script");e.id="boomr-scr-as",e.src=window.BOOMR.url,e.async=!0,o.parentNode.appendChild(e),i=!0}}function t(e){i=!0;var n,t,a,r,d=document,O=window;if(window.BOOMR.snippetMethod=e?"if":"i",t=function(e,n){var t=d.createElement("script");t.id=n||"boomr-if-as",t.src=window.BOOMR.url,BOOMR_lstart=(new Date).getTime(),e=e||d.body,e.appendChild(t)},!window.addEventListener&&window.attachEvent&&navigator.userAgent.match(/MSIE [67]\./))return window.BOOMR.snippetMethod="s",void t(o.parentNode,"boomr-async");a=document.createElement("IFRAME"),a.src="about:blank",a.title="",a.role="presentation",a.loading="eager",r=(a.frameElement||a).style,r.width=0,r.height=0,r.border=0,r.display="none",o.parentNode.appendChild(a);try{O=a.contentWindow,d=O.document.open()}catch(_){n=document.domain,a.src="javascript:var d=document.open();d.domain='"+n+"';void(0);",O=a.contentWindow,d=O.document.open()}if(n)d._boomrl=function(){this.domain=n,t()},d.write("<bo"+"dy onload='document._boomrl();'>");else if(O._boomrl=function(){t()},O.addEventListener)O.addEventListener("load",O._boomrl,!1);else if(O.attachEvent)O.attachEvent("onload",O._boomrl);d.close()}function a(e){window.BOOMR_onload=e&&e.timeStamp||(new Date).getTime()}if(!window.BOOMR||!window.BOOMR.version&&!window.BOOMR.snippetExecuted){window.BOOMR=window.BOOMR||{},window.BOOMR.snippetStart=(new Date).getTime(),window.BOOMR.snippetExecuted=!0,window.BOOMR.snippetVersion=12,window.BOOMR.url=n+"Y2PYZ-3WZ5U-9VEDC-WUEHY-8N7AV";var o=document.currentScript||document.getElementsByTagName("script")[0],i=!1,r=document.createElement("link");if(r.relList&&"function"==typeof r.relList.supports&&r.relList.supports("preload")&&"as"in r)window.BOOMR.snippetMethod="p",r.href=window.BOOMR.url,r.rel="preload",r.as="script",r.addEventListener("load",e),r.addEventListener("error",function(){t(!0)}),setTimeout(function(){if(!i)t(!0)},3e3),BOOMR_lstart=(new Date).getTime(),o.parentNode.appendChild(r);else t(!1);if(window.addEventListener)window.addEventListener("load",a,!1);else if(window.attachEvent)window.attachEvent("onload",a)}}(),"".length>0)if(e&&"performance"in e&&e.performance&&"function"==typeof e.performance.setResourceTimingBufferSize)e.performance.setResourceTimingBufferSize();!function(){if(BOOMR=e.BOOMR||{},BOOMR.plugins=BOOMR.plugins||{},!BOOMR.plugins.AK){var n=""=="true"?1:0,t="",a="z54cysqxzbmda2whyaaq-f-fb41ec6bc-clientnsv4-s.akamaihd.net",o="false"=="true"?2:1,i={"ak.v":"41","ak.cp":"1592120","ak.ai":parseInt("1022256",10),"ak.ol":"0","ak.cr":11,"ak.ipv":4,"ak.proto":"http/1.1","ak.rid":"12866f3","ak.r":47166,"ak.a2":n,"ak.m":"","ak.n":"essl","ak.cport":46200,"ak.gh":"23.200.89.175","ak.quicv":"","ak.tlsv":"tls1.2","ak.0rtt":"","ak.0rtt.ed":"","ak.csrc":"-","ak.acc":"bbr","ak.t":"1791475713","ak.ak":"hOBiQwZUYzCg5VSAfCLimQ==+hP+VQuyc0LHfx5HvvB5MemT3tDPBdCJMZ7/GXNk0hftiKPsMda1EvfkvlnxfQnPvRava34Bw37DbPDY0R5hdywPYav/mwOz7EcZ8mO27ZkTVey+Esw7R4LYgb3y/hAsDQJdtYnBTz8IHki9ayAzlCdzxqjmPz2gv3tyPxLGnILQipGE9m3o13DIpv0uwYh0bBPCZ2ZyWZeyzaf8KXSz7rEEtHQXJLSbA6RPuItuOnNolVuB+sUFOZbW7sYCQLgMhbwJ2yIvIoDnhOYPI45NqVekCAbsJc/ZlYjRycidzi3megrroLwNU5ShztZIDi/E+RH00C/18HIWulxFTIiEDbbCWiWNiq68hd9LzpljfsHuwm4Fy+AfvimwoXUWe/zhspTcrxYN6zs5UDJ62Tp0EpXKYQfAGz4A2IvpTrdSkBc=","ak.pv":"8","ak.dpoabenc":"","ak.tf":o};if(""!==t)i["ak.ruds"]=t;var r={i:!1,av:function(n){var t="http.initiator";if(n&&(!n[t]||"spa_hard"===n[t]))i["ak.feo"]=void 0!==e.aFeoApplied?1:0,BOOMR.addVar(i)},rv:function(){var e=["ak.cport","ak.cr","ak.csrc","ak.gh","ak.ipv","ak.m","ak.n","ak.ol","ak.proto","ak.quicv","ak.tlsv","ak.0rtt","ak.0rtt.ed","ak.r","ak.acc","ak.t","ak.tf"];BOOMR.removeVar(e)}};BOOMR.plugins.AK={akVars:i,akDNSPreFetchDomain:a,init:function(){if(!r.i){var e=BOOMR.subscribe;e("before_beacon",r.av,null,null),e("onbeacon",r.rv,null,null),r.i=!0}return this},is_complete:function(){return!0}}}}()}(window);</script>
295</head> 296<body class="LTR Chrome ENUS ContentBody"> 297 <a class="skip-link" href="#main-content">Skip to main content</a> 298 <!-- Google Tag Manager --> 299 <noscript> 300 <iframe src="//www.googletagmanager.com/ns.html?id=GTM-P97H5L" height="0" width="0" style="display:none;visibility:hidden" title="Google Tag Manager"></iframe> 301 </noscript> 302 <!-- End Google Tag Manager --> 303 304 305 306 307
308<script type="text/javascript"> 309 var displayModal = false; 310 if(navigator.userAgent.indexOf('MSIE')!==-1 || navigator.appVersion.indexOf('Trident/') > -1){ 311 displayModal = true; 312 } 313 314 315 // POLYFILLS 316 if (typeof IntersectionObserver == 'undefined') { 317 var intersectionObserverScript = document.createElement("script"); 318 intersectionObserverScript.type = "text/javascript"; 319 intersectionObserverScript.setAttribute("src", '/CMSScripts/Custom/Polyfill/intersection-observer.js'); 320 document.documentElement.firstChild.appendChild(intersectionObserverScript); 321 } 322 if (navigator.userAgent.toLocaleLowerCase().indexOf('chrome') == -1) { 323 var preloadCssScript = document.createElement("script"); 324 preloadCssScript.type = "text/javascript"; 325 preloadCssScript.setAttribute("src", '/CMSScripts/Custom/Polyfill/cssrelpreload.js'); 326 document.documentElement.firstChild.appendChild(preloadCssScript); 327 } 328 329 // END POLYFILLS 330 //For TESTING 331 //displayModal = true; 332 $(document).ready(function () { 333 var cookie = f_getBrowserSessionCookie('showBrowserVersionOnPageLoad'); 334 //For TESTING 335 //var cookie = null; 336 337 if (displayModal && cookie == null) { 338 $('.oB-overlay').show(); 339 $('#oldBrowserModal').show(); 340 var html = htmlStringBuilder(); 341 $('#oldBrowserModal').append(html); 342 f_setBrowserSessionCookie('showBrowserVersionOnPageLoad', false); 343 } 344 $('#closeBrowserModalButton').on('click', function() { 345 $('.oB-overlay').hide(); 346 $('#oldBrowserModal').hide(); 347 }); 348 }); 349 350 function f_setBrowserSessionCookie(cookieName, value) { 351 document.cookie = cookieName + "=" + value; 352 } 353 354 function f_getBrowserSessionCookie(cookieName) { 355 var cookieValue = document.cookie; 356 var cookieStart = cookieValue.indexOf(" " + cookieName + "="); 357 if (cookieStart == -1) { 358 cookieStart = cookieValue.indexOf(cookieName + "="); 359 } 360 if (cookieStart == -1) { 361 cookieValue = null; 362 } 363 else { 364 cookieStart = cookieValue.indexOf("=", cookieStart) + 1; 365 var cookieEnd = cookieValue.indexOf(";", cookieStart); 366 if (cookieEnd == -1) { 367 cookieEnd = cookieValue.length; 368 } 369 cookieValue = unescape(cookieValue.substring(cookieStart, cookieEnd)); 370 } 371 return cookieValue; 372 } 373 374 function htmlStringBuilder() { 375 var buildHtml = '<div class="oB-dialog">'+ 376 '<div class="oB-content">'+ 377 '<div class="oB-header">'+ 378 '<h4>For the best website experience, please update your browser</h4>'+ 379 '</div>'+ 380 '<div class="oB-body">'+ 381 '<p>Just click on the icons to get to the download page</p>'+ 382 '<div class="browserSelect">'+ 383 '<div class="browserIconContainer" id="firefoxTab">'+ 384 '<div class="browserColumn">'+ 385 '<a class="browserLink" href="https://www.mozilla.org/en-US/firefox/new/?v=1" target="_blank" rel="noopener noreferrer" aria-label="Firefox Download (opens in a new tab)" tabindex="0">'+ 386 '<div class="browserImage"><img src="https://cs-cdn.realpage.com/CWS/2623272/GlobalResources/BrowserIcons/firefoxLogo.png" aria-hidden="true" alt="Firefox" /></div>'+ 387 '<div class="browserName">Firefox</div>'+ 388 '</a>'+ 389 '</div>'+ 390 '</div>'+ 391 '<div class="browserIconContainer" id="chromeTab">'+ 392 '<div class="browserColumn">'+ 393 '<a class="browserLink" href="https://www.google.com/chrome/browser/desktop/" target="_blank" rel="noopener noreferrer" aria-label="Chrome Download (opens in a new tab)" tabindex="0">'+ 394 '<div class="browserImage"><img src="https://cs-cdn.realpage.com/CWS/2623272/GlobalResources/BrowserIcons/chromeLogo.png" aria-hidden="true" alt="Chrome" /></div>'+ 395 '<div class="browserName">Chrome</div>'+ 396 '</a>'+ 397 '</div>'+ 398 '</div>'+ 399 '<div class="browserIconContainer" id="safariTab">'+ 400 '<div class="browserColumn">'+ 401 '<a class="browserLink" href="https://support.apple.com/downloads/safari" target="_blank" rel="noopener noreferrer" aria-label="Safari Download (opens in a new tab)" tabindex="0">'+ 402 '<div class="browserImage"><img src="https://cs-cdn.realpage.com/CWS/2623272/GlobalResources/BrowserIcons/safariLogo.png" aria-hidden="true" alt="Safari"/></div>'+ 403 '<div class="browserName">Safari</div>'+ 404 '</a>'+ 405 '</div>'+ 406 '</div>'+ 407 ' <div class="browserIconContainer" id="edgeTab">'+ 408 '<div class="browserColumn">'+ 409 '<a class="browserLink" href="https://www.microsoft.com/en-us
409/windows/microsoft-edge#0QiY0Omq3i5Z0krF.97" target="_blank" rel="noopener noreferrer" aria-label="Edge Download (opens in a new tab)" tabindex="0">'+ 410 '<div class="browserImage"><img src="https://cs-cdn.realpage.com/CWS/2623272/GlobalResources/BrowserIcons/edgeLogo.png" aria-hidden="true" alt="Edge"/></div>'+ 411 '<div class="browserName">Edge</div>'+ 412 '</a>'+ 413 '</div>'+ 414 '</div>'+ 415 '</div>'+ 416 '</div>'+ 417 '<button id="closeBrowserModalButton" type="button" aria-label="close" tabindex="0">Close Window</button>'+ 418 '<div class="oB-footer">'+ 419 '</p>By closing this window you acknowledge that your experience on this website may be degraded</p>'+ 420 '</div>'+ 421 '</div>'; 422 console.log(buildHtml); 423 return buildHtml; 424 } 425</script>
425 426 <style> 427 #oldBrowserModal { 428 font-family: 'Arial', sans-serif; 429 } 430 #oldBrowserModal .oB-header h4, #oldBrowserModal .oB-body p { 431 color: #666; 432 font-weight: bold; 433 } 434 #oldBrowserModal .oB-header h4 {font-size: 20px;} 435 #oldBrowserModal .oB-body p { 436 font-size: 16px; 437 padding: 0 15px 15px; 438 } 439 #oldBrowserModal .browserIconContainer { 440 width: 90px; 441 display: inline-block; 442 text-align: center; 443 margin-bottom: 15px; 444 } 445 #oldBrowserModal .browserSelect {font-size: 14px;} 446 #oldBrowserModal #explorerTab {width: 140px;} 447 #oldBrowserModal .browserImage img { 448 height: 60px; 449 width: 60px; 450 margin-bottom:10px; 451 border: none !important; 452 } 453 #oldBrowserModal a.browserLink { 454 color: #666; 455 text-decoration: none; 456 } 457 #oldBrowserModal #closeBrowserModalButton { 458 background: #42a5f5; 459 color: #fff; 460 border: none; 461 padding: 15px 45px; 462 border-radius: 500px; 463 font-size: 16px; 464 cursor: pointer; 465 } 466 #oldBrowserModal .oB-content {text-align:center;} 467 #oldBrowserModal :focus { 468 outline: -webkit-focus-ring-color auto 0px; 469 } 470 #oldBrowserModal .oB-content {border-radius: 0;} 471 .oB-overlay { 472 position: fixed; 473 z-index: 2000; 474 height: 100%; 475 width: 100%; 476 top: 0; 477 left: 0; 478 background: rgba(0,0,0,0.5); 479 } 480 #oldBrowserModal .oB-header { 481 border-bottom: 1px solid rgba(0,0,0,.1); 482 padding: 15px; 483 } 484 #oldBrowserModal .oB-body { 485 padding: 15px; 486 } 487 #oldBrowserModal .oB-footer { 488 font-size: 12px; 489 padding: 15px; 490 text-align: center; 491 border: none; 492 color: #666; 493 } 494 @media (min-width: 768px) { 495 #oldBrowserModal .oB-dialog {width: 690px;} 496 #oldBrowserModal { 497 position: absolute; 498 z-index: 2001; 499 top: 10%; 500 left: 50%; 501 background: #fff; 502 transform: translate(-50%, 0); 503 -ms-transform: translate(-50%, 0); 504 } 505 } 506 @media (max-width: 767px) { 507 #oldBrowserModal { 508 position: relative; 509 z-index: 2001; 510 margin: 5% auto 5%; 511 background: #fff; 512 width: 95%; 513 } 514 } 515</style> 516 517<div class="oB-overlay" style="display: none;"></div> <div id="oldBrowserModal" style="display: none;"></div> 518 <form method="post" action="/Amenities.aspx" id="form"> 519<div class="aspNetHidden"> 520<input type="hidden" name="__EVENTTARGET" id="__EVENTTARGET" value="" /> 521<input type="hidden" name="__EVENTARGUMENT" id="__EVENTARGUMENT" value="" /> 522<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="9BMm4Da8lcfnPdIIzQQu9IzMbB7U2t3EdXlq13fiDKI5+yPExgR3CelALNNLPx7tW1L/kNGWZhwU4LjDBbnjgW8T1Ss7YxCBaF+qrjZhusLC1JJsYgtqtmhA/AE/oKBPZRpxC1h6oXV9ZbA9PT658H/4cWu/1K+mg8jvflV7g5nZ4Nt1LvKe4uu5Kvc/6g4DWa2B1K2IT2bOgUKMJOi9HZmhOo/RSnDt0hRGkiNrmZn5SyfCLsx+mA1QRHjGQ3xXNh9N6Ui0WqO9bxP1+mqIE2MrZkeDdIXA5FRwm5V6VtiR4fhr/e6zGvnf36A5Xo0tqbg75WeoAOwvmGCq1VQPLJPGbyh9EqsbSSxMohTcLGA=" /> 523</div> 524
525<script type="text/javascript"> 526//<![CDATA[ 527var theForm = document.forms['form']; 528if (!theForm) { 529 theForm = document.form; 530} 531function __doPostBack(eventTarget, eventArgument) { 532 if (!theForm.onsubmit || (theForm.onsubmit() != false)) { 533 theForm.__EVENTTARGET.value = eventTarget; 534 theForm.__EVENTARGUMENT.value = eventArgument; 535 theForm.submit(); 536 } 537} 538//]]> 539</script>
539 540 541
542<script src="/WebResource.axd?d=pynGkmcFUV13He1Qd6_TZLJliYB8TA_FIF9xlHcKd7ag0Vv3EWtMdA4IBxcPvyX2M5F_ORIargEI2RFqew7B_g2&t=639191793026372022" type="text/javascript"></script>
542 543 544
545<script src="/Assets/common/wcag/js/pause-control.js" type="text/javascript"></script>
vendor: 2 bytes, line 545
545
546<script src="/Assets/common/wcag/js/video-pause.js" type="text/javascript"></script>
vendor: 2 bytes, line 546
546
547<script src="/assets/common/footer/js/footer.js" type="text/javascript"></script>
547<input type="hidden" name="lng" id="lng" value="en-US" />
548<script type="text/javascript"> 549 //<![CDATA[ 550 551function PM_Postback(param) { if (window.top.HideScreenLockWarningAndSync) { window.top.HideScreenLockWarningAndSync(1080); } if(window.CMSContentManager) { CMSContentManager.allowSubmit = true; }; __doPostBack('m$am',param); } 552function PM_Callback(param, callback, ctx) { if (window.top.HideScreenLockWarningAndSync) { window.top.HideScreenLockWarningAndSync(1080); }if (window.CMSContentManager) { CMSContentManager.storeContentChangedStatus(); };WebForm_DoCallback('m$am',param,callback,ctx,null,true); } 553//]]> 554</script>
vendor: 2 bytes, line 554
554
555<script src="/ScriptResource.axd?d=NJmAwtEo3Ipnlaxl6CMhvgm388C7z57L5COL7njlfxHabVp02JjeGBqhojV0DvhOls37naEdTKvtve-DZGAUfkLhXnkKZ0JM5n8W_iT84YozJbVtHk6XR7HfTxh00jaQbIJ5RlBvWf7fnz-N3zpSVKNk_Hm4b82dGd4p6rDl7rs1&t=fffffffff7f39b88" type="text/javascript"></script>
vendor: 2 bytes, line 555
555
556<script src="/ScriptResource.axd?d=dwY9oWetJoJoVpgL6Zq8OBLhaBrqwBdVAb8vaEtP5p0RwE8U2clwoyTHecbvHf4xQfmyrJ2iJaF8M22aUIdHdYyU7qY-2hjISrIPPxmhFqA408i6Y0GxT1-SnCjYV3lgC3TXr_eJ0QD4CYVGcu8j6ZFo_C_b-R4EfAA4qAquMMk1&t=fffffffff7f39b88" type="text/javascript"></script>
vendor: 2 bytes, line 556
556
557<script type="text/javascript"> 558 //<![CDATA[ 559 560var CMS = CMS || {}; 561CMS.Application = { 562 "language": "en", 563 "imagesUrl": "/CMSPages/GetResource.ashx?image=%5bImages.zip%5d%2f", 564 "isDebuggingEnabled": false, 565 "applicationUrl": "/", 566 "isDialog": false, 567 "isRTL": "false" 568}; 569 570//]]> 571</script>
571 572<div class="aspNetHidden"> 573 574 <input type="hidden" name="__VIEWSTATEGENERATOR" id="__VIEWSTATEGENERATOR" value="A5343185" /> 575 <input type="hidden" name="__SCROLLPOSITIONX" id="__SCROLLPOSITIONX" value="0" /> 576 <input type="hidden" name="__SCROLLPOSITIONY" id="__SCROLLPOSITIONY" value="0" /> 577</div> 578
578<script type="text/javascript"> 579//<![CDATA[ 580Sys.WebForms.PageRequestManager._initialize('manScript', 'form', ['tctxM',''], [], [], 90, ''); 581//]]> 582</script>
582 583 584 <div id="ctxM"> 585 586</div> 587 588 589 590<!-- MediaViewer Added --> 591<div class="siteWrapper bgImg"> 592 <div id="header-sps-placeholder"></div> 593 <header class="head-wrap" id="header"> 594 <div class="headerMain"> 595 <div class="headerLeft"> 596 <a class="logo scroll-notice" href="/home" title="Home"><img id="p_lt_zoneHeaderMain_EditableImage_ucEditableImage_imgImage" src="https://capi.myleasestar.com/v2/dimg-crop/60437946/0x300/60437946.png" alt="" /> 597 598 </a> 599</div><div id="" class="headerLinks"><a href="http://maps.google.com/?q=777 Main St, Hartford, CT 06103" target="_blank" class="linkHeader linkHeader-address"> 600 <i class="fa fa-map-marker" aria-hidden="true"></i> 601 Hartford, CT 602</a> 603<a class="seo-number" href="tel:(860) 926-3512" onclick="f_analyticsSendEvent('general', 'click-phone-number', '(860) 926-3512')">(860) 926-3512</a></div><a href="javascript:;" class="menuToggle"> 604 <span></span> 605 <span></span> 606 <span></span> 607 <span></span> 608</a> 609 </div> 610 611 <div class="navMenu text-center"> 612 <nav> 613 614 <ul id="menuElem"> 615 <li class="homeNav"> 616 <a href="/">Home</a> 617 </li> 618 <li class="amenitiesNav"> 619 <a href="/Amenities.aspx">Amenities</a> 620 </li> 621 <li class="floor-plansNav"> 622 <a href="/Floor-Plans.aspx">Floor Plans</a> 623 </li> 624 <li class="galleryNav"> 625 <a href="/Gallery.aspx">Gallery</a> 626 </li> 627 <li class="neighborhoodNav"> 628 <a href="/Neighborhood.aspx">Location</a> 629 </li> 630 <li class="residents"> 631 <a href="/Residents.aspx">Residents</a> 632 </li> 633 <li class="contactNav"> 634 <a href="/Contact.aspx">Contact Us</a> 635 </li> 636 <li> 637 <a href="/Specials.aspx">Green Living</a> 638 </li> 639 640 </ul> 641 642 643 644 </nav> 645 </div> 646 </header> 647 648 <div id="wrapper" class="content_wrap"> 649 650 651 652 653 654<section id="home" class="block-area"> 655 <div id="" class="hero sectionDark"><div id="p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_pnlContainer"> 656 657
658<script type="text/javascript"> 659 var p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_showMuteBtn = false; 660 var p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_soundAutoPlay = false; 661 var p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_videoOnMobile = false; 662 var p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_videoID = ''; 663 var p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_videoSource = 'youtube'; 664 var p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_isMobile = (/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini|Mobile|mobile|CriOS/i.test(navigator.userAgent)) ? true : false; 665 var p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_lazyLoad = 'False'; 666 var p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_imageSize = '1920x1080'; 667 var p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_backgroundVideoObserver; 668 // TFS 2987210 (WCAG 2.2.2, Package C1): guards f_convertBgvImages() against double 669 // invocation. ClientID-scoped to match this file's convention for per-widget state. 670 var p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_bgvConverted = false; 671 // TFS 2987210 (WCAG 2.2.2): whether this widget has a background video at all. Read by 672 // the pausePlay gate in both FlexSlider inits below, which suppress FlexSlider's own 673 // pause control when a video is also present so the two mechanisms can be merged behind 674 // the single RPVideoPause button (attached from BackgroundVideo.ascx.cs). 675 var p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_hasVideo = false; 676 var trueVar = true; 677 var sliderWTi = $(window).width(); 678 var sliderHTi = $(window).height(); 679 var sliderWT, sliderHT, afterResize; 680 var bgSliderWidth = $(window).width(); 681 var bgSliderFire = 0 682 683 $(document).ready(function () { 684 if (p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_lazyLoad.toLowerCase() == 'true' && (navigator.userAgent.toLocaleLowerCase().indexOf('safari') == -1) && (navigator.userAgent.indexOf("Trident/7.0") == -1)) { 685 try { 686 p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_backgroundVideoObserver = new IntersectionObserver(bgvIntersectCallback, intersectOptions); 687 p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_backgroundVideoObserver.observe(document.querySelector('#bgvIntersect')); 688 if ($('#head').length > 0) { 689 p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_backgroundVideoObserver.observe(document.querySelector('#head')); 690 } 691 } catch (err) { 692 console.warn(err); 693 // TFS 2987210 (WCAG 2.2.2, Package C1): the unconditional bare 694 // `.flexslider({})` that used to sit further down in this ready handler was 695 // the only thing initialising the slider if the observer above threw -- 696 // without it the slides stay display:none (flexslider.css) and the hero 697 // renders blank. Now that it's removed, fall back to the real, 698 // property-driven init here. Safe to call: f_convertBgvImages is guarded 699 // against double invocation. 700 f_convertBgvImages(); 701 } 702 } else { 703 f_convertBgvImages(); 704 } 705 706 function addEvent(element, eventName, callback) { 707 if (element.addEventListener) { 708 element.addEventListener(eventName, callback, false); 709 } else { 710 element.attachEvent(eventName, callback, false); 711 } 712 } 713 714 var tag = document.createElement('script'); 715 tag.id = 'iframe-demo'; 716 tag.src = 'https://www.youtube.com/iframe_api'; 717 var firstScriptTag = document.getElementsByTagName('script')[0]; 718 firstScriptTag.parentNode.insertBefore(tag, firstScriptTag); 719 720 // TFS 2987210 (WCAG 2.2.2, Package C1): removed an unconditional bare 721 // `$('#<id> .flexslider').flexslider({});` that used to run here. It initialised the 722 // slider with pure library defaults -- no pausePlay, no `after` handler, and 723 // slideshow defaulting to TRUE regardless of the widget's EnableSlideshowAutoPlay 724 // setting. Because FlexSlider's plugin entry is a no-op on re-init 725 // (jquery.flexslider.js:1220), whichever init ran FIRST won permanently. With 726 // LazyLoad=false (the default) the real init at f_convertBgvImages() runs 727 // synchronously above and won, so this was a harmless no-op; but with LazyLoad=true 728 // the real init is deferred to the IntersectionObserver callback, which this line 729 // beat -- silently discarding every configured option, including the new pausePlay 730 // button. The observer/synchronous paths now fully cover both
730states. 731 if (p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_videoSource.toLowerCase() == 'vimeo') { 732 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .slides-video').css({ backgroundImage: 'url(https://vumbnail.com/' + p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_videoID + '.jpg)' }); 733 } 734 735 if (p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_videoSource.toLowerCase() == 'wistia') { 736 console.log('Wistia Thumb Start'); 737 738 var baseUrl = "https://fast.wistia.com/oembed/?url="; 739 var accountUrl = encodeURIComponent("https://home.wistia.com/medias/"); 740 var mediaHashedId = p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_videoID; 741 var thumb_args = "image_play_button=false&image_crop_resized=1280x720"; 742 743 $.getJSON(baseUrl + accountUrl + mediaHashedId + "&format=json&callback=?", function (data) { 744 var thumb = data.thumbnail_url.split('?')[0]; 745 746 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .slides-video').css({ backgroundImage: 'url(' + thumb + '?' + thumb_args + ')' }); 747 }) 748 } 749 if (p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_videoSource.toLowerCase() == 'youtube') { 750 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .slides-video').css({ backgroundImage: 'url(https://img.youtube.com/vi/' + p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_videoID + '/maxresdefault.jpg' }); 751 } 752 753 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .slides-video').append('<button class="video-play-btn" type="button" aria-label="Play video"><i class="fa fa-play-circle" aria-hidden="true"></i></button>'); 754 }); 755 756 $(window).resize(function () { 757 if ($(window).width() != bgSliderWidth) { 758 bgSliderWidth = $(window).width(); 759 bgSliderPadding(); 760 } 761 }); 762 763 var bgvIntersectCallback = function (entries, observer) { 764 if (entries && entries[0].isIntersecting) { 765 f_convertBgvImages(); 766 p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_backgroundVideoObserver.unobserve(document.querySelector('#bgvIntersect')); 767 } 768 } 769 770 function f_convertBgvImages() { 771 // TFS 2987210 (WCAG 2.2.2, Package C1): idempotency guard. The IntersectionObserver 772 // catch-block now also calls this as a fallback, so guard against any path invoking 773 // it twice -- a second run would re-append the <li class="slides-image"> slides and 774 // duplicate the gallery. The flag is set BEFORE any work: this function is wholly 775 // synchronous (a $.each of .append() calls, then the .flexslider() init -- no 776 // callback, promise or timer), so nothing can interleave between the flag being set 777 // and the appends completing. 778 if (p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_bgvConverted) { return; } 779 p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_bgvConverted = true; 780 781 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .bgv-image').each(function (i, v) { 782 783 var url = $(v).find('meta[itemprop="contentUrl"]').attr('content'); 784 785 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .slides').append('<li class="slides-image"></li>'); 786 787 var liSlideHT = $(".slides-image").height(); 788 var liSlideWT = $(".background-video-container").width(); 789 790 url = url.replace('dimg', 'dimg-crop').replace(p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_imageSize, Math.round(liSlideWT* window.devicePixelRatio) + 'x' + Math.round(liSlideHT* window.devicePixelRatio)); 791 792 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .slides .slides-image:eq('+i+')').css('background-image', 'url(' + url + ')'); 793 }); 794 sliderWTi = $(".slides-image").width(); 795 sliderHTi = $(".slides-image").height(); 796 797 if (p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_isMobile || $(window).width() <= 768) { 798 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .flexslider') 799 .flexslider({ 800 animation: "slide", 801 easing: "swing",
802 useCSS: false, 803 animationLoop: ($('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .slides li').length > 1) ? true : false, 804 smoothHeight: false, 805 slideshow: false, 806 slideshowSpeed: 7000, 807 // TFS 2987210 (WCAG 2.2.2 Pause, Stop, Hide -- Level A, Package C2): bound to 808 // the SAME value as `slideshow` above, deliberately not a literal `true`. 809 // EnableSlideshowAutoPlay defaults to false (BackgroundVideo.ascx.cs:127-138), 810 // and slider.play() (jquery.flexslider.js:868-876) starts its interval WITHOUT 811 // consulting vars.slideshow -- so an unconditional button on a non-rotating 812 // slider would render reading "Pause", no-op on the first click, then START a 813 // rotation the editor had deliberately switched off on the second. Binding the 814 // two together means the control exists exactly where auto-motion exists. 815 // 816 // ALSO suppressed when this widget has a video: rotation and playback are then 817 // merged behind the single RPVideoPause button (BackgroundVideo.ascx.cs:287), 818 // which drives this slider through its public pause()/play() API. SC 2.2.2 asks 819 // for *a* mechanism to stop the moving content, not one control per moving 820 // thing. The two script checks keep the failure safe: if either did not load 821 // the merged button cannot be built (RPVideoPause.attach bails without 822 // RPPauseControl -- video-pause.js:148), so keep FlexSlider's own control 823 // rather than leaving the rotation with no stop at all. 824 pausePlay: false && !(p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_hasVideo && !!window.RPVideoPause && !!window.RPPauseControl), 825 video: true, 826 controlNav: true, 827 start: function () { 828 bgSliderPadding(); 829 }, 830 after: function (slider) { 831 // TFS 2987210 (Package C3): `!slider.manualPause` added. Without it this 832 // force-resume fires on the next transition and immediately overrides a 833 // user's pause, making the new button useless. FlexSlider's own pausePlay 834 // handler already sets slider.manualPause on user pause 835 // (jquery.flexslider.js:413-426), so reuse that flag -- no new state. 836 if ((false== true) && (!slider.playing) && (!slider.manualPause)) { 837 slider.play(); 838 } 839 } 840 }); 841 } 842 else { 843 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .flexslider') 844 .flexslider({ 845 animation: "slide", 846 easing: "swing", 847 useCSS: false, 848 animationLoop: (($('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .slides li').length > 1) ? true : false), 849 smoothHeight: false, 850 slideshow: false, 851 slideshowSpeed: 7000, 852 // TFS 2987210 (Package C2): see the mobile init above -- bound to the same 853 // value as `slideshow`, not a literal true, and suppressed when a video is 854 // present so the merged RPVideoPause button owns both mechanisms. 855 pausePlay: false && !(p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_hasVideo && !!window.RPVideoPause && !!window.RPPauseControl), 856 video: true, 857 controlNav: true, 858 start: function () { 859 bgSliderPadding(); 860 }, 861 after: function (slider) { 862 // TFS 2987210 (Package C3): `!slider.manualPause` added -- see the mobile 863 // init above for the rationale. 864 if ((false==true) && (!slider.playing) && (!slider.manualPause)) { 865 slider.play(); 866 } 867 } 868 }); 869 } 870 871 872 if ($('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .slides-video.clone').length == 2) { 873 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .slides-video.clone').last().remove(); 874 } 875 if (p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_showMuteBtn && p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_videoSource.toLowerCase() == 'youtube') { 876 var volumeClass = (p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_soundAutoPlay) ? 'fa-volume-up' : 'fa-volume-off'; 877 var muteLabel = (p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_soundAutoPlay) ? 'Mute video' : 'Unmute video'; 878 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .slides-video').append('<button class="video-mute-btn" type="button" aria-label="' + muteLabel + '"><i class="fa ' + volumeClass + '" aria-hidden="true"></i></button>'); 879 } 880 } 881 882 $(window).on('resize', function (e) { 883 clearTimeout(afterResize); 884 afterResize = setTimeout(function () { 885 sliderWT = $(".slides-image").width()* window.devicePixelRatio; 886 sliderHT = $(".slides-image").height()* window.devicePixelRatio; 887 if ((sliderWT > (sliderWTi)*1.3) || (sliderHT > (sliderHTi)*1.3) ) { 888 $(".background-video-container").each(function () { 889 var bgvSliderID = $(this).attr("id"); 890 $("#" + bgvSliderID + " .slides-image").each(function () { 891 var slideImgURL = $(this).css('background-image'); 892 var slideImgURLAttr = slideImgURL.split("/"); 893 slideImgURLAttr.filter(function(size,index){ 894 if (size.match(/^\d+x\d+$/g)) {
895 slideImgURLAttr[index] = Math.round(sliderWT) + "x" + Math.round(sliderHT); 896 } 897 }); 898 slideImgURL = slideImgURLAttr.join("/"); 899 $(this).css('background-image',slideImgURL); 900 }) 901 }) 902 sliderWTi = sliderWT; 903 sliderHTi = sliderHT; 904 } 905 }, 250); 906 }); 907 908 function bgSliderPadding(){ 909 console.log('sliderPadding Fired'); 910 bgSliderFire++; 911 console.log('bgSliderFire: ' + bgSliderFire); 912 $('.background-video-container').addClass("slideFire"); 913 914 915 var windowWidth = $(window).width(); 916 var windowHeight = $(window).height(); 917 var minPadding = 20; 918 var basePadding = .2; 919 var paddingPercent = (windowWidth > 1400) ? basePadding : basePadding * (windowWidth / 1400); 920 var padding = (windowHeight * paddingPercent < minPadding) ? minPadding : windowHeight * paddingPercent; 921 var videoHeight = $('.video-wrapper').innerHeight(); 922 923 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .slides-banner .slides li').height($('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .slides-banner').height()); 924 if ($('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .slides-banner .row').length > 0) { 925 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .slides-banner .slides li').height($('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .slides-banner .row').height() + padding * 2); 926 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .slides-banner .row').css({ 'padding': 0, 'position': 'absolute', 'top': padding }); 927 } 928 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .slides-banner .flex-direction-nav a').css({ 'display': 'block' }); 929 930 var topOffset = -((videoHeight / 2) - ($('.slides-banner').height() / 2)); 931 var zoomOffset = (topOffset > 0) ? topOffset * .01 : 0; 932 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .video-wrapper').css({ 'top': topOffset, 'transform': 'scale(' + (1 + zoomOffset) + ')' }); 933 934 935 console.log('Is Mobile: ' + p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_isMobile); 936 console.log('Window Width: ' + windowWidth); 937 console.log('Video Mobile: ' + p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_videoOnMobile); 938 console.log('Video Height: ' + videoHeight); 939 940 941 942 //if ((p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_isMobile || windowWidth <= 768) && p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_videoSource.toLowerCase() == 'youtube' && p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_videoOnMobile != true) { 943 //if ((p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_isMobile || windowWidth <= 768) && p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_videoOnMobile != true) { 944 if ((p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_isMobile || windowWidth <= 768)) { 945 console.log('Mobile Play Detected'); 946 947 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .video-mute-btn').hide(); 948 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .video-play-btn').show(); 949 950 if (p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_videoOnMobile != true) { 951 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .video-play-btn').remove(); 952 } 953 } else { 954 console.log('Desktop Play Detected'); 955 956 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .video-wrapper').show(); 957 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .video-play-btn').hide(); 958 } 959 960 961 if (p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_videoSource.toLowerCase() == 'vimeo') { 962 console.log('Vimeo Detected'); 963 galleryVimeoPlayer(); 964 } 965 966 if (p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_videoSource.toLowerCase() == 'wistia') { 967 console.log('Wistia Detected'); 968 galleryWistiaPlayer(); 969 } 970 } 971 972 973 function galleryVimeoPlayer() { 974 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .video-play-btn').click(function (e) { 975 e.preventDefault(); 976 console.log('Vimeo Button Fire!'); 977 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .video-wrapper').show(); 978 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .video-play-btn').hide(); 979 }); 980 } 981 982 983 function galleryWistiaPlayer() { 984 console.log('Wistia Player Fire!'); 985 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .video-wrapper').show(); 986 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .video-play-btn').remove(); 987 988 if (p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_videoOnMobile != true) { 989 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .video-wrapper').hide(); 990 } 991 } 992 993 994 var bgYTPlayer; 995 var bgYTInstance = 1; 996 function onYouTubeIframeAPIReady() { 997 // TFS 2987210 (WCAG 2.2.2): the second construction below used to assign `bgYTPlayer` 998 // too, so the handle always ended up pointing at whichever player was built LAST. 999 // That is the same defect fixed in hero.js under this ticket, and it matters here
1000 // because BackgroundVideo.ascx.cs now exposes `window.bgYTPlayer` to RPVideoPause as 1001 // the handle the pause button drives -- a control wired to the wrong player is a 1002 // control that does not stop the video, which is exactly what 2.2.2 requires. 1003 // 1004 // Worth being precise about the failure, because it is state-dependent rather than 1005 // universal. `bvVideo_clone` IS emitted, but only sometimes: FlexSlider's uniqueID() 1006 // suffixes cloned element ids with `_clone` (jquery.flexslider.js:655-662), and it 1007 // only clones the first/last slides when `animationLoop && !carousel` 1008 // (jquery.flexslider.js:958-965). BackgroundVideo sets animationLoop from 1009 // `.slides li.length > 1`. So: 1010 // - Video plus background images (>1 slide): the clone exists, and the handle was 1011 // left pointing at the aria-hidden duplicate slide rather than the real one. 1012 // - Video only (exactly 1 slide, a common configuration): no clone is ever created, 1013 // YT.Player is handed a missing element id, and the good handle from the first 1014 // construction is overwritten with a dud. 1015 // Both are fixed the same way: keep the FIRST player -- the real slide -- in the 1016 // handle, and still construct the clone's player for its own onReady/onStateChange 1017 // side-effects without letting it clobber the reference. 1018 bgYTPlayer = new YT.Player('p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_videobvVideo', { 1019 events: { 1020 'onReady': bgYTonPlayerReady, 1021 'onStateChange': bgYTonPlayerStateChange 1022 } 1023 }); 1024 new YT.Player('p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_videobvVideo_clone', { 1025 events: { 1026 'onReady': bgYTonPlayerReady, 1027 'onStateChange': bgYTonPlayerStateChange 1028 } 1029 }); 1030 } 1031 var myPlayerState; 1032 function bgYTonPlayerStateChange(event) { 1033 if (event.data == YT.PlayerState.PLAYING || event.data == YT.PlayerState.BUFFERING) { 1034 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .video-play-btn').hide(); 1035 } 1036 else { 1037 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .video-play-btn').show(); 1038 } 1039 } 1040 1041 function bgYTonPlayerReady(event) { 1042 var windowWidth = $(window).width(); 1043 1044 if (p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_soundAutoPlay != true || bgYTInstance > 1) { 1045 event.target.mute(); 1046 } 1047 1048 if (event.data == YT.PlayerState.PLAYING || event.data == YT.PlayerState.BUFFERING) { 1049 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .video-play-btn').hide(); 1050 } 1051 else { 1052 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .video-play-btn').show(); 1053 } 1054 1055 if (p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_showMuteBtn) { 1056 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .video-play-btn').show(); 1057 } 1058 1059 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .slides-video').css({ opacity: 1 }); 1060 1061 // Add title to video container 1062 var intId = setInterval(function(){ 1063 if (bgYTPlayer){ 1064 if (typeof bgYTPlayer.getPlayerState === "function") { 1065 if ([ 1, 2, 5 ].indexOf(bgYTPlayer.getPlayerState()) >= 0){ 1066 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .video-wrapper').attr('aria-label', 'Video: ' + bgYTPlayer.getVideoData().title); 1067 clearInterval(intId); 1068 } 1069 } 1070 } 1071 }, 100); 1072 1073 if (bgYTInstance == 1) { 1074 if ((p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_isMobile || windowWidth <= 768) && p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_videoOnMobile != true){ 1075 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .slides-video').css({ backgroundImage: 'url(https://img.youtube.com/vi/' + p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_videoID + '/maxresdefault.jpg' }); 1076 } 1077 1078 if (p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_showMuteBtn && p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video_videoSource.toLowerCase() == 'youtube') { 1079 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .video-mute-btn').click(function(e){
1080 e.preventDefault(); 1081 if (event.target.isMuted()){ 1082 $(this).find('i').removeClass('fa-volume-off').addClass('fa-volume-up'); 1083 event.target.unMute(); 1084 event.target.setVolume(70); 1085 } else { 1086 $(this).find('i').removeClass('fa-volume-up').addClass('fa-volume-off'); 1087 event.target.mute(); 1088 } 1089 }); 1090 } 1091 1092 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .video-play-btn').click(function(e){ 1093 e.preventDefault(); 1094 event.target.playVideo(); 1095 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .video-wrapper').show(); 1096 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video .video-play-btn').hide(); 1097 }); 1098 } 1099 bgYTInstance++; 1100 } 1101</script>
1101 1102 1103<div id="p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartLoader5_ctl00_background_video" class="background-video-container"> 1104 <div id="bgvIntersect" class="slides-banner"> 1105 <div class="flexslider"> 1106 <ul class="slides"></ul> 1107 </div><div class="img_wrapper bgv-image" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject"> 1108 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/63590967/1920x1080/63590967.jpg" /><meta itemprop="name" content="Lobby Layout with seating and window view" /></div><div class="img_wrapper bgv-image" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject"> 1109 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/63591001/1920x1080/63591001.jpg" /><meta itemprop="name" content="Open concept For The Kitchen With Floor To Ceiling Windows" /></div><div class="img_wrapper bgv-image" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject"> 1110 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/61656740/1920x1080/61656740.jpg" /><meta itemprop="name" content="View Of Hartford From The Balcony" /></div></div> 1111 </div> 1112 1113</div> 1114<div id="" class="heroContent"><div class="tagline textShadow"> 1115 <div class="taglineTop">EXPERIENCE</div> 1116 <h1 class="taglineBottom">Elevated Comfort</h1> 1117</div> 1118<div class="hero-cta"><a href="/floor-plans.aspx" target="_self" class="btn btn--secondary btnArrow-right scroll-notice" title="Floor Plans"> 1119 Apply Now 1120</a></div> 1121<a href="#welcome" class="rp-scroll triangle up"> 1122 <i class="fa fa-angle-double-down" aria-hidden="true"></i> 1123</a></div></div> 1124 <div id="welcome" class="content-primary text-center row row--mw text-block"> 1125 <div class="col-xs-10 col-xs-offset-1 col-sm-8 col-sm-offset-2 col-md-11 col-md-offset-half"> 1126 <h2 class="header-primary">Welcome Home</h2> 1127 <h1 class="header-secondary">777 Main</h1> 1128 <span style="font-size: 18px;">Hartfordâs iconic Mid-Century Modern tower has been reinvented for downtown living. Conceived as a model for sustainable development, the community is LEED Platinum® certified by the U.S. Green Building Council, its highest rating for buildings that are healthier and reduce stress on the environment by being energy and resource-efficient. 336 Rooftop Solar panels and a 400 kilowatt fuel cell generate clean, combustion-free renewable energy to power and heat the building. Nest smart thermostats, over two dozen electric car chargers and a walkable, transit-friendly location support a lifestyle that is healthy for your wallet and for the planet. Schedule your tour today!</span> 1129 </div> 1130</div> 1131</section> 1132<section id="amenities" class="block-area"> 1133 <div class="section-header section-header--amenities sectionDark sectionDark--40 bgImg"> 1134 <div class="sectionHeaderContent"> 1135 <div class="sectionHeaderIcon"> 1136 <div class="diamond"> 1137 <div class="textShadow icon"> 1138 <i class="icon-bike-station"></i> 1139 </div> 1140 </div> 1141 </div> 1142 <h1 class="header-tertiary textShadow">Amenities</h1> 1143 </div> 1144</div> 1145<div class="content-quaternary row row--mw text-block"> 1146 <div class="col-sm-8 col-sm-offset-2 col-xs-10 col-xs-offset-1 col-md-11 col-md-offset-half"> 1147 <span style="font-size: 18px;">Wake up to breathtaking views of the city through your own 9-foot floor-to-ceiling windows: the Old State House, the Connecticut River and the capital city skyline. Come home to a 24/7 concierge at your service in the fabulous polished granite, 22-foot high lobby. Enjoy your life on the penthouse amenity floor featuring a wraparound terrace, club room, mahogany-paneled library, art gallery and fitness center, and experience easy access to yoga and fitness classes at <a href="https://hartfordsweat.com" target="_blank">Hartford Sweat</a>! 777 Main Street is a pet-friendly building, with its own lushly-landscaped pocket park. For the smartest new apartments in Hartford, CT look no further than 777 Main Street!</span> 1148 1149 1150 </div> 1151</div><div id="p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneAmenities_WebPartLoader1_pnlContainer"> 1152 1153
1154<script type="text/javascript"> 1155 var amenitiesLimit = 8; 1156 var unitAmenityExists = 'False'; 1157 var inSelectUnitsText = '<span>*</span> In select units'; 1158 var stackedAmenitiesLazyLoad = 'False'; 1159 1160 $(document).ready(function () { 1161 $('.stacked-amenities-close').css({ visibility: 'hidden', opacity: 0 }); 1162 $('.stacked-amenities-show').show(); 1163 1164 if (unitAmenityExists.toLowerCase() == 'true') { 1165 $('<div class="select-units-only">' + inSelectUnitsText + '</div>').insertAfter('.stacked-apt-amenities.stacked-amenities-right .amenities-list'); 1166 f_unitLabelShowHide(); 1167 } 1168 1169 $('.stacked-amenities-show').click(function (e) { 1170 $(this).hide(); 1171 $(this).parent().find('.stacked-amenities-close').css({ visibility: 'visible', opacity: 1 }); 1172 $(this).parent().find('li').show(); 1173 $(this).parent().parent().parent().addClass('open'); 1174 f_unitLabelShowHide(); 1175 }); 1176 1177 $('.stacked-amenities-close').click(function (e) { 1178 $(this).css({ visibility: 'hidden', opacity: 0 }); 1179 $(this).parent().find('li').each(function (i, v) { 1180 if (i + 1 > amenitiesLimit) { 1181 $(this).hide(); 1182 } 1183 }); 1184 $(this).parent().parent().parent().removeClass('open'); 1185 $(this).parent().find('.stacked-amenities-show').show(); 1186 f_unitLabelShowHide(); 1187 }); 1188 1189 $('.stacked-amenities-image').each(function () { 1190 if (stackedAmenitiesLazyLoad.toLowerCase() == 'true' && navigator.userAgent.toLocaleLowerCase().indexOf('safari') == -1) { 1191 if ($('#CommunityAmenities [data-src]').length > 0) { 1192 f_intersectCheckBgImage('#CommunityAmenities'); 1193 $('.stacked-amenities-close').trigger('click'); 1194 } 1195 if ($('#ApartmentAmenities [data-src]').length > 0) { 1196 f_intersectCheckBgImage('#ApartmentAmenities'); 1197 $('.stacked-amenities-close').trigger('click'); 1198 } 1199 } else { 1200 $(this).css('background-image', 'url(' + $(this).data('src') + ')'); 1201 } 1202 if ($(this).css('background-image') == 'none' && $(this).data('src').length == 0) { 1203 $(this).parent().find('.stacked-amenities-show').hide(); 1204 $(this).parent().find('li').show(); 1205 $(this).parent().parent().addClass('open'); 1206 } 1207 }); 1208 1209 $('.fancybox-button').fancybox({ 1210 fullScreen: { 1211 autoStart: false 1212 }, 1213 thumbs: { 1214 autoStart: false, 1215 hideOnClose: true 1216 }, 1217 smallBtn: "auto", 1218 afterLoad : function(instance, current) { 1219 var pixelRatio = window.devicePixelRatio || 1; 1220 1221 if ( pixelRatio > 1.5 ) { 1222 current.width = current.width / pixelRatio; 1223 current.height = current.height / pixelRatio; 1224 } 1225 } 1226 }); 1227 }); 1228 1229 function f_unitLabelShowHide() { 1230 $('.select-units-only').hide(); 1231 $('.stacked-amenities-right .amenities-list li:visible').each(function() { 1232 if ($(this).text().indexOf('*') > -1) { 1233 $('.select-units-only').show(); 1234 return false; 1235 } 1236 }); 1237 } 1238</script>
1238 1239<div id="p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneAmenities_WebPartLoader1_ctl00_pnlAmenitiesStacked" class="amenities-stacked-container"> 1240 1241 1242 <div id="CommunityAmenities" class="amenities-wrapper" aria-hidden="false"><div class="row community-amenities-callout-container"> 1243 <div class="col-sm-8 col-sm-offset-2 col-xs-10 col-xs-offset-1 community-amenities-callout callout"><h3>Community Amenities</h3><p></p></div> 1244 </div> 1245 <div class="stacked-amenities stacked-comm-amenities"> 1246 <div class="stacked-amenities-wrapper" aria-hidden="false"> 1247 <div class="stacked-amenities-image" aria-role="img" aria-label="Community Amenities Image" data-src="https://capi.myleasestar.com/v2/dimg-crop/63548022/1200x0/63548022.jpg"><span style="font-size:0">Community Amenities Image</span></div> 1248 <div class="stacked-amenities-items"> 1249 <button class="stacked-amenities-close" aria-label="Close" type="button"> 1250 <em class="fa fa-times" aria-hidden="true"></em> 1251 <span>Close</span> 1252 </button><ul class="amenities-list horizontal"><li>Penthouse Clubroom with Spectacular Skyline Views</li><li>Pocket Park & Terrace </li><li>Dog Spa</li><li>Pet Friendly</li><li>24/7 Concierge</li><li>Wraparound Terrace</li><li>Lobby Finished in Granite</li><li>Online Payments Accepted</li><li style="display: none;">Earned Gold Excellence Award from Multi-Housing News</li><li style="display: none;">Listed on the National Register of Historic Places</li><li style="display: none;">LEED Platinum Certified Green Building</li><li style="display: none;">Fitness Center</li><li style="display: none;">Garage Parking</li><li style="display: none;">Air conditioning - central air</li></ul><button class="stacked-amenities-show" type="button" aria-label="Expands community amenities list">Show All</button> </div> 1253 </div> 1254 </div> 1255 </div> 1256 <div id="ApartmentAmenities" class="amenities-wrapper"> 1257 <div class="row apartment-amenities-callout-container"><div class="col-sm-8 col-sm-offset-2 col-xs-10 col-xs-offset-1 apartment-amenities-callout callout"><h3>Apartment Amenities</h3><p> </p></div> 1258 </div> 1259 <div class="stacked-amenities stacked-apt-amenities stacked-amenities-right"> 1260 <div class="stacked-amenities-wrapper" aria-hidden="false"> 1261 <div class="stacked-amenities-image" aria-role="img" aria-label="Apartment Amenities Image" data-src="https://capi.myleasestar.com/v2/dimg-crop/63591003/1200x0/63591003.jpg"><span style="font-size:0">Apartment Amenities Image</span></div> 1262 <div class="stacked-amenities-items"> 1263 <button class="stacked-amenities-close" aria-label="Close" type="button"> 1264 <em class="fa fa-times" aria-hidden="true"></em> 1265 <span>Close</span> 1266 </button><ul class="amenities-list horizontal"><li>Floor-to-Ceiling Windows</li><li>Open-Concept Layouts</li><li>Chef-Quality Kitchen</li><li>Nest® Smart Thermostats</li><li>Full Size Washer and Dryer in Unit</li><li>Stainless Steel Energy Star® Appliances</li><li>Stone Countertops</li><li>Breakfast Bar</li><li style="display: none;">Bonus Room/Den</li><li style="display: none;">Designer Bathrooms</li><li style="display: none;">Powered by Clean Energy</li><li style="display: none;">View</li><li style="display: none;">Microwave</li><li style="display: none;">Range</li></ul><button class="stacked-amenities-show" aria-label="Expands apartment amenities list" type="button">Show All</button></div> 1267 </div> 1268 </div> 1269 </div> 1270 <div id="PetPolicies" class="amenities-wrapper" aria-hidden="false"><div class="row pet-policies-callout-container"> 1271 <div class="col-sm-8 col-sm-offset-2 col-xs-10 col-xs-offset-1 pet-policies-callout callout"><h3>Pet & Parking Policies</h3><p></p></div> 1272 </div> 1273 <div class="stacked-amenities stacked-amenities-double"> 1274 <div class="stacked-amenities-wrapper" aria-hidden="false"> 1275 <div class="stacked-amenities-items"> 1276 <ul class="pet-list"> 1277 <li class="pet-item"> 1278 Pet Policy Type: 1279 <strong>Cat, Dogs</strong> 1280 </li> 1281 <li class="pet-item"> 1282 Max Number of Pets: 1283 <strong>2</strong> 1284 </li> 1285 <li class="pet-item">Pet monthly rent max:<strong>$30</strong> 1286 </li> 1287 <li class="pet-item"> 1288 Pet policy: 1289 <strong>We welcome 2 pets per apartment home. Cats and dogs are welcome. Monthly pet rent is per pet, per month. Please call for complete pet policy information.</strong> 1290 </li></ul> 1291 </div><div class="stacked-amenities-items"><ul class="parking-list"><li class="parking-item parking-comment">Parking Comment: <strong>
1291777 is pleased to partner with Propark for your garage parking needs. Please visit <a href="https://www.propark.com/facilities/777-main-street-garage/" target="_blank">Propark's website</a> for more information. Electric car chargers are also available. </strong></li><li class="parking-flex-wrapper-item"><div class="parking-flex-wrapper"><div class="parking-detail-list"><ul class="parking-details"><li class="parking-item">Parking Type: <strong>Garage Lot</strong></li><li class="parking-item">Parking Allocation: <strong>all</strong></li><li class="parking-item">Assigned Parking: <strong>No</strong></li></ul></div></div></li></ul></div> 1292 </div> 1293 </div> 1294 </div> 1295 </div> 1296</div> 1297 1298</section> 1299<section id="floor-plans" class="block-area"> 1300 <div class="section-header section-header--floorplans sectionDark sectionDark--40 bgImg"> 1301 <div class="sectionHeaderContent"> 1302 <div class="sectionHeaderIcon"> 1303 <div class="diamond"> 1304 <div class="textShadow icon"> 1305 <i class="icon-double-bed"></i> 1306 </div> 1307 </div> 1308 </div> 1309 <h1 class="header-tertiary textShadow">Floor Plans</h1> 1310 </div> 1311</div> 1312 <div id="" class="content-secondary"><div class="content-tertiary row row--mw text-block"> 1313 <div class="col-sm-8 col-sm-offset-2 col-xs-10 col-xs-offset-1 col-md-11 col-md-offset-half"> 1314 <p><span style="font-size: 24px;">Please be sure to select your desired move-in date below</span></p><p><span style="font-size: 24px;">to reflect the most accurate availability.</span></p><p class="MsoNormal">Please Note Additional Fees:<o:p></o:p></p><p data-mce-style="font-weight: 400;" style="font-family: Verdana, Arial, Helvetica, sans-serif;">Please Note Additional Fees:</p><p data-mce-style="font-weight: 400;" style="font-family: Verdana, Arial, Helvetica, sans-serif;">Renters Liability Insurance - (Required) $100,000</p><p data-mce-style="font-weight: 400;" style="font-family: Verdana, Arial, Helvetica, sans-serif;">Utility - All Electric - (Renter Responsibility, required)</p><p data-mce-style="font-weight: 400;" style="font-family: Verdana, Arial, Helvetica, sans-serif;">Utility - Water / Sewer - (Renter Responsibility, required)</p><p data-mce-style="font-weight: 400;" style="font-family: Verdana, Arial, Helvetica, sans-serif;">Utility - Trash â $0</p><p data-mce-style="font-weight: 400;" style="font-family: Verdana, Arial, Helvetica, sans-serif;">Cable / Internet (Renter Responsibility)</p><p data-mce-style="font-weight: 400;" style="font-family: Verdana, Arial, Helvetica, sans-serif;">Security Deposit varies based on screening results - Up to 2 Months</p><p data-mce-style="font-weight: 400;" style="font-family: Verdana, Arial, Helvetica, sans-serif;">Pet Fee - $30</p><p data-mce-style="font-weight: 400;" style="font-family: Verdana, Arial, Helvetica, sans-serif;">Storage Unit - $75-$200</p><p data-mce-style="font-weight: 400;" style="font-family: Verdana, Arial, Helvetica, sans-serif;">Amenity Fee - $55.00</p><p data-mce-style="font-weight: 400;" style="font-family: Verdana, Arial, Helvetica, sans-serif;">Covered Parking- TBD (Through Pro-Park)</p><p data-mce-style="font-weight: 400;" style="font-family: Verdana, Arial, Helvetica, sans-serif;">Screening Fee - $11.33</p> 1315 </div> 1316</div><div class="row main-block"> 1317 <div class="col-xs-12"><div id="p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneFloorPlansMain_WebPartLoader_pnlContainer"> 1318 1319<!--FLOORPLANLOADER BEGIN--> 1320 1321 1322 1323<div id="rpfloorplans"></div> 1324
1324<script type="text/javascript"> 1325 var templateId; 1326 if ('floorplan1' === 'floorplan1') 1327 templateId = 1; 1328 else if ('floorplan1' === 'floorplan2') 1329 templateId = 2; 1330 else if ('floorplan1' === 'floorplan3') 1331 templateId = 3; 1332 else if ('floorplan1' === 'floorplan4') 1333 templateId = 4; 1334 else if ('floorplan1' === 'floorplan5') 1335 templateId = 5; 1336 else if ('floorplan1' === 'floorplan6') 1337 templateId = 6; 1338 1339 var enablePT = true; 1340 var enableDRR = false; 1341 var valueDRR = (enablePT) ? true : enableDRR; 1342 1343 var RPFP_config = { 1344 target: '#rpfloorplans', 1345 template: templateId, 1346 templateColors: ['#ffffff', '#333333', 1347 '#6a780f', '#888888', 1348 '#eaeaea', '#ffffff', 1349 '#ffffff', '#ffffff', 1350 '#ffffff'], 1351 propertyId: propertyId, 1352 pKey: propertyKey, 1353 ismApiUrl: 'https://ism.realpage.com', 1354 apiUrl: 'https://c-leasestar-api.realpage.com', 1355 useCarousel: false, 1356 carouselItems: 3, 1357 defaultLeaseTerm: 'bestprice', 1358 disclaimerText: '', 1359 floorplansPerPage: 0, 1360 maxMoveInDateDays: 0, 1361 showBuildingFilter: false, 1362 hidePricingFilter: false, 1363 defaultSortOption: 0, 1364 defaultMediaOrder: 0, 1365 skipStepsEnabled: true, 1366 studentProperty: false, 1367 showAvailableFloorplansOnly: false, 1368 showBuildingName: false, 1369 fitThumbnail: true, 1370 hideAvailability: false, 1371 hideFloorplansPricing: false, 1372 hideUnitsPricing: false, 1373 hideSquareFeet: false, 1374 overrideNoUnitsText: '', 1375 overrideContactUsText: 'Contact Us', 1376 thirdPartyContactUrl: '', 1377 overrideLeaseNowText: '', 1378 thirdPartyLeasingUrl: '', 1379 onlineLeasingUrls: [{"SiteId":"6437872","Url":"https://www.777mainstreet.com/OnlineLeasing.aspx","IsSelectedSite":false,"PartnerPropertyId":"4298941"}], 1380 internationalProperty: false, 1381 matchedSource: matchedSource, 1382 aholDisplay: false, 1383 aholContent: 'Looking for affordable homes?', 1384 aholText: 'Click Here', 1385 aholLink: 'https://oll-leasing.loftliving.com/oll/?siteid=4298941', 1386 ismEnabled: false, 1387 ismId: '', 1388 ismDefault: false, 1389 apiKey: 'f3539fc1-0f04-4185-a82d-3098476fc714', 1390 availableUnitColor: '#133d22', 1391 availableUnitHighlightColor: '#37623e', 1392 pinColor: '#031f4b', 1393 pinHighlightColor: '#035891', 1394 engrainSitemapId: '', 1395 engrainedText: 'Interactive Map', 1396 engrainedUrl: '', 1397 hideUnitSiteMapDetails: false, 1398 hideEngrainSiteMaponMobile: false, 1399 hideBrochure: false, 1400 bmRedirect: false, 1401 bmCreditCards: '', 1402 bmEmail: '', 1403 bmApplicationFee: '', 1404 bmSerialNumber: '', 1405 leaseTermDetails: ('{"leaseTerms":[3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24]}' ? JSON.parse('{"leaseTerms":[3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24]}') : ''), 1406 templateVars: { 1407 cta1image: "", 1408 cta1title: "", 1409 cta1text: "" 1410 }, 1411 dynamicRentRange: valueDRR, 1412 enablePricingTransparency: 'true', 1413 ufWidgetEnabled: true ? true : false, 1414 hideFeeCalculator: 'false', 1415 ufWidgetDisclaimer: 'This price estimate does not include optional fees. Use our cost calculator to customize.', 1416 rollUpPricing: 'false', 1417 feesToDisplay: 'all', 1418 pricingDisclaimer: 'Price and availability subject to change', 1419 pricingLink: 'Show additional pricing information', 1420 excludedFeeCodes: '["PETDEP","PETFEE"]', 1421 rentDisplayOption: '2', 1422 feeTransparencyWidgetVersion: '0', 1423 additionalinfo1:'', 1424 additionalinfo2:'', 1425 additionalscript: ``, 1426 disableOnMobile: 'false', 1427 enablePopUp:'false', 1428 popupWindowHeader:'', 1429 popupWindowText: ``, 1430 imageHeight:480, 1431 imageWidth:640, 1432 imageOverride: '', 1433 } 1434 </script>
1434 1435 1436
1437<script type="module" src="https://cs-cdn.realpage.com/CSFDW/v1.0/cs-fee-disclosure-wc/cs-fee-disclosure-wc.esm.js"></script>
vendor: 2 bytes, line 1437
1437
1438<script nomodule="nomodule" type="text/javascript" src="https://cs-cdn.realpage.com/CSFDW/v1.0/cs-fee-disclosure-wc/cs-fee-disclosure-wc.js"></script>
1438 1439 1440
1441<script src="https://cs-cdn.realpage.com/RFP/v1.0/loader.js" type="text/javascript"></script>
1441 1442 1443 1444<div id="p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneFloorPlansMain_WebPartLoader_ctl00_ctl00_pnlFormInputs"> 1445 1446 </div> 1447 1448<!--FLOORPLANLOADER END--> 1449</div> 1450 1451 1452<div class="sp-container"> 1453 1454 1455</div> </div> 1456</div></div> 1457</section> 1458<section id="gallery" class="block-area"> 1459 <div class="section-header section-header--gallery sectionDark sectionDark--40 bgImg"> 1460 <div class="sectionHeaderContent"> 1461 <div class="sectionHeaderIcon"> 1462 <div class="diamond"> 1463 <div class="textShadow icon"> 1464 <i class="fa fa-camera-retro" aria-hidden="true"></i> 1465 </div> 1466 </div> 1467 </div> 1468 <h1 class="header-tertiary textShadow">Photo Gallery</h1> 1469 </div> 1470</div> 1471 <div id="" class="content-secondary"><div class="content-tertiary row row--mw text-block"> 1472 <div class="col-sm-8 col-sm-offset-2 col-xs-10 col-xs-offset-1 col-md-11 col-md-offset-half"> 1473 1474 </div> 1475</div><div class="row main-block"> 1476 <div class="col-xs-12"><div id="p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneGalleryMain_WebPartLoader2_pnlContainer"> 1477 1478
1479<script type="text/javascript"> 1480 var nestedGalleryLocation = 'side'; 1481 var facebookBtnName = 'Facebook'; 1482 var instagramBtnName = 'Instagram'; 1483 var gallerySquareTilesLazyLoad = 'False'; 1484 var imageSize = '1920x1080'; 1485 var squareTilesObserver; 1486 1487 var defaultColumnCount= 'mosaic'; 1488 var itemsPerPageGallery = 'false'; 1489 1490 $(document).ready(function () { 1491 if (gallerySquareTilesLazyLoad.toLowerCase() == 'true' && navigator.userAgent.toLocaleLowerCase().indexOf('safari') == -1) { 1492 try { 1493 squareTilesObserver = new IntersectionObserver(gstIntersectCallback, intersectOptions); 1494 squareTilesObserver.observe(document.querySelector('#gstIntersect')); 1495 squareTilesObserver.observe(document.querySelector('#photosContainer')); 1496 squareTilesObserver.observe(document.querySelector('#gstFooterIntersect')); 1497 if ($('#head').length > 0) { 1498 squareTilesObserver.observe(document.querySelector('#head')); 1499 } 1500 } catch (err) { 1501 console.warn(err); 1502 } 1503 } else { 1504 f_buildGallery(); 1505 } 1506 1507 1508 if($(window).width() < 768) 1509 f_resize(); 1510 1511 $(window).resize(function() { 1512 f_resize(); 1513 }); 1514 }); 1515 1516 var gstIntersectCallback = function (entries, observer) { 1517 if (entries && entries[0].isIntersecting) { 1518 f_buildGallery(); 1519 squareTilesObserver.unobserve(document.querySelector('#gstIntersect')); 1520 squareTilesObserver.unobserve(document.querySelector('#photosContainer')); 1521 squareTilesObserver.unobserve(document.querySelector('#gstFooterIntersect')); 1522 } 1523 } 1524 1525 function f_buildGallery() { 1526 var playSlideShow = false; 1527 var galleryIndex = 0; 1528 1529 if ($('.side-container li').length <= 1) { 1530 $('.photolist').removeClass('nested-side'); 1531 $('.photolist').addClass('nested-top'); 1532 } else 1533 $('.side-container').removeClass('hide-side-cont'); 1534 1535 if ($('.top-container li').length > 1) { 1536 $('.top-container').removeClass('hide-top-cont'); 1537 } 1538 if (nestedGalleryLocation == 'dropdown' && $('.top-dropdown option').length > 1 || $(window).width() < 1025 && $('.top-dropdown option').length > 1) 1539 $('.top-dropdown').removeClass('hide-dropdown'); 1540 1541 var pixelRatio = ((window.devicePixelRatio) ? window.devicePixelRatio : 1); 1542 var windowWidth = Math.floor(window.innerWidth * 0.80 * pixelRatio); 1543 var windowHeight = Math.floor(window.innerHeight * 0.80 * pixelRatio); 1544 1545 var fullImageSizeString = windowWidth + 'x' + windowHeight; 1546 var defaultImageWidth = Math.floor($('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneGalleryMain_WebPartLoader2_ctl00_GalleryContainer').width() * pixelRatio / 3); 1547 var thumbImageSizeString = defaultImageWidth.toString() + 'x' + defaultImageWidth.toString(); 1548 1549 $('#widget_header_buttons .columnSelector').click(function() { 1550 $('#widget_header_buttons .columnSelector').removeClass('selected'); 1551 $('#widget_header_buttons .mosaic').removeClass('selected'); 1552 $(this).addClass('selected'); 1553 var columnCount = $(this).data('columns'); 1554 $('#photosContainer').removeAttr('class'); 1555 $('#photosContainer').addClass('columns' + columnCount); 1556 $('.photolist').hide(); 1557 1558 f_convertImages(fullImageSizeString, thumbImageSizeString, columnCount); 1559 1560 if ($('.nested-gst').length > 0 && $('.nested-gst:visible').length > 0) 1561 galleryIndex = $('.nested-gst.selected').attr('data-index'); 1562 else 1563 galleryIndex = $('.top-dropdown option:selected').attr('data-index'); 1564 1565 $('#photoList' + galleryIndex).show(); 1566 1567 1568 1569 $('.grid').hide(); 1570 1571 var minHeight = 0; 1572 $('.photolist img:visible').each(function() { 1573 if ($(this).height() > minHeight) 1574 minHeight = $(this).height(); 1575 }); 1576 $('.gallerySquareContainer .img_wrapper img').css('min-height', minHeight); 1577 1578 }); 1579 1580 $('#widget_header_buttons #btnMosaic').on('click', function() { 1581 $('#widget_header_buttons .columnSelector').removeClass('selected'); 1582 $(this).addClass('selected'); 1583 $('#photosContainer').removeAttr('class'); 1584 $('.photolist').hide(); 1585 $('.grid').hide(); 1586 1587 if ($('.nested-gst').length > 0 && $('.nested-gst:visible').length > 0) 1588 galleryIndex = $('.nested-gst.selected').attr('data-index'); 1589 else 1590 galleryIndex = $('.top-dropdown option:selected').attr('data-index'); 1591 1592 $('#grid' + galleryIndex).show(); 1593 1594 f_convertMosaicImages(fullImageSizeString, thumbImageSizeString); 1595 1596 if ($('.side-container li').length > 0 && $('.nested-gst').length > 1 && $(window).width() > 1024) { 1597 $('.grid').css('width', '80%'); 1598 } else 1599 $('.grid').css('width', '100%'); 1600 1601 $('.grid').masonry({ 1602 itemSelector: '.grid-item', 1603 columnWidth: '.grid-sizer', 1604 percentPosition: true 1605 }); 1606 1607 }); 1608 1609 $('#widget_header_buttons #btnPlaySlideshow').on('click', function(){ 1610 playSlideShow = true; 1611 1612 if ($('.nested-gst').length > 0 && $('.nested-gst:visible').length > 0) 1613 galleryIndex = $('.nested-gst.selected').attr('data-index'); 1614 else 1615 galleryIndex = $('.top-dropdown option:selected').attr('data-index'); 1616 1617 if ($('.headerButton.selected').attr('data-columns') == 'mosaic') 1618 $('#grid' + galleryIndex + ' a').first().trigger('click', [true]); 1619 else 1620 $('#photoList' + galleryIndex + ' a').first().trigger('click', [true]); 1621 }); 1622 1623 $('.nested-gst').click(function() { 1624 $('.nested-gst').removeClass('selected'); 1625 $(this).addClass('selected'); 1626 $('.top-dropdown option[data-index="' + $(this).attr('data-index') + '"]').prop('selected', true); 1627 1628 $('.grid').hide(); 1629 $('.photolist').hide(); 1630 1631 if ($('.headerButton.selected').attr('data-columns') == 'mosaic') { 1632 f_convertMosaicImages(fullImageSizeString, thumbImageSizeString); 1633 1634 $('#grid' + $(this).attr('data-index')).show(); 1635 1636 $('#grid' + $(this).attr('data-index')).masonry({ 1637 itemSelector: '.grid-item', 1638 columnWidth: '.grid-sizer', 1639 percentPosition: true 1640 }); 1641 } else { 1642 var column_count = $('.headerButton.selected').attr('data-columns'); 1643 f_convertImages(fullImageSizeString, thumbImageSizeString, column_count); 1644 1645 $('#photoList' + $(this).attr('data-index')).show(); 1646 1647 var minHeight = 0; 1648 $('.photolist img:visible').each(function() { 1649 if ($(this).height() > minHeight) 1650 minHeight = $(this).height(); 1651 }); 1652 $('.gallerySquareContainer .img_wrapper img').css('min-height', minHeight); 1653 } 1654 }); 1655 1656 $('.top-dropdown').change(function() { 1657 $('.grid').hide(); 1658 $('.photolist').hide(); 1659 1660 if ($('.headerButton.selected').attr('data-columns') == 'mosaic') { 1661 f_convertMosaicImages(fullImageSizeString, thumbImageSizeString); 1662 1663 $('#grid' + $('.top-dropdown option:selected').attr('data-index')).show(); 1664 1665 $('#grid' + $('.top-dropdown option:selected').attr('data-index')).masonry({ 1666 itemSelector: '.grid-item', 1667 columnWidth: '.grid-sizer', 1668 percentPosition: true 1669 }); 1670 } else { 1671 var column_count = $('.headerButton.selected').attr('data-columns'); 1672 f_convertImages(fullImageSizeString, thumbImageSizeString, column_count); 1673 $('#photoList' + $('.top-dropdown option:selected').attr('data-index')).show(); 1674 1675 var minHeight = 0; 1676 $('.photolist img:visible').each(function() { 1677 if ($(this).height() > minHeight) 1678 minHeight = $(this).height(); 1679 }); 1680 $('.gallerySquareContainer .img_wrapper img').css('min-height', minHeight); 1681 } 1682 }); 1683 1684 if (p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneGalleryMain_WebPartLoader2_ctl00_GalleryContainer.defaultView.toLowerCase() == 'mosaic') { 1685 $('#widget_header_buttons #btnMosaic').click(); 1686 } else 1687 $('.headerButton.column' + p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneGalleryMain_WebPartLoader2_ctl00_GalleryContainer.defaultView).click(); 1688 1689 if (p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneGalleryMain_WebPartLoader2_ctl00_GalleryContainer.hideColumnSelector.toUpperCase() == "TRUE") { 1690 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneGalleryMain_WebPartLoader2_ctl00_GalleryContainer .columnSelector').hide(); 1691 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneGalleryMain_WebPartLoader2_ctl00_GalleryContainer #widget_header_buttons #btnMosaic').hide(); 1692 } 1693 1694 $(".headerButton").tooltip({ 1695 position: { 1696 my: "center bottom-20", 1697 at: "center top", 1698 using: function( position, feedback ) { 1699 $( this ).css( position ); 1700 $( "<div>" ) 1701 .addClass( "arrow" ) 1702 .addClass( feedback.vertical ) 1703 .addClass( feedback.horizontal ) 1704 .appendTo( this ); 1705 } 1706 } 1707 }); 1708 1709 f_convertImages(fullImageSizeString, thumbImageSizeString, defaultColumnCount); 1710 1711 if ($(window).width() < 1025) { 1712 $('.photolist').removeClass('nested-side'); 1713 $('.photolist').addClass('nested-top'); 1714 } 1715 1716 $('.fancybox3').fancybox({ 1717 fullScreen: { 1718 autoStart: false 1719 }, 1720 thumbs: { 1721 autoStart: false, 1722 hideOnClose: true 1723 }, 1724 smallBtn: "auto", 1725 afterLoad: function (instance, current) { 1726 if (current.$image) { 1727 current.$image.attr('alt', current.opts.$orig.find('meta[itemprop="name"]').attr('content')); 1728 } 1729 var pixelRatio = window.devicePixelRatio || 1; 1730 1731 if ( pixelRatio > 1.5 ) { 1732 current.width = current.width / pixelRatio; 1733 current.height = current.height / pixelRatio; 1734 } 1735 } 1736 }); 1737 } 1738 1739 function f_convertImages(fullImageSizeString, thumbImageSizeString, defaultColumnCount) { 1740 var galleryIndex = 0; 1741 if ($('.nested-gst').length > 0 && $('.nested-gst:visible').length > 0) 1742 galleryIndex = $('.nested-gst.selected').attr('data-index'); 1743 else 1744 galleryIndex = $('.top-dropdown option:selected').attr('data-index'); 1745 1746 $('#photoList' + galleryIndex + ' a.fancybox3').each(function(index, imageContainer) { 1747 var imageSrc = $(imageContainer).attr('href'); 1748 var imageThumbSrc; 1749 1750 if ($('.top-dropdown option:selected').html() == instagramBtnName || $('.top-dropdown option:selected').html() == facebookBtnName) { 1751 imageThumbSrc = $(imageContainer).find('.img_wrapper').data('thumbnail-url'); 1752 } else if ($(window).width() > 1025 && $('.nested-gst.selected').length > 0 && $('.nested-gst.selected').html() == instagramBtnName || $('.nested-gst.selected').html() == facebookBtnName) { 1753 imageThumbSrc = $(imageContainer).find('.img_wrapper').data('thumbnail-url'); 1754 } else { 1755 $(imageContainer).attr('href', imageSrc.replace(imageSize, fullImageSizeString)); 1756 imageThumbSrc = imageSrc.replace('dimg', 'dimg-crop').replace(fullImageSizeString, thumbImageSizeString).replace(imageSize, thumbImageSizeString); 1757 var imageThumbAltText = $(imageContainer).find('.img_wrapper meta[itemprop="name"]').attr('content'); 1758 } 1759 $(imageContainer).find('.img_wrapper').css('background-image', 'url(' + imageThumbSrc.replace(imageSize, $(window).width() + 'x' + $(window).height()) + ')'); 1760 1761 $(imageContainer).addClass('fancybox3'); 1762 $(imageContainer).click(function(e, isFromPlayButton){ 1763 if (!isFromPlayButton){ 1764 var imageId = $(this).data('mediaid'); 1765 f_analyticsSendEvent('gallery', 'click-gallery-image', imageId.toString()); 1766 } 1767 }); 1768 }); 1769 1770 var minHeight = 0; 1771 $('.photolist img:visible').each(function() { 1772 if ($(this).height() > minHeight) 1773 minHeight = $(this).height(); 1774 }); 1775 $('.gallerySquareContainer .img_wrapper img').css('min-height', minHeight); 1776 1777 var gallery_tab = $('#photoList' + galleryIndex); 1778 f_createPaginationGallerySquares(gallery_tab, defaultColumnCount); 1779 } 1780 1781 function f_convertMosaicImages(fullImageSizeString, thumbImageSizeString) { 1782 var galleryIndex = 0; 1783 if ($('.nested-gst').length > 0 && $('.nested-gst:visible').length > 0) 1784 galleryIndex = $('.nested-gst.selected').attr('data-index'); 1785 else 1786 galleryIndex = $('.top-dropdown option:selected').attr('data-index'); 1787 1788 $('#grid' + galleryIndex + ' .mosaic-img').each(function() { 1789 var url = $(this).find('meta[itemprop="contentUrl"]').attr('content'); 1790 $(this).css('background-image', 'url(' + url.replace(imageSize, $(window).width() + 'x' + $(window).height()) + ')'); 1791 }); 1792 1793 $('#grid' + galleryIndex + ' a.fancybox3').each(function(index, imageContainer) { 1794 var imageSrc = $(imageContainer).attr('href'); 1795 var imageThumbSrc; 1796 1797 if ($('.top-dropdown option:selected').html() == instagramBtnName || $('.top-dropdown option:selected').html() == facebookBtnName) { 1798 imageThumbSrc = $(imageContainer).find('.img_wrapper').data('thumbnail-url'); 1799 } else if ($('.nested-gst.selected').length > 0 && $('.nested-gst.selected').html() == instagramBtnName || $('.nested-gst.selected').html() == facebookBtnName) { 1800 imageThumbSrc = $(imageContainer).find('.img_wrapper').data('thumbnail-url'); 1801 } else { 1802 $(imageContainer).attr('href', imageSrc.replace(imageSize, fullImageSizeString)); 1803 imageThumbSrc = imageSrc.replace('dimg', 'dimg-crop').replace(fullImageSizeString, thumbImageSizeString).replace(imageSize, thumbImageSizeString); 1804 var imageThumbAltText = $(imageContainer).find('.img_wrapper meta[itemprop="name"]').attr('content'); 1805 } 1806 $(imageContainer).find('.img_wrapper').html('<img src="' + imageThumbSrc + '" ' + (imageThumbAltText ? 'alt="' + imageThumbAltText + '"' : '') + ' />'); 1807 $(imageContainer).addClass('fancybox3'); 1808 $(imageContainer).click(function(e, isFromPlayButton){ 1809 if (!isFromPlayButton){ 1810 var imageId = $(this).data('mediaid'); 1811 f_analyticsSendEvent('gallery', 'click-gallery-image', imageId.toString()); 1812 } 1813 }); 1814 }); 1815 var gallery_tab = $('#grid' + galleryIndex); 1816 1817 f_createPaginationGallerySquares(gallery_tab, 'mosaic'); 1818 1819 } 1820 1821 1822 function f_createPaginationGallerySquares(gallery_tab, defaultColumnCount) { 1823 var gallery_tab_selector = '#' + gallery_tab.attr('id'); 1824 var galleryCount = 0; 1825 $(gallery_tab_selector + ' .pagination-item
1825').each(function () { 1826 galleryCount++; 1827 }); 1828 1829 1830 // If there is no need for the pagination don't create pagination 1831 if (itemsPerPageGallery == 'false' || itemsPerPageGallery >= galleryCount) { 1832 return; 1833 } 1834 // Create Pagination 1835 else { 1836 $(gallery_tab).attr('data-page', ''); 1837 $(gallery_tab_selector + ' .div-list-pagination-bot-gallery').remove(); 1838 1839 1840 var pageNum = (itemsPerPageGallery == '1' ? 0 : 1); 1841 if (itemsPerPageGallery == '0') 1842 return; 1843 else { 1844 $(gallery_tab_selector + ' .pagination-item').each(function (i, v) { 1845 // Increment page number whenever in a new page 1846 if (itemsPerPageGallery == '1' || (i + 1 > itemsPerPageGallery && (i + 1) % itemsPerPageGallery == 1)) 1847 pageNum++; 1848 $(v).attr('data-page', pageNum); 1849 }); 1850 if (pageNum > 1) { 1851 // TFS 3046412 WCAG 4.1.1: gallery_tab is a <ul>; wrap the pagination <div> in an <li> so it stays a valid list child. 1852 var botPaginationHtml = '<li class="div-list-pagination-wrapper"><div class="div-list-pagination-bot-gallery div-list-pagination-gallery"><ul class="list-pagination-bot list-pagination-gallery"><li><a aria-label="Previous" id="previous-page" onclick="f_previousPageGallerySquares(this);"><span aria-hidden="true">« Prev</span></a></li>'; 1853 for (var i = 1; i <= pageNum; i++) { 1854 botPaginationHtml += '<li class="page-numbers" data-page="' + i + '"><a onclick="f_loadPageGallerySquares(' + i + ', this)">' + i + '</a></li>'; 1855 } 1856 botPaginationHtml += '<li><a aria-label="Next" id="next-page" onclick="f_nextPageGallerySquares(this);"><span aria-hidden=""true"">Next » </span></a></li></ul></div></li>'; 1857 $(gallery_tab).append(botPaginationHtml); 1858 f_loadPageGallerySquares('1', gallery_tab); 1859 } 1860 } 1861 } 1862 1863 } 1864 1865 function f_loadPageGallerySquares(pageNum, elm) { 1866 if ($(elm).hasClass('pagination-parent')) { 1867 elmId = $(elm).attr('id'); 1868 } 1869 else { 1870 elmId = $(elm).parents('.pagination-parent').attr('id'); 1871 } 1872 var gallery_tab_selector = '#' + elmId; 1873 $(gallery_tab_selector + ' .pagination-item').hide(); 1874 $(gallery_tab_selector + ' .pagination-item[data-page="' + pageNum + '"]').show(); 1875 1876 if ($(gallery_tab_selector).hasClass('grid')) { 1877 var $grid = $(gallery_tab_selector).masonry({ 1878 initLayout: true, 1879 itemSelector: '.grid-item', 1880 columnWidth: '.grid-sizer', 1881 percentPosition: true 1882 }); 1883 // bind event 1884 $grid.masonry( 'on', 'layoutComplete', function() { 1885 console.log('layout is complete'); 1886 }); 1887 // trigger initial layout 1888 $grid.masonry(); 1889 } 1890 1891 $(gallery_tab_selector + ' .list-pagination-gallery li').removeClass('active-page'); 1892 $(gallery_tab_selector + ' .list-pagination-gallery li[data-page="' + pageNum + '"]').addClass('active-page'); 1893 1894 $(gallery_tab_selector + ' .list-pagination-gallery li').show(); 1895 $(gallery_tab_selector + ' .list-pagination-gallery li').each(function (i, v) { 1896 if (parseInt($(v).attr('data-page')) > (parseInt(pageNum) + 3) || parseInt($(v).attr('data-page')) < (parseInt(pageNum) - 3)) 1897 $(v).hide(); 1898 }); 1899 1900 if ($(gallery_tab_selector + ' .pagination-item[data-page="' + (parseInt(pageNum) + 1) + '"]').length == 0) 1901 $(gallery_tab_selector + ' .list-pagination-gallery li:last-child').hide(); 1902 if ($(gallery_tab_selector + ' .pagination-item[data-page="' + (parseInt(pageNum) - 1) + '"]').length == 0) 1903 $(gallery_tab_selector + ' .list-pagination-gallery li:first-child').hide(); 1904 1905 } 1906 1907 1908 1909 function f_nextPageGallerySquares(elm) { 1910 var gallery_tab_selector = '#' + $(elm).parents('.pagination-parent').attr('id'); 1911 1912 var currentPage = $(gallery_tab_selector + ' .pagination-item:visible').first().attr('data-page'); 1913 1914 if ($(gallery_tab_selector + ' .pagination-item[data-page="' + (parseInt(currentPage) + 1) + '"]').length > 0) 1915 f_loadPageGallerySquares(parseInt(currentPage) + 1, gallery_tab_selector); 1916 } 1917 1918 function f_previousPageGallerySquares(elm) { 1919 var gallery_tab_selector = '#' + $(elm).parents('.pagination-parent').attr('id'); 1920 1921 var currentPage = $(gallery_tab_selector + ' .pagination-item:visible').first().attr('data-page'); 1922 1923 if ($(gallery_tab_selector + ' .pagination-item[data-page="' + (parseInt(currentPage) - 1) + '"]').length > 0) 1924 f_loadPageGallerySquares(parseInt(currentPage) - 1, gallery_tab_selector); 1925 } 1926 1927 1928 function f_resize() { 1929 $('.gallerySquareContainer .img_wrapper img').css('min-height', 0); 1930 1931 if (nestedGalleryLocation == 'side' && $(window).width() < 1025) { 1932 $('.photolist').removeClass('nested-side'); 1933 $('.photolist').addClass('nested-top'); 1934 } else if(nestedGalleryLocation == 'side') { 1935 $('.photolist').addClass('nested-side'); 1936 $('.photolist').removeClass('nested-top'); 1937 } 1938 1939 if ($(window).width() < 1025 && $('.top-dropdown option').length > 1) 1940 $('.top-dropdown').removeClass('hide-dropdown'); 1941 if ($(window).width() > 1025 && nestedGalleryLocation != 'dropdown') 1942 $('.top-dropdown').addClass('hide-dropdown'); 1943 1944 if ($(window).width() < 768 && $('.headerButton.selected').attr('data-columns') == 'mosaic') { 1945 if (p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneGalleryMain_WebPartLoader2_ctl00_GalleryContainer.defaultView.toLowerCase() == '4') 1946 $('.headerButton.column4').click(); 1947 else 1948 $('.headerButton.column3').click(); 1949 } 1950 1951 var minHeight = 0; 1952 $('.photolist img:visible').each(function() { 1953 if ($(this).height() > minHeight) 1954 minHeight = $(this).height(); 1955 }); 1956 $('.gallerySquareContainer .img_wrapper img').css('min-height', minHeight); 1957 } 1958</script>
1958 1959 1960<div id="p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneGalleryMain_WebPartLoader2_ctl00_GalleryContainer" class="gallerySquareContainer"> 1961 1962 <div id="gstIntersect" class="widget_head"> 1963 <div id="widget_header_buttons" aria-label="Photo Gallery Layout Selection Buttons"> 1964 <!--googleoff: all--> 1965 <button type="button" class="headerButton" id="btnPlaySlideshow" title="Play Slideshow" aria-label="Play Slideshow">Play Slideshow</button> 1966 <button type="button" class="headerButton columnSelector column3" data-columns="3" title="3 Columns" aria-label="3 Column Photo Gallery">3 Columns</button> 1967 <button type="button" class="headerButton columnSelector column4" data-columns="4" title="4 Columns" aria-label="4 Column Photo Gallery">4 Columns</button> 1968 <button type="button" class="headerButton mosaic" id="btnMosaic" data-columns="mosaic" title="Mosaic" aria-label="Mosaic Photo Gallery">Mosaic</button> 1969 <!--googleon: all--> 1970 </div> 1971 1972 <select class="top-dropdown hide-dropdown" aria-label="Photo Layout Selection Dropdown Menu"><option class="gst-drop-item" data-index="0" aria-label="Gallery">Gallery</option></select> 1973 </div> 1974 <div id="photosContainer"> 1975 <ul class="side-container hide-side-cont"><li class="gallery-nav"><button type="button" class="nested-gst nested-gst-side selected" data-index="0" aria-label="Gallery">Gallery</button></li></ul> 1976 <ul id="photoList0" class="photolist pagination-parent nested-side"><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Open Concept Kitchen, Living & Dining Room, work desk, floor to ceiling windows" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/60237303/1920x1080/60237303.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/60237303/1920x1080/60237303.jpg" title="Open Concept Kitchen, Living & Dining Room"> 1977 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/60237303/1920x1080/60237303.jpg" /> 1978 <div class="meta name"> 1979 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Open Concept Kitchen, Living & Dining Room, work desk, floor to ceiling windows"> 1980 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/60237303/950x950/60237303.jpg" /><meta itemprop="name" content="Open Concept Kitchen, Living & Dining Room, work desk, floor to ceiling windows" /><span role="img" class="galleryThumbAltText" aria-hidden="false">Open Concept Kitchen, Living & Dining Room </span></div><div class="titles"><p itemprop="caption">Open Concept Kitchen, Living & Dining Room</p></div></div> 1981 </a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Kitchen With Stainless Appliances, Granite Countertops And Flat Panel Cabinets, island counter with seating" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/60237319/1920x1080/60237319.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/60237319/1920x1080/60237319.jpg" title="Kitchen With Stainless Appliances, Granite Countertops And Flat Panel Cabinets"> 1982 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/60237319/1920x1080/60237319.jpg" /> 1983 <div class="meta name"> 1984 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Kitchen With Stainless Appliances, Granite Countertops And Flat Panel Cabinets, island counter with seating"> 1985 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/60237319/950x950/60237319.jpg" /><meta itemprop="name" content="Kitchen With Stainless Appliances, Granite Countertops And Flat Panel Cabinets, island counter with seating" /><span role="img" class="galleryThumbAltText" aria-hidden="false">Kitchen With Stainless Appliances, Granite Countertops And Flat Panel Cabinets </sp
1985an></div><div class="titles"><p itemprop="caption">Kitchen With Stainless Appliances, Granite Countertops And Flat Panel Cabinets</p></div></div> 1986 </a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Bedroom with CT River Views, large windows, natural light" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/64244514/1920x1080/64244514.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/64244514/1920x1080/64244514.jpg" title="Bedroom with CT River Views"> 1987 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/64244514/1920x1080/64244514.jpg" /> 1988 <div class="meta name"> 1989 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Bedroom with CT River Views, large windows, natural light"> 1990 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/64244514/950x950/64244514.jpg" /><meta itemprop="name" content="Bedroom with CT River Views, large windows, natural light" /><span role="img" class="galleryThumbAltText" aria-hidden="false">Bedroom with CT River Views </span></div><div class="titles"><p itemprop="caption">Bedroom with CT River Views</p></div></div> 1991 </a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Den Area with In Unit Washer & Dryer, desk and chair" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/64326731/1920x1080/64326731.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/64326731/1920x1080/64326731.jpg" title="Den Area with In Unit Washer & Dryer"> 1992 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/64326731/1920x1080/64326731.jpg" /> 1993 <div class="meta name"> 1994 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Den Area with In Unit Washer & Dryer, desk and chair"> 1995 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/64326731/950x950/64326731.jpg" /><meta itemprop="name" content="Den Area with In Unit Washer & Dryer, desk and chair" /><span role="img" class="galleryThumbAltText" aria-hidden="false">Den Area with In Unit Washer & Dryer </span></div><div class="titles"><p itemprop="caption">Den Area with In Unit Washer & Dryer</p></div></div> 1996 </a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Large Master Bedroom with Bright ceiling to floor windows and view" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/64244520/1920x1080/64244520.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/64244520/1920x1080/64244520.jpg" title="Large Master Bedroom with Bright Windows"> 1997 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/64244520/1920x1080/64244520.jpg" /> 1998 <div class="meta name"> 1999 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Large Master Bedroom with Bright ceiling to floor windows and view"> 2000 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/64244520/950x950/64244520.jpg" /><meta itemprop="name" content="Large Master Bedroom with Bright ceiling to floor windows and view" /><span role="img" class="galleryThumbAltText" aria-hidden="false">Large Master Bedroom with Bright Windows </span></div><div class="titles"><p itemprop="caption">Large Master Bedroom with Bright Windows</p></div></div> 2001 </a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Modern Bath with Floating Vanity and LED mirror" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/64326732/1920x1080/64326732.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/64326732/1920x1080/64326732.jpg" title="Modern Bath with Floating Vanity"> 2002 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/64326732/1920x1080/64326732.jpg" /> 2003 <div class="meta name"> 2004 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Modern Bath with Floating Vanity and LED mirror"> 2005 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/64326732/950x950/64326732.jpg" /><meta itemprop="name" content="Modern Bath with Floating Vanity and LED mirror" /><span role="img" class="galleryThumbAltText" aria-hidden="false">Modern Bath with Floating Vanity </span></div><div class="titles"><p itemprop="caption">Modern Bath with Floating Vanity</p></div></div> 2006 </a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Community Green Space with walkway" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/61656739/1920x1080/61656739.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/61656739/1920x1080/61656739.jpg" title="Community Green Space"> 2007 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/61656739/1920x1080/61656739.jpg" /> 2008 <div class="meta name"> 2009 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Community Green Space with walkway"> 2010 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/61656739/950x950/61656
2010739.jpg" /><meta itemprop="name" content="Community Green Space with walkway" /><span role="img" class="galleryThumbAltText" aria-hidden="false">Community Green Space </span></div><div class="titles"><p itemprop="caption">Community Green Space</p></div></div> 2011 </a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Modern Lobby With Art Display And Couches and seatin" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/61656728/1920x1080/61656728.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/61656728/1920x1080/61656728.jpg" title="Lobby With Art Display And Couches"> 2012 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/61656728/1920x1080/61656728.jpg" /> 2013 <div class="meta name"> 2014 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Modern Lobby With Art Display And Couches and seatin"> 2015 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/61656728/950x950/61656728.jpg" /><meta itemprop="name" content="Modern Lobby With Art Display And Couches and seatin" /><span role="img" class="galleryThumbAltText" aria-hidden="false">Lobby With Art Display And Couches </span></div><div class="titles"><p itemprop="caption">Lobby With Art Display And Couches</p></div></div> 2016 </a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Community Lobby with Concierge Desk and seating and greenery" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/61656727/1920x1080/61656727.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/61656727/1920x1080/61656727.jpg" title="Community Lobby with Concierge Desk"> 2017 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/61656727/1920x1080/61656727.jpg" /> 2018 <div class="meta name"> 2019 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Community Lobby with Concierge Desk and seating and greenery"> 2020 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/61656727/950x950/61656727.jpg" /><meta itemprop="name" content="Community Lobby with Concierge Desk and seating and greenery" /><span role="img" class="galleryThumbAltText" aria-hidden="false">Community Lobby with Concierge Desk </span></div><div class="titles"><p itemprop="caption">Community Lobby with Concierge Desk</p></div></div> 2021 </a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Open Amenity Space with Access to Full Kitchen, various seating options, and windows with view" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/61656729/1920x1080/61656729.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/61656729/1920x1080/61656729.jpg" title="Open Amenity Space with Access to Full Kitchen"> 2022 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/61656729/1920x1080/61656729.jpg" /> 2023 <div class="meta name"> 2024 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Open Amenity Space with Access to Full Kitchen, various seating options, and windows with view"> 2025 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/61656729/950x950/61656
2025729.jpg" /><meta itemprop="name" content="Open Amenity Space with Access to Full Kitchen, various seating options, and windows with view" /><span role="img" class="galleryThumbAltText" aria-hidden="false">Open Amenity Space with Access to Full Kitchen </span></div><div class="titles"><p itemprop="caption">Open Amenity Space with Access to Full Kitchen</p></div></div> 2026 </a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Community Work Space with floor to ceiling windows and view" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/61656732/1920x1080/61656732.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/61656732/1920x1080/61656732.jpg" title="Community Work Space"> 2027 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/61656732/1920x1080/61656732.jpg" /> 2028 <div class="meta name"> 2029 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Community Work Space with floor to ceiling windows and view"> 2030 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/61656732/950x950/61656732.jpg" /><meta itemprop="name" content="Community Work Space with floor to ceiling windows and view" /><span role="img" class="galleryThumbAltText" aria-hidden="false">Community Work Space </span></div><div class="titles"><p itemprop="caption">Community Work Space</p></div></div> 2031 </a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Fully Equipped Fitness Center with windows and view" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/61656730/1920x1080/61656730.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/61656730/1920x1080/61656730.jpg" title="Fully Equipped Fitness Center"> 2032 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/61656730/1920x1080/61656730.jpg" /> 2033 <div class="meta name"> 2034 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Fully Equipped Fitness Center with windows and view"> 2035 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/61656730/950x950/61656730.jpg" /><meta itemprop="name" content="Fully Equipped Fitness Center with windows and view" /><span role="img" class="galleryThumbAltText" aria-hidden="false">Fully Equipped Fitness Center </span></div><div class="titles"><p itemprop="caption">Fully Equipped Fitness Center</p></div></div> 2036 </a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Electric Charging Stations for Residents vehicles" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/61656738/1920x1080/61656738.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/61656738/1920x1080/61656738.jpg" title="Electric Charging Stations for Residents"> 2037 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/61656738/1920x1080/61656738.jpg" /> 2038 <div class="meta name"> 2039 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Electric Charging Stations for Residents vehicles"> 2040 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/61656738/950x950/61656
2040738.jpg" /><meta itemprop="name" content="Electric Charging Stations for Residents vehicles" /><span role="img" class="galleryThumbAltText" aria-hidden="false">Electric Charging Stations for Residents </span></div><div class="titles"><p itemprop="caption">Electric Charging Stations for Residents</p></div></div> 2041 </a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Downtown Hartford City View from 777 Main" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/60237332/1920x1080/60237332.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/60237332/1920x1080/60237332.jpg" title="Downtown Hartford City View"> 2042 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/60237332/1920x1080/60237332.jpg" /> 2043 <div class="meta name"> 2044 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Downtown Hartford City View from 777 Main"> 2045 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/60237332/950x950/60237332.jpg" /><meta itemprop="name" content="Downtown Hartford City View from 777 Main" /><span role="img" class="galleryThumbAltText" aria-hidden="false">
2045Downtown Hartford City View </span></div><div class="titles"><p itemprop="caption">Downtown Hartford City View</p></div></div> 2046 </a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Downtown Hartford City View from 777 Main" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/60237328/1920x1080/60237328.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/60237328/1920x1080/60237328.jpg" title="Downtown Hartford City View"> 2047 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/60237328/1920x1080/60237328.jpg" /> 2048 <div class="meta name"> 2049 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Downtown Hartford City View from 777 Main"> 2050 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/60237328/950x950/60237328.jpg" /><meta itemprop="name" content="Downtown Hartford City View from 777 Main" /><span role="img" class="galleryThumbAltText" aria-hidden="false">
2050Downtown Hartford City View </span></div><div class="titles"><p itemprop="caption">Downtown Hartford City View</p></div></div> 2051 </a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Hartford Skyline From 777's Wraparound Balcony" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/61656740/1920x1080/61656740.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/61656740/1920x1080/61656740.jpg" title="Hartford Skyline From 777's Wraparound Balcony"> 2052 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/61656740/1920x1080/61656740.jpg" /> 2053 <div class="meta name"> 2054 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Hartford Skyline From 777's Wraparound Balcony"> 2055 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/61656740/950x950/61656740.jpg" /><meta itemprop="name" content="Hartford Skyline From 777's Wraparound Balcony" /><span role="img" class="galleryThumbAltText" aria-hidden="false">Hartford Skyline From 777's Wraparound Balcony </span></div><div class="titles"><p itemprop="caption">Hartford Skyline From 777's Wraparound Balcony</p></div></div> 2056 </a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of View of 777 Main From Hartford" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/60237288/1920x1080/60237288.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/60237288/1920x1080/60237288.jpg" title="View of 777 From Hartford"> 2057 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/60237288/1920x1080/60237288.jpg" /> 2058 <div class="meta name"> 2059 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="View of 777 Main From Hartford"> 2060 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/60237288/950x950/60237288.jpg" /><meta itemprop="name" content="View of 777 Main From Hartford" /><span role="img" class="galleryThumbAltText" aria-hidden="false">View of 777 From Hartford </span></div><div class="titles"><p itemprop="caption">View of 777 From Hartford</p></div></div> 2061 </a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Solar Panels on Top of the Building" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/60895572/1920x1080/60895572.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/60895572/1920x1080/60895572.jpg" title="Solar Panels on Top of the Building"> 2062 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/60895572/1920x1080/60895572.jpg" /> 2063 <div class="meta name"> 2064 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Solar Panels on Top of the Building"> 2065 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/60895572/950x950/60895572.jpg" /><meta itemprop="name" content="Solar Panels on Top of the Building" /><span role="img" class="galleryThumbAltText" aria-hidden="false">Solar Panels on Top of the Building </span></div><div class="titles"><p itemprop="caption">Solar Panels on Top of the Building</p></div></div> 2066 </a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Solar Panels and view of Hartford" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/60895573/1920x1080/60895573.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/60895573/1920x1080/60895573.jpg" title="Solar Panels"> 2067 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/60895573/1920x1080/60895573.jpg" /> 2068 <div class="meta name"> 2069 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Solar Panels and view of Hartford"> 2070 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/60895573/950x950/60895573.jpg" /><meta itemprop="name" content="Solar Panels and view of Hartford" /><span role="img" class="galleryThumbAltText" aria-hidden="false">Solar Panels </span></div><div class="titles"><p itemprop="caption">Solar Panels</p></div></div> 2071 </a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Hartford Skyline at Dusk" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/70585541/1920x1080/70585541.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/70585541/1920x1080/70585541.jpg" title="Hartford Skyline at Dusk"> 2072 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/70585541/1920x1080/70585541.jpg" /> 2073 <div class="meta name"> 2074 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Hartford Skyline at Dusk"> 2075 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/70585541/950x950/70585541.jpg" /><meta itemprop="name" content="Hartford Skyline at Dusk" /><span role="img" class="galleryThumbAltText" aria-hidden="false">Hartford Skyline at Dusk </span></div><div class="titles"><p itemprop="caption">Hartford Skyline at Dusk</p></div></div> 2076 </a></li></ul> 2077 <div id="grid0" class="grid pagination-parent" style="display:none"> 2078 <div class="grid-sizer"></div><div class="grid-item pagination-item grid-item--width2 grid-item--height2"><a class="mosaic-img fancybox3" aria-label="Expand Image of Open Concept Kitchen, Living & Dining Room, work desk, floor to ceiling windows" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/60237303/1920x1080/60237303.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/60237303/1920x1080/60237303.jpg" title="Open Concept Kitchen, Living & Dining Room"> 2079 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/60237303/0x640/60237303.jpg" /><meta itemprop="name" content="Open Concept Kitchen, Living & Dining Room, work desk, floor to ceiling windows" /><span role="img" class="galleryThumbAltText" aria-hidden="false">Open Concept Kitchen, Living & Dining Room </span> 2080 </a><div class="titles"><p itemprop="caption">Open Concept Kitchen, Living & Dining Room</p></div></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Kitchen With Stainless Appliances, Granite Countertops And Flat Panel Cabinets, island counter with seating" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/60237319/1920x1080/60237319.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/60237319/1920x1080/60237319.jpg" title="Kitchen With Stainless Appliances, Granite Countertops And Flat Panel Cabinets"> 2081 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/60237319/0x1200/60237319.jpg" /><meta itemprop="name" content="Kitchen With Stainless Appliances, Granite Countertops And Flat Panel Cabinets, island counter with seating" /><span role="img" class="galleryThumbAltText" aria-hidden="false">Kitchen With Stainless Appliances, Granite Countertops And Flat Panel Cabinets </sp
2081an> 2082 </a><div class="titles"><p itemprop="caption">Kitchen With Stainless Appliances, Granite Countertops And Flat Panel Cabinets</p></div></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Bedroom with CT River Views, large windows, natural light" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/64244514/1920x1080/64244514.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/64244514/1920x1080/64244514.jpg" title="Bedroom with CT River Views"> 2083 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/64244514/0x1200/64244514.jpg" /><meta itemprop="name" content="Bedroom with CT River Views, large windows, natural light" /><span role="img" class="galleryThumbAltText" aria-hidden="false">Bedroom with CT River Views </span> 2084 </a><div class="titles"><p itemprop="caption">Bedroom with CT River Views</p></div></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Den Area with In Unit Washer & Dryer, desk and chair" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/64326731/1920x1080/64326731.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/64326731/1920x1080/64326731.jpg" title="Den Area with In Unit Washer & Dryer"> 2085 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/64326731/0x1200/64326731.jpg" /><meta itemprop="name" content="Den Area with In Unit Washer & Dryer, desk and chair" /><span role="img" class="galleryThumbAltText" aria-hidden="false">Den Area with In Unit Washer & Dryer </span> 2086 </a><div class="titles"><p itemprop="caption">Den Area with In Unit Washer & Dryer</p></div></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Large Master Bedroom with Bright ceiling to floor windows and view" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/64244520/1920x1080/64244520.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/64244520/1920x1080/64244520.jpg" title="Large Master Bedroom with Bright Windows"> 2087 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/64244520/0x1200/64244520.jpg" /><meta itemprop="name" content="Large Master Bedroom with Bright ceiling to floor windows and view" /><span role="img" class="galleryThumbAltText" aria-hidden="false">Large Master Bedroom with Bright Windows </span> 2088 </a><div class="titles"><p itemprop="caption">Large Master Bedroom with Bright Windows</p></div></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Modern Bath with Floating Vanity and LED mirror" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/64326732/1920x1080/64326732.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/64326732/1920x1080/64326732.jpg" title="Modern Bath with Floating Vanity"> 2089 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/64326732/0x1200/64326732.jpg" /><meta itemprop="name" content="Modern Bath with Floating Vanity and LED mirror" /><span role="img" class="galleryThumbAltText" aria-hidden="false">Modern Bath with Floating Vanity </span> 2090 </a><div class="titles"><p itemprop="caption">Modern Bath with Floating Vanity</p></div></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Community Green Space with walkway" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/61656739/1920x1080/61656739.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/61656739/1920x1080/61656739.jpg" title="Community Green Space"> 2091 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/61656739/0x1200/61656739.jpg" /><meta itemprop="name" content="Community Green Space with walkway" /><span role="img" class="galleryThumbAltText" aria-hidden="false">Community Green Space </span> 2092 </a><div class="titles"><p itemprop="caption">Community Green Space</p></div></div><div class="grid-item pagination-item grid-item--width2 grid-item--height2"><a class="mosaic-img fancybox3" aria-label="Expand Image of Modern Lobby With Art Display And Couches and seatin" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/61656728/1920x1080/61656728.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/61656728/1920x1080/61656728.jpg" title="Lobby With Art Display And Couches"> 2093 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/61656728/0x640/61656728.jpg" /><meta itemprop="name" content="Modern Lobby With Art Display And Couches and seatin" /><span role="img" class="galleryThumbAltText" aria-hidden="false">Lobby With Art Display And Couches </span> 2094 </a><div class="titles"><p itemprop="caption">Lobby With Art Display And Couches</p></div></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Community Lobby with Concierge Desk and seating and greenery" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/61656727/1920x1080/61656727.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/61656727/1920x1080/61656727.jpg" title="Community Lobby with Concierge Desk"> 2095 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/61656727/0x1200/61656727.jpg" /><meta itemprop="name" content="Community Lobby with Concierge Desk and seating and greenery" /><span role="img" class="galleryThumbAltText" aria-hidden="false">Community Lobby with Concierge Desk </span> 2096 </a><div class="titles"><p itemprop="caption">Community Lobby with Concierge Desk</p></div></div><div class="grid-item pagination-item grid-item--width2 grid-item--height2"><a class="mosaic-img fancybox3" aria-label="Expand Image of Open Amenity Space with Access to Full Kitchen, various seating options, and windows with view" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/61656729/1920x1080/61656729.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/61656729/1920x1080/61656729.jpg" title="Open Amenity Space with Access to Full Kitchen"> 2097 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/61656729/0x640/61656729.jpg" /><meta itemprop="name" content="Open Amenity Space with Access to Full Kitchen, various seating options, and windows with view" /><span role="img" class="galleryThumbAltText" aria-hidden="false">Open Amenity Space with Access to Full Kitchen </span> 2098 </a><div class="titles"><p itemprop="caption">Open Amenity Space with Access to Full Kitchen</p></div></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Community Work Space with floor to ceiling windows and view" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/61656732/1920x1080/61656732.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/61656732/1920x1080/61656732.jpg" title="Community Work Space"> 2099 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/61656732/0x1200/61656732.jpg" /><meta itemprop="name" content="Community Work Space with floor to ceiling windows and view" /><span role="img" class="galleryThumbAltText" aria-hidden="false">Community Work Space </span> 2100 </a><div class="titles"><p itemprop="caption">Community Work Space</p></div></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Fully Equipped Fitness Center with windows and view" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/61656730/1920x1080/61656730.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/61656730/1920x1080/61656730.jpg" title="Fully Equipped Fitness Center"> 2101 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/61656730/0x1200/61656730.jpg" /><meta itemprop="name" content="Fully Equipped Fitness Center with windows and view" /><span role="img" class="galleryThumbAltText" aria-hidden="false">Fully Equipped Fitness Center </span> 2102 </a><div class="titles"><p itemprop="caption">Fully Equipped Fitness Center</p></div></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Electric Charging Stations for Residents vehicles" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/61656738/1920x1080/61656738.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/61656738/1920x1080/61656738.jpg" title="Electric Charging Stations for Residents"> 2103 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/61656738/0x1200/61656738.jpg" /><meta itemprop="name" content="Electric Charging Stations for Residents vehicles" />
2103<span role="img" class="galleryThumbAltText" aria-hidden="false">Electric Charging Stations for Residents </span> 2104 </a><div class="titles"><p itemprop="caption">Electric Charging Stations for Residents</p></div></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Downtown Hartford City View from 777 Main" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/60237332/1920x1080/60237332.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/60237332/1920x1080/60237332.jpg" title="Downtown Hartford City View"> 2105 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/60237332/0x1200/60237332.jpg" /><meta itemprop="name" content="Downtown Hartford City View from 777 Main" /><span role="img" class="galleryThumbAltText" aria-hidden="false">Downtown Hartford City View </span> 2106 </a><div class="titles"><p itemprop="caption">Downtown Hartford City View</p></div></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Downtown Hartford City View from 777 Main" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/60237328/1920x1080/60237328.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/60237328/1920x1080/60237328.jpg" title="Downtown Hartford City View"> 2107 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/60237328/0x1200/60237328.jpg" /><meta itemprop="name" content="Downtown Hartford City View from 777 Main" /><span role="img" class="galleryThumbAltText" aria-hidden="false">
2107Downtown Hartford City View </span> 2108 </a><div class="titles"><p itemprop="caption">Downtown Hartford City View</p></div></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Hartford Skyline From 777's Wraparound Balcony" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/61656740/1920x1080/61656740.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/61656740/1920x1080/61656740.jpg" title="Hartford Skyline From 777's Wraparound Balcony"> 2109 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/61656740/0x1200/61656740.jpg" /><meta itemprop="name" content="Hartford Skyline From 777's Wraparound Balcony" /><span role="img" class="galleryThumbAltText" aria-hidden="false">Hartford Skyline From 777's Wraparound Balcony </span> 2110 </a><div class="titles"><p itemprop="caption">Hartford Skyline From 777's Wraparound Balcony</p></div></div><div class="grid-item pagination-item grid-item--width2 grid-item--height2"><a class="mosaic-img fancybox3" aria-label="Expand Image of View of 777 Main From Hartford" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/60237288/1920x1080/60237288.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/60237288/1920x1080/60237288.jpg" title="View of 777 From Hartford"> 2111 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/60237288/0x640/60237288.jpg" /><meta itemprop="name" content="View of 777 Main From Hartford" /><span role="img" class="galleryThumbAltText" aria-hidden="false">View of 777 From Hartford </span> 2112 </a><div class="titles"><p itemprop="caption">View of 777 From Hartford</p></div></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Solar Panels on Top of the Building" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/60895572/1920x1080/60895572.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/60895572/1920x1080/60895572.jpg" title="Solar Panels on Top of the Building"> 2113 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/60895572/0x1200/60895572.jpg" /><meta itemprop="name" content="Solar Panels on Top of the Building" /><span role="img" class="galleryThumbAltText" aria-hidden="false">Solar Panels on Top of the Building </span> 2114 </a><div class="titles"><p itemprop="caption">Solar Panels on Top of the Building</p></div></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Solar Panels and view of Hartford" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/60895573/1920x1080/60895573.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/60895573/1920x1080/60895573.jpg" title="Solar Panels"> 2115 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/60895573/0x1200/60895573.jpg" /><meta itemprop="name" content="Solar Panels and view of Hartford" /><span role="img" class="galleryThumbAltText" aria-hidden="false">Solar Panels </span> 2116 </a><div class="titles"><p itemprop="caption">Solar Panels</p></div></div><div class="grid-item pagination-item grid-item--width2"><a class="mosaic-img fancybox3" aria-label="Expand Image of Hartford Skyline at Dusk" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/70585541/1920x1080/70585541.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/70585541/1920x1080/70585541.jpg" title="Hartford Skyline at Dusk"> 2117 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/70585541/0x1200/70585541.jpg" /><meta itemprop="name" content="Hartford Skyline at Dusk" /><span role="img" class="galleryThumbAltText" aria-hidden="false">Hartford Skyline at Dusk </span> 2118 </a><div class="titles"><p itemprop="caption">Hartford Skyline at Dusk</p></div></div></div> 2119 </div> 2120 2121 </div> 2122<div id="gstFooterIntersect" class="clear"></div> 2123 2124</div> 2125 <div class="clear"></div> 2126 </div> 2127</div> 2128 2129</div> 2130</section> 2131<section id="neighborhood" class="block-area"> 2132 <div class="section-header section-header--neighborhood sectionDark sectionDark--40 bgImg"> 2133 <div class="sectionHeaderContent"> 2134 <div class="sectionHeaderIcon"> 2135 <div class="diamond"> 2136 <div class="textShadow icon"> 2137 <i class="fa fa-map-signs" aria-hidden="true"></i> 2138 </div> 2139 </div> 2140 </div> 2141 <h1 class="header-tertiary textShadow">Location</h1> 2142 </div> 2143</div><div class="content-quaternary row row--mw text-block"> 2144 <div class="col-sm-8 col-sm-offset-2 col-xs-10 col-xs-offset-1 col-md-11 col-md-offset-half"> 2145 <span style="font-size: 18px;">
2145777 Main includes a vibrant mix of national and locally-owned retailers. At your doorstep youâll find Greenway Market, CVS, Camera Bar, Harvey & Lewis Opticians, Dhaba Wala Indian Kitchen, Subway and the Hartford Sweat yoga studio. With a WalkScore® of 96, 777 Main is a âWalkerâs Paradiseâ. Restaurants, bars, parks and the farmerâs market are in easy reach. Within a 5-minute walk you can explore Hartfordâs many recreational, educational and cultural keystones such as Riverwalk, Bushnell Park, UCONN, the Connecticut Science Center and the Wadsworth Atheneum Museum of Art. Expand your reach into Connecticutâs vibrant capital city with Lime Bike and 777âs bike sharing program.</span> 2146 2147 2148 </div> 2149</div><div id="p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneLocation_WebPartLoader3_pnlContainer"> 2150 <div id="p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneLocation_WebPartLoader3_ctl00_pnlNeighborhoodFullWidth" class="widget neighborhood-widget"> 2151 2152 2153
2154<script src="/CMSScripts/Custom/RPWebParts/spiderfier/oms.min.js" type="text/javascript"></script>
2154 2155
2156<script type="text/javascript"> 2157// PME-507748 / WCAG 1.3.1 ââ¬â emit the marker-name <h4> only when the name has text. 2158// If name is blank, return '' so axe doesn't flag <h4><a></a></h4>. 2159function f_buildMarkerHeading(href, name) { 2160 var safeName = (name || '').toString().trim(); 2161 if (safeName.length === 0) { return ''; } 2162 return '<h4><a href="' + href + '" target="_blank" rel="noopener noreferrer">' + safeName + '<span class="sr-only"> (opens in a new tab)</span></a></h4>'; 2163} 2164var overrideGetDirections = 'https://www.google.com/maps/dir/Current+Location/777 Main St CT'; 2165var overridePropertyLink = 'https://www.google.com/maps/place/777+Main/@41.766219,-72.6738298,16z/'; 2166var propertyMarker; 2167var mapFullWidth; 2168var mapService; 2169var markersArray = []; 2170var origin; 2171var infoWindow; 2172var zoomLevels = { 2173 '402.33': 16, 2174 '804.67': 15, 2175 '1609.34': 14, 2176 '4023.36': 13, 2177 '8046.72': 12, 2178 '16093.4': 11, 2179 '32186.9': 10, 2180 '48280.3': 9 2181}; 2182var defaultZoom = (typeof searchRadius !== 'undefined') ? zoomLevels[searchRadius] : 15; 2183var currentRadius = (typeof searchRadius !== 'undefined') ? searchRadius : 804.67; 2184var currentKeyword = ''; 2185var currentIcon = ''; 2186var overlays = []; 2187var clicked = false; 2188var customMapPinsObj = '[{"Name":"Agave","Address":"100 Allyn Street","City":"Hartford","State":"CT","Zip":"06103","Url":"","Category":["food"],"Latitude":"41.7685525","Longitude":"-72.67817149999999"},{"Name":"Sorella","Address":"901 Main Street","City":"Hartford","State":"CT","Zip":"06103","Url":"","Category":["food"],"Latitude":"41.7676103","Longitude":"-72.6735527"},{"Name":"The Capital Grille","Address":"44 Front Street","City":"Hartford","State":"CT","Zip":"06103","Url":"","Category":["food"],"Latitude":"41.7629087","Longitude":"-72.6704176"},{"Name":"City Steam Brewery","Address":"942 Main Street","City":"Hartford","State":"CT","Zip":"06103","Url":"","Category":["food"],"Latitude":"41.7678325","Longitude":"-72.672893"},{"Name":"Hartford Amtrak Station","Address":"1 Union Place","City":"Hartford","State":"CT","Zip":"06103","Url":"","Category":["travel"],"Latitude":"41.7688862","Longitude":"-72.68154330000002"},{"Name":"Wadsworth Atheneum Museum of Art","Address":"600 Main Street","City":"Hartford","State":"CT","Zip":"06103","Url":"","Category":["entertainment"],"Latitude":"41.7636438","Longitude":"-72.6730446"},{"Name":"Connecticut Science & Convention Centers","Address":"250 Columbus Blvd","City":"Hartford","State":"CT","Zip":"06103","Url":"","Category":["entertainment"],"Latitude":"41.7649765","Longitude":"-72.6689799"},{"Name":"Connecticut\'s Old State House","Address":"210 Capital Avenue","City":"Hartford","State":"CT","Zip":"06106","Url":"","Category":["entertainment"],"Latitude":"41.7641979","Longitude":"-72.682467"},{"Name":"Bushnell Park","Address":"30 Arbor Street","City":"Hartford","State":"CT","Zip":"06106","Url":"","Category":["recreation"],"Latitude":"41.759942","Longitude":"-72.7024489"},{"Name":"Mark Twain House","Address":"385 Farmington Avenue","City":"Hartford","State":"CT","Zip":"06105","Url":"","Category":["entertainment"],"Latitude":"41.7670353","Longitude":"-72.7014192"},{"Name":"XL Center","Address":"225 Trumbull Street","City":"hartford","State":"CT","Zip":"06103","Url":"","Category":["entertainment"],"Latitude":"41.7678589","Longitude":"-72.6759"},{"Name":"Connecticut State Capital","Address":"210 Capital Avenue","City":"Hartford","State":"CT","Zip":"06106","Url":"","Category":["entertainment"],"Latitude":"41.7641979","Longitude":"-72.682467"},{"Name":"Elizabeth Park","Address":"1561 Asylum Avenue","City":"West Hartford","State":"CT","Zip":"06117","Url":"","Category":["recreation"],"Latitude":"41.7762661","Longitude":"-72.71815350000001"},{"Name":"Great River Park","Address":"301 East River Drive","City":"East Hartford","State":"CT","Zip":"06108","Url":"","Category":["recreation"],"Latitude":"41.7591858","Longitude":"-72.65917209999999"},{"Name":"Riverside Park","Address":"20 Leibert Road","City":"Hartford","State":"CT","Zip":"06120","Url":"","Category":["recreation"],"Latitude":"41.78282129999999","Longitude":"-72.65990359999999"},{"Name":"University of Connecticut- Hartford","Address":"10 Prospect Street","City":"Hartford","State":"CT","Zip":"06103","Url":"","Category":["schools"],"Latitude":"41.7626719","Longitude":"-72.67227969999999"},{"Name":"Trinity College","Address":"300 Summit Street","City":"Hartford","State":"CT","Zip":"06106","Url":"","Category":["schools"],"Latitude":"41.7473639","Longitude":"-72.6907806"},{"Name":"University of Hartford","Address":"200 Bloomfield Avenue","City":"West Hartford","State":"CT","Zip":"06117","Url":"","Category":["schools"],"Latitude":"41.7984508","Longitude":"-72.7137664"},{"Name":"University of Saint Joseph","Address":"1678 Asylum Avenue","City":"West Hartford","State":"CT","Zip":"06117","Url":"","Category":["schools"],"Latitude":"41.780976","Longitude":"-72.72846550000001"},{"Name":"Travelers","Address":"1 Tower Square","City":"Hartford","State":"CT","Zip":"06183","Url":"","Category":["professional"],"Latitude":"41.7643726","Longitude":"-72.67080490000001"},{"Name":"The Hartford","Address":"1 Hartford Plaza","City":"Hartford","State":"CT","Zip":"06115","Url":"","Category":["professional"],"Latitude":"41.769703","Longitude":"-72.68698080000001"},{"Name":"Aetna","Address":"151 Farmington Avenue","City":"Hartford","State":"CT","Zip":"06156","Url":"","Category":["professional"],"Latitude":"41.7671423","Longitude":"-72.6912425"},{"Name":"Trumbull Kitchen","Address":"150 Trumbull Street","City":"Hartford","State":"CT","Zip":"06103","Url":"","Category":["food"],"Latitude":"41.7666888","Longitude":"-72.6754002"}
2188,{"Name":"31 Electric Car Chargers","Address":"777 Main Street","City":"Hartford","State":"CT","Zip":"06103","Url":"","Category":["travel"],"Latitude":"41.766219","Longitude":"-72.6738298"},{"Name":"8 Connectict Fast Track Routes (North to Springfield or South to New Haven)","Address":"777 Main Street","City":"Hartford","State":"CT","Zip":"06103","Url":"","Category":["travel"],"Latitude":"41.766219","Longitude":"-72.6738298"},{"Name":"Mortensen Riverfront Plaza","Address":"300 Columbus Boulevard","City":"Hartford","State":"CT","Zip":"06103","Url":"","Category":["recreation"],"Latitude":"41.7655222","Longitude":"-72.66955159999999"}]' ? JSON.parse('[{"Name":"Agave","Address":"100 Allyn Street","City":"Hartford","State":"CT","Zip":"06103","Url":"","Category":["food"],"Latitude":"41.7685525","Longitude":"-72.67817149999999"},{"Name":"Sorella","Address":"901 Main Street","City":"Hartford","State":"CT","Zip":"06103","Url":"","Category":["food"],"Latitude":"41.7676103","Longitude":"-72.6735527"},{"Name":"The Capital Grille","Address":"44 Front Street","City":"Hartford","State":"CT","Zip":"06103","Url":"","Category":["food"],"Latitude":"41.7629087","Longitude":"-72.6704176"},{"Name":"City Steam Brewery","Address":"942 Main Street","City":"Hartford","State":"CT","Zip":"06103","Url":"","Category":["food"],"Latitude":"41.7678325","Longitude":"-72.672893"},{"Name":"Hartford Amtrak Station","Address":"1 Union Place","City":"Hartford","State":"CT","Zip":"06103","Url":"","Category":["travel"],"Latitude":"41.7688862","Longitude":"-72.68154330000002"},{"Name":"Wadsworth Atheneum Museum of Art","Address":"600 Main Street","City":"Hartford","State":"CT","Zip":"06103","Url":"","Category":["entertainment"],"Latitude":"41.7636438","Longitude":"-72.6730446"},{"Name":"Connecticut Science & Convention Centers","Address":"250 Columbus Blvd","City":"Hartford","State":"CT","Zip":"06103","Url":"","Category":["entertainment"],"Latitude":"41.7649765","Longitude":"-72.6689799"},{"Name":"Connecticut\'s Old State House","Address":"210 Capital Avenue","City":"Hartford","State":"CT","Zip":"06106","Url":"","Category":["entertainment"],"Latitude":"41.7641979","Longitude":"-72.682467"},{"Name":"Bushnell Park","Address":"30 Arbor Street","City":"Hartford","State":"CT","Zip":"06106","Url":"","Category":["recreation"],"Latitude":"41.759942","Longitude":"-72.7024489"},{"Name":"Mark Twain House","Address":"385 Farmington Avenue","City":"Hartford","State":"CT","Zip":"06105","Url":"","Category":["entertainment"],"Latitude":"41.7670353","Longitude":"-72.7014192"},{"Name":"XL Center","Address":"225 Trumbull Street","City":"hartford","State":"CT","Zip":"06103","Url":"","Category":["entertainment"],"Latitude":"41.7678589","Longitude":"-72.6759"},{"Name":"Connecticut State Capital","Address":"210 Capital Avenue","City":"Hartford","State":"CT","Zip":"06106","Url":"","Category":["entertainment"],"Latitude":"41.7641979","Longitude":"-72.682467"},{"Name":"Elizabeth Park","Address":"1561 Asylum Avenue","City":"West Hartford","State":"CT","Zip":"06117","Url":"","Category":["recreation"],"Latitude":"41.7762661","Longitude":"-72.71815350000001"},{"Name":"Great River Park","Address":"301 East River Drive","City":"East Hartford","State":"CT","Zip":"06108","Url":"","Category":["recreation"],"Latitude":"41.7591858","Longitude":"-72.65917209999999"},{"Name":"Riverside Park","Address":"20 Leibert Road","City":"Hartford","State":"CT","Zip":"06120","Url":"","Category":["recreation"],"Latitude":"41.78282129999999","Longitude":"-72.65990359999999"},{"Name":"University of Connecticut- Hartford","Address":"10 Prospect Street","City":"Hartford","State":"CT","Zip":"06103","Url":"","Category":["schools"],"Latitude":"41.7626719","Longitude":"-72.67227969999999"},{"Name":"Trinity College","Address":"300 Summit Street","City":"Hartford","State":"CT","Zip":"06106","Url":"","Category":["schools"],"Latitude":"41.7473639","Longitude":"-72.6907806"},{"Name":"University of Hartford","Address":"200 Bloomfield Avenue","City":"West Hartford","State":"CT","Zip":"06117","Url":"","Category":["schools"],"Latitude":"41.7984508","Longitude":"-72.7137664"},{"Name":"University of Saint Joseph","Address":"1678 Asylum Avenue","City":"West Hartford","State":"CT","Zip":"06117","Url":"","Category":["schools"],"Latitude":"41.780976","Longitude":"-72.72846550000001"},{"Name":"Travelers","Address":"1 Tower Square","City":"Hartford","State":"CT","Zip":"06183","Url":"","Category":["professional"],"Latitude":"41.7643726","Longitude":"-72.67080490000001"},{"Name":"The Hartford","Address":"1 Hartford Plaza","City":"Hartford","State":"CT","Zip":"06115","Url":"","Category":["professional"],"Latitude":"41.769703","Longitude":"-72.68698080000001"},{"Name":"Aetna","Address":"151 Farmington Avenue","City":"Hartford","State":"CT","Zip":"06156","Url":"","Category":["professional"],"Latitude":"41.7671423","Longitude":"-72.6912425"},{"Name":"Trumbull Kitchen","Address":"150 Trumbull Street","City":"Hartford","State":"CT","Zip":"06103","Url":"","Category":["food"],"Latitude":"41.7666888","Longitude":"-72.6754002"}
2188,{"Name":"31 Electric Car Chargers","Address":"777 Main Street","City":"Hartford","State":"CT","Zip":"06103","Url":"","Category":["travel"],"Latitude":"41.766219","Longitude":"-72.6738298"},{"Name":"8 Connectict Fast Track Routes (North to Springfield or South to New Haven)","Address":"777 Main Street","City":"Hartford","State":"CT","Zip":"06103","Url":"","Category":["travel"],"Latitude":"41.766219","Longitude":"-72.6738298"},{"Name":"Mortensen Riverfront Plaza","Address":"300 Columbus Boulevard","City":"Hartford","State":"CT","Zip":"06103","Url":"","Category":["recreation"],"Latitude":"41.7655222","Longitude":"-72.66955159999999"}]') : ''; 2189var oms; 2190//Google Maps Lazyloading 2191let lazyLoaded = false; 2192 2193$(document).on("ready", function () { 2194 let script = document.createElement('script') 2195 2196 // Load the map script once the widget container is actually visible. 2197 // Previously this was gated on scroll/resize/load DOM events re-checking 2198 // getBoundingClientRect(); if none of those events fired after the container 2199 // was already in view (e.g. an automated page check, or a user landing via 2200 // an in-page anchor), the map script never loaded ââ¬â silently, with no 2201 // console error. IntersectionObserver fires on real visibility directly, 2202 // including the "already visible when observed" case, so it doesn't depend 2203 // on a scroll/resize event happening to occur afterward. 2204 function smLoadMapScript() { 2205 if (lazyLoaded) { return; } 2206 lazyLoaded = true; 2207 $('.neighborhood-widget__loader').show(); 2208 // adds the script tag to the document 2209 if (document.getElementsByTagName('body')[0]) { 2210 document.getElementsByTagName('body')[0].appendChild(script) 2211 } else { 2212 document.getElementsByTagName('html')[0].appendChild(script) 2213 } 2214 2215 // baseline config for script tag 2216 script.src = 'https://maps.googleapis.com/maps/api/js?key=AIzaSyDS1oKsJ_hSSZqIslqkR4EdK1VndKUOPYM&libraries=places,geometry' 2217 script.async = true 2218 script.defer = true 2219 2220 //after the google map script has loaded we can call the widget script 2221 script.onload = function () { 2222 loadMap(); 2223 $('.neighborhood-widget__loader').hide('slow'); 2224 } 2225 } 2226 2227 var mapContainerEl = document.getElementById("mapFullWidth"); 2228 if (mapContainerEl && window.IntersectionObserver) { 2229 var mapObserver = new IntersectionObserver(function (entries) { 2230 entries.forEach(function (entry) { 2231 if (entry.isIntersecting) { 2232 smLoadMapScript(); 2233 mapObserver.disconnect(); 2234 } 2235 }); 2236 }); 2237 mapObserver.observe(mapContainerEl); 2238 } else if (mapContainerEl) { 2239 smLoadMapScript(); 2240 } 2241 }); 2242 //End Google Maps Lazyloading 2243 2244 2245 function loadMap() { 2246 2247 $(function () { 2248 initMap(); 2249 }); 2250 2251 function initMap() { 2252 origin = new google.maps.LatLng(latitude, longitude); 2253 2254 var stylesObj = []; 2255 2256 mapFullWidth = new google.maps.Map(document.getElementById('mapFullWidth'), { 2257 center: origin, 2258 zoom: defaultZoom, 2259 mapTypeControl: false, 2260 scrollwheel: false, 2261 minZoom: 10, 2262 keyboardShortcuts: false 2263 //gestureHandling: 'greedy' 2264 2265 }); 2266 2267 mapService = new google.maps.places.PlacesService(mapFullWidth);
2268 2269 oms = new OverlappingMarkerSpiderfier(mapFullWidth, { 2270 markersWontMove: true, 2271 markersWontHide: true, 2272 basicFormatEvents: false, 2273 keepSpiderfied: true, 2274 nearbyDistance: 22, 2275 spiralFootSeparation: 28, 2276 spiralLengthStart: 18, 2277 spiralLengthFactor: 5 2278 }); 2279 2280 mapFullWidth.setOptions({ styles: stylesObj }); 2281 2282 var markerIconNormal = { 2283 path: 'M54.549,17.947c-12.314,0-22.332,10.02-22.332,22.334c0,11.854,20.262,39.548,21.125,40.721l0.805,1.096,c0.094,0.129,0.244,0.204,0.402,0.204c0.16,0,0.309-0.075,0.404-0.204l0.805-1.096c0.863-1.173,21.125-28.867,21.125-40.721,C76.883,27.967,66.863,17.947,54.549,17.947z M54.549,32.281c4.412,0,8,3.588,8,8c0,4.41-3.588,8-8,8c-4.41,0-8-3.59-8-8,C46.549,35.869,50.139,32.281,54.549,32.281z', 2284 fillColor: '#6a780f', 2285 fillOpacity: 1, 2286 scale: .75, 2287 strokeWeight: 0, 2288 anchor: new google.maps.Point(55, 80) 2289 }; 2290 2291 var markerOptions = { 2292 position: origin, 2293 map: mapFullWidth, 2294 icon: markerIconNormal, 2295 geometry: { 2296 location: origin 2297 }, 2298 title: name, 2299 name: name, 2300 vicinity: addressLine1, 2301 addressState: addressState, 2302 addressPostalCode: addressPostalCode, 2303 phonesNumber: phonesNumber, 2304 website: website, 2305 city: city 2306 }; 2307 2308 propertyMarker = new google.maps.Marker(markerOptions); 2309 2310 google.maps.event.addListener(propertyMarker, 'spider_format', function (status) { 2311 if (status == OverlappingMarkerSpiderfier.markerStatus.SPIDERFIED) { 2312 propertyMarker.setIcon({ 2313 path: 'M54.549,17.947c-12.314,0-22.332,10.02-22.332,22.334c0,11.854,20.262,39.548,21.125,40.721l0.805,1.096,c0.094,0.129,0.244,0.204,0.402,0.204c0.16,0,0.309-0.075,0.404-0.204l0.805-1.096c0.863-1.173,21.125-28.867,21.125-40.721,C76.883,27.967,66.863,17.947,54.549,17.947z M54.549,32.281c4.412,0,8,3.588,8,8c0,4.41-3.588,8-8,8c-4.41,0-8-3.59-8-8,C46.549,35.869,50.139,32.281,54.549,32.281z', 2314 fillColor: '#6a780f', 2315 fillOpacity: 1, 2316 scale: .5, 2317 strokeWeight: 0, 2318 anchor: new google.maps.Point(55, 45) 2319 }); 2320 } 2321 else { 2322 propertyMarker.setIcon({ 2323 path: 'M54.549,17.947c-12.314,0-22.332,10.02-22.332,22.334c0,11.854,20.262,39.548,21.125,40.721l0.805,1.096,c0.094,0.129,0.244,0.204,0.402,0.204c0.16,0,0.309-0.075,0.404-0.204l0.805-1.096c0.863-1.173,21.125-28.867,21.125-40.721,C76.883,27.967,66.863,17.947,54.549,17.947z M54.549,32.281c4.412,0,8,3.588,8,8c0,4.41-3.588,8-8,8c-4.41,0-8-3.59-8-8,C46.549,35.869,50.139,32.281,54.549,32.281z', 2324 fillColor: '#6a780f', 2325 fillOpacity: 1, 2326 scale: .75, 2327 strokeWeight: 0, 2328 anchor: new google.maps.Point(55, 80) 2329 }); 2330 } 2331 }); 2332 oms.addMarker(propertyMarker); 2333 2334 var content = '<div class="neighborhood-widget__marker neighborhood-widget__marker-property">' + 2335 f_buildMarkerHeading(overridePropertyLink, name) + 2336 '<p>' + addressLine1.replace(/,/g, '<br />') + '<br />' + city + ', ' + addressState + ' ' + addressPostalCode + '</p>' + 2337 '<p><strong>' + phonesNumber + '</strong></p>' + 2338 '<p><a href=" ' + overrideGetDirections + ' " target ="_blank" rel="noopener noreferrer"><strong>Get Directions</strong><span class="sr-only"> (opens in a new tab)</span></a></p>'; 2339 2340 content += '</div>'; 2341 2342 google.maps.event.addListener(propertyMarker, 'spider_click', function () { 2343 if (infoWindow != undefined) { 2344 infoWindow.close(); 2345 } 2346 infoWindow = new google.maps.InfoWindow({ content: content }); 2347 infoWindow.open(mapFullWidth, propertyMarker); 2348 2349 $('.neighborhood-widget__marker').parent().parent().parent().prev().find('> div').eq(7).css('border-top', '3px solid #6a780f;'); 2350 }); 2351 2352 var center; 2353 2354 function calculateCenter() { 2355 center = mapFullWidth.getCenter(); 2356 } 2357 2358 google.maps.event.addDomListener(mapFullWidth, 'idle', function () { 2359 calculateCenter(); 2360 }); 2361 2362 google.maps.event.addListener(mapFullWidth, 'spider_click', function (event) { 2363 infoWindow.close(); 2364 clicked = false; 2365 if ($(window).width() < 543) { 2366 hideCategories(); 2367 } 2368 }); 2369 2370 google.maps.event.addDomListener(window, 'resize', function () { 2371 mapFullWidth.setCenter(center); 2372 }); 2373 2374 google.maps.event.addListener(mapFullWidth, 'zoom_changed', boundsUpdated); 2375 2376 $(customMapPinsObj).each(function (i, v) { 2377 if (v.Category == null) { 2378 var generalIcon = { 2379 url: '\CMSScripts\Custom\RPWebParts\spiderfier\general.png', //placeResult.icon, 2380 scaledSize: new google.maps.Size(26, 26),
2381 anchor: new google.maps.Point(13, 13), 2382 }; 2383 var customMarkerOptions = { 2384 position: new google.maps.LatLng(v.Latitude, v.Longitude), 2385 map: mapFullWidth, 2386 icon: generalIcon, 2387 geometry: { 2388 location: new google.maps.LatLng(v.Latitude, v.Longitude) 2389 }, 2390 title: v.Name, 2391 name: v.Name, 2392 vicinity: v.Address, 2393 addressState: v.State, 2394 addressPostalCode: v.Zip, 2395 website: v.Url, 2396 city: v.City 2397 }; 2398 var customMarker = new google.maps.Marker(customMarkerOptions); 2399 markersArray.push(customMarker); 2400 2401 var customPin = '<div class="neighborhood-widget__marker neighborhood-widget__marker-custom">' + 2402 f_buildMarkerHeading(v.Url, v.Name) + 2403 '<p>' + v.Address + '<br />' + v.City + ', ' + v.State + ' ' + v.Zip + '</p>' + 2404 '<p><a href="https://www.google.com/maps/dir/?api=1&destination=' + v.Address.replace(/ /g, '+') + ',' + v.City.replace(/ /g, '+') + ',' + 2405 v.State + '" target="_blank" rel="noopener noreferrer"><strong>Get Directions</strong><span class="sr-only"> (opens in a new tab)</span></a></p></div>'; 2406 2407 google.maps.event.addListener(customMarker, 'spider_click', function () { 2408 if (infoWindow != undefined) { 2409 infoWindow.close(); 2410 } 2411 infoWindow = new google.maps.InfoWindow({ content: customPin }); 2412 infoWindow.open(mapFullWidth, customMarker); 2413 2414 $('.neighborhood-widget__marker').parent().parent().parent().prev().find('> div').eq(7).css('border-top', '3px solid #6a780f;'); 2415 }); 2416 } 2417 }); 2418 } 2419 2420 function circleDrawHandler(radius) { 2421 while (overlays[0]) { 2422 overlays.pop().setMap(null); 2423 } 2424 var circle = new google.maps.Circle({ 2425 center: origin, 2426 clickable: true, 2427 draggable: false, 2428 editable: false, 2429 fillColor: '#004de8', 2430 fillOpacity: 0.27, 2431 map: mapFullWidth, 2432 radius: radius, 2433 strokeColor: '#004de8', 2434 strokeOpacity: 0.62, 2435 strokeWeight: 1 2436 }); 2437 overlays.push(circle); 2438 google.maps.event.addListener(circle, 'rightclick', polygonDestructionHandler); 2439 }; 2440 2441 polygonDestructionHandler = function () { 2442 return this.setMap(null); 2443 }; 2444 2445 function boundsUpdated(event) { 2446 var z = mapFullWidth.getZoom(); 2447 var bounds = mapFullWidth.getBounds(); 2448 var center = mapFullWidth.getCenter(); 2449 var ne = bounds.getNorthEast();
2450 var sw = bounds.getSouthWest(); 2451 var nw = new google.maps.LatLng(ne.lat(), sw.lng()); 2452 var se = new google.maps.LatLng(sw.lat(), ne.lng()); 2453 2454 if (bounds && center) { 2455 var b = google.maps.geometry.spherical.computeDistanceBetween(nw, ne) / 2; 2456 var h = google.maps.geometry.spherical.computeDistanceBetween(center, ne); 2457 var radius = ((h - b) / 400); 2458 } 2459 } 2460 2461 function createMarker(placeResult, icon) { 2462 var iconList = ["entertainment", "schools", "food", "nightlife", "recreation", "professional", "residences", "shopping", "travel"]; 2463 2464 if (iconList.indexOf(icon) < 0) { 2465 icon = 'general'; 2466 } 2467 var markerIconUrl = '/templateresources/global/icons/map-icons/' + icon + '.png'; 2468 var markerIcon = { 2469 url: markerIconUrl, 2470 scaledSize: new google.maps.Size(26, 26), 2471 anchor: new google.maps.Point(13, 13), 2472 }; 2473 2474 var markerOptions = { 2475 map: mapFullWidth, 2476 position: placeResult.geometry.location, 2477 title: placeResult.name, 2478 icon: markerIcon, 2479 zIndex: 1 2480 }; 2481 2482 var marker = new google.maps.Marker(markerOptions); 2483 google.maps.event.addListener(marker, 'spider_format', function (status) { 2484 if (status == OverlappingMarkerSpiderfier.markerStatus.SPIDERFIABLE) { 2485 marker.setIcon({ 2486 url: '/CMSScripts/Custom/RPWebParts/spiderfier/general-plus.png', 2487 scaledSize: new google.maps.Size(26, 26), 2488 anchor: new google.maps.Point(13, 13) 2489 }); 2490 } 2491 else { 2492 marker.setIcon({ 2493 url: markerIconUrl, 2494 scaledSize: new google.maps.Size(26, 26), 2495 anchor: new google.maps.Point(13, 13), 2496 }); 2497 } 2498 }); 2499 oms.addMarker(marker); 2500 markersArray.push(marker); 2501 2502 google.maps.event.addListener(marker, 'spider_click', function () { 2503 clicked = true; 2504 2505 getPlaceDetails(placeResult, marker); 2506 this.setOptions({ zIndex: 10 }); 2507 }); 2508 2509 google.maps.event.addListener(marker, 'closeclick', function () { 2510 clicked = false; 2511 }); 2512 } 2513 2514 function isValid(input1, input2) { 2515 if (input1 != undefined || input2 != undefined) { 2516 return true; 2517 } 2518 else { 2519 return false; 2520 } 2521 } 2522 2523 function getPlaceDetails(placeResult, marker){ 2524 if (infoWindow != undefined) { 2525 infoWindow.close(); 2526 } 2527 2528 var request = { 2529 reference: placeResult.reference 2530 }; 2531 2532 mapService.getDetails(request, function(details, status) { 2533 var priceRating = ''; 2534 if (details.price_level != undefined) { 2535 for (i = 1; i <= details.price_level; i++) { 2536 priceRating += '$'; 2537 } 2538 } 2539 2540 var photoUrl = ''; 2541 if (details.photos != undefined) { 2542 if (details.photos.length > 0) { 2543 photoUrl = details.photos[0].getUrl({ 'maxWidth': 300, 'maxHeight': 300 }); 2544 } 2545 } 2546 2547 var addr = details.address_components; 2548 var content = '<div class="neighborhood-widget__marker ' + ((photoUrl != '') ? 'has-photo' : '') + '">'; 2549 content += (photoUrl != '') ? '<div class="photo" style="background-image: url(' + photoUrl + ')"></div>' : ''; 2550 content += f_buildMarkerHeading(details.url, details.name); 2551 content += (details.rating != undefined) ? '<span class="rating">' + details.rating + '</span>' : ''; 2552 content += '<p>'; 2553 content += (getAddressComponent(addr, 'street_number') != undefined) ? getAddressComponent(addr, 'street_number') + ' ' : ''; 2554 content += (getAddressComponent(addr, 'route', 'short') != undefined) ? getAddressComponent(addr, 'route', 'short') : ''; 2555 content += (isValid(getAddressComponent(addr, 'street_number'), getAddressComponent(addr, 'route', 'short'))) ? '<br />' : ''; 2556 content += (getAddressComponent(addr, 'locality') != undefined) ? getAddressComponent(addr, 'locality') + ', ' : ''; 2557 content += (getAddressComponent(addr, 'administrative_area_level_1', 'short') != undefined) ? getAddressComponent(addr, 'administrative_area_level_1', 'short') + ' ' : ''; 2558 content += (getAddressComponent(addr, 'postal_code', 'short') != undefined) ? getAddressComponent(addr, 'postal_code', 'short') : ''; 2559 content += '</p>'; 2560 content += (details.formatted_phone_number != undefined) ? '<p><strong>' + details.formatted_phone_number + '</strong></p>' : ''; 2561 content += '<p><a href="https://www.google.com/maps/dir/?api=1&destination=' + details.formatted_address + '" target="_blank" rel="noopener noreferrer"><strong>Get Directions</strong><span class="sr-only"> (opens in a new tab)</span></a>' + ((priceRating != '') ? ' • <span class="price">' + priceRating + '</span>' : '') + '</p>'; 2562 content += '</div>'; 2563 2564 infoWindow = new google.maps.InfoWindow({ content: content }); 2565 2566 infoWindow.open(mapFullWidth, marker); 2567 }); 2568 } 2569 2570 function getAddressComponent(components, type, length){ 2571 var str; 2572 $(components).each(function(){
2573 if (this.types[0] == type){ 2574 str = (length == 'short') ? this.short_name : this.long_name; 2575 return; 2576 } 2577 }); 2578 return str; 2579 } 2580 2581 function findByKeyword(keyword, icon) { 2582 currentKeyword = keyword; 2583 currentIcon = icon; 2584 2585 var excludedKeywords = $.parseJSON('[]'); 2586 var excludedBusinesses = $.parseJSON('["Blue State Coffee","Parc 55"]'); 2587 var filteredWords = "sex,strip club,adult entertainment,strip bar,XXX,porn,escort,adult video,gentlemen's club,adult bookstore,adult club"; 2588 if (excludedKeywords.length > 0) { 2589 filteredWords += ',' + excludedKeywords.join(','); 2590 } 2591 if (excludedBusinesses.length > 0) { 2592 filteredWords += ',' + excludedBusinesses.join(','); 2593 } 2594 var fwordsArray = filteredWords.split(","); 2595 var request = { 2596 keyword: keyword, 2597 location: origin, 2598 radius: currentRadius 2599 }; 2600 2601 $('.neighborhood-widget__loader').show(); 2602 2603 mapService.nearbySearch(request, function (results, status) { 2604 deleteOverlays(); 2605 var customPinExists = false; 2606 $(customMapPinsObj).each(function (i, v) { 2607 $(v.Category).each(function (j, w) { 2608 if (w == icon || (!icon && keyword && w == keyword.trim())) { 2609 customPinExists = true; 2610 2611 var markerIconUrl = '/templateresources/global/icons/map-icons/' + (icon ? icon : 'general') + '.png'; 2612 var markerIcon = { 2613 url: markerIconUrl, 2614 scaledSize: new google.maps.Size(26, 26), 2615 anchor: new google.maps.Point(13, 13) 2616 }; 2617 2618 var customMarkerOptions = { 2619 position: new google.maps.LatLng(v.Latitude, v.Longitude), 2620 map: mapFullWidth, 2621 icon: markerIcon, 2622 geometry: { 2623 location: new google.maps.LatLng(v.Latitude, v.Longitude) 2624 }, 2625 title: v.Name, 2626 name: v.Name, 2627 vicinity: v.Address, 2628 addressState: v.State, 2629 addressPostalCode: v.Zip, 2630 website: v.Url, 2631 city: v.City 2632 }; 2633 var customMarker = new google.maps.Marker(customMarkerOptions); 2634 google.maps.event.addListener(customMarker, 'spider_format', function (status) { 2635 if (status == OverlappingMarkerSpiderfier.markerStatus.SPIDERFIABLE) { 2636 customMarker.setIcon({ 2637 url: '/CMSScripts/Custom/RPWebParts/spiderfier/general-plus.png', 2638 scaledSize: new google.maps.Size(26, 26), 2639 anchor: new google.maps.Point(13, 13) 2640 }); 2641 } 2642 else { 2643 customMarker.setIcon({ 2644 url: markerIconUrl, 2645 scaledSize: new google.maps.Size(26, 26), 2646 anchor: new google.maps.Point(13,
264613), 2647 }); 2648 } 2649 }); 2650 2651 oms.addMarker(customMarker); 2652 markersArray.push(customMarker); 2653 2654 var customPin = '<div class="neighborhood-widget__marker neighborhood-widget__marker-custom">' + 2655 f_buildMarkerHeading(v.Url, v.Name) + 2656 '<p>' + v.Address + '<br />' + v.City + ', ' + v.State + ' ' + v.Zip + '</p>' + 2657 '<p><a href="https://www.google.com/maps/dir/?api=1&destination=' + v.Address.replace(/ /g, '+') + ',' + v.City.replace(/ /g, '+') + ',' + 2658 v.State + '" target="_blank" rel="noopener noreferrer"><strong>Get Directions</strong><span class="sr-only"> (opens in a new tab)</span></a></p></div>'; 2659 2660 google.maps.event.addListener(customMarker, 'spider_click', function () { 2661 if (infoWindow != undefined) { 2662 infoWindow.close(); 2663 } 2664 infoWindow = new google.maps.InfoWindow({ content: customPin }); 2665 infoWindow.open(mapFullWidth, customMarker); 2666 2667 $('.neighborhood-widget__marker').parent().parent().parent().prev().find('> div').eq(7).css('border-top', '3px solid #6a780f;'); 2668 }); 2669 } 2670 }); 2671 }); 2672 2673 if (status == google.maps.places.PlacesServiceStatus.OK) { 2674 $(results).each(function () { 2675 var temp = 0; 2676 for (var i = 0; i < fwordsArray.length; i++) { 2677 var re = new RegExp('(^|\\s+)' + fwordsArray[i] + '(\\s+|$)', 'gi'); 2678 if (this.name.match(re) != null) { 2679 temp += this.name.match(re); 2680 } 2681 } 2682 if (temp == 0 && ('false' == 'false')) { 2683 createMarker(this, currentIcon); 2684 } 2685 }); 2686 2687 if (markersArray.length > 0) { 2688 var bounds = new google.maps.LatLngBounds(); 2689 2690 for (var i = 0; i < markersArray.length; i++) { 2691 bounds.extend(markersArray[i].getPosition()); 2692 } 2693 2694 bounds.extend(origin); 2695 2696 mapFullWidth.fitBounds(bounds); 2697 } 2698 } 2699 2700 if ((status == "ZERO_RESULTS" && !customPinExists) || (markersArray.length == 0)) { 2701 $('.search-no-results').addClass('show-message'); 2702 } 2703 else { $('.search-no-results').removeClass('show-message'); } 2704 $('.neighborhood-widget__loader').hide('slow'); 2705 }); 2706 } 2707 2708 function deleteOverlays() { 2709 if (markersArray) { 2710 while (markersArray[0]) { 2711 markersArray.pop().setMap(null); 2712 } 2713 } 2714 } 2715 2716 var categoriesHidden = false; 2717 2718 $(function () { 2719 var mainKeywords = 'residences'; 2720 $.each(mainKeywords.split('|'), function (idx, val) { 2721 if (val != '') { 2722 $('.neighborhood-widget__categories ul li[data-icon=' + val + ']').hide(); 2723 } 2724 }); 2725 2726 var customKeywords = $.parseJSON('[]'); 2727 $.each(customKeywords, function (idx, val) { 2728 keywordItem = '<li role="button" aria-label="' + val + '" data-icon=""><span class="fa fa-circle-o"></span><div class="neighborhood-button-text"> ' + val + '</div></li>'; 2729 $('.neighborhood-widget__categories ul').append(keywordItem); 2730 }); 2731 2732 $('.neighborhood-widget__categories li').click(function () { 2733 $(this).addClass('active'); 2734 $(this).siblings().removeClass('active'); 2735 2736 findByKeyword($(this).text(), $(this).data('icon')); 2737 $('.neighborhood-widget__search input').val($(this).text()); 2738 2739 if ($(window).width() < 768) { 2740 hideCategories(); 2741 } 2742 }); 2743 2744 $('.neighborhood-widget__handle').click(function () { 2745 if (!categoriesHidden) { 2746 hideCategories(); 2747 } else { 2748 showCategories(); 2749 } 2750 }); 2751 2752 $('.neighborhood-widget__search input').click(function (e) { 2753 $('.search-no-results').removeClass('show-message'); 2754 showCategories(); 2755 if ($(window).width() < 768 && $('.neighborhood-widget__nav').hasClass('expanded')) { 2756 blur(); 2757 } 2758 }); 2759 2760 $('.neighborhood-widget__search input').keypress(function (e) { 2761 if (e.which == 13) { 2762 findByKeyword($(this).val(), 'general'); 2763 hideCategories(); 2764 $('.neighborhood-widget__categories li').removeClass('active'); 2765 $('.neighborhood-widget__search input').blur(); 2766 return false; 2767 } 2768 }); 2769 2770 $('.neighborhood-widget__search .fa-search').click(function () { 2771 findByKeyword($('.neighborhood-widget__search input').val(), 'general'); 2772 hideCategories(); 2773 $('.neighborhood-widget__categories li').removeClass('active'); 2774 }); 2775 2776 var navPosition = $('.neighborhood-widget__nav').position(); 2777 var walkScoreHeight = ($('.walk-score-container').length >
2777 0) ? $('.neighborhood-widget__walkscore').height() + 30 : 0; 2778 $('.neighborhood-widget__categories').css('max-height', $('.neighborhood-widget__categories').parent().parent().height() - (90 + navPosition.top) - walkScoreHeight); 2779 2780 function hideCategories() { 2781 $('.neighborhood-widget__categories').css({ 'margin-top': -$('.neighborhood-widget__categories').innerHeight(), 'opacity': 0 }) 2782 $('.neighborhood-widget__nav').removeClass('expanded'); 2783 categoriesHidden = true; 2784 } 2785 2786 function showCategories() { 2787 $('.neighborhood-widget__categories').css({ 'margin-top': 0, 'opacity': 1 }); 2788 $('.neighborhood-widget__nav').addClass('expanded'); 2789 categoriesHidden = false; 2790 } 2791 2792 $(window).resize(function () { 2793 var navPosition = $('.neighborhood-widget__nav').position(); 2794 var walkScoreHeight = ($('.walk-score-container').length > 0) ? $('.neighborhood-widget__walkscore').height() + 30 : 0; 2795 $('.neighborhood-widget__categories').css('max-height', $('.neighborhood-widget__categories').parent().parent().height() - (90 + navPosition.top) - walkScoreHeight); 2796 }); 2797 }); 2798 } 2799 </script>
2799 2800 2801 <div id="mapFullWidth"></div> 2802 2803 <div class="neighborhood-widget__loader"> 2804 <div class="loader"> 2805 <svg class="circular" viewbox="25 25 50 50"> 2806 <circle class="path" cx="50" cy="50" r="20" fill="none" stroke-width="2" stroke-miterlimit="10"></circle> 2807 </svg> 2808 </div> 2809 </div> 2810 2811 <div class="neighborhood-widget__nav expanded"> 2812 <div class="neighborhood-widget__search"> 2813 <div class="form-group"> 2814 <input type="text" class="form-control" placeholder="Search..." aria-label="search" tabindex="0" /> <span class="fa fa-search" aria-hidden="true"></span> 2815 </div> 2816 </div> 2817 2818 <div class="neighborhood-widget__categories"> 2819 <ul> 2820 <li data-icon="entertainment" role="button" aria-label="arts and entertainment"><span class="fa fa-paint-brush"></span><div class="neighborhood-button-text"> Arts & Entertainment</div></li> 2821 <li data-icon="schools" role="button" aria-label="colleges and universities"><span class="fa fa-graduation-cap"></span><div class="neighborhood-button-text"> Colleges & Universities</div></li> 2822 <li data-icon="food" role="button" aria-label="food"><span class="fa fa-cutlery"></span><div class="neighborhood-button-text"> Food</div></li> 2823 <li data-icon="nightlife" role="button" aria-label="nightlife spots"><span class="fa fa-beer"></span><div class="neighborhood-button-text"> Nightlife Spots</div></li> 2824 <li data-icon="recreation" role="button" aria-label="outdoors and recreation"><span class="fa fa-soccer-ball-o"></span><div class="neighborhood-button-text"> Outdoors & Recreation</div></li> 2825 <li data-icon="professional" role="button" aria-label="professional"><span class="fa fa-suitcase"></span><div class="neighborhood-button-text"> Professional</div></li> 2826 <li data-icon="residences" role="button" aria-label="residences"><span class="fa fa-building"></span><div class="neighborhood-button-text"> Residences</div></li> 2827 <li data-icon="shopping" role="button" aria-label="shops and services"><span class="fa fa-shopping-bag"></span><div class="neighborhood-button-text"> Shops & Services</div></li> 2828 <li data-icon="travel" role="button" aria-label="travel and transport"><span class="fa fa-bus"></span><div class="neighborhood-button-text"> Travel & Transport</div></li> 2829 </ul> 2830 </div> 2831 2832 <div class="neighborhood-widget__handle"> 2833 <span class="icon-bar"></span> 2834 <span class="icon-bar"></span> 2835 </div> 2836 </div> 2837 2838 <div class="neighborhood-widget__walkscore"></div> 2839 <div class="search-no-results">No Results Found</div> 2840 2841 </div> 2842 2843</div> 2844<div class="address-info-bar row flexGrid"> 2845 <div class="col-xs-12 col-sm-8 neighborhoodAddress"> 2846 777 Main St, Hartford, CT 06103 2847 </div> 2848 <a href="http://maps.google.com/?q=777 Main St, Hartford, CT 06103" target="_blank" role="button" class="col-xs-12 col-sm-4 directionsLink">Get Directions</a> 2849</div><section id="social"> 2850 <div class="row main-block flexGrid align-middle"><div class="col-xs-12 col-md-6"> 2851 <div class="content text-center md-text-left"> 2852 <h2 class="header-primary">What's Happening At</h2> 2853 <h1 class="header-secondary">777 Main</h1> 2854 <a href="/gallery.aspx" target="_blank" class="btn btn--primary btnArrow-right" title="Instagram">Take A Look</a> 2855 </div> 2856</div><div id="" class="col-xs-12 col-md-6"><div id="p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneLocation_WebPartZone6_WebPartZone6_zone_WebPartLoader4_pnlContainer"> 2857 2858 2859 2860 2861<div id="p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneLocation_WebPartZone6_WebPartZone6_zone_WebPartLoader4_ctl00_pnlGallerySocialGallery" class="widget gallery-social-widget"> 2862 2863
2863<script type="text/javascript"> 2864 $(function () { 2865 $('.fancybox-button').fancybox({ 2866 fullScreen: { 2867 autoStart: false 2868 }, 2869 thumbs: { 2870 autoStart: false, 2871 hideOnClose: true 2872 }, 2873 smallBtn: "auto", 2874 afterLoad: function (instance, current) { 2875 var pixelRatio = window.devicePixelRatio || 1; 2876 2877 if (pixelRatio > 1.5) { 2878 current.width = current.width / pixelRatio; 2879 current.height = current.height / pixelRatio; 2880 } 2881 } 2882 }); 2883 }); 2884 </script>
2884 2885 2886 <ul class="gallery-social-images" id="gallery-widget-images"><li><a class="fancybox" data-fancybox="gallery" href="//capi.myleasestar.com/v2/dimg/60237303/1920x1080/60237303.jpg" style="background-image:url(//capi.myleasestar.com/v2/dimg-crop/60237303/390x390/60237303.jpg)" aria-label="Gallery image 1"><img alt="" role="presentation" src="/templateresources/global/images/spacer.png" /></a></li><li><a class="fancybox" data-fancybox="gallery" href="//capi.myleasestar.com/v2/dimg/60237319/1920x1080/60237319.jpg" style="background-image:url(//capi.myleasestar.com/v2/dimg-crop/60237319/390x390/60237319.jpg)" aria-label="Gallery image 2"><img alt="" role="presentation" src="/templateresources/global/images/spacer.png" /><div class="gallery-social-card"><div class="gallery-social-card-content"><p><em class="fa fa-picture-o"></em></p><p class="gallery-social-hashtag">777 Main</p></div></div></a></li><li><a class="fancybox" data-fancybox="gallery" href="//capi.myleasestar.com/v2/dimg/64244514/1920x1080/64244514.jpg" style="background-image:url(//capi.myleasestar.com/v2/dimg-crop/64244514/390x390/64244514.jpg)" aria-label="Gallery image 3"><img alt="" role="presentation" src="/templateresources/global/images/spacer.png" /></a></li><li><a class="fancybox" data-fancybox="gallery" href="//capi.myleasestar.com/v2/dimg/64326731/1920x1080/64326731.jpg" style="background-image:url(//capi.myleasestar.com/v2/dimg-crop/64326731/390x390/64326731.jpg)" aria-label="Gallery image 4"><img alt="" role="presentation" src="/templateresources/global/images/spacer.png" /></a></li><li><a class="fancybox" data-fancybox="gallery" href="//capi.myleasestar.com/v2/dimg/64244520/1920x1080/64244520.jpg" style="background-image:url(//capi.myleasestar.com/v2/dimg-crop/64244520/390x390/64244520.jpg)" aria-label="Gallery image 5"><img alt="" role="presentation" src="/templateresources/global/images/spacer.png" /></a></li><li><a class="fancybox" data-fancybox="gallery" href="//capi.myleasestar.com/v2/dimg/64326732/1920x1080/64326732.jpg" style="background-image:url(//capi.myleasestar.com/v2/dimg-crop/64326732/390x390/64326732.jpg)" aria-label="Gallery image 6"><img alt="" role="presentation" src="/templateresources/global/images/spacer.png" /></a></li><li><a class="fancybox" data-fancybox="gallery" href="//capi.myleasestar.com/v2/dimg/61656739/1920x1080/61656739.jpg" style="background-image:url(//capi.myleasestar.com/v2/dimg-crop/61656739/390x390/61656739.jpg)" aria-label="Gallery image 7"><img alt="" role="presentation" src="/templateresources/global/images/spacer.png" /></a></li><li><a class="fancybox" data-fancybox="gallery" href="//capi.myleasestar.com/v2/dimg/61656728/1920x1080/61656728.jpg" style="background-image:url(//capi.myleasestar.com/v2/dimg-crop/61656728/390x390/61656728.jpg)" aria-label="Gallery image 8"><img alt="" role="presentation" src="/templateresources/global/images/spacer.png" /></a></li><li><a class="fancybox" data-fancybox="gallery" href="//capi.myleasestar.com/v2/dimg/61656727/1920x1080/61656727.jpg" style="background-image:url(//capi.myleasestar.com/v2/dimg-crop/61656727/390x390/61656727.jpg)" aria-label="Gallery image 9"><img alt="" role="presentation" src="/templateresources/global/images/spacer.png" /></a></li><li><a class="fancybox" data-fancybox="gallery" href="//capi.myleasestar.com/v2/dimg/61656729/1920x1080/61656729.jpg" style="background-image:url(//capi.myleasestar.com/v2/dimg-crop/61656729/390x390/61656729.jpg)" aria-label="Gallery image 10"><img alt="" role="presentation" src="/templateresources/global/images/spacer.png" /></a></li><li><a class="fancybox" data-fancybox="gallery" href="//capi.myleasestar.com/v2/dimg/61656732/1920x1080/61656732.jpg" style="background-image:url(//capi.myleasestar.com/v2/dimg-crop/61656732/390x390/61656732.jpg)" aria-label="Gallery image 11"><img alt="" role="presentation" src="/templateresources/global/images/spacer.png" /></a></li><li><a class="fancybox" data-fancybox="gallery" href="//capi.myleasestar.com/v2/dimg/61656730/1920x1080/61656730.jpg" style="background-image:url(//capi.myleasestar.com/v2/dimg-crop/61656730/390x390/61656730.jpg)" aria-label="Gallery image 12"><img alt="" role="presentation" src="/templateresources/global/images/spacer.png" /></a></li></ul><div class="gallery-social-footer"><div class="col-md-8"><a href="/gallery.aspx">Take A Look</a></div><div class="col-md-4 gallery-social-footer-name"><a href="/Gallery.aspx"><em class="fa fa-picture-o" aria-hidden="true"></em> Gallery</a></div></div> 2887 2888 </div> 2889</div> 2890</div> </div> 2891</section> 2892</section> 2893<section id="contact" class="block-area bgImg sectionDark"> 2894 <div class="sectionHeaderContent sectionHeaderContent--alt sectionHeaderContact"> 2895 <div class="sectionHeaderIcon"> 2896 <div class="diamond"> 2897 <div class="textShadow icon icon--bed"> 2898 <i class="icon-phone-2"></i> 2899 </div> 2900 </div> 2901 </div> 2902 <h1 class="header-tertiary textShadow">Contact</h1> 2903</div><div class="content-tertiary negative row row--mw text-block contactIntro"> 2904 <div class="col-sm-8 col-sm-offset-2 col-xs-10 col-xs-offset-1 col-md-11 col-md-offset-half"> 2905 <p>
2905Provide your contact information and we'll reach out to you soon!</p><p>By 2906providing my phone number below and<span style="background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;"> submitting 2907this form and signing up for texts, you consent to receive messages </span>(including review requests and/or surveys)<span style="background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;"> about your 2908experience from </span><span style="background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; font-weight: bold;">777 2909Main </span><span style="background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;">at the number provided. Message 2910& data rates may apply. Message frequency varies. Unsubscribe at any time 2911by replying STOP. Reply HELP for help. Privacy policy 2912linked </span><a href="https://www.winncompanies.com/winncompanies-privacy-policy" style="background-color: rgb(255, 255, 255);"><span style="font-weight: bold; background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;">here</span></a><span style="background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;">. Terms & Conditions linked </span><a href="https://www.winncompanies.com/winn-tou" style="background-color: rgb(255, 255, 255);"><span style="font-weight: bold; background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;">here</span></a><span style="background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; text-decoration-line: underline;">.</span></p> 2913 </div> 2914</div><div id="" class="row main-block flexGrid rowCollapse"><div id="" class="col-xs-12 col-md-9 md-order-2 form-wrap bg-white"><div class="form-wrap-inner"> 2915 <div class="contactContentsm"> 2916 <h3 class="header-tertiary textShadow text-center">Contact</h3> 2917 <div class="negative row row--mw text-block rowCollapse"> 2918 <div class="col-sm-8 col-sm-offset-2 col-xs-10 col-xs-offset-1 col-md-11 col-md-offset-half"> 2919 <p>Provide your contact information and we'll reach out to you soon!</p><p>By 2920providing my phone number below and<span style="background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;"> submitting 2921this form and signing up for texts, you consent to receive messages </span>(including review requests and/or surveys)<span style="background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;"> about your 2922experience from </span><span style="background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; font-weight: bold;">777 2923Main </span><span style="background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;">at the number provided. Message 2924& data rates may apply. Message frequency varies. Unsubscribe at any time 2925by replying STOP. Reply HELP for help. Privacy policy 2926linked </span><a href="https://www.winncompanies.com/winncompanies-privacy-policy" style="background-color: rgb(255, 255, 255);"><span style="font-weight: bold; background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;">here</span></a><span style="background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;">. Terms & Conditions linked </span><a href="https://www.winncompanies.com/winn-tou" style="background-color: rgb(255, 255, 255);"><span style="font-weight: bold; background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;">here</span></a><span style="background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; text-decoration-line: underline;">.</span></p> 2927 </div> 2928 </div> 2929 </div>
2930<script type="text/javascript"> 2931 var rpData = null; 2932 var defaultSource = 'w'; 2933 var internationalProperty = 'false'; 2934 var countryCode = 'USA'; 2935 var disableReferralTracking = 'False'; 2936 var successScreen = '/thank-you.aspx'; 2937 var pageName = 'General'; 2938 var cmsSiteId = '48111'; 2939 var widgetName = 'rpWebpart_GoogleRecaptcha'; 2940 var enableGoogleRecaptcha = 'true'; 2941 var timeoutValue = 120000; 2942 var ipAddress = '178.216.32.163'; 2943 var googleAnalyticsId = ''; 2944 2945 var formSuccess = false; 2946 var captchaToken; 2947 var o = {}; 2948 2949 // WCAG 3.3.3 â suggested-correction messages keyed by input id 2950 var errorMessages = { 2951 firstName: "First name is required", 2952 lastName: "Last name is required", 2953 address: "Address is required", 2954 city: "City is required", 2955 state: "State is required", 2956 zip: "ZIP code is required", 2957 phone: "Valid phone number is required", 2958 email: "Valid email address is required", 2959 occupants: "Number of occupants is required", 2960 movedate: "Move-in date is required", 2961 unitType: "Please select a unit type", 2962 usersource: "Please select a source", 2963 pets: "Please select an option", 2964 bestday: "Please select a day", 2965 privacy: "Privacy policy agreement is required" 2966 }; 2967 2968 function f_ensureErrorSpans() { 2969 $('.contact-us-enhanced .required-group').each(function () { 2970 var $group = $(this); 2971 $group.find('input, select, textarea').each(function () { 2972 var id = $(this).attr('id'); 2973 if (!id || $group.find('#' + id + '-error').length) return; 2974 var errorId = id + '-error'; 2975 // WCAG 3.3.2 â append to any pre-existing aria-describedby (e.g. movedate's 2976 // format-hint span) instead of overwriting it; aria-describedby is a token list. 2977 var existingDescribedBy = $(this).attr('aria-describedby'); 2978 $(this).attr('aria-describedby', existingDescribedBy ? existingDescribedBy + ' ' + errorId : errorId); 2979 $group.append('<span id="' + id + '-error" class="field-error" role="alert"></span>'); 2980 }); 2981 }); 2982 } 2983 2984 function f_setEnhFieldValidity($input, isValid) { 2985 var id = $input.attr('id'); 2986 var $span = id ? $('#' + id + '-error') : $(); 2987 if (isValid) { 2988 $input.removeAttr("aria-invalid"); 2989 $input.removeClass('validate-field'); 2990 $span.text(''); 2991 } else { 2992 $input.attr("aria-invalid", "true"); 2993 $input.addClass('validate-field'); 2994 $span.text(errorMessages[id] || $input.attr('aria-label') || 'This field is required'); 2995 } 2996 } 2997 2998 var kpv = { 2999 "Studio+" : { "key" : 192, "bed" : 0, "bath" : 0 }, 3000 "S Bed /1 Bath" : { "key" : 192, "bed" : 5, "bath" : 1 }, 3001 "S Bed /1.5 Bath" : { "key" : 192, "bed" : 5, "bath" : 1.5 }, 3002 "1 Bed /1 Bath" : { "key" : 193, "bed" : 1, "bath" : 1 }, 3003 "1 Bed /1.5 Bath" : { "key" : 193, "bed" : 1, "bath" : 1.5 }, 3004 "1 Bed /2 Bath" : { "key" : 194, "bed" : 1, "bath" : 2 }, 3005 "1 Bed /2.5 Bath" : { "key" : 194, "bed" : 1, "bath" : 2.5 }, 3006 "2 Bed /1 Bath" : { "key" : 195, "bed" : 2, "bath" : 1 }, 3007 "2 Bed /1.5 Bath" : { "key" : 195, "bed" : 2, "bath" : 1.5 }, 3008 "2 Bed /2 Bath" : { "key" : 196, "bed" : 2, "bath" : 2 }, 3009 "2 Bed /2.5 Bath" : { "key" : 196, "bed" : 2, "bath" : 2.5 }, 3010 "3 Bed /1 Bath" : { "key" : 197, "bed" : 3, "bath" : 1 }, 3011 "3 Bed /1.5 Bath" : { "key" : 197, "bed" : 3, "bath" : 1.5 }, 3012 "3 Bed /2 Bath" : { "key" : 198, "bed" : 3, "bath" : 2 }, 3013 "3 Bed /2.5 Bath" : { "key" : 198, "bed" : 3, "bath" : 2.5 }, 3014 "3 Bed /3 Bath": { "key": 199, "bed": 3, "bath": 3 }, 3015 "3 Bed /3.5 Bath" : { "key" : 199, "bed" : 3, "bath" : 3.5 }, 3016 "4 Bed /1 Bath" : { "key" : 200, "bed" : 4, "bath" : 1 },
3017 "4 Bed /1.5 Bath" : { "key" : 200, "bed" : 4, "bath" : 1.5 }, 3018 "4 Bed /2 Bath" : { "key" : 201, "bed" : 4, "bath" : 2 }, 3019 "4 Bed /2.5 Bath" : { "key" : 201, "bed" : 4, "bath" : 2.5 }, 3020 "4 Bed /3 Bath" : { "key" : 202, "bed" : 4, "bath" : 3 }, 3021 "4 Bed /3.5 Bath" : { "key" : 202, "bed" : 4, "bath" : 3.5 }, 3022 "5 Bed /1 Bath": { "key": 202, "bed": 5, "bath": 1 }, 3023 "5 Bed /1.5 Bath": { "key": 202, "bed": 5, "bath": 1.5 }, 3024 "5 Bed /2 Bath": { "key": 202, "bed": 5, "bath": 2 }, 3025 "5 Bed /2.5 Bath": { "key": 202, "bed": 5, "bath": 2.5 }, 3026 "5 Bed /3 Bath": { "key": 202, "bed": 5, "bath": 3 }, 3027 "5 Bed /3.5 Bath": { "key": 202, "bed": 5, "bath": 3.5 } 3028 }; 3029 3030 $(document).ready(function () { 3031 3032 if (internationalProperty == 'true') 3033 $('.contact-us-enhanced #movedate').datepicker({ 3034 autoHide: true, 3035 format: "dd-mm-yyyy", 3036 startDate: new Date() 3037 }); 3038 else 3039 $('.contact-us-enhanced #movedate').datepicker({ 3040 autoHide: true, 3041 startDate: new Date() 3042 }); 3043 3044 // WCAG 2.4.11 â close the datepicker when focus lands on a real element outside it, 3045 // so an open calendar can't obscure the next focused field. React to focus LANDING 3046 // somewhere (document-level focusin), not to #movedate blurring: the plugin's 3047 // month/year nav <li> arrows aren't focusable, so clicking them blurs #movedate 3048 // without focus landing anywhere, and a focusout-only check never gets a second 3049 // chance to run once #movedate is already blurred. 3050 var $movedateEnh = $('.contact-us-enhanced #movedate'); 3051 $(document).on('focusin', function (e) { 3052 if (e.target === $movedateEnh[0]) return; 3053 if ($(e.target).closest('.datepicker-container').length) return; 3054 $movedateEnh.datepicker('hide'); 3055 }); 3056 3057 $.ajax({
3058 type: 'GET', 3059 url: 'CmsSiteManager/callback.aspx?act=Proxy/GetFloorPlans', 3060 dataType: 'jsonp', 3061 timeout: timeoutValue, 3062 success: function(data) { 3063 rpData = data; 3064 f_enhBuildBedRoomSelect(); 3065 }, 3066 error: function (response) { 3067 if (response.statusText === "timeout") { 3068 $('#contactUsEnhancedContainer').html("<div class='timeout-message'><div class='timeout-icon'><img src='/globalresources/widgets/images/TimeOutSessionIcon.png' alt='' /></div><div class='timeout-text-message'><b>Time Out Error</b>.<br> Refresh Page or Try Again Later</div></div>"); 3069 } 3070 } 3071 }); 3072 3073 if (defaultSource == 0) 3074 $('#usersource').val(''); 3075 else if (defaultSource) 3076 $('#usersource').val(defaultSource); 3077 else 3078 $('#usersource').val(''); 3079 3080 if (disableReferralTracking.toLowerCase() != 'true' && matchedSourceId) { 3081 $('.contact-us-enhanced #usersource').val(matchedSourceId); 3082 $('.contact-us-enhanced #usersourceDiv').hide(); 3083 } 3084 3085 $('.contact-us-enhanced #btnEnhSubmit').on('click', function () { 3086 if (f_validateFields()) { 3087 f_enhSubmit(); 3088 } 3089 }); 3090 3091 f_ensureErrorSpans(); 3092 }); 3093 3094 function f_validateFields() { 3095 let isPhoneValid = true; 3096 let isEmailValid = true; 3097 3098 // Phone and email inputs based on the provided HTML 3099 const phoneInput = $('#phone'); // Target phone input by id "phone" 3100 const emailInput = $('#email'); // Target email input by id "email" 3101 3102 // Trim values to avoid spaces being considered valid 3103 const phoneValue = phoneInput.val().trim(); 3104 const emailValue = emailInput.val().trim(); 3105 3106 // Phone validation 3107 if ($('#phoneDiv').hasClass('required-group')) { 3108 const phonePattern = /^(?:\(\d{3}\)|\d{3}[-.\s]?)\d{3}[-.\s]?\d{4}$/; // Phone number pattern 3109 isPhoneValid = phonePattern.test(phoneValue); 3110 f_setEnhFieldValidity(phoneInput, isPhoneValid); 3111 } 3112 3113 // Email validation 3114 const emailPattern = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/; // Email pattern 3115 isEmailValid = emailPattern.test(emailValue); 3116 f_setEnhFieldValidity(emailInput, isEmailValid); 3117 3118 // Exclude #email/#phone â dedicated format checks above would otherwise be clobbered. 3119 $('.contact-us-enhanced .required-group input').not('#email, #phone').each(function () { 3120 f_setEnhFieldValidity($(this), $(this).val() != ''); 3121 }); 3122 3123 $('.contact-us-enhanced .required-group input[type="checkbox"]').each(function() { 3124 var isChecked = $(this).is(':checked'); 3125 f_setEnhFieldValidity($(this), isChecked); 3126 var $label = $("label[for=" + $(this).attr("id") + "]"); 3127 if (isChecked) { 3128 $label.removeClass('validate-field'); 3129 } else { 3130 $label.addClass('validate-field'); 3131 } 3132 }); 3133 3134 $('.contact-us-enhanced .required-group textarea').each(function () { 3135 f_setEnhFieldValidity($(this), $(this).val() != ''); 3136 }); 3137 3138 $('.contact-us-enhanced .required-group select').each(function () { 3139 f_setEnhFieldValidity($(this), $(this).val() != ''); 3140 }); 3141 3142 if ($('.contact-us-enhanced .validate-field').length == 0 && isPhoneValid && isEmailValid) 3143 return true; 3144 else { 3145 $('.validate-field:first').focus(); 3146 return false; 3147 } 3148 } 3149 3150 function f_enhBuildBedRoomSelect() { 3151 var bathRooms = 0; 3152 var bedRooms = 0; 3153 3154 var countUnit = 1; 3155 3156 for (var i = 0; i < rpData.floorplans.length; i++) { 3157 var currentbathRooms = rpData.floorplans[i].bathRooms; 3158 var currentbedRooms = rpData.floorplans[i].bedRooms; 3159 if (bathRooms != currentbathRooms || bedRooms != currentbedRooms) { 3160 var str = currentbedRooms + ' Bed /' + currentbathRooms + ' Bath'; 3161 3162 try { 3163 $('.contact-us-enhanced #unitType').append('<option value="' + kpv[str]["key"] + '" class="text">' + str + '</option>'); 3164 } catch(err) { 3165 //This error typically happens when it cannot find the str and consaquently cannot find the key. 3166 } 3167 3168 bathRooms = currentbathRooms; 3169 bedRooms = currentbedRooms; 3170 countUnit++; 3171 } 3172 } 3173 } 3174 function f_getCookie(cookieName) { 3175 var cookieValue = document.cookie;
3176 var cookieStart = cookieValue.indexOf(" " + cookieName + "="); 3177 if (cookieStart == -1) { 3178 cookieStart = cookieValue.indexOf(cookieName + "="); 3179 } 3180 if (cookieStart == -1) { 3181 cookieValue = null; 3182 } 3183 else { 3184 cookieStart = cookieValue.indexOf("=", cookieStart) + 1; 3185 var cookieEnd = cookieValue.indexOf(";", cookieStart); 3186 if (cookieEnd == -1) { 3187 cookieEnd = cookieValue.length; 3188 } 3189 cookieValue = unescape(cookieValue.substring(cookieStart, cookieEnd)); 3190 } 3191 return cookieValue; 3192 } 3193 3194 function f_enhValidPhone(b) { 3195 var a = window.event ? b.keyCode : b.which; 3196 3197 if (internationalProperty == 'true' && $('#dayPhone1').val().length == 0 && b.shiftKey && b.keyCode == 43) 3198 return true; 3199 3200 if (a == 0 || a == 8) 3201 return true; 3202 if (a > 47 && a < 58) 3203 return true; 3204 else 3205 return false; 3206 } 3207 3208 function getSubmitTimeStamp() { 3209 let date = new Date(); 3210 var formattedDate = String(date.getUTCFullYear() + "-" + date.getUTCDate() + "-" + date.getUTCDay() + " " + date.getUTCHours() + ":" + date.getUTCMinutes() + ":" + date.getUTCSeconds()); 3211 console.log("Get UTC date time/stamp: " + formattedDate) 3212 return formattedDate; 3213 } 3214 3215 function submitContactEnhanced() { 3216 if (enableGoogleRecaptcha == "true") { 3217 o['cmsSiteId'] = cmsSiteId; 3218 o['pageName'] = pageName; 3219 o['widgetName'] = widgetName; 3220 } 3221 3222 o['googleAnalyticsId'] = googleAnalyticsId; 3223 o['ipaddress'] = ipAddress; 3224 o['leadtime'] = getSubmitTimeStamp(); 3225 3226 $(".contact-us-enhanced input:not([type=radio])").each(function () { 3227 if (internationalProperty == 'true' && this.name == 'movedate') { 3228 o[$(this).attr('name')] = ($(this).val().substring(3, 5) + '-' + $(this).val().substring(0, 2) + '-' + $(this).val().substring(6, 10)); 3229 } 3230 else { 3231 o[$(this).attr('name')] = $(this).val(); 3232 } 3233 }); 3234 3235 o['respondmedium'] = $('input[name="respondmedium"]:checked').val(); 3236 3237 $(".contact-us-enhanced select").each(function () { 3238 if (this.name == 'usersource') 3239 o[$(this).attr('name')] = $('option:selected', this).text(); 3240 else 3241 o[$(this).attr('name')] = $(this).val(); 3242 }); 3243 3244 $(".contact-us-enhanced textarea").each(function () { 3245 o[$(this).attr('name')] = escape($(this).val()); 3246 }); 3247 3248 3249 if ($('.contact-us-enhanced #e-mail').val().length == 0) { 3250 var id = $(".contact-us-enhanced #unitType option:selected").val(); 3251 3252 $.ajax({
3253 type: "POST", 3254 dataType: "json", 3255 cache: false, 3256 url: "CMSSiteManager/Callback.aspx?act=set_contact", 3257 data: o, 3258 timeout: timeoutValue, 3259 success: function (json) { 3260 if (json.ErrorNumber) { 3261 formSuccess = false; 3262 $('#lblError').html('Failed to submit guest card.'); 3263 $('#btnEnhSubmit').html('Error Submitting!'); 3264 $('#btnEnhSubmit').prop('disabled', false); 3265 } else { 3266 try { 3267 let customDimensions = {} 3268 customDimensions.dimension15 = json.LeaseStarLeadId; 3269 if (json.Lead2LeaseLeadId != 0) 3270 customDimensions.dimension17 = json.Lead2LeaseLeadId; 3271 f_analyticsSendEvent('Contact', 'Information Request', 'Thank you', customDimensions); 3272 } catch (e) { 3273 } 3274 if (successScreen == '') 3275 window.open('/Thank-You.aspx', '_self'); 3276 else 3277 window.open(successScreen, '_self'); 3278 } 3279 }, 3280 beforeSend: function (json) { 3281 formSuccess = true; 3282 $('#btnEnhSubmit').html('Sending...'); 3283 $('#btnEnhSubmit').prop('disabled', true); 3284 }, 3285 error: function (e) { 3286 formSuccess = false; 3287 $('#btnEnhSubmit').html('Error Submitting!'); 3288 $('#btnEnhSubmit').prop('disabled', false); 3289 } 3290 }); 3291 } 3292 } 3293 3294 function f_enhSubmit() { 3295 if (formSuccess == true) { 3296 return false; 3297 } 3298 3299 $('.contact-us-enhanced #pid').val(propertyId); 3300 3301 var lcid = f_getCookie('RP_LSWS_LCID'); 3302 lcid = lcid ? lcid : "4"; 3303 $('.contact-us-enhanced #lcid').val(lcid); 3304 var cid = f_getCookie('RP_LSWS_SEM'); 3305 cid = cid ? cid : "Property Website"; 3306 if (cid != "Property Website") { 3307 $('.contact-us-enhanced #cid').val(matchedSource); //The logic for setting the matchedSource based on the cid value in the commondata.ascx file 3308 } 3309 3310 googleAnalyticsId = f_getCookie('_ga'); 3311 3312 3313 submitContactEnhanced(); 3314 3315 } 3316</script>
3316 3317<style> 3318 .grecaptcha-badge{ 3319 bottom: 100px !important; 3320 } 3321 .contact-us-enhanced input:focus-visible, 3322 .contact-us-enhanced select:focus-visible, 3323 .contact-us-enhanced textarea:focus-visible, 3324 .contact-us-enhanced button:focus-visible, 3325 .contact-us-enhanced input:focus, 3326 .contact-us-enhanced select:focus, 3327 .contact-us-enhanced textarea:focus, 3328 .contact-us-enhanced button:focus { 3329 outline-offset: 2px; 3330 box-shadow: 0 0 0 2px #005fcc, 0 0 0 3px #fff; 3331 } 3332</style> 3333 3334<div id="p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUsEnhanced_contact_us_enhanced" class="contact-us-enhanced"> 3335 <div id="contactUsEnhancedContainer" class="timeout-error-contact"> 3336 <div class="row"> 3337 <input name="pid" type="hidden" id="pid" /> 3338 <input name="lcid" type="hidden" id="lcid" /> 3339 <input name="cid" type="hidden" id="cid" /> 3340 <div class="col-md-6"> 3341 <div class="form-group required-group" id="firstNameDiv"><label for="firstName">First Name</label><input type="text" id="firstName" class="form-control" autocomplete="given-name" name="firstname" /> 3342 </div> 3343 <div class="form-group required-group" id="lastNameDiv"><label for="lastName">Last Name</label><input type="text" id="lastName" class="form-control" autocomplete="family-name" name="lastname" /> 3344 </div><div class="form-group required-group" id="phoneDiv"><label for="phone">Phone</label><input type="text" id="phone" class="form-control" autocomplete="tel" name="dayPhone1" /> 3345 </div></div><div class="col-md-6"><div class="form-group required-group" id="emailDiv"><label for="email">Email</label><input type="email" id="email" class="form-control" autocomplete="email" name="email" /> 3346 </div><div class="form-group required-group" id="moveDateDiv"><label for="movedate">Move-in Date</label><input type="text" id="movedate" class="form-control" name="movedate" readonly="readonly" aria-describedby="movedate-hint" /> 3347 <span id="movedate-hint" class="field-format-hint">Format: MM/DD/YYYY</span> 3348 </div><div class="form-group" id="usersourceDiv" style="display: none;"> 3349 <label for="usersource">How did you hear about us?</label><select class="form-control" id="usersource" name="usersource"><option value="">-Select Source-</option><option value="ah">Affordable Housing</option><option value="affs">AffordableSearch.com</option><option value="af">Apartment Finder</option><option value="ag">Apartment Guide</option><option value="al">Apartment List</option><option value="ar">Apartment Ratings</option><option value="a">Apartments.com</option><option value="am">Apple Maps</option><option value="bng">Bing.com</option><option value="br">Brochure/Flyer</option><option value="broker">Broker</option><option value="corw">Corporate Site</option><option value="cl">Craigslist</option><option value="dm">Direct Mail</option><option value="db">Drive-by</option><option value="fb">Facebook</option><option value="gtg">GeoTargeter</option><option value="g">Google</option><option value="gmb">Google My Business</option><option value="l">Locator</option><option value="outr">Outreach</option><option value="psa">Paid Social Ads</option><option value="w">Property Website</option><option value="refcr">Referral - Current Resident</option><option value="reffr">Referral - Former Resident</option><option value="sist">Referral - Sister Property</option><option value="refwom">Referral - Word of Mouth</option><option value="r">Rent.com</option><option value="sea">Search Engine Ad</option><option value="signage">Signage</option><option value="sm">Social Media</option><option value="y">Yelp</option><option value="z">Zillow</option><option value="zu">Zumper</option></select></div><div class="form-group" id="commentsDiv"><label for="comments">Comments</label><textarea id="comments" class="form-control" name="msg"></textarea> 3350 </div><div class="form-group required-group" id="privacyDiv"> 3351 <input id="privacy" type="checkbox" class="privacy-check" value="Agree" tabindex="0" /> 3352 <label for="privacy">By submitting this form, you agree to the <a href="https://www.winncompanies.com/winncompanies-privacy-policy" target="_blank" rel="noopener noreferrer">privacy policy<span class="sr-only"> (opens in a new tab)</span></a>.</label> 3353 </div></div></div><div class="contactus-float-input-div"> 3354 <label for="e-mail" style="display:none;">Do not fill out this input form, it is for bot control purposes only.</label> 3355 <input id="e-mail" type="text" class="hpInput" aria-hidden="true" tabindex="-1" autocomplete="off" /> 3356 </div><div id="requiredNotation"><span></span> required field</div> 3357 <div class="sumbit-button"> 3358 <button type="button" name="btnEnhSubmit" id="bt
3358nEnhSubmit">Submit</button> 3359 </div> 3360 <div> 3361 <p type="label" id="lblError" class="error-msg"></p> 3362 </div> 3363 </div> 3364</div></div></div><div id="" class="col-xs-12 col-md-3 md-order-1 contactSidebar"><div id="" class="bgImg"></div><div id="" class="infoTile addressTile"><i class="fa fa-map-o" aria-hidden="true"></i> 3365<div class="prop-name">777 Main</div> 3366<a href="http://maps.google.com/?q=777 Main St, Hartford, CT 06103" target="_blank" id="directionsLink"> 3367 <div>777 Main St </div> 3368 <div>Hartford, CT 06103</div> 3369</a><div id="" class="prop-phone"> 3370<a class="seo-number" href="tel:(860) 926-3512" onclick="f_analyticsSendEvent('general', 'click-phone-number', '(860) 926-3512')">(860) 926-3512</a></div></div><div id="" class="contactSocial hidden-md hidden-lg"><div id="p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_WebPartZone5_WebPartZone5_zone_SocialMedia_pnlSocialNetworks" class="social_media"> 3371 <ul class="social-list" style="list-style:none;margin:0;padding:0;"><li style="display:inline-block;"><a href="https://www.facebook.com/777mainapartmentshartford?ref=hl" class="facebook" title="" target="_blank" rel="noopener noreferrer" onclick="f_analyticsSendEvent('social', 'click-facebook-icon', 'https://www.facebook.com/777mainapartmentshartford?ref=hl')" role="button" aria-label="facebook (opens in a new tab)"> 3372 <em class="sicon-facebook" aria-hidden="true"></em></a></li><li style="display:inline-block;"><a href="https://twitter.com/777main" class="twitter" title="" target="_blank" rel="noopener noreferrer" onclick="f_analyticsSendEvent('social', 'click-twitter-icon', 'https://twitter.com/777main')" role="button" aria-label="twitter (opens in a new tab)"> 3373 <em class="sicon-twitter" aria-hidden="true"></em></a></li><li style="display:inline-block;"><a href="https://www.instagram.com/777main/?hl=en" class="instagram" title="" target="_blank" rel="noopener noreferrer" onclick="f_analyticsSendEvent('social', 'click-instagram-icon', 'https://www.instagram.com/777main/?hl=en')" role="button" aria-label="instagram (opens in a new tab)"> 3374 <em class="sicon-instagram" aria-hidden="true"></em></a></li></ul> 3375</div></div><div id="" class="infoTile hoursTile"><i class="fa fa-clock-o" aria-hidden="true"></i> 3376<div class="title">Office Hours</div> 3377 3378<style> 3379 .contact-hours ul { 3380 margin: 0; 3381 padding: 0; 3382 list-style: none; 3383 } 3384</style> 3385 3386<div id="p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_WebPartZone5_WebPartZone5_zone_ContactHours_pnlContactHours" class="widget"> 3387 3388 3389<div class="contact-hours"><ul class="contact-hours-list"><li><span class="contact-hours-day">Monday:</span><span class="contact-hours-time"> 9:00AM to 6:00PM</span></li><li><span class="contact-hours-day">Tuesday:</span><span class="contact-hours-time"> 9:00AM to 6:00PM</span></li><li><span class="contact-hours-day">Wednesday:</span><span class="contact-hours-time"> 9:00AM to 6:00PM</span></li><li><span class="contact-hours-day">Thursday:</span><span class="contact-hours-time"> 9:00AM to 6:00PM</span></li><li><span class="contact-hours-day">Friday:</span><span class="contact-hours-time"> 9:00AM to 6:00PM</span></li><li><span class="contact-hours-day">Saturday:</span><span class="contact-hours-text"> Closed</span></li><li><span class="contact-hours-day">Sunday:</span><span class="contact-hours-text"> Closed</span></li></ul></div> 3390 3391 3392</div></div><div class="footer-cta text-center mobile-footer-cta hidden-lg hidden-md"> 3393 <span class="textShadow foot-tagline"></span> 3394 3395 <a href="#wrapper" class="rp-scroll triangle up"> 3396 <i class="fa fa-angle-double-up" aria-hidden="true"></i> 3397 </a> 3398</div></div></div><div class="footer-cta text-center desktop-footer-cta hidden-sm hidden-xs"> 3399 <span class="textShadow foot-tagline"></span> 3400 3401 <a href="#wrapper" class="rp-scroll triangle up"> 3402 <i class="fa fa-angle-double-up" aria-hidden="true"></i> 3403 </a> 3404</div> 3405</section> 3406<div class="footer-cta footer-cta-inner text-center bgImg sectionDark"> 3407 <span class="textShadow foot-tagline"></span> 3408 3409</div>
3410<script type="text/javascript"> 3411(function () { 3412 3413 // Per-instance suffix â matches the id suffix the code-behind (Initialize()) applies to 3414 // popup-overlay/popUpWindowDialog/popUpWindowHeader/divCloseButton/popBtnClose/popUpWindowText, 3415 // so two PopUp instances on one page never collide in DOM ids OR in this closure's JS scope. 3416 var suffix = 'p_lt_zonePagePlaceholder_PopUp_PopUpWindow'; 3417 var dialogSelector = '#popUpWindowDialog_' + suffix; 3418 var overlaySelector = '#popup-overlay_' + suffix; 3419 var containerSelector = '#' + suffix; // the PopUpWindow panel itself (.popUpWindowLightBox) 3420 3421 // Remembers the element focused before the dialog opened so focus can be restored on close (WCAG 2.4.3). 3422 var f_lastFocusedBeforeDialog = null; 3423 3424 // Returns the currently focusable, visible elements inside the open dialog. 3425 // Null-guarded: returns an empty jQuery set when the dialog markup is absent/empty. 3426 function f_getDialogFocusables() { 3427 var $dialog = $(dialogSelector); 3428 if ($dialog.length === 0) { return $(); } 3429 return $dialog 3430 .find('a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])') 3431 .filter(':visible'); 3432 } 3433 3434 function f_dialogIsOpen() { 3435 var $dialog = $(dialogSelector); 3436 return $dialog.length > 0 && $dialog.is(':visible'); 3437 } 3438 3439 // WCAG 2.4.11 â while the dialog is open, mark every non-dialog sibling `inert` + `aria-hidden` so focu
3439s/AT can't escape behind it. 3440 function f_inertBackground() { 3441 var dialog = document.querySelector(containerSelector); 3442 var overlay = document.querySelector(overlaySelector); 3443 if (!dialog) { return; } 3444 var ancestor = dialog; 3445 while (ancestor && ancestor.parentElement) { 3446 var parent = ancestor.parentElement; 3447 Array.prototype.forEach.call(parent.children, function (sibling) { 3448 if (sibling === ancestor || sibling === overlay) { return; } 3449 if (sibling.tagName === 'SCRIPT' || sibling.tagName === 'STYLE' || sibling.tagName === 'LINK') { return; } 3450 if (sibling.hasAttribute('data-popup-was-inert')) { return; } 3451 sibling.setAttribute('data-popup-was-inert', sibling.hasAttribute('inert') ? '1' : '0'); 3452 sibling.setAttribute('data-popup-was-aria-hidden', sibling.getAttribute('aria-hidden') || ''); 3453 sibling.setAttribute('inert', ''); 3454 sibling.setAttribute('aria-hidden', 'true'); 3455 }); 3456 if (parent === document.body) { break; } 3457 ancestor = parent; 3458 } 3459 } 3460
3461 function f_restoreBackground() { 3462 var marked = document.querySelectorAll('[data-popup-was-inert]'); 3463 Array.prototype.forEach.call(marked, function (el) { 3464 if (el.getAttribute('data-popup-was-inert') === '0') { el.removeAttribute('inert'); } 3465 var prev = el.getAttribute('data-popup-was-aria-hidden'); 3466 if (prev) { el.setAttribute('aria-hidden', prev); } else { el.removeAttribute('aria-hidden'); } 3467 el.removeAttribute('data-popup-was-inert'); 3468 el.removeAttribute('data-popup-was-aria-hidden'); 3469 }); 3470 } 3471 3472 function f_showDialog(modal) { 3473 if ($(dialogSelector).length > 0) { 3474 // Remember where focus was so it can be restored on close (WCAG 2.4.3). 3475 f_lastFocusedBeforeDialog = document.activeElement; 3476 $(overlaySelector).show(); 3477 $(containerSelector).fadeIn(300, function () { 3478 f_inertBackground(); 3479 // Move focus into the dialog once it is visible (focusing a hidden element silently fails). 3480 var $focusables = f_getDialogFocusables(); 3481 if ($focusables.length) { 3482 $focusables.first().focus(); 3483 } else { 3484 $(dialogSelector).attr('tabindex', '-1').focus(); 3485 } 3486 }); 3487 if (modal) { 3488 $(overlaySelector).unbind('click'); 3489 } else { 3490 $(overlaySelector).click(function () { 3491 f_hideDialog(); 3492 }); 3493 } 3494 } 3495 } 3496 3497 function f_hideDialog() { 3498 $(overlaySelector).hide(); 3499 $(containerSelector).fadeOut(300);
3500 f_restoreBackground(); 3501 // Return focus to the element that was focused before the dialog opened (WCAG 2.4.3). 3502 if (f_lastFocusedBeforeDialog && typeof f_lastFocusedBeforeDialog.focus === 'function') { 3503 f_lastFocusedBeforeDialog.focus(); 3504 } 3505 f_lastFocusedBeforeDialog = null; 3506 } 3507 3508 function f_setSessionCookie(cookieName, value) { 3509 document.cookie = cookieName + "=" + value; 3510 } 3511 3512 function f_getSessionCookie(cookieName) { 3513 var cookieValue = document.cookie; 3514 var cookieStart = cookieValue.indexOf(" " + cookieName + "="); 3515 if (cookieStart == -1) { 3516 cookieStart = cookieValue.indexOf(cookieName + "="); 3517 } 3518 if (cookieStart == -1) { 3519 cookieValue = null; 3520 } 3521 else { 3522 cookieStart = cookieValue.indexOf("=", cookieStart) + 1; 3523 var cookieEnd = cookieValue.indexOf(";", cookieStart); 3524 if (cookieEnd == -1) { 3525 cookieEnd = cookieValue.length; 3526 } 3527 cookieValue = unescape(cookieValue.substring(cookieStart, cookieEnd)); 3528 } 3529 return cookieValue; 3530 } 3531 3532 // Registered per instance (keyed by suffix) so the inline onclick="RpPopUp['<suffix>'].hideDialog()" 3533 // built in Initialize() always targets this instance's own closure, never a sibling PopUp's. 3534 window.RpPopUp = window.RpPopUp || {}; 3535 window.RpPopUp[suffix] = { 3536 showDialog: f_showDialog, 3537 hideDialog: f_hideDialog 3538 }; 3539 3540 $(document).ready(function () { 3541 var disableOnMobile = 'False'; 3542 var isSmallScreenDevice = $(window).width() <= 500; 3543 3544 var cookie = f_getSessionCookie('showOnPageLoad'); 3545 var endDate = ''; 3546 var convertedEndDate = new Date(endDate + " 23:59:59"); 3547 var today = new Date(); 3548 3549 var page = '~/Amenities.aspx'; 3550 //should only popup for the home page 3551 if (page == "~/" && (!endDate || convertedEndDate > today)) { 3552 if (!cookie || 'False'.toLowerCase() == 'true') { 3553 if (('False'.toLowerCase() == 'true' || 'False'.toLowerCase() == 'true') && ((disableOnMobile.toLowerCase() == 'false' || !isSmallScreenDevice))) { 3554 f_showDialog(true); 3555 } 3556 f_setSessionCookie('showOnPageLoad', false); 3557 } 3558 } 3559 3560 $(document).keydown(function (event) { 3561 // Only act while the dialog is actually open so Esc/Tab never affect a hidden dialog. 3562 if (!f_dialogIsOpen()) { return; } 3563 3564 if (event.keyCode == 27) { // Esc â preserve existing close behavior (avoids a 2.1.2 keyboard trap) 3565 f_hideDialog(); 3566 return; 3567 } 3568 3569 if (event.keyCode == 9) { // Tab / Shift+Tab â confine focus to the dialog (WCAG 2.4.11 / 2.4.3) 3570 var $focusables = f_getDialogFocusables(); 3571 if ($focusables.length === 0) { 3572 // No focusable content inside the dialog: keep focus on the container. 3573 event.preventDefault(); 3574 $(dialogSelector).attr('tabindex', '-1').focus(); 3575 return; 3576 } 3577 var first = $focusables.first()[0]; 3578 var last = $focusables.last()[0]; 3579 var active = document.activeElement; 3580 if (event.shiftKey && active === first) { 3581 event.preventDefault(); 3582 $(last).focus(); 3583 } else if (!event.shiftKey && active === last) { 3584 event.preventDefault(); 3585 $(first).focus(); 3586 } else if ($focusables.index(active) === -1) { 3587 // Focus is currently outside the dialog (e.g. on <body> after an auto-open) â pull it in. 3588 event.preventDefault(); 3589 $(first).focus(); 3590 } 3591 } 3592 }); 3593 }); 3594 3595})(); 3596</script>
3596 3597 3598<div id="popup-overlay_p_lt_zonePagePlaceholder_PopUp_PopUpWindow" class="popup-overlay"></div> 3599<div id="p_lt_zonePagePlaceholder_PopUp_PopUpWindow" class="popUpWindowLightBox"> 3600 <div id="popUpWindowDialog_p_lt_zonePagePlaceholder_PopUp_PopUpWindow" class="popUpWindowDialog" role="dialog" aria-modal="true" aria-label="Promotion"><div id="divCloseButton_p_lt_zonePagePlaceholder_PopUp_PopUpWindow" class="divCloseButton"><button id="popBtnClose_p_lt_zonePagePlaceholder_PopUp_PopUpWindow" class="popBtnClose" onclick="RpPopUp['p_lt_zonePagePlaceholder_PopUp_PopUpWindow'].hideDialog()" aria-label="Close Window" tabindex="0" type="button">Close</button></div><div id="popUpWindowText_p_lt_zonePagePlaceholder_PopUp_PopUpWindow" class="popUpWindowText"><p style="text-align: center;"><br /></p></div></div> 3601</div> 3602 3603 3604 3605</div> 3606 3607 3608
3609<script type="text/javascript"> 3610 //Google Maps Lazyloading 3611 let lazyLoadedFooter = false; 3612 3613 $(document).on("ready", function () { 3614 let script = document.createElement('script') 3615 3616 //Register Event Listeners so we can look for the widget container 3617 smRegisterListener('load', smLazyLoad); 3618 smRegisterListener('scroll', smLazyLoad); 3619 smRegisterListener('resize', smLazyLoad); 3620 3621 //Load the map script if the widget is in the view port 3622 function smLazyLoad() { 3623 if (document.getElementById("footer-map") && smIsInViewport(document.getElementById("footer-map")) && lazyLoadedFooter === false) { 3624 $('.footer-widget__loader').show(); 3625 lazyLoadedFooter = true; 3626 // adds the script tag to the document 3627 if (document.getElementsByTagName('body')[0]) { 3628 document.getElementsByTagName('body')[0].appendChild(script) 3629 } else { 3630 document.getElementsByTagName('html')[0].appendChild(script) 3631 } 3632 3633 // baseline config for script tag 3634 script.src = 'https://maps.googleapis.com/maps/api/js?key=AIzaSyDS1oKsJ_hSSZqIslqkR4EdK1VndKUOPYM&libraries=places,geometry' 3635 script.async = true 3636 script.defer = true 3637 3638 //after the google map script has loaded we can call the widget script 3639 script.onload = function () { 3640 loadFooterMap(); 3641 $('.footer-widget__loader').hide('slow'); 3642 } 3643 } 3644 } 3645 //check if the widget is in the view port 3646 function smIsInViewport(el) { 3647 var rect = el.getBoundingClientRect(); 3648 return ( 3649 rect.bottom >= 0 && 3650 rect.right >= 0 && 3651 rect.top <= (window.innerHeight || document.documentElement. 3652 clientHeight) && 3653 rect.left <= (window.innerWidth || document.documentElement. 3654 clientWidth) 3655 ); 3656 } 3657 //This is where our event listeners are being created 3658 function smRegisterListener(event, func) { 3659 if (window.addEventListener) { 3660 if (event == 'resize') { 3661 window.addEventListener(event, smDebounce(func)); 3662 } else if (event == 'scroll') { 3663 window.addEventListener(event, smThrottle(func, 500)); 3664 } else { 3665 window.addEventListener(event, func) 3666 } 3667 } else { 3668 window.attachEvent('on' + event, func) 3669 } 3670 } 3671 function smDebounce(func) { 3672 var timer; 3673 return function (event) { 3674 if (timer) clearTimeout(timer); 3675 timer = setTimeout(func, 0, event); 3676 }; 3677 } 3678 function smThrottle(func, wait) { 3679 var time = Date.now(); 3680 return function () { 3681 if ((time + wait - Date.now()) < 0) { 3682 func(); 3683 time = Date.now(); 3684 } 3685 } 3686 } 3687 }); 3688 //End Google Maps Lazyloading 3689 3690 3691 var footerMap; 3692 function loadFooterMap() { 3693 $(function () { 3694 initFooterMap(); 3695 }); 3696 }; 3697 3698 //Initialize Footer Google Map 3699 function initFooterMap() { 3700 origin = new google.maps.LatLng(latitude, longitude); 3701 3702 var stylesObj = [{elementType: 'geometry', 3703 stylers: [{ color: '#f5f5f5' }] 3704 }, 3705 { 3706 elementType: 'labels.icon', 3707 stylers: [{ visibility: 'off' }] 3708 }, 3709 { 3710 elementType: 'labels.text.fill', 3711 stylers: [{ color: '#616161' }] 3712 }, 3713 { 3714 elementType: 'labels.text.stroke', 3715 stylers: [{ color: '#f5f5f5' }] 3716 }, 3717 { 3718 featureType: 'administrative.land_parcel', 3719 elementType: 'labels.text.fill', 3720 stylers: [{ color: '#bdbdbd' }
3720] 3721 }, 3722 { 3723 featureType: 'poi', 3724 elementType: 'geometry', 3725 stylers: [{ color: '#eeeeee' }] 3726 }, 3727 { 3728 featureType: 'poi', 3729 elementType: 'labels.text.fill', 3730 stylers: [{ color: '#757575' }] 3731 }, 3732 { 3733 featureType: 'poi.park', 3734 elementType: 'geometry', 3735 stylers: [{ color: '#e5e5e5' }] 3736 }, 3737 { 3738 featureType: 'poi.park', 3739 elementType: 'labels.text.fill', 3740 stylers: [{ color: '#9e9e9e' }] 3741 }, 3742 { 3743 featureType: 'road', 3744 elementType: 'geometry', 3745 stylers: [{ color: '#ffffff' }] 3746 }, 3747 { 3748 featureType: 'road.arterial', 3749 elementType: 'labels.text.fill', 3750 stylers: [{ color: '#757575' }] 3751 }, 3752 { 3753 featureType: 'road.highway', 3754 elementType: 'geometry', 3755 stylers: [{ color: '#dadada' }] 3756 }, 3757 { 3758 featureType: 'road.highway', 3759 elementType: 'labels.text.fill', 3760 stylers: [{ color: '#616161' }] 3761 }, 3762 { 3763 featureType: 'road.local', 3764 elementType: 'labels.text.fill', 3765 stylers: [{ color: '#9e9e9e' }] 3766 }, 3767 { 3768 featureType: 'transit.line', 3769 elementType: 'geometry', 3770 stylers: [{ color: '#e5e5e5' }] 3771 }, 3772 { 3773 featureType: 'transit.station', 3774 elementType: 'geometry', 3775 stylers: [{ color: '#eeeeee' }] 3776 }, 3777 { 3778 featureType: 'water', 3779 elementType: 'geometry', 3780 stylers: [{ color: '#c9c9c9' }] 3781 }, 3782 { 3783 featureType: 'water', 3784 elementType: 'labels.text.fill', 3785 stylers: [{ color: '#9e9e9e' }] 3786 } 3787 ]; 3788 3789 footerMap = new google.maps.Map(document.getElementById('footer-map'), { 3790 scrollwheel: false, 3791 center: origin, 3792 zoom: 16, 3793 mapTypeControl: false, 3794 keyboardShortcuts: false 3795 }); 3796 3797 footerMap.setOptions({ styles: stylesObj }); 3798 3799 var markerIcon = { 3800 path: 'M54.549,17.947c-12.314,0-22.332,10.02-22.332,22.334c0,11.854,20.262,39.548,21.125,40.721l0.805,1.096,c0.094,0.129,0.244,0.204,0.402,0.204c0.16,0,0.309-0.075,0.404-0.204l0.805-1.096c0.863-1.173,21.125-28.867,21.125-40.721,C76.883,27.967,66.863,17.947,54.549,17.947z M54.549,32.281c4.412,0,8,3.588,8,8c0,4.41-3.588,8-8,8c-4.41,0-8-3.59-8-8,C46.549,35.869,50.139,32.281,54.549,32.281z', 3801 fillColor: '#' + '616161', 3802 fillOpacity: 1, 3803 scale: 1, 3804 strokeWeight: 0, 3805 anchor: new google.maps.Point(55, 80) 3806 }; 3807 3808 var marker = new google.maps.Marker({ 3809 position: origin, 3810 map: footerMap, 3811 icon: markerIcon, 3812 geometry: { 3813 location: origin 3814 }, 3815 name: name, 3816 vicinity: addressLine1, 3817 addressState: addressState, 3818 addressPostalCode: addressPostalCode, 3819 phonesNumber: phonesNumber, 3820 website: website, 3821 city: city 3822 }); 3823 3824 var center; 3825 3826 function calculateCenter() { 3827 center = footerMap.getCenter(); 3828 } 3829 3830 google.maps.event.addDomListener(footerMap, 'idle', function () { 3831 calculateCenter(); 3832 }); 3833 google.maps.event.addDomListener(window, 'resize', function () { 3834 footerMap.setCenter(center); 3835 }); 3836 } 3837 //End Initialize Footer Google Map 3838</script>
3838 3839 3840 3841 3842 3843 3844 3845 3846 3847 3848 3849 3850 3851 3852<div id="p_lt_zoneFooterMain_Footer_pnlFooter7" class="widget footer-widget"> 3853 3854 <footer class="footer-7"> 3855 <div class="footer-content"> 3856 <div class="footer-container"> 3857 <div class="footer-top"> 3858 <div class="footer-top-column footer-top-column-1"> 3859 <div class="footer-property-logo"> 3860 <div class="footer-logo footer-property-logo" title="777 Main"><a href="/"><img src="https://capi.myleasestar.com/v2/dimg/60437946/400x400/60437946.png" alt="777 Main" /></a></div> 3861 </div> 3862 <div class="footer-follow"> 3863 <ul class="footer-social"><li><a href="https://www.facebook.com/777mainapartmentshartford?ref=hl" class="facebook" title="" target="_blank" rel="noopener noreferrer" onclick="f_analyticsSendEvent('social', 'click-facebook-icon', 'https://www.facebook.com/777mainapartmentshartford?ref=hl')" role="button" aria-label="facebook (opens in a new tab)"><i class="fa fa-facebook" aria-hidden="true"></i></a></li><li><a href="https://twitter.com/777main" class="twitter" title="" target="_blank" rel="noopener noreferrer" onclick="f_analyticsSendEvent('social', 'click-twitter-icon', 'https://twitter.com/777main')" role="button" aria-label="twitter (opens in a new tab)"><i class="fa fa-twitter" aria-hidden="true"></i></a></li><li><a href="https://www.instagram.com/777main/?hl=en" class="instagram" title="" target="_blank" rel="noopener noreferrer" onclick="f_analyticsSendEvent('social', 'click-instagram-icon', 'https://www.instagram.com/777main/?hl=en')" role="button" aria-label="instagram (opens in a new tab)"><i class="fa fa-instagram" aria-hidden="true"></i></a></li></ul> 3864 </div> 3865 3866 <div class="footer-resident-link"> 3867 <div class="footer-resident-icon"> 3868 <em class="fa fa-user" aria-hidden="true"></em> 3869 </div> 3870 <a href="https://777mainstresidential.activebuilding.com">Resident Portal</a> 3871 </div> 3872 3873 </div> 3874 <div class="footer-top-column footer-top-column-2"> 3875 <div class="footer-phone footer-column-2-content"> 3876 <div class="footer-phone-icon footer-icon"> 3877 <em class="fa fa-phone" aria-hidden="true"></em> 3878 </div> 3879 <div class="footer-phone-content"> 3880 3881 <a href="tel:(860) 926-3512" data-phone="(860) 926-3512" class="footer-phone seo-number" onclick="f_analyticsSendEvent('general', 'click-phone-number', '(860) 926-3512')"> 3882 <span>(860) 926-3512</span> 3883 </a> 3884 3885 </div> 3886 </div> 3887 <div class="footer-address footer-column-2-content"> 3888 <div class="footer-address-icon footer-icon"> 3889 <em class="fa fa-map-marker" aria-hidden="true"></em> 3890 </div> 3891 <div class="footer-address-content"> 3892 777 Main St<br /> 3893 Hartford, CT 06103 3894 <a href="http://maps.google.com/?q=777 Main St, Hartford, CT 06103">Directions</a> 3895 </div> 3896 </div> 3897 <div class="footer-office-hours footer-column-2-content"> 3898 <div class="footer-office-hours-icon footer-icon"> 3899 <em class="fa fa-clock-o" aria-hidden="true"></em> 3900 </div> 3901 <div class="footer-office-hours-content"> 3902 <ul class="office-hours"><li><span class="office-hours-day">Monday:</span><span class="office-hours-time"> 9:00AM to 6:00PM</span></li><li><span class="office-hours-day">Tuesday:</span><span class="office-hours-time"> 9:00AM to 6:00PM</span></li><li><span class="office-hours-day">Wednesday:</span><span class="office-hours-time"> 9:00AM to 6:00PM</span></li><li><span class="office-hours-day">Thursday:</span><span class="office-hours-time"> 9:00AM to 6:00PM</span></li><li><span class="office-hours-day">Friday:</span><span class="office-hours-time"> 9:00AM to 6:00PM</span></li><li><span class="office-hours-day">Saturday:</span><span class="office-hours-time office-hours-time-text"> Closed</span></li><li><span class="office-hours-day">Sunday:</span><span class="office-hours-time office-hours-time-text"> Closed</span></li></ul> 3903 </div> 3904 </div> 3905 <div class="footer-optional-text"> 3906 3907 </div> 3908 </div> 3909 <div class="footer-top-column footer-top-column-3"> 3910 <div class="footer-menu"> 3911 <nav class="footer-nav"> 3912 3913 <ul id="footerNav7" class="CMSListMenuUL"> 3914 <li class="homeNav"> 3915 <a class="CMSListMenuLink" href="/">Home</a> 3916 </li> 3917 <li class="amenitiesNav"> 3918 <a class="CMSListMenuLinkHighlighted" href="/Amenities.aspx">Amenities</a> 3919 </li> 3920 <li class="floor-plansNav"> 3921 <a class="CMSListMenuLink" href="/Floor-Plans.aspx">Floor Plans</a> 3922 </li> 3923 <li class="galleryNav"> 3924 <a class="CMSListMenuLink" href="/Gallery.aspx">Gallery</a> 3925 </li> 3926 <li class="neighborhoodNav"> 3927 <a class="CMSListMenuLink" href="/Neighborhood.aspx">Location</a> 3928 </li> 3929 <li class="residents"> 3930 <a class="CMSListMenuLink" href="/Residents.aspx">Residents</a> 3931 </li> 3932 <li class="contactNav"> 3933 <a class="CMSListMenuLink" href="/Contact.aspx">Contact Us</a> 3934 </li> 3935 <li class="CMSListMenuLI"> 3936 <a class="CMSListMenuLink" href="/Specials.aspx">Green Living</a> 3937 </li> 3938 3939 </ul> 3940 3941 3942 </nav> 3943 </div> 3944 </div> 3945 </div> 3946 <div class="footer-bottom"> 3947 <div class="footer-bottom-row footer-bottom-row-1"> 3948 <div class="footer-logos"> 3949 <div class="footer-logo footer-pmclogo" title="Winn Residential Color"><a href="https://www.winncompanies.com/fyh-search" target="_blank" rel="noopener noreferrer"><img src="https://capi.myleasestar.com/v2/dimg/145062460/400x400/145062460.png" alt="Winn Residential Color" /><span class="sr-only"> (opens in a new tab)</span></a></div> 3950 3951 3952 </div> 3953 <div class="footer-icons"> 3954 <div id="ada-hud-links"> 3955 <a title="Accessibility" id="link-ada" href="https://www.winncompanies.com/accessibility-statement" target="_blank" rel="noopener noreferrer" aria-label="Accessibility (opens in a new tab)"><svg data-name="handicapSVG" xmlns="http://www.w3.org/2000/svg" viewbox="0 0 483.22 551.43"><path d="M162 98.12c25-2.3 44.36-23.81 44.36-49A49.25 49.25 0 0 0 157.19 0 49.25 49.25 0 0 0 108 49.16 51.06 51.06 0 0 0 114.17 73l17.52 246.47h180.4l74 173.37 97.14-38.1-15-35.82-54.37 19.63-71.64-165.27-167.73 1.12-2.3-31.21h121.42v-46.13H167.56zm181.42 353.47c-30.42 60.19-94.17 99.84-162.15 99.84C81.43 551.43 0 470 0 370.16c0-70.1 42.49-135.24 105.88-164.12l4.1 53.54c-37.5 23.63-60.61 66.26-60.61 111 0 72.43 59.07 131.5 131.5 131.5 66.26 0 122.76-50.85 130.47-116.09z"></path></svg></a> 3956 <a title="HUD" id="link-hud" href="https://www.hud.gov/program_offices/fair_housing_equal_opp" target="_blank" rel="noopener noreferrer" aria-label="HUD (opens in a new tab)"><svg data-name="housingSVG" xmlns="http://www.w3.org/2000/svg" viewbox="0 0 539.2 515.23"><g fill-rule="evenodd"><path d="M61.89 421.07h-21.1v8.36h19.38v7.05H40.79v10.26h22.03v7.05H32.66v-39.75h29.23v7.03zM88.56 442.98l4 3.75a9.67 9.67 0 0 1-4.48 1.06c-4.49 0-10.8-2.76-10.8-13.89s6.32-13.89 10.8-13.89 10.79 2.78 10.79 13.9a17.78 17.78 0 0 1-1.82 8.54l-4.18-3.93-4.26 4.46zm18.77 9.17l-4.33-4.07c2.44-3.1 4.16-7.64 4.16-14.18 0-18.65-13.84-20.92-19.1-20.92s-19.09 2.26-19.09 20.92 13.84 20.92 19.09 20.92a20.52 20.52 0 0 0 10.18-2.67l4.71 4.49 4.37-4.49zM146.24 439.9c0 10.44-6.32 14.94-16.34 14.94-3.65 0-9.07-.88-12.62-4.81-2.15-2.42-3-5.66-3.09-9.63v-26.36h8.47v25.78c0 5.56 3.21 8 7.08 8 5.71 0 8-2.76 8-7.59v-26.19h8.48v25.85zM168.48 423.01h.12l4.92 15.72h-10.14l5.1-15.72zm-7.32 22.56h14.71l2.55 8.21h9l-14-39.75h-9.55l-14.17 39.75h8.75l2.76-8.21zM202.19 446.59h19.76v7.2h-28.07v-39.75h8.31v32.55zM253.44 435.95v17.84h-8.29v-39.75h8.29v15.05h15.5v-15.05h8.29v39.75h-8.29v-17.84h-15.5zM293.05 433.91c0-11.12 6.32-13.89 10.79-13.89s10.81 2.76 10.81 13.89-6.31 13.89-10.81 13.89-10.79-2.76-10.79-13.89zm-8.29 0c0 18.66 13.85 20.92 19.08 20.92s19.12-2.26 19.12-20.92S309.12 413 303.87 413s-19.08 2.26-19.08 20.92zM362.59 439.9c0 10.44-6.32 14.94-16.34 14.94-3.65 0-9.06-.88-12.62-4.81-2.16-2.42-3-5.66-3.09-9.63v-26.36H339v25.78c0 5.56 3.22 8 7.1 8 5.7 0 8-2.76 8-7.59v-26.19h8.47v25.85zM377.79 441.55c.
395607 2.21 1.19 6.42 8.43 6.42 3.93 0 8.31-.94 8.31-5.17 0-3.08-3-3.92-7.19-4.92l-4.27-1c-6.44-1.49-12.64-2.91-12.64-11.66 0-4.43 2.39-12.24 15.29-12.24 12.18 0 15.45 8 15.51 12.84h-8c-.22-1.76-.88-6-8.13-6-3.15 0-6.92 1.16-6.92 4.76 0 3.12 2.55 3.75 4.2 4.14l9.69 2.38c5.43 1.33 10.4 3.55 10.4 10.68 0 12-12.17 13-15.66 13-14.49 0-17-8.36-17-13.28zM417.6 453.79h-8.28v-39.75h8.28v39.75zM450.76 414.04h7.74v39.75h-8.29L434 425.44h-.14v28.35h-7.73v-39.75h8.74l15.76 27.68h.13v-27.68zM486.29 432.37h16.58v21.42h-5.53l-.83-5c-2.1 2.41-5.14 6-12.4 6-9.57 0-18.25-6.86-18.25-20.8 0-10.84 6-21.09 19.42-21 12.2 0 17 7.9 17.43 13.4h-8.29c0-1.56-2.83-6.54-8.69-6.54s-11.4 4.1-11.4 14.3c0 10.86 5.93 13.67 11.57 13.67 1.82 0 7.93-.71 9.63-8.75h-9.24v-6.69zM39.19 494.3c0-11.12 6.31-13.9 10.79-13.9s10.79 2.77 10.79 13.9-6.31 13.9-10.79 13.9-10.79-2.79-10.79-13.9zm-8.3 0c0 18.65 13.84 20.94 19.09 20.94s19.09-2.29 19.09-20.94-13.84-20.92-19.09-20.92-19.11 2.26-19.11 20.92zM91.87 492.96v-11.69h6.59c5.14 0 7.3 1.62 7.3 5.5 0 1.77 0 6.19-6.21 6.19zm0 6.87h9.51c10.69 0 12.67-9.08 12.67-12.67 0-7.8-4.64-12.73-12.34-12.73H83.53v39.72h8.34v-14.32zM136.54 492.96v-11.69h6.58c5.15 0 7.31 1.62 7.31 5.5 0 1.77 0 6.19-6.19 6.19zm0 6.87h9.52c10.68 0 12.68-9.08 12.68-12.67 0-7.8-4.64-12.73-12.34-12.73h-18.16v39.72h8.31v-14.32zM179.5 494.3c0-11.12 6.29-13.9 10.8-13.9s10.79 2.77 10.79 13.9-6.32 13.9-10.79 13.9-10.8-2.79-10.8-13.9zm-8.3 0c0 18.65 13.83 20.94 19.1 20.94s19.08-2.29 19.08-20.94-13.84-20.92-19.08-20.92-19.1 2.26-19.1 20.92zM231.97 491.92v-10.65h10.34c4.87 0 5.8 3.12 5.8 5.22 0 3.93-2.09 5.43-6.41 5.43zm-8.15 22.23h8.16v-15.54h8.56c6.15 0 6.49 2.1 6.49 7.53a26.77 26.77 0 0 0 .87 8h9.2v-1.07c-1.77-.65-1.77-2.1-1.77-7.89 0-7.45-1.77-8.65-5-10.09 3.93-1.32 6.13-5.09 6.13-9.45 0-3.44-1.93-11.24-12.5-11.24h-20.14v39.75zM287.36 514.17h-8.3v-32.71h-12.01v-7.04h32.33v7.04h-12.02v32.71zM343.93 500.26c0 10.46-6.31 15-16.33 15-3.64 0-9.06-.92-12.61-4.85-2.16-2.42-3-5.64-3.09-9.62v-26.36h8.46v25.78c0 5.54 3.22 8 7.09 8 5.7 0 8-2.79 8-7.6v-26.18h8.47v25.84zM384.11 474.42h7.76v39.75h-8.32l-16.22-28.35h-.08v28.35h-7.77v-39.75h8.74l15.79 27.68h.1v-27.68zM415.29 514.17h-8.32v-39.75h8.32v39.75zM447.7 514.17h-8.3v-32.71h-11.99v-7.04h32.31v7.04H447.7v32.71zM491.11 514.17h-8.31v-15.01l-13.72-24.74h9.79l8.25 17.28 7.87-17.28h9.4l-13.28 24.85v14.9zM267.6 0L0 131.8v61.91h30v185.71h473.23V193.71h36V131.8L267.6 0zm177.73 323.49H87.87V153.77L267.6 61.91l177.73 91.86v169.72z"></path><path d="M349.46 213.66H183.73v-59.89h165.73v59.89zM349.46 299.57H183.73v-59.94h165.73v59.94z"></path></g></svg></a> 3957 </div> 3958 <div class="additional-icons"> 3959 <div class="additional-icon smoking-icon"> 3960 <span class="no-smoking"><svg width="29px" height="27px" viewbox="0 0 29 27" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><title>No Smoking</title><defs><polygon id="smk-path-1" points="0 0 27.5968814 0 27.5968814 26.999997 0 26.999997"></polygon></defs> <g stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"> <g transform="translate(-391.000000, -680.000000)"> <g transform="translate(299.000000, 677.000000)"> <g transform="translate(0.000000, 3.000000)"> <g> <g id="smk-Group-13" transform="translate(92.727273, 0.000000)"> <polygon fill="#FFFFFF" points="11.547456 13.5 14.7843228 16.3928571 9.85621521 16.3928571 9.85621521 13.5"></polygon> <polygon fill="#FFFFFF" points="16.7555659 16.3928571 13.8742793 16.3928571 10.8418367 13.5 13.7231233 13.5"></polygon> <polygon fill="#FFFFFF" points="21.6836735 13.5 21.6836735 16.3928571 17.9183512 16.3928571 14.7843228 13.5"></polygon><polygon fill="#FFFFFF" points="22.669295 16.3928571 23.6549165 16.3928571 23.6549165 13.5 22.669295 13.5"></polygon><polygon fill="#FFFFFF" points="23.6549165 16.3928571 24.640538 16.3928571 24.640538 13.5 23.6549165 13.5"></polygon><polygon fill="#FFFFFF" points="3.94248609 16.3928571 8.87059369 16.3928571 8.87059369 13.5 3.94248609 13.5"></polygon><g><path d="M22.7073613,11.7723835 C22.7073613,11.7723835 23.8437749,8.36952189 21.1399429,7.38084863 C18.4361048,6.39218144 19.023896,4.3228711 19.023896,4.3228711 C19.023896,4.3228711 17.7777814,7.19691492 20.50
396051282,8.64543155 C23.2324751,10.0939482 22.7073613,11.7723835 22.7073613,11.7723835" fill="#FFFFFF"></path><g><mask id="smk-mask-2" fill="white"><use xlink:href="#smk-path-1"></use></mask> <g></g> <path d="M25.3136127,11.3071237 C25.4562096,12.0273381 25.5285163,12.7651237 25.5285163,13.499997 C25.5285163,14.2348642 25.4562096,14.9726558 25.3136127,15.6928763 C25.1697997,16.4193158 24.9531774,17.1341909 24.6697705,17.8176489 C24.2327723,18.8714801 23.638696,19.8525388 22.9040641,20.73357 L22.7955668,20.8636797 L22.6741705,20.7449707 L6.26844536,4.70159494 L6.40149984,4.59549404 C7.3024359,3.87707562 8.30564616,3.29612663 9.38327261,2.86878034 C10.0821359,2.59165112 10.813163,2.3798073 11.5560283,2.23914034 C12.2925402,2.09970506 13.0470015,2.02900753 13.7984413,2.02900753 C14.5498873,2.02900753 15.3043425,2.09970506 16.0408482,2.23914034 C16.7837196,2.3798073 17.5147468,2.59165112 18.2136038,2.86878034 C19.6672573,3.44523944 20.9724258,4.29309404 22.0928568,5.38878438 C23.2132754,6.48445652 24.0802793,7.76079809 24.6697705,9.18234506 C24.9531774,9.8658091 25.1697997,10.5806842 25.3136127,11.3071237 L25.3136127,11.3071237 Z M21.1953828,22.404506 C20.2944468,23.1229183 19.2912303,23.7038673 18.2136038,24.1312015 C17.5147344,24.408361 16.7837072,24.6202048 16.0408482,24.7608415 C15.3043673,24.9002889 14.5499059,24.9709925 13.7984413,24.9709925 C13.0469767,24.9709925 12.2925216,24.9002889 11.5560283,24.7608415 C10.8131817,24.6202048 10.0821669,24.4083671 9.38327261,24.1312136 C7.92961914,23.5547424 6.62445061,22.7068938 5.50403205,21.6112096 C4.38359488,20.5155313 3.51659096,19.2391958 2.92711218,17.8176489 C2.64369901,17.1341848 2.42707678,16.4193098 2.28326378,15.6928763 C2.14066686,14.9726558 2.06836638,14.2348642 2.06836638,13.499997 C2.06836638,12.7651237 2.14066686,12.0273381 2.28326378,11.3071176 C2.42707678,10.5806842 2.64369901,9.86581517 2.92711218,9.18235112 C3.36410414,8.12853202 3.95817422,7.14747337 4.69281857,6.26642393 L4.80130961,6.13631427 L4.92270592,6.25502933 L21.207041,22.17969 L21.3284311,22.2984111 L21.1953828,22.404506 Z M13.7984413,-3.03370787e-06 C10.1110176,-3.03370787e-06 6.64429866,1.40424573 4.03689631,3.95405899 C-1.34563334,9.21771202 -1.34563334,17.782294 4.03689631,23.045941 C6.64429866,25.5957543 10.1110176,26.999997 13.7984413,26.999997 C17.4858651,26.999997 20.9525778,25.5957543 23.5599802,23.045941 C28.942516,17.782294 28.942516,9.21771202 23.5599802,3.95405899 C20.9525778,1.40424573 17.4858651,-3.03370787e-06 13.7984413,-3.03370787e-06 L13.7984413,-3.03370787e-06 Z" fill="#FFFFFF" mask="url(#smk-mask-2)"></path> </g> </g> </g> </g> </g> </g> </g> </g> </svg></span> 3961 </div> 3962 <div class="additional-icon pet-icon"> 3963 <span class="pet-friendly"><svg width="32px" height="25px" viewbox="0 0 32 25" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> <title>Pet Friendly</title> <defs> <polygon id="pet-path-1" points="0 0 7.97653959 0 7.97653959 8.59846154 0 8.59846154"></polygon> <polygon id="pet-path-3" points="0 0 6.97947214 0 6.97947214 10.5092308 0 10.5092308"></polygon> <polygon id="pet-path-5" points="0 0 7.97653959 0 7.97653959 10.5092308 0 10.5092308"></polygon> </defs> <g stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"> <g transform="translate(-438.000000, -680.000000)"> <g transform="translate(299.000000, 677.000000)"> <g transform="translate(0.000000, 3.000000)"> <g> <g transform="translate(139.090909, 0.000000)"> <g transform="translate(0.000000, 8.598462)"> <mask id="pet-mask-2" fill="white"> <use xlink:href="#pet-path-1"></use> </mask> <g></g> <path d="M7.44151235,3.65695265 C6.33284782,1.69247752 4.34305282,-0.539914672 2.40780476,0.117222695 C0.472637264,0.774360062 -0.675265612,4.07210848 0.43347949,6.03652111 C1.54222459,8.00099624 4.00980889,9.06085288 5.94497638,8.40371552 C7.88022444,7.74657815 8.55025745,5.62142778 7.44151235,3.65695265" fill="#FFFFFF" mask="url(#pet-mask-2)"></path> </g> <path d="M28.8022445,8.71568182 C27.1088975,8.05854427 25.3678924,10.2909996 24.3977376,12.2554128 C23.4276534,14.2198885 24.0138634,16.3451019 25.7072104,17.002177 C27.4005573,17.6593146 29.5596998,16.5994576 30.5297841,14.6349819 C31.4999388,12.6705687 30.4955914,9.37281938 28.8022445,8.71568182" fill="#FFFFFF"></path> <g transform="translate(6.979472, 0.000000)"> <mask id="pet-mask-4" fill="white"> <use xlink:href="#pet-path-3"></use> </mask> <g></g> <path d="M3.48973607,10.5092308 C5.41706452,10.5092308 6.97947214,8.4316757 6.97947214,5.86889954 C6.97947214,3.30612339 6.65218623,0 4.72485778,0 C2.79752933,0 0,3.30612339 0,5.86889954 C0,8.4316757 1.56240762,10.5092308 3.48973607,10.5092308" fill="#FFFFFF" mask="url(#pet-mask-4)"></path> </g> <g transform="translate(16.950147, 0.000000)"> <mask id="pet-mask-6" fill="white"> <use xlink:href="#pet-path-5"></use> </mask> <g></g> <path d="M3.98830733,10.5092308 C6.19094768,10.5092308 7.97653959,8.4316757 7.97653959,5.86889954 C7.97653959,3.30612339 4.7793933,0 2.57667788,0 C0.37411258,0 0,3.30612339 0,5.86889954 C0,8.4316757 1.7855919,10.5092308 3.98830733,10.5092308" fill="#FFFFFF" mask="url(#pet-mask-6)"></path> </g> <path d="M22.3769955,17.1870119 C21.4905181,16.6216338 20.7924113,15.8387143 20.3232888,14.9449411 C19.5391654,13.4507706 17.8770939,12.42 15.9531012,12.42 C14.1532456,12.42 12.582571,13.322045 11.7454334,14.6617086 C11.0687817,15.7444041 10.
39631601931,16.6943891 9.10456909,17.4795426 C7.39932527,18.7477792 6.57307919,20.5719146 7.17545871,22.1945692 C8.01095601,24.445576 11.279001,25.4559992 14.4748077,24.4514326 L14.4906857,24.4464213 C15.43851,24.147249 16.4676925,24.147249 17.4155168,24.4464213 L17.4313948,24.4514326 C20.6271359,25.4559992 23.8952465,24.445576 24.7307438,22.1945692 C25.3810853,20.4424645 24.365878,18.4554901 22.3769955,17.1870119" fill="#FFFFFF"></path> </g> </g> </g> </g> </g> </g> </svg></span> 3964 </div> 3965 </div> 3966 </div> 3967 </div> 3968 <div class="footer-bottom-row footer-bottom-row-2"> 3969 <div class="footer-copyright"> 3970 Copyright © 2026 777 Main. All Rights Reserved. 3971 </div> 3972 <div class="footer-additional-links-container"> 3973 <ul id="footerAdditionalLinks"><li class="additional-footer-link footer-link"><a href="https://www.winncompanies.com/winncompanies-privacy-policy" target="_blank" rel="noopener noreferrer" title="Privacy Policy">Privacy Policy<span class="sr-only"> (opens in a new tab)</span></a></li><li class="additional-footer-link footer-link"><a href="https://www.winncompanies.com/winn-tou" target="_blank" rel="noopener noreferrer" title="Terms Of Use">Terms Of Use<span class="sr-only"> (opens in a new tab)</span></a></li><li class="additional-footer-link footer-link"><a href="https://www.winncompanies.com/accessibility-statement" target="_blank" rel="noopener noreferrer" title="Accessibility Statement">Accessibility Statement<span class="sr-only"> (opens in a new tab)</span></a></li><li class="additional-footer-link footer-link"><a href="https://www.winncompanies.com/winncompanies-license-disclosures" target="_blank" rel="noopener noreferrer" title="Licenses and Disclosures">Licenses, Disclosures, and Disclaimers<span class="sr-only"> (opens in a new tab)</span></a></li></ul> 3974 </div> 3975 </div> 3976 <div class="footer-bottom-row footer-bottom-row-3"> 3977 <div class="footer-additional-logos"> 3978 3979 3980 3981 3982 </div> 3983 </div> 3984 <div class="footer-bottom-row footer-bottom-row-4"> 3985 <div class="footer-disclosure">TTY 711 3986</div> 3987 <a id="link-rp" href="https://www.realpage.com/apartment-marketing/" target="_blank" rel="noopener noreferrer" aria-label="RealPage apartment marketing (opens in a new tab)"><svg xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" viewbox="0 0 338.77332 76.466667" height="76.466667" width="338.77332" xml:space="preserve" version="1.1"><metadata><rdf:RDF><cc:Work rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs></defs><g transform="matrix(1.3333333,0,0,-1.3333333,0,76.466667)"><g transform="scale(0.1)"><path style="fill-opacity:1;fill-rule:nonzero;stroke:none" d="M 77.5547,545.898 H 0 V 133.203 h 250.879 v 69.492 H 77.5547 v 343.203"></path><path style="fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 405.578,365.84 c 10.715,0 20.16,-1.77 28.067,-5.254 7.875,-3.488 14.46,-8.211 19.574,-14.055 5.105,-5.84 8.906,-12.703 11.293,-20.39 2.172,-7.032 3.383,-14.453 3.597,-22.098 H 331.738 c 1.973,17.598 9.629,32.297 22.785,43.699 13.86,12.004 31.04,18.098 51.055,18.098 z m 97.969,18.34 c -12.121,12.695 -26.66,22.39 -43.231,28.82 -16.523,6.414 -34.746,9.668 -54.164,9.668 -20.949,0 -40.726,-3.645 -58.797,-10.832 -18.109,-7.219 -33.984,-17.473 -47.183,-30.488 -13.234,-13.039 -23.785,-29.012 -31.367,-47.469 -7.575,-18.457 -11.418,-39.223 -11.418,-61.699 0,-22.875 3.843,-43.645 11.426,-61.719 7.589,-18.098 18.253,-33.598 31.699,-46.074 13.426,-12.453 29.492,-22.219 47.761,-29.016 18.262,-6.785 38.508,-10.234 60.18,-10.234 52.418,0 93,18.945 120.633,56.297 l 1.434,1.933 -50.04,40.039 -1.527,-2.215 c -7.406,-10.73 -16.988,-19.289 -28.488,-25.41 -11.477,-6.113 -25.805,-9.211 -42.59,-9.211 -9.629,0 -19.023,1.692 -27.91,5.032 -8.938,3.347 -17.031,7.957 -24.063,13.691 -7.004,5.715 -12.703,12.629 -16.937,20.555 -3.832,7.16 -6.266,15.121 -7.227,23.672 h 209.645 l 0.269,2.199 c 0.395,3.211 0.594,6.426 0.594,9.519 v 9.211 c 0,25.098 -3.441,47.371 -10.223,66.211 -6.812,18.848 -16.394,34.832 -28.476,47.52"></path><path style="fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 732.648,259.316 h 13.047 v -7.296 c 0,-21.102 -5.965,-37.957 -17.722,-50.086 -11.746,-12.098 -29.356,-18.243 -52.336,-18.243 -5.567,0 -11.211,0.567 -16.789,1.68 -5.469,1.094 -10.438,2.938 -14.782,5.469 -4.242,2.469 -7.734,5.781 -10.39,9.863 -2.59,3.977 -3.91,9.031 -3.91,15.039 0,9.688 3.105,17.071 9.496,22.578 6.629,5.703 15.047,10.188 25.035,13.328 10.168,3.196 21.41,5.293 33.418,6.235 12.242,0.945 23.99
39876,1.433 34.933,1.433 z M 791,384.324 c -9.418,11.391 -22.422,20.735 -38.645,27.774 -16.164,7.011 -36.933,10.57 -61.746,10.57 -21.289,0 -42.589,-3.734 -63.312,-11.086 -20.762,-7.371 -39.363,-18.582 -55.281,-33.34 l -1.758,-1.633 39.004,-45.925 1.922,1.914 c 8.582,8.582 19.574,15.976 32.668,21.953 13.054,5.965 26.847,8.984 40.996,8.984 16.687,0 31.238,-4.023 43.25,-11.953 11.84,-7.852 17.597,-19.695 17.597,-36.223 v -4.402 c -20.64,-0.09 -42.047,-1.152 -63.668,-3.184 -22.554,-2.121 -43.394,-6.523 -61.929,-13.085 -18.719,-6.633 -34.258,-16.34 -46.18,-28.848 -12.109,-12.703 -18.254,-29.949 -18.254,-51.25 0,-16.516 3.516,-30.606 10.449,-41.906 6.883,-11.211 15.66,-20.387 26.09,-27.262 10.371,-6.859 21.879,-11.809 34.195,-14.738 12.239,-2.918 24.161,-4.395 35.418,-4.395 19.864,0 37.875,4.063 53.539,12.078 13.723,7.031 24.29,15.918 31.493,26.485 v -31.649 h 69.492 v 170.645 c 0,13.957 -1.871,28.117 -5.555,42.097 -3.73,14.114 -10.383,27.024 -19.785,38.379"></path><path style="fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 927.242,359.199 c 8.828,4.403 18.715,6.641 29.399,6.641 12.172,0 23.586,-2.902 33.918,-8.613 10.401,-5.774 18.661,-12.618 24.561,-20.34 l 1.63,-2.141 48.69,43.074 -1.45,1.86 c -11.4,14.508 -26.98,25.437 -46.32,32.476 -32.44,11.797 -67.959,13.789 -100.248,5.246 -13.258,
3987-3.507 -25.336,-8.957 -35.902,-16.191 -10.637,-7.293 -19.321,-16.777 -25.805,-28.184 -6.524,-11.464 -9.832,-25.254 -9.832,-40.968 0,-13.399 2.422,-24.825 7.195,-33.973 4.766,-9.133 11.195,-16.863 19.11,-22.988 7.832,-6.082 16.871,-11.043 26.859,-14.766 9.805,-3.652 20.09,-6.691 30.527,-9.016 20.797,-4.921 36.617,-9.89 47.02,-14.793 9.691,-4.589 14.402,-11.953 14.402,-22.507 0,-5.625 -1.226,-10.403 -3.641,-14.211 -2.449,-3.836 -5.734,-6.953 -9.773,-9.239 -4.168,-2.363 -8.777,-4.113 -13.711,-5.207 -4.98,-1.109 -9.93,-1.668 -14.715,-1.668 -14.496,0 -27.855,3.196 -39.711,9.5 -11.914,6.329 -21.715,14.426 -29.132,24.075 l -1.68,2.187 -49.313,-46.191 1.676,-1.817 c 13.617,-14.804 30.988,-26.355 51.613,-34.336 20.559,-7.937 41.981,-11.972 63.664,-11.972 15.059,0 29.879,1.668 44.043,4.968 14.244,3.301 26.924,8.75 37.714,16.204 10.85,7.5 19.63,17.382 26.11,29.375 6.51,12.031 9.81,26.867 9.81,44.089 0,13.813 -2.83,25.754 -8.4,35.5 -5.53,9.676 -12.83,17.879 -21.71,24.383 -8.76,6.43 -18.65,11.684 -29.42,15.61 -10.67,3.867 -21.334,6.992 -31.662,9.285 -19.403,4.57 -34.27,9.082 -44.203,13.398 -9.254,4.004 -13.75,10.692 -13.75,20.449 0,9.817 4.066,16.614 12.437,20.801"></path><path style="fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 1222.1,365.84 c 10.71,0 20.16,-1.77 28.06,-5.254 7.88,-3.488 14.46,-8.211 19.58,-14.055 5.1,-5.84 8.9,-12.703 11.29,-20.39 2.17,-7.032 3.38,-14.453 3.6,-22.098 h -136.37 c 1.97,17.598 9.63,32.297 22.78,43.699 13.86,12.004 31.04,18.098 51.06,18.098 z m 97.96,18.34 c -12.12,12.695 -26.66,22.39 -43.22,28.82 -16.53,6.414 -34.75,9.668 -54.17,9.668 -20.95,0 -40.73,-3.645 -58.8,-10.832 -18.1,-7.219 -33.98,-17.473 -47.18,-30.488 -13.23,-13.039 -23.78,-29.012 -31.37,-47.469 -7.57,-18.457 -11.41,-39.223 -11.41,-61.699 0,-22.875 3.84,-43.645 11.42,-61.719 7.59,-18.098 18.25,-33.598 31.7,-46.074 13.42,-12.453 29.49,-22.219 47.76,-29.016 18.26,-6.785 38.51,-10.234 60.18,-10.234 52.42,0 93,18.945 120.64,56.297 l 1.43,1.933 -50.04,40.039 -1.53,-2.215 c -7.4,-10.73 -16.99,-19.289 -28.49,-25.41 -11.47,-6.113 -25.8,-9.211 -42.59,-9.211 -9.62,0 -19.02,1.692 -27.91,5.032 -8.94,3.347 -17.03,7.957 -24.06,13.691 -7,5.715 -12.7,12.629 -16.94,20.555 -3.83,7.16 -6.26,15.121 -7.22,23.672 h 209.64 l 0.27,2.199 c 0.39,3.211 0.6,6.426 0.6,9.519 v 9.211 c 0,25.098 -3.45,47.371 -10.23,66.211 -6.81,18.848 -16.39,34.832 -28.48,47.52"></path><path style="fill-opacity:1;fill-rule:nonzero;stroke:none" d="M 1461.26,545.898 H 1383.7 V 133.203 h 250.88 v 69.492 h -173.32 v 343.203"></path><path style="fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 1826.13,259.316 h 13.05 v -7.296 c 0,-21.114 -5.97,-37.957 -17.72,-50.086 -11.75,-12.098 -29.36,-18.243 -52.34,-18.243 -5.56,0 -11.21,0.567 -16.79,1.68 -5.46,1.094 -10.44,2.938 -14.78,5.469 -4.24,2.469 -7.73,5.781 -10.39,9.863 -2.59,3.977 -3.91,9.031 -3.91,15.039 0,9.688 3.11,17.071 9.5,22.578 6.63,5.703 15.04,10.188 25.03,13.328 10.17,3.196 21.41,5.293 33.42,6.235 12.24,0.945 24,1.433 34.93,1.433 z m 58.36,125.008 c -9.41,11.379 -22.41,20.727 -38.64,27.774 -16.17,7.011 -36.94,10.57 -61.75,10.57 -21.29,0 -42.6,-3.734 -63.32,-11.086 -20.76,-7.371 -39.36,-18.582 -55.28,-33.34 l -1.75,-1.633 39,-45.925 1.92,1.914 c 8.58,8.582 19.57,15.976 32.67,21.953 13.05,5.965 26.85,8.984 41,8.984 16.68,0 31.23,-4.023 43.24,-11.953 11.84,-7.844 17.6,-19.695 17.6,-36.223 v -4.402 c -20.64,-0.09 -42.05,-1.152 -63.67,-3.184 -22.55,-2.121 -43.39,-6.523 -61.93,-13.085 -18.72,-6.633 -34.25,-16.34 -46.18,-28.848 -12.11,-12.703 -18.25,-29.949 -18.25,-51.25 0,-16.516 3.52,-30.606 10.45,-41.906 6.88,-11.211 15.66,-20.387 26.09,-27.262 10.37,-6.859 21.88,-11.809 34.19,-14.738 12.24,-2.918 24.16,-4.395 35.42,-4.395 19.87,0 37.88,4.063 53.54,12.078 13.73,7.031 24.29,15.918 31.49,26.477 v -31.641 h 69.5 v 170.645 c 0,13.925 -1.87,28.093 -5.56,42.097 -3.73,14.114 -10.38,27.024 -19.78,38.379"></path><path style="fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 2162.23,275.059 c 0,-10.43 -1.61,-21.036 -4.79,-31.512 -3.17,-10.422 -7.97,-19.848 -14.27,-28 -6.28,-8.125 -14.34,-14.871 -23.96,-20.059 -9.57,-5.144 -21,-7.765 -33.95,-7.765 -12.22,0 -23.26,2.519 -32.82,7.492 -9.65,5.008 -18.02,11.68 -24.87,19.836 -6.87,8.164 -12.14,17.488 -15.67,27.715 -3.55,10.242 -5.34,20.718 -5.34,3
39871.14 0,10.418 1.79,20.996 5.34,31.446 3.54,10.41 8.8,19.824 15.67,27.976 6.87,8.176 15.25,14.942 24.9,20.149 9.56,5.148 20.59,7.753 32.79,7.753 12.97,0 24.4,-2.519 33.98,-7.492 9.58,-4.976 17.64,-11.621 23.92,-19.746 6.31,-8.164 11.12,-17.488 14.28,-27.715 3.18,-10.3 4.79,-20.808 4.79,-31.218 z m 65.3,57.871 c -6.62,17.89 -16.08,33.664 -28.14,46.894 -12.08,13.231 -26.68,23.801 -43.41,31.399 -16.77,7.593 -35.33,11.445 -55.17,11.445 -12.86,0 -24.53,-1.488 -34.67,-4.414 -10.11,-2.922 -19.11,-6.574 -26.74,-10.879 -7.6,-4.289 -14.25,-9.055 -19.77,-14.172 -4.13,-3.84 -7.73,-7.598 -10.77,-11.23 v 191.562 h -74.1 V 133.203 h 70.66 v 37.207 c 9.49,-13.847 22.1,-24.707 37.56,-32.336 17.36,-8.582 36.24,-12.937 56.1,-12.937 21.37,0 40.81,4.051 57.79,12.043 16.92,7.976 31.53,18.836 43.41,32.273 11.87,13.438 21.14,29.402 27.55,47.473 6.41,18.054 9.65,37.617 9.65,58.133 0,20.527 -3.35,40 -9.95,57.871"></path><path style="fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 2441.16,279.656 c -8.76,6.43 -18.65,11.684 -29.42,15.61 -10.68,3.867 -21.35,6.992 -31.66,9.285 -19.42,4.57 -34.28,9.074 -44.21,13.398 -9.26,4.004 -13.75,10.692 -13.75,20.449 0,9.817 4.07,16.622 12.43,20.801 8.83,4.403 18.72,6.641 29.41,6.641 12.16,0 23.58,-2.902 33.91,-8.613 10.39,-5.762 18.65,-12.61 24.57,-20.34 l 1.63,-2.141 48.68,43.074 -1.45,1.86 c -11.4,14.508 -26.97,25.437 -46.31,32.476 -32.45,11.797 -67.97,13.789 -100.26,5.246 -13.25,-3.507 -25.34,-8.957 -35.89,-16.191 -10.64,-7.293 -19.33,-16.77 -25.82,-28.184 -6.52,-11.464 -9.82,-25.254 -9.82,-40.968 0,-13.407 2.43,-24.84 7.19,-33.973 4.77,-9.133 11.2,-16.863 19.11,-22.988 7.82,-6.075 16.87,-11.043 26.86,-14.766 9.8,-3.66 20.1,-6.691 30.53,-9.016 20.82,-4.921 36.63,-9.898 47.02,-14.793 9.68,-4.589 14.4,-11.953 14.4,-22.507 0,-5.625 -1.22,-10.414 -3.64,-14.211 -2.44,-3.836 -5.73,-6.946 -9.78,-9.239 -4.16,-2.363 -8.77,-4.113 -13.71,-5.207 -4.98,-1.101 -9.93,-1.668 -14.7,-1.668 -14.5,0 -27.87,3.196 -39.72,9.5 -11.91,6.321 -21.71,14.414 -29.13,24.075 l -1.68,2.187 -49.32,-46.191 1.68,-1.817 c 13.62,-14.804 30.99,-26.355 51.61,-34.336 20.57,-7.937 41.99,-11.972 63.67,-11.972 15.05,0 29.88,1.668 44.05,4.968 14.24,3.301 26.92,8.762 37.7,16.204 10.84,7.5 19.63,17.382 26.12,29.375 6.5,12.019 9.8,26.855 9.8,44.089 0,13.801 -2.82,25.743 -8.4,35.5 -5.54,9.688 -12.84,17.891 -21.7,24.383"></path><path style="fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 42.9727,23.2617 c 0,5.2227 -3.6446,10.4492 -11.6289,10.4492 H 14.7813 V 13.1055 h 16.5625 c 7.789,0 11.6289,5.2226 11.6289,10.1562 z M 14.7813,62.0039 V 45.1445 h 14.9843 c 6.6992,0 9.7578,4.4336 9.7578,8.6719 0,4.2383 -3.2539,8.1875 -9.2656,8.1875 z M 56.8711,22.2734 C 56.8711,11.0352 48.5938,1.08594 33.9063,1.08594 H 1.47656 V 73.9258 H 32.4258 c 13.8008,0 20.6015,-9.2695 20.6015,-18.1328 0,-6.4063 -3.8437,-12.6172 -9.957,-14.7852 9.3672,-2.4609 13.8008,-10.3555 13.8008,-18.7344"></path><path style="fill-opacity:1;fill-rule:nonzero;stroke:none" d="M 122.695,26.6094 V 1.08594 H 109.191 V 26.6094 L 84.25,73.9258 h 15.5742 l 16.0708,-33.1172 16.46,33.1172 h 15.473 L 122.695,26.6094"></path><path style="fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 243.805,40.5156 h 12.226 c 8.77,0 12.125,5.2149 12.125,10.5469 0,5.5195 -3.648,10.3438 -10.644,10.3438 h -13.707 z m 8.968,-12.125 h -8.968 V 1.08594 H 230.402 V 73.9258 h 27.11 c 16.652,0 24.441,-10.9375 24.441,-22.7656 0,-8.875 -4.633,-17.7422 -15.277,-21.1993 L 285.012,1.08594 H 269.039 L 252.773,28.3906"></path><path style="fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 321.742,73.9258 h 48.399 V 61.3086 H 335.25 V 44.1602 h 32.23 V 31.6406 H 335.25 V 13.6992 h 34.891 V 1.08594 H 321.742 V 73.9258"></path><path style="fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 426.105,29.7656 h 18.036 L 435.172,54.707 Z M 447.984,17.6445 H 422.16 L 416.148,1.08594 h -14.293 l 28.188,72.83986 h 10.352 L 468.293,1.08594 H 454 l -6.016,16.55856"></path><path style="fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 503.16,73.9258 h 13.504 V 13.9922 h 37.457 V 1.08594 H 503.16 V 73.9258"></path><path style="fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 627.238,50.3711 c 0,5.8086 -3.847,11.0352 -11.14,11.0352 H 602.887 V 39.1328 h 12.226 c 8.477,0 12.125,5.7188 12.125,11.2383 z m 13.7,-0.1953 c 0,-12.1289 -7.692,-23.3711 -26.219,-23.3711 H 602.887 V 1.08594 H 589.484 V 73.9258 h 26.317 c 17.844,0 25.137,-11.8281 25.137,-23.75"></path><path style="fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 689.008,29.7656 h 18.039 L 698.078,54.707 Z M 710.891,17.6445 H 685.063 L 679.055,1.08594 h -14.297 l 28.191,72.83986 h 10.352 L 731.195,1.08594 h -14.289 l -6.015,16.55856"></path><path style="fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 759.074,37.4609 c 0,22.1797 17.149,37.7422 38.442,37.7422 12.222,0 23.261,-5.2148 29.57,-12.2148 l -8.969,-9.4649 c
3987-5.226,5.3243 -12.519,8.6719 -20.601,8.6719 -14.098,0 -24.645,-10.4453 -24.645,-24.6367 0,-13.9063 10.25,-24.6484 24.445,-24.6484 7.989,0 15.672,3.5546 20.403,8.3789 v 11.0468 h -21.094 v 11.8243 h 33.516 V 14.6875 C 821.172,5.22266 809.641,0 796.926,0 774.941,0 759.074,15.8672 759.074,37.4609"></path><path style="fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 868.848,73.9258 h 48.398 V 61.3086 H 882.355 V 44.1602 h 32.231 V 31.6406 H 882.355 V 13.6992 h 34.891 V 1.08594 H 868.848 V 73.9258"></path><path style="fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 2513.13,400.293 h 2.73 c 1.6,0 4,0.066 4,2.805 0,2.664 -2.4,2.8 -4,2.8 h -2.73 z m -6.74,10.809 h 9.2 c 2.81,0 11.08,0 11.08,-8.407 0,-5.273 -3.07,-6.875 -6.07,-7.273 l 6.68,-10.344 h -7.02 l -5.93,10.012 h -1.14 v -10.012 h -6.8 z m 9.54,-32.098 c 9.94,0 18.02,8.476 18.02,18.816 0,10.344 -8.08,18.821 -18.02,18.821 -9.94,0 -18.03,-8.477 -18.03,-18.821 0,-10.34 8.09,-18.816 18.03,-18.816 z m 0,43.641 c 13.68,0 24.82,-11.141 24.82,-24.825 0,-13.679 -11.14,-24.82 -24.82,-24.82 -13.68,0 -24.83,11.141 -24.83,24.82 0,13.684 11.15,24.825 24.83,24.825"></path><path style="fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 957.199,60.5273 h 1.766 c 1.035,0 2.582,0.0391 2.582,1.8086 0,1.7188 -1.547,1.8047 -2.582,1.8047 h -1.766 z M 952.852,67.5 h 5.937 c 1.813,0 7.149,0 7.149,-5.4219 0,-3.4062 -1.977,-4.4414 -3.915,-4.6953 l 4.305,-6.668 h -4.519 l -3.836,6.4532 h -0.731 v -6.4532 h -4.39 z m 6.156,-20.7148 c 6.418,0 11.629,5.4726 11.629,12.1484 0,6.6719 -5.211,12.1406 -11.629,12.1406 -6.414,0 -11.629,-5.4687 -11.629,-12.1406 0,-6.6758 5.215,-12.1484 11.629,-12.1484 z m 0,28.164 c 8.828,0 16.015,-7.1836 16.015,-16.0156 0,-8.8281 -7.187,-16.0117 -16.015,-16.0117 -8.828,0 -16.016,7.1836 -16.016,16.0117 0,8.832 7.188,16.0156 16.016,16.0156"></path></g></g></svg></a> 3988 </div> 3989 </div> 3990 </div> 3991 </div> 3992 </footer> 3993 3994</div> 3995 3996 3997 3998 3999 4000 4001 4002 4003 4004 4005 4006 4007 4008 4009 4010 <div id="p_lt_zoneFooterCCPA_CCPABar_pnlCCPA" class="widget ccpa-widget"> 4011 4012 <div class="ccpa-widget-wrapper"> 4013 <div class="ccpa-widget-text"><a href="https://www.winncompanies.com/winncompanies-ccpa-rights" target="_blank" rel="noopener noreferrer">California Residents<span class="sr-only"> (opens in a new tab)</span></a></div> 4014 </div> 4015 4016</div> 4017 4018</div> 4019 4020 <button type="submit" tabindex="-1" aria-hidden="true" style="position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden">Submit</button> 4021 4022
4023<script type="text/javascript"> 4024//<![CDATA[ 4025 4026WebForm_InitCallback(); 4027theForm.oldSubmit = theForm.submit; 4028theForm.submit = WebForm_SaveScrollPositionSubmit; 4029 4030theForm.oldOnSubmit = theForm.onsubmit; 4031theForm.onsubmit = WebForm_SaveScrollPositionOnSubmit; 4032//]]> 4033</script>
4033 4034</form> 4035 4036 4037 4038 4039
4039<script type="text/javascript"> 4040 try { 4041 $(document).foundation(); 4042 } 4043 catch(err) {} 4044 </script>
4044 4045 <!-- ExternalResources_Footer --> 4046 <span id="cookie-preferences" hidden="hidden"></span> 4047 4048 <!-- /ExternalResources_Footer --> 4049</body> 4050</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.