PageSourceSearch

https://montclairbreadco.com/accessibility-page-01

html montclairbreadco.com collected 2026-10-10 01:15:04 UTC 70,810 bytes, 1,557 lines download raw bytes

1<!DOCTYPE html>
2�<html lang="en"><head><link rel="canonical" href="https://montclairbreadco.com/accessibility-page-01"/><!-- Google tag (gtag.js) -->
vendor: 71 bytes, line 2
2<script async="async" src="https://www.googletagmanager.com/gtag/js?id=
2G-VG24VK2VKT
vendor: 11 bytes, line 2
2"></script>
2<script>
3    window.dataLayer = window.dataLayer || [];
4    function gtag(){dataLayer.push(arguments);}
5    gtag('set', 'linker', {'domains': ['tmt.spotapps.co','spothopperapp.com']});
6    gtag('js', new Date());
7    gtag('config', 'G-XDVCL0GWNQ');
8    gtag('config', 'G-VG24VK2VKT');
9  </script>
9<!-- wcache 2026-10-09 08:02:17.108623Z --><!--
10smart_footer: true,
11smart_footer_version: 2,
12scripting_active: false
13--><meta charset="utf-8"/><meta content="IE=edge" http-equiv="X-UA-Compatible"/><meta content="width=device-width, initial-scale=1" name="viewport"/><meta name="description" content="At Montclair Bread Company, we're committed to web accessibility for all users. Read our accessibility statement or contact us for help."/><meta content="" name="author"/><meta content="Montclair Bread Company -" property="og:title"/><meta content="website" property="og:type"/><meta content="http://montclairbreadco.com/a-article" property="og:url"/><meta content="..." property="og:description"/><meta content="https://static.spotapps.co/website_images/ab_websites/159375_website_v1/social.jpg" property="og:image"/><meta content="Montclair Bread Company image" property="og:image:alt"/><meta content="image/png" property="og:image:type"/><meta content="summary_large_image" name="twitter:card"/><meta content="Montclair Bread Company -" name="twitter:title"/><meta content="..." name="twitter:description"/><meta content="https://static.spotapps.co/website_images/ab_websites/159375_website_v1/social.jpg" name="twitter:image"/><title>Accessibility Statement</title>
13<script>document.cookie='resolution='+Math.max(screen.width,screen.height)+("devicePixelRatio" in window ? ","+devicePixelRatio : ",1")+'; path=/';</script>
13<link href="https://static.spotapps.co/website_images/ab_websites/159375_website_v1/favicons/apple-touch-icon.png" rel="apple-touch-icon" sizes="180x180"/><link href="https://static.spotapps.co/website_images/ab_websites/159375_website_v1/favicons/favicon-32x32.png" rel="icon" sizes="32x32" type="image/png"/><link href="https://static.spotapps.co/website_images/ab_websites/159375_website_v1/favicons/favicon-16x16.png" rel="icon" sizes="16x16" type="image/png"/><link href="https://static.spotapps.co/website_images/ab_websites/159375_website_v1/favicons/site.webmanifest" rel="manifest"/><link color="#5bbad5" href="https://static.spotapps.co/website_images/ab_websites/159375_website_v1/favicons/safari-pinned-tab.svg" rel="mask-icon"/><link href="https://static.spotapps.co/website_images/ab_websites/159375_website_v1/favicons/favicon.ico" rel="shortcut icon"/><meta content="#da532c" name="msapplication-TileColor"/><meta content="https://static.spotapps.co/website_images/ab_websites/159375_website_v1/favicons/browserconfig.xml" name="msapplication-config"/><meta content="#ffffff" name="theme-color"/><link href="https://static.spotapps.co/web/montclairbreadco--com/lib/bootstrap/css/bootstrap.min.css" rel="stylesheet"/><link href="https://static.spotapps.co/web/montclairbreadco--com/lib/custom-scrollbar/jquery.mCustomScrollbar.css" rel="stylesheet"/><link href="https://static.spotapps.co/web/montclairbreadco--com/lib/font-awesome-4.7.0/css/font-awesome.min.css" rel="stylesheet"/><link href="https://static.spotapps.co/web/montclairbreadco--com/lib/hover_css/css/hover-min.css" rel="stylesheet"/><link href="https://static.spotapps.co/web/montclairbreadco--com/lib/owlcarousel/owl.carousel.min.css" rel="stylesheet"/><link href="https://static.spotapps.co/web/montclairbreadco--com/lib/owlcarousel/owl.theme.default.min.css" rel="stylesheet"/><link href="https://static.spotapps.co/web-lib/leaflet/[email protected]/dist/leaflet.css" rel="stylesheet"/><link href="https://static.spotapps.co/web/montclairbreadco--com/css/style.css?version2" id="mainCSS" rel="stylesheet"/><link href="https://static.spotapps.co/web/montclairbreadco--com/css/bottom_navigation_v1.css?v1722010843" rel="stylesheet"/><link href="css/custom.css?v1722010843&domain=montclairbreadco.com" rel="stylesheet"/><link href="https://static.spotapps.co/web/montclairbreadco--com/lib/icons_font/css/social_icons.css" rel="stylesheet"/><!--[if IE 7]><link rel="stylesheet" href="lib/icons_font/css/social_icons-ie7.css"><![endif]--><link href="https://static.spotapps.co/web/montclairbreadco--com/lib/twitter_x_font_icon/css/twitter_x.css" rel="stylesheet"/><!--[if IE 7]><link rel="stylesheet" href="lib/twitter_x_font_icon/css/twitter_x-ie7.css"><![endif]--><style>
14
15        html{
16            height: 100%;
17        }
18
19        .webkit-mobile-body{
20            height: 100%;
21            overflow: hidden;
22        }
23
24        .webkit-mobile-body>div:first-child{
25            height:100%;
26            overflow: auto;
27            -webkit-overflow-scrolling: touch;
28        }
29
30    </style>
30<script src="https://static.spotapps.co/websites/lib/lazysizes/lazysizes.min.js" async=""></script>
30<script>
31function ga_check(){
32  return true;
33}
34</script>
34<script>
35function universal_ga(action, type, category, ev_action, label){
36  if(typeof ga === 'function')
37  {
38    if(!(action && label))
39      ga(action, type, category)
40    else
41      ga(action, type, category, ev_action, label)
42  }
43
44  if(typeof gtag === 'function')
45  {
46    if(!(action && label))
47    {
48      hash = category
49      ev_label = hash["eventLabel"]
50      var splits = ev_label.match(/.{1,100}/g) ?? [];
51      delete(hash["eventLabel"])
52
53      if(splits.length <= 1)
54        hash["eventLabel"] = ev_label
55      else
56      {
57        for (let i = 0; i < splits.length; i++) {
58          var key = "eventLabel_"+i
59          hash[key] = splits[i]
60        }
61      }
62      console.log(hash)
63      gtag("event", hash["eventCategory"], hash);
64    }
65    else
66    {
67      var hash = {
68        eventCategory: category,
69        eventAction: ev_action
70      }
71
72      var splits = label.match(/.{1,100}/g) ?? [];
73      if(splits.length <= 1)
74        hash["eventLabel"] = label
75      else
76      {
77        for (let i = 0; i < splits.length; i++) {
78          var key = "eventLabel_"+i
79          hash[key] = splits[i]
80        }
81      }
82      gtag("event", hash["eventCategory"], hash);
83    }
84  }
85}
86</script>
86<script>    function getPromotionUrlParams(){
87      var params_str = sessionStorage.getItem('shUrlParams');
88      if (params_str != null){
89        return JSON.parse(params_str);
90      }else{
91        return {};
92      }
93    }
94
95    function getPromotionSourceDetails(){
96        var params_str = localStorage.getItem('promotionSourceDetails');
97        if (params_str != null){
98          return JSON.parse(params_str);
99        }else{
100          return {};
101        }
102    }
103
104    function getLastEmailVisitInDays(){
105      var promotionSourceDetails = getPromotionSourceDetails();
106      if (!promotionSourceDetails['last_visit_email'] ){
107        return null;
108      }
109      return Math.floor((new Date() - new Date(promotionSourceDetails['last_visit_email'])) / (1000 * 60 * 60 * 24));
110    }
111
112    function getLastSocialVisitInDays(){
113      var promotionSourceDetails = getPromotionSourceDetails();
114      if (!promotionSourceDetails['last_visit_social'] ){
115        return null;
116      }
117      return Math.floor((new Date() - new Date(promotionSourceDetails['last_visit_social'])) / (1000 * 60 * 60 * 24));
118    }
119
120    var shUrlParams = getPromotionUrlParams();
121    var promotionSourceDetails = getPromotionSourceDetails();
122
123    new URL(document.location).searchParams.forEach(function(value, paramName){
124
125     shUrlParams[paramName] = value;
126
127     if (paramName == 'source' && value =='social' ){
128       promotionSourceDetails['last_visit_social'] = new Date();
129       localStorage.setItem('promotionSourceDetails', JSON.stringify(promotionSourceDetails));
130     }
131
132     if (paramName == 'source' && value =='email' ){
133       promotionSourceDetails['last_visit_email'] = new Date();
134       localStorage.setItem('promotionSourceDetails', JSON.stringify(promotionSourceDetails));
135     }
136
137    });
138
139    sessionStorage.setItem('shUrlParams', JSON.stringify(shUrlParams))
140</script>
140<style>a:focus:not(:focus-visible){outline:none;box-shadow:none;}
141a.get-directions-footer-link{display:inline-block;transform-origin:left center;transition:transform .2s ease;}
142a.get-directions-footer-link:hover{transform:scale(1.08);}
143@media (prefers-reduced-motion:reduce){a.get-directions-footer-link{transition:none;transform:none;}}
144a.get-directions-footer-link,a.get-directions-footer-link:hover{color:inherit!important;}</style></head><body class="drink-menu article-background   "><div><header style="background-color:#000000;"><style>
145
146  .nav-v7 .navbar-logo .container {
147    height: 70px;
148  }
149  .nav-v7 .navbar-logo .header-logo img {
150    max-height: 70px;
151  }
152
153
154.navbar.nav-v6 .navbar-logo .container {
155  height: 90px;
156  padding-top: 10px;
157  padding-bottom: 10px;
158}
159.navbar.nav-v6.nav-scroll .navbar-logo .container {
160  height: 60px;
161  padding-top: 0px;
162  padding-bottom: 0px;
163}
164.navbar.nav-v6 .header-logo img {
165  max-width: 100%;
166}
167.navbar.nav-v6.nav-scroll .header-logo img {
168  max-width: 80%;
169}
170.nav-v7 .navbar-logo .header-logo img {
171  max-height: 90px;
172}
173.nav-v7.nav-scroll .navbar-logo .header-logo img {
174  max-height: 60px;
175}
176
177@media (max-width: 767px) {
178  /* DO NOT change mobile nav height on page scroll */
179  .navbar.nav-v6 .navbar-header,
180  .navbar.nav-v6.nav-scroll .navbar-header {
181    padding-top: 10px;
182    padding-bottom: 10px;
183  }
184  .navbar.nav-v6 .socialnav,
185  .navbar.nav-v6.nav-scroll .socialnav {
186    margin-top: 10px;
187  }
188  .navbar.nav-v6 .container,
189  .navbar.nav-v6.nav-scroll .container {
190    padding-top: 0;
191    padding-bottom: 0;
192  }
193  .navbar.nav-v6 .header-logo,
194  .navbar.nav-v6.nav-scroll .header-logo {
195    height: 70px;
196  }
197  .navbar.nav-v6 .header-logo img {
198    max-height: 100%;
199  }
200  .navbar.nav-v6.nav-scroll .header-logo img {
201    max-width: 100%;
202  }
203  /* HOME page CHANGE mobile nav height on page scroll */
204  /* Remove body.home-page from below code if there should be mobile nav height change on ALL pages */
205  body.home-page .navbar.nav-v6 .navbar-header {
206    padding-top: 10px;
207    padding-bottom: 10px;
208  }
209  body.home-page .navbar.nav-v6.nav-scroll .navbar-header{
210    padding-top: 0px;
211    padding-bottom: 0px;
212  }
213  body.home-page .navbar.nav-v6 .socialnav {
214    margin-top: 10px;
215  }
216  body.home-page .navbar.nav-v6.nav-scroll .socialnav {
217    margin-top: 0px;
218  }
219  body.home-page .navbar.nav-v6 .container{
220    padding-top: 0;
221    padding-bottom: 0;
222  }
223  body.home-page .navbar.nav-v6.nav-scroll .container {
224    padding-top: 0;
225    padding-bottom: 0;
226  }
227  body.home-page .navbar.nav-v6 .header-logo {
228    height: 70px;
229  }
230  body.home-page .navbar.nav-v6.nav-scroll .header-logo {
231    height: 50px;
232  }
233  body.home-page .navbar.nav-v6 .header-logo img {
234    max-height: 100%;
235    max-width: 100%;
236  }
237  body.home-page .navbar.nav-v6.nav-scroll .header-logo img {
238    max-width: 80%;
239  }
240}
241
242
243.navbar-regular .navbar-collapse.collapse.in {
244  background-color: transparent;
245  width: 100%;
246}
247.navbar.nav-v6 .navbar-tabs {
248    background-color: #fff;
249    -webkit-box-shadow: 0px 4px 4px 0px rgba(0,0,0,0);
250    -moz-box-shadow: 0px 4px 4px 0px rgba(0,0,0,0);
251    box-shadow: 0px 4px 4px 0px rgba(0,0,0,0);
252}
253.navbar.nav-v6.nav-scroll .navbar-tabs {
254    background-color: #FFFFFF;
255    -webkit-box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.2);
256    -moz-box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.2);
257    box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.2);
258}
259.drink-menu .navbar.nav-v6 .navbar-tabs {
260  background-color: #FFFFFF;
261  -webkit-box-shadow: 0px 4px 4px 0px rgba(0,0,0,0);
262  -moz-box-shadow: 0px 4px 4px 0px rgba(0,0,0,0);
263  box-shadow: 0px 4px 4px 0px rgba(0,0,0,0);
264}
265.drink-menu .navbar.nav-v6.nav-scroll .navbar-tabs {
266  background-color: #FFFFFF;
267  -webkit-box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.2);
268  -moz-box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.2);
269  box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.2);
270}
271li.drop-down-link .sub-menu {
272  background-color: #fff;
273  color: #000;
274  }
275.nav-scroll li.drop-down-link .sub-menu {
276  background-color: #FFFFFF;
277  color: #000;
278}
279.drink-menu li.drop-down-link .sub-menu {
280  background-color: #FFFFFF;
281  color: #000;
282}
283.drink-menu .nav-scroll li.drop-down-link .sub-menu {
284  background-color: #FFFFFF;
285  color: #000;
286}
287li.drop-down-link .sub-menu a,
288li.drop-down-link div.drop-down {
289  color: #000;
290}
291.nav-scroll li.drop-down-link .sub-menu a,
292.nav-scroll li.drop-down-link div.drop-down {
293  color: #000;
294}
295.drink-menu li.drop-down-link .sub-menu a,
296.drink-menu li.drop-down-link div.drop-down {
297  color: #000;
298}
299.drink-menu .nav-scroll li.drop-down-link .sub-menu a,
300.drink-menu .nav-scroll li.drop-down-link div.drop-down {
301  color: #000;
302}
303
304.navbar.nav-v6 .navbar-logo {
305  background-color: #fff;
306}
307.navbar.nav-v6.nav-scroll .navbar-logo {
308  background-color: #fff;
309}
310.drink-menu .navbar.nav-v6 .navbar-logo {
311  background-color: #fff;
312}
313.drink-menu .navbar.nav-v6.nav-scroll .navbar-logo {
314  background-color: #fff;
315}
316
317.navbar-regular.nav-v6 .navbar-nav>li>a,
318.navbar-regular.nav-v6 .navbar-nav>li>a:hover,
319.navbar-regular.nav-v6 .navbar-nav>.active>a,
320.navbar-regular.nav-v6 .navbar-nav>.active>a:focus,
321.navbar-regular.nav-v6 .navbar-nav>.active>a:hover{
322  border: none;
323  border-right: 1px solid #000;
324  background-color: transparent;
325  color: #B53D50;
326}
327.navbar-regular.nav-v6 .navbar-nav>li>a {
328  color: #000;
329}
330.drink-menu .navbar.nav-v6 .navbar-nav>li>a {
331  color: #000;
332  border-right: 1px solid #000;
333}
334.drink-menu .navbar-regular.nav-v6 .navbar-nav>li>a:hover,
335.drink-menu .navbar-regular.nav-v6 .navbar-nav>.active>a,
336.drink-menu .navbar-regular.nav-v6 .navbar-nav>.active>a:focus,
337.drink-menu .navbar-regular.nav-v6 .navbar-nav>.active>a:hover{
338  color: #B53D50;
339}
340
341li.drop-down-link .sub-menu a:hover,
342li.drop-down-link .sub-menu a:focus{
343  color: #B53D50;
344}
345.drink-menu li.drop-down-link .sub-menu a:hover,
346.drink-menu li.drop-down-link .sub-menu a:focus {
347  color: #B53D50;
348}
349
350.navbar-regular.nav-v7 .navbar-contact .navbar-nav>li>a,
351.navbar-regular.nav-v7 .navbar-contact .navbar-nav>li>a:hover,
352.navbar-regular.nav-v7 .navbar-contact .navbar-nav>.active>a,
353.navbar-regular.nav-v7 .navbar-contact .navbar-nav>.active>a:focus,
354.navbar-regular.nav-v7 .navbar-contact .navbar-nav>.active>a:hover{
355  color: #B53D50;
356}
357.navbar-regular.nav-v7 .navbar-contact .navbar-nav>li>a {
358  color: #000;
359}
360.drink-menu .navbar.nav-v7 .navbar-nav>li>a {
361  color: #000;
362}
363.drink-menu .navbar-regular.nav-v7 .navbar-contact .navbar-nav>li>a {
364  color: #000;
365}
366.drink-menu .navbar-regular.nav-v7 .navbar-contact .navbar-nav>li>a:hover,
367.drink-menu .navbar-regular.nav-v7 .navbar-contact .navbar-nav>.active>a,
368.drink-menu .navbar-regular.nav-v7 .navbar-contact .navbar-nav>.active>a:focus,
369.drink-menu .navbar-regular.nav-v7 .navbar-contact .navbar-nav>.active>a:hover {
370  color: #B53D50;
371}
372
373.navbar-regular.nav-v6 .navbar-toggle .icon-bar {
374  background-color: #000;
375}
376.drink-menu .navbar-regular.nav-v6 .navbar-toggle .icon-bar {
377  background-color: #000;
378}
379.navbar-regular.nav-v6 [aria-expanded="true"].navbar-toggle .icon-bar {
380  background-color: #B53D50;
381}
382.drink-menu .navbar-regular.nav-v6 [aria-expanded="true"].navbar-toggle .icon-bar {
383  background-color: #B53D50;
384}
385.navbar-regular.nav-v6.nav-scroll .navbar-nav>li>a,
386.navbar-regular.nav-v6.nav-scroll .navbar-nav>li>a:hover,
387.navbar-regular.nav-v6.nav-scroll .navbar-nav>.active>a,
388.navbar-regular.nav-v6.nav-scroll .navbar-nav>.active>a:focus,
389.navbar-regular.nav-v6.nav-scroll .navbar-nav>.active>a:hover{
390  border: none;
391  border-right: 1px solid #000;
392  color: #B53D50;
393}
394.navbar-regular.nav-v6.nav-scroll .navbar-nav>li>a {
395  color: #000;
396}
397.drink-menu .navbar.nav-v6.nav-scroll .navbar-nav>li>a {
398  color: #000;
399  border-right: 1px solid #000;
400}
401.drink-menu .navbar-regular.nav-v6.nav-scroll .navbar-nav>li>a:hover,
402.drink-menu .navbar-regular.nav-v6.nav-scroll .navbar-nav>.active>a,
403.drink-menu .navbar-regular.nav-v6.nav-scroll .navbar-nav>.active>a:focus,
404.drink-menu .navbar-regular.nav-v6.nav-scroll .navbar-nav>.active>a:hover {
405  color: #B53D50;
406}
407
408.nav-scroll li.drop-down-link .sub-menu a:hover,
409.nav-scroll li.drop-down-link .sub-menu a:focus {
410  color: #B53D50;
411}
412.drink-menu .nav-scroll li.drop-down-link .sub-menu a:hover,
413.drink-menu .nav-scroll li.drop-down-link .sub-menu a:focus {
414  color: #B53D50;
415}
416
417.navbar-regular.nav-v6.nav-scroll .navbar-contact .navbar-nav>li>a,
418.navbar-regular.nav-v6.nav-scroll .navbar-contact .navbar-nav>li>a:hover,
419.navbar-regular.nav-v6.nav-scroll .navbar-contact .navbar-nav>.active>a,
420.navbar-regular.nav-v6.nav-scroll .navbar-contact .navbar-nav>.active>a:focus,
421.navbar-regular.nav-v6.nav-scroll .navbar-contact .navbar-nav>.active>a:hover {
422  color: #B53D50;
423}
424.navbar-regular.nav-v6.nav-scroll .navbar-contact .navbar-nav>li>a {
425  color: #000;
426}
427.drink-menu .navbar.nav-v6.nav-scroll .navbar-contact .navbar-nav>li>a {
428  color: #000;
429}
430.drink-menu .navbar-regular.nav-v6.nav-scroll .navbar-contact .navbar-nav>li>a:hover,
431.drink-menu .navbar-regular.nav-v6.nav-scroll .navbar-contact .navbar-nav>.active>a,
432.drink-menu .navbar-regular.nav-v6.nav-scroll .navbar-contact .navbar-nav>.active>a:focus,
433.drink-menu .navbar-regular.nav-v6.nav-scroll .navbar-contact .navbar-nav>.active>a:hover{
434  color: #B53D50;
435}
436
437.navbar-regular.nav-v6.nav-scroll .navbar-toggle .icon-bar {
438  background-color: #000;
439}
440.drink-menu .navbar-regular.nav-v6.nav-scroll .navbar-toggle .icon-bar {
441  background-color: #000;
442}
443.navbar-regular.nav-v6.nav-scroll [aria-expanded="true"].navbar-toggle .icon-bar {
444  background-color: #B53D50;
445}
446.drink-menu .navbar-regular.nav-v6.nav-scroll [aria-expanded="true"].navbar-toggle .icon-bar{
447  background-color: #B53D50;
448}
449.navbar.nav-v6 .header-logo-text{
450  color: #000;
451}
452.navbar.nav-v6.nav-scroll .header-logo-text{
453  color: #000;
454}
455.navbar.nav-v6 .social-icon{
456  color: #000;
457}
458.navbar.nav-v6.nav-scroll .social-icon{
459  color: #000;
460}
461.navbar.nav-v6 .social-square .contact-icon:hover {
462  color: #000;
463  background-color: #B53D50;
464}
465.navbar.nav-v6.nav-scroll .social-square .contact-icon:hover {
466  color: #000;
467  background-color: #B53D50;
468}
469
470.drink-menu .navbar.nav-v6 .header-logo-text{
471  color: #000;
472}
473.drink-menu .navbar.nav-v6.nav-scroll .header-logo-text{
474  color: #000;
475}
476.drink-menu .navbar.nav-v6 .social-icon{
477  color: #000;
478}
479.drink-menu  .navbar.nav-v6.nav-scroll .social-icon{
480  color: #000;
481}
482.drink-menu .navbar.nav-v6 .social-square .contact-icon:hover {
483  color: #000;
484  background-color: #B53D50;
485}
486.drink-menu .navbar.nav-v6.nav-scroll .social-square .contact-icon:hover {
487  color: #000;
488  background-color: #B53D50;
489}
490.navbar.nav-v6 .navbar-logo .container {
491  border-bottom: 1px solid #B53D50;
492}
493.navbar.nav-v6.nav-scroll .navbar-logo .container {
494  border-bottom: 1px solid #B53D50;
495}
496.drink-menu .navbar.nav-v6 .navbar-logo .container {
497  border-bottom: 1px solid #B53D50;
498}
499.drink-menu .navbar.nav-v6.nav-scroll .navbar-logo .container {
500  border-bottom: 1px solid #B53D50;
501}
502@media (max-width: 767px) {
503  .navbar.nav-v6 {
504      background-color: #fff;
505      -webkit-box-shadow: 0px 4px 4px 0px rgba(0,0,0,0);
506      -moz-box-shadow: 0px 4px 4px 0px rgba(0,0,0,0);
507      box-shadow: 0px 4px 4px 0px rgba(0,0,0,0);
508  }
509  .navbar.nav-v6.nav-scroll {
510      background-color: #FFFFFF;
511      -webkit-box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.2);
512      -moz-box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.2);
513      box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.2);
514  }
515  .drink-menu .navbar.nav-v6 {
516    background-color: #FFFFFF;
517    -webkit-box-shadow: 0px 4px 4px 0px rgba(0,0,0,0);
518    -moz-box-shadow: 0px 4px 4px 0px rgba(0,0,0,0);
519    box-shadow: 0px 4px 4px 0px rgba(0,0,0,0);
520  }
521  .drink-menu .navbar.nav-v6.nav-scroll {
522    background-color: #FFFFFF;
523    -webkit-box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.2);
524    -moz-box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.2);
525    box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.2);
526  }
527  .navbar.nav-v6 .container,
528  .navbar.nav-v6.nav-scroll .container,
529  .drink-menu .navbar.nav-v6 .container,
530  .drink-menu .navbar.nav-v6.nav-scroll .container {
531    border-bottom: none;
532  }
533  .navbar.nav-v6 .navbar-header {
534    border-bottom: 2px solid #B53D50;
535  }
536  .navbar.nav-v6.nav-scroll .navbar-header {
537    border-bottom: 2px solid #B53D50;
538  }
539  .drink-menu .navbar.nav-v6 .navbar-header {
540    border-bottom: 2px solid #B53D50;
541  }
542  .drink-menu .navbar.nav-v6.nav-scroll .navbar-header {
543    border-bottom: 2px solid #B53D50;
544  }
545  li.drop-down-link .sub-menu,
546  .drink-menu li.drop-down-link .sub-menu {
547    background-color: transparent;
548  }
549  .nav-scroll li.drop-down-link .sub-menu,
550  .drink-menu .nav-scroll li.drop-down-link .sub-menu {
551    background-color: transparent;
552  }
553    .navbar-regular.nav-v6 .navbar-nav>li>a:hover,
554  .navbar-regular.nav-v6 .navbar-nav>.active>a,
555  .navbar-regular.nav-v6 .navbar-nav>.active>a:focus,
556  .navbar-regular.nav-v6 .navbar-nav>.active>a:hover{
557    background-color: #B53D50;
558    color: #000;
559  }
560  .navbar-regular.nav-v6.nav-scroll .navbar-nav>li>a:hover,
561  .navbar-regular.nav-v6.nav-scroll .navbar-nav>.active>a,
562  .navbar-regular.nav-v6.nav-scroll .navbar-nav>.active>a:focus,
563  .navbar-regular.nav-v6.nav-scroll .navbar-nav>.active>a:hover{
564    background-color: #B53D50;
565    color: #000;
566  }
567  .drink-menu .navbar-regular.nav-v6 .navbar-nav>li>a:hover,
568  .drink-menu .navbar-regular.nav-v6 .navbar-nav>.active>a,
569  .drink-menu .navbar-regular.nav-v6 .navbar-nav>.active>a:focus,
570  .drink-menu .navbar-regular.nav-v6 .navbar-nav>.active>a:hover{
571    background-color: #B53D50;
572    color: #000;
573  }
574  .drink-menu .navbar-regular.nav-v6.nav-scroll .navbar-nav>li>a:hover,
575  .drink-menu .navbar-regular.nav-v6.nav-scroll .navbar-nav>.active>a,
576  .drink-menu .navbar-regular.nav-v6.nav-scroll .navbar-nav>.active>a:focus,
577  .drink-menu .navbar-regular.nav-v6.nav-scroll .navbar-nav>.active>a:hover{
578    background-color: #B53D50;
579    color: #000;
580  }
581
582  .navbar-regular.nav-v6 li.drop-down-link.active .drop-down .fa.fa-angle-up {
583    color: #B53D50;
584  }
585  .navbar-regular.nav-v6.nav-scroll li.drop-down-link.active .drop-down .fa.fa-angle-up {
586    color: #B53D50;
587  }
588  .drink-menu .navbar-regular.nav-v6 li.drop-down-link.active .drop-down .fa.fa-angle-up {
589    color: #B53D50;
590  }
591  .drink-menu .navbar-regular.nav-v6.nav-scroll li.drop-down-link.active .drop-down .fa.fa-angle-up {
592    color: #B53D50;
593  }
594}
595</style><!-- nav --><nav class="navbar nav-v4 nav-v6 nav-v7 navbar-regular navbar-fixed-top" id="navbar" role="navigation"><div class="visuallyhidden" id="skip"><a href="#content">Skip to Main Content</a></div><div class="desktop-navigation logo-center"><div class="navbar-logo"><div class="container"><a class="header-logo logo-top" href="/#"><img alt="Montclair Bread Company logo top - Homepage" class="img-responsive logo-top" src="https://static.spotapps.co/website_images/ab_websites/159375_website_v1/logo_new.jpg"/></a><a class="header-logo logo-scroll" href="/"><img alt="Montclair Bread Company logo scroll - Homepage" class="img-responsive logo-scroll" src="https://static.spotapps.co/website_images/ab_websites/159375_website_v1/logo_new.jpg"/></a><div class="navbar-contact"><ul class="nav navbar-nav navbar-right"><li class="nav-email"><a href="mailto:[email protected]"><i aria-hidden="true" class="fa fa-envelope-o"></i><span>[email protected]</span></a></li></ul></div></div></div><div class="navbar-tabs"><div class="container"><div class="navbar-content"><ul class="nav navbar-nav"><li class=" nav-order-link"><a class="link-order-sh" href="https://rabbleriseonline.square.site/#" id="https://rabbleriseonline.square.site/#_link" target="_self">
596                              
597                              Order
598                              
599                        </a></li><li class=" nav-menu-page"><a class="" href="/montclair-montclair-bread-company-food-menu" id="/Montclair-Montclair-Bread-Company-food-menu_link" target="_self">
600                              
601                              Menu
602                              
603                        </a></li><li class=" nav-catering-link"><a class="link-catering-sh" href="/montclair-montclair-bread-company-catering#" id="/Montclair-Montclair-Bread-Company-catering#_link" target="_self">
604                              
605                              Catering
606                              
607                        </a></li><li class=" "><a class="" href="/montclair-montclair-bread-company-events" id="/Montclair-Montclair-Bread-Company-events_link" target="_self">
608                              
609                              Events
610                              
611                        </a></li><li class=" "><a class="" href="/montclair-montclair-bread-company-about" id="/Montclair-Montclair-Bread-Company-about_link" target="_self">
612                              
613                              About
614                              
615                        </a></li><li class=" nav-parties-link"><a class="link-parties-sh" href="/montclair-montclair-bread-company-party#" id="/Montclair-Montclair-Bread-Company-party#_link" target="_self">
616                              
617                              Parties
618                              
619                        </a></li></ul><ul class="socialnav"><li class="social-links social-icons-holder social-square"><a class="pull-left contact-icon" href="https://www.instagram.com/rabblerise" target="_blank"><i class="social-icon fa fa-instagram"></i><span>Instagram page</span></a></li><li class="social-links social-icons-holder social-square"><a class="pull-left contact-icon" href="https://www.google.com/search?q=montclair+bread+company&rlz=1C1YTUH_enRS1077RS1077&oq=Montclair+Bread+Company&gs_lcrp=EgZjaHJvbWUqCggAEAAY4wIYgAQyCggAEAAY4wIYgAQyDQgBEC4YrwEYxwEYgAQyBwgCEAAYgAQyBwgDEAAYgAQyBwgEEAAYgAQyBggFEEUYPTIGCAYQRRg9MgYIBxBFGD2oAgCwAgA&sourceid=chrome&ie=UTF-8#lrd=0x89c25551fdb80067:0x3e9e74
619117fa6d039,1,,,," target="_blank"><i aria-hidden="true" class="social-icon fa fa-google"></i><span>Google page</span></a></li></ul></div></div></div></div><div class="mobile-navigation"><div class="container"><a class="header-logo logo-top" href="/#"><img alt="Montclair Bread Company logo top - Homepage" class="img-responsive logo-top" src="https://static.spotapps.co/website_images/ab_websites/159375_website_v1/logo_new.jpg"/></a><a class="header-logo logo-scroll" href="/"><img alt="Montclair Bread Company logo scroll - Homepage" class="img-responsive logo-scroll" src="https://static.spotapps.co/website_images/ab_websites/159375_website_v1/logo_new.jpg"/></a><ul class="socialnav"><li class="social-links social-icons-holder social-square"><a class="pull-left contact-icon" href="https://www.instagram.com/rabblerise" target="_blank"><i class="social-icon fa fa-instagram"></i><span>Instagram page</span></a></li><li class="social-links social-icons-holder social-square"><a class="pull-left contact-icon" href="https://www.google.com/search?q=montclair+bread+company&rlz=1C1YTUH_enRS1077RS1077&oq=Montclair+Bread+Company&gs_lcrp=EgZjaHJvbWUqCggAEAAY4wIYgAQyCggAEAAY4wIYgAQyDQgBEC4YrwEYxwEYgAQyBwgCEAAYgAQyBwgDEAAYgAQyBwgEEAAYgAQyBggFEEUYPTIGCAYQRRg9MgYIBxBFGD2oAgCwAgA&sourceid=chrome&ie=UTF-8#lrd=0x89c25551fdb80067:0x3e9e74117fa6d039,1,,,," target="_blank"><i aria-hidden="true" class="social-icon fa fa-google"></i><span>Google page</span></a></li></ul><div class="navbar-header"><button class="navbar-toggle" data-target="#navbar-collapse-1" data-toggle="collapse" type="button"><span class="sr-only">Toggle navigation</span><span class="icon-bar"></span><span class="icon-bar"></span><span class="icon-bar"></span></button></div><div class="collapse navbar-collapse" id="navbar-collapse-1"><ul class="nav navbar-nav navbar-right"><li class=" nav-order-link"><a class="link-order-sh" href="https://rabbleriseonline.square.site/#" id="mobile_https://rabbleriseonline.square.site/#_link" target="_self">
620                      Order
621                      
622                  </a></li><li class=" nav-menu-page"><a class="" href="/montclair-montclair-bread-company-food-menu" id="mobile_/Montclair-Montclair-Bread-Company-food-menu_link" target="_self">
623                      Menu
624                      
625                  </a></li><li class=" nav-catering-link"><a class="link-catering-sh" href="/montclair-montclair-bread-company-catering#" id="mobile_/Montclair-Montclair-Bread-Company-catering#_link" target="_self">
626                      Catering
627                      
628                  </a></li><li class=" "><a class="" href="/montclair-montclair-bread-company-events" id="mobile_/Montclair-Montclair-Bread-Company-events_link" target="_self">
629                      Events
630                      
631                  </a></li><li class=" "><a class="" href="/montclair-montclair-bread-company-about" id="mobile_/Montclair-Montclair-Bread-Company-about_link" target="_self">
632                      About
633                      
634                  </a></li><li class=" nav-parties-link"><a class="link-parties-sh" href="/montclair-montclair-bread-company-party#" id="mobile_/Montclair-Montclair-Bread-Company-party#_link" target="_self">
635                      Parties
636                      
637                  </a></li></ul></div></div></div></nav></header><main id="content" role="main"><article><div class="pagecontent"><div class="tabnav"></div><div class="tabs-container"><style>
638
639.drink-menu .article-background, .drink-menu.article-background .pagecontent {
640  background-color: #000;
641  color: #fff;
642}
643.drink-menu.article-background .pagecontent {
644  border: none;
645}
646.drink-menu.article-background .pagecontent * {
647  text-align: left !important;
648  color: #fff;
649}
650.drink-menu.article-background .tabs-container {
651  text-shadow: none;
652}
653.drink-menu.article-background,
654.drink-menu.article-background:before {
655  background-image: none;
656}
657
658.drink-menu.article-background .pagecontent a,
659.drink-menu.article-background .pagecontent a:hover {
660  color: #fff;
661}
662
663.drink-menu.article-background {
664  background-color: #000;
665}
666
667.ada-page-content.container {
668  padding-top: 40px;
669}
670
671</style><div class="scrolling"><div class="container ada-page-content"><h1>Accessibility Statement for Montclair Bread Company</h1><p>Montclair Bread Company is committed to making our site accessible to people with disabilities. We are continuously gathering feedback and improving the user experience for everyone.
672    </p><h2>Conformance</h2><p>To provide great experience to everyone we are using The Web Content Accessibility Guidelines (WCAG). The guidelines have three levels of accessibility (A, Level AA, and Level AAA). Montclair Bread Company has chosen level AA as a target for our website and we are fully committed to monitoring our site to maintain this level of compliance.
673    </p><h2>Third-Party Vendors</h2><p>We encourage our third party vendors (online order and delivery providers, reservations and event management, social media, review sites, travel recommendation sites, etc.) to provide content that is accessible and user friendly, even though we cannot control the
673ir content that appears on our website.
674    </p><h2>Feedback</h2><p>How are we doing? We welcome your feedback on how to improve accessibility and usability of Montclair Bread Company website. Please let us know using this email address: E-mail: <a href="mailto:[email protected]">[email protected]</a></p><p>
675We try to respond to feedback within 2 business days.
676</p></div></div></div></div></article></main></div><style type="text/css">
677    .navbar-fixed-bottom.nav-v1 {
678        bottom: -100px;
679    }
680    .navbar-fixed-bottom.nav-v1 .nav.navbar-nav.navbar-right {
681        background-color: #fff;
682    }
683    .navbar-fixed-bottom.nav-v1 .bottom-svg-border path,
684    .navbar-fixed-bottom.nav-v1 .bottom-svg-border polygon {
685      fill: #000;
686    }
687    .navbar-fixed-bottom.nav-v1 .bottom-list-item a {
688        color: #000;
689    }
690    .navbar-fixed-bottom.nav-v1 .bottom-list-item a:hover,
691    .navbar-fixed-bottom.nav-v1 .bottom-list-item a:focus {
692        color: #B53D50;
693    }
694</style><nav aria-label="mobile footer" class="navbar-fixed-bottom nav-v1" id="bottom-navbar"><div><ul class="nav navbar-nav navbar-right"><li class="bottom-list-item "><a class="bottom-link " href="https://rabbleriseonline.square.site/" id="bottom_link_4" target="_self">
695                        Order                    </a></li><li class="bottom-list-item "><a class="bottom-link " href="/montclair-montclair-bread-company-party" id="bottom_link_5" target="_self">
696                        Parties                    </a></li><li class="bottom-list-item "><a class="bottom-link " href="/montclair-montclair-bread-company-catering" id="bottom_link_6" target="_self">
697                        Catering                    </a></li></ul></div></nav>
697<script src="https://static.spotapps.co/web/montclairbreadco--com/lib/jquery/jquery.min.js"></script>
697<script src="https://static.spotapps.co/web/montclairbreadco--com/lib/bootstrap/js/bootstrap.min.js"></script>
697<script src="https://static.spotapps.co/web/montclairbreadco--com/lib/angular/angular.min.js"></script>
697<script src="https://static.spotapps.co/web/montclairbreadco--com/lib/underscorejs/underscore-min.js"></script>
697<script>
698
699	$("#bottom_link_4").on("click", function(){
700		if (ga_check())
701			universal_ga('send', 'event', 'Button', 'Click', 'Order Online');
702	});
703	$("#bottom_link_5").on("click", function(){
704		if (ga_check())
705			universal_ga('send', 'event', 'Button', 'Click', 'Private Party');
706	});
707	$("#bottom_link_6").on("click", function(){
708		if (ga_check())
709			universal_ga('send', 'event', 'Button', 'Click', 'Catering');
710	});
711  $('.header-logo, .nav-v2-home-btn').click(function(event) {
712    if ( window.location.pathname == '/' || window.location.pathname == '/index.php') {
713      event.preventDefault();
714      var windowScrollTop = $(window).scrollTop();
715      if(windowScrollTop > 150) {
716        $('html, body').animate({scrollTop: 0}, 750);
717      }
718    }
719  });
720
721$(".banner-section a.banner-pin").click(function(e) {
722    // target element id
723    var id = $(this).attr('href');
724
725    // target element
726    var section = $(id);
727    if (section.length === 0) {
728        return;
729    }
730
731    // prevent standard hash navigation (avoid blinking in IE)
732    e.preventDefault();
733
734    // top position relative to the document
735    var pos = section.offset().top - 100 + 10;
736
737    // animated top scrolling
738    $('body, html').animate({scrollTop: pos}, 750);
739});
740
741$(document).ready(function() {
742  var navHeight = $('nav.navbar').height();
743  $('html').css("scroll-padding-top", navHeight);
744});
745
746$(document).on('scroll', function (e) {
747    if($(document).scrollTop() > 0) {
748      $('.navbar.nav-v7').addClass('nav-scroll');
749    }else {
750      $('.navbar.nav-v7').removeClass('nav-scroll');
751    }
752});
753
754$(function() {
755  setDropDownMenuWidth();
756
757  function setDropDownMenuWidth() {
758    var tabs_list = $('.navbar-tabs .navbar-nav');
759
760    $(tabs_list).find('li.drop-down-link').each(function() {
761      var sub_menu_width = $(this).outerWidth(true);
762      if (sub_menu_width < 100) {
763        sub_menu_width = 100;
764      }
765      $(this).find('.sub-menu').css('width', sub_menu_width+'px');
766    });
767  }
768
769  $( window ).resize(function() {
770    setDropDownMenuWidth();
771  });
772
773});
774
775
776
777$( '.drop-down-link .drop-down' ).click(function(event) {
778  event.preventDefault();
779  event.stopPropagation();
780
781  var drop_down = $(this).closest('.drop-down-link');
782  var drop_down_a = $(this);
783
784  if($(drop_down_a).attr("aria-expanded") == "true") { 
785    $(drop_down_a).attr("aria-expanded",false)
786  } else { 
787    $(drop_down_a).attr("aria-expanded",true)
788  }
789  
790  var sub_menu = $(this).closest('.drop-down-link').find( '.sub-menu' );
791
792  if ( $(sub_menu).is( ':hidden' ) ) {
793    $(sub_menu).slideDown();
794    $(drop_down).addClass('active');
795  } else {
796    $(sub_menu).slideUp();
797    $(drop_down).removeClass('active');
798  }
799});
800
801$(".nav-v7 .navbar-contact .nav-address a").click(function(e) {
802
803  if ( window.location.pathname == '/' || window.location.pathname == '/index.php') {
804    // target element id
805    var id = $(this).attr('href').substr(1);
806
807    // target element
808    var section = $(id);
809    if (section.length === 0) {
810        return;
811    }
812
813    // prevent standard hash navigation (avoid blinking in IE)
814    e.preventDefault();
815
816    // top position relative to the document
817    var pos = section.offset().top - 100 + 10;
818
819    // animated top scrolling
820    $('body, html').animate({scrollTop: pos}, 750);
821
822  }
823});
824    setTimeout(function(){
825        $('.navbar-fixed-bottom.nav-v1').addClass('show-bottom-nav'); triggerShowFooterEvents();
826    }, 4000);</script>
826<script>
827(function() {
828  var name = "Montclair Bread Company";
829  var pid = "ChIJZwC4_VFVwokROdCmfxF0nj4";
830  function build_url() {
831    var q = encodeURIComponent(name).replace(/'/g, "%27");
832    return "https://www.google.com/maps/search/?api=1"
833         + "&query=" + q
834         + "&query_place_id=" + encodeURIComponent(pid);
835  }
836  window.google_map_url = build_url();
837  window.open_google_map = function() {
838    window.open(build_url(), "_blank");
839  };
840})();
841</script>
841<script>
842
843  var spot_id = 159375;
844  var sh_generic_form_params=JSON.parse('{"generic_contact_form_active":true,"texting_permissions_active":true,"title":"Contact us","instructions":"Please fill out the form and we will be in touch.","reasons":["To host a special event","To get a special event catered","To reserve a table","To apply for a job","Other Questions"],"custom_hours":"","hours":"","active_tmt_cta_links":{"cta_private_party":"https://montclairbreadco.com/-party","cta_catering":"https://montclairbreadco.com/-catering","cta_reservations":null,"cta_jobs":null},"label_for_texting_permission":"I’d like to get texts about specials, events, and other exclusive offers and announcements not available to general public"}');
845
846  if (false){
847    console.log("Check SpotHopper configuration. Probably there is no 'WEBSITE::DOMAIN_NAME' key for your website");
848  }
849
850  if (navigator.userAgent.match(/iPhone/i)
851       || navigator.userAgent.match(/iPad/i)
852       || navigator.userAgent.match(/iPod/i)){
853      $(document).ready(function(){
854            document.body.className += " " + "webkit-mobile-body";
855      });
856    }
857
858  var promotion_url_param_domain = getPromotionUrlParams()['domain'];
859  if ( promotion_url_param_domain && ( new URL(document.location).host == 'localhost:4000' || new URL(document.location).host == 'wcache.spotapps.co' ||  new URL(document.location).host == 'website-editor.spotapps.co' || new URL(document.location).host == 'website-editor-staging.spotapps.co' || new URL(document.location).host == 'wcache-staging.spotapps.co')){
860    $("a[href^='/']").each(function(){
861      if (this.href.indexOf('domain=') == -1){
862        var sh_internal_url = new URL(this.href);
863        sh_internal_url.searchParams.set("domain", promotion_url_param_domain);
864        this.href = sh_internal_url.toString();
865      }
866    })
867  }
868
869
870  function cta_link_matches_href(href, url){
871    var domain = 'montclairbreadco.com';
872    if(typeof url === 'undefined'){
873      return false;
874    }
875    var partsOfURL = url.split(domain);
876    if (partsOfURL.length != 2){
877      return href == url;
878    }else{
879      var urlPath = partsOfURL[1];
880      if (urlPath.substring(0,1) == "/"){
881        urlPath = urlPath.substring(1,urlPath.length);
882      }
883      return href.indexOf(urlPath, domain.length + href.indexOf(domain)-1) !== -1;
884    }
885  }
886
887  var all_cta_links = [{"id":852259,"spot_id":159375,"url":"https://montclairbreadco.com/-catering","cta_link_type":"catering","created_at":"2023-12-21T14:34:03+00:00","updated_at":"2024-09-01T10:47:22+00:00","made_of_food":false,"link_name":"Catering","target":null,"website_footer_label":"Catering","position":4},{"id":852260,"spot_id":159375,"url":"https://montclairbreadco.com/-party","cta_link_type":"private_parties","created_at":"2023-12-21T14:34:03+00:00","updated_at":"2024-09-01T10:47:22+00:00","made_of_food":false,"link_name":"Private Parties","target":null,"website_footer_label":"Parties","position":3},{"id":1056774,"spot_id":159375,"url":"https://montclairbreadco.com/-food-menu","cta_link_type":"food_menu","created_at":"2024-09-01T10:44:32+00:00","updated_at":"2024-09-01T10:47:22+00:00","made_of_food":false,"link_name":""},{"id":1056775,"spot_id":159375,"url":"https://montclairbreadco.com/-events","cta_link_type":"events","created_at":"2024-09-01T10:45:44+00:00","updated_at":"2024-09-01T10:47:22+00:00","made_of_food":false,"link_name":""},{"id":852263,"spot_id":159375,"url":"https://rabbleriseonline.square.site/","cta_link_type":"order","created_at":"2023-12-21T14:34:04+00:00","updated_at":"2024-09-01T10:47:22+00:00","made_of_food":false,"link_name":"","target":null,"website_footer_label":"Order","position":0}];
888
889  function find_cta_link(href) {
890    for (var i=0; i< all_cta_links.length; i++){
891      var cta_link = all_cta_links[i];
892      if ( cta_link_matches_href(href, cta_link.url)){
893        return cta_link;
894      }
895    }
896  }
897
898  function find_cta_links(href) {
899    var cta_links = []
900    for (var i=0; i< all_cta_links.length; i++){
901      var cta_link = all_cta_links[i];
902      if ( cta_link_matches_href(href, cta_link.url)){
903        cta_links.push(cta_link);
904      }
905    }
906    return cta_links;
907  }
908
909
910  function get_current_page_cta_link_types(){
911    var types = [];
912    var cta_links = find_cta_links(document.location.href);
913    for (var i=0; i<cta_links.length; i++){
914      types.push(cta_links[i].cta_link_type);
915    }
916    return types;
917  }
918
919
920  function is_food_menu_page(){
921    var cta_link_types = get_current_page_cta_link_types();
922    for (var i=0; i<cta_link_types.length; i++){
923      if ('food_menu' == cta_link_types[i])
924        return true;
925    }
926    return false;
927  }
928
929
930  function get_form_cat_from_cta(){
931    var cta_link = find_cta_link(document.location.href);
932    if (cta_link == null) {
933        return null;
934    }
935    if (cta_link.cta_link_type == 'private_parties'){
936        return 'private_party';
937    }else if (cta_link.cta_link_type == 'reservations'){
938        return 'reservation';
939    }else if (cta_link.cta_link_type == 'catering'){
940        return 'catering';
941    }else if (cta_link.cta_link_type == 'job_listing'){
942        return 'job_listings';
943    }else if (cta_link.cta_link_type == 'gift_cards'){
944          return 'gift_cards';
945    }
946    return null;
947  }
948
949  function element_has_events_defined(elem){
950    if ($._data(elem, "events") === undefined){
951      return false;
952    }
953    return true;
954  }
955
956  function create_ga_events_for_cta_clicks(){
957    if (typeof $ === 'function'){
958
959      var cta_link_of_the_page = find_cta_link(location.href);
960
961
962      $("a").each(function(index, elem){
963        var href = $(elem).attr('href');
964
965        if (href  === undefined ){
966           return;
967        }
968
969        if (href.substring(0,4) == 'tel:'){
970          if (!element_has_events_defined(elem)){  // not footer links
971            $(elem).on("click", function(){
972                universal_ga('send', 'event', {
973                  eventCategory: 'Button',
974                  eventAction: 'Click',
975                  eventLabel: 'Phone',
976                  transport: 'beacon'
977                });
978             });
979
980             if (cta_link_of_the_page){
981                $(elem).on("click", function(){
982                    universal_ga('send', 'event', {
983                      eventCategory: 'Button',
984                      eventAction: 'Click',
985                      eventLabel: cta_link_of_the_page.cta_link_type +  ' page phone',
986                      transport: 'beacon'
987                    });
988                 });
989             }
990          } else {
991             if (cta_link_of_the_page){
992               $(elem).on("click", function(){
993                   universal_ga('send', 'event', {
994                        eventCategory: 'Button',
995                        eventAction: 'Click',
996                        eventLabel: cta_link_of_the_page.cta_link_type +  ' page phone footer',
997                        transport: 'beacon'
998                   });
999               });
1000             }
1001          }
1002
1003
1004        }else{
1005          var cta_link = find_cta_link(href);
1006          if (elem.className != null && elem.className.indexOf("bottom-link") > -1){
1007            // console.log("bottom link detected");
1008          }else{
1009            if (cta_link != null){
1010              $(elem).on("click", function(){
1011                universal_ga('send', 'event', {
1012                        eventCategory: 'Website Link',
1013                        eventAction: 'Click',
1014                        eventLabel: cta_link.cta_link_type,
1015                        transport: 'beacon'
1016                  });
1017              });
1018            }
1019          }
1020        }
1021
1022
1023      });
1024    }
1025  }
1026
1027  if (typeof angular === "undefined") {
1028    create_ga_events_for_cta_clicks();
1029  } else {
1030    angular.element(document).ready(function () {
1031      create_ga_events_for_cta_clicks();
1032    });
1033  }
1034
1035
1036  function triggerShowFooterEvents(){
1037    if (window.screen.availWidth < 768){
1038        universal_ga('send', 'event', {
1039                eventCategory: 'Mobile Footer',
1040                eventAction: 'View',
1041                eventLabel: '',
1042                transport: 'beacon'
1043          });
1044    }
1045  }
1046
1047
1048
1049
1050  ////////////
1051  function smartFooterV2()
1052  {
1053    var list= document.getElementsByClassName("bottom-list-item");
1054    if (!list) return;
1055
1056    if (document.getElementById("bottom-navbar") == null){
1057      return;
1058    }
1059
1060    var bottomNav = document.querySelector('#bottom-navbar .navbar-nav');
1061    var footerLinkPaddingLeft = $('#bottom-navbar .navbar-nav li a').css('padding-left');
1062    var footerLinkPaddingRight = $('#bottom-navbar .navbar-nav li a').css('padding-right');
1063
1064    bottomNav.innerHTML = '';
1065    var linksWithPosition = all_cta_links.filter(e => e.position != null && e.position >= 0);
1066    linksWithPosition.sort(function(a,b) {
1067      return a.position - b.position;
1068    });
1069
1070    var footerLinkStyle = (footerLinkPaddingLeft == '0px' || footerLinkPaddingRight == '0px' ? 'style="padding-left: 8px; padding-right: 8px;"' : '');
1071
1072    linksWithPosition.forEach((e, i) => {
1073        var target = e.target || getUrlTarget(e.url);
1074        bottomNav.insertAdjacentHTML('beforeend',
1075        `<li class="bottom-list-item" style="white-space: nowrap;width: auto;"><a ${footerLinkStyle} class="bottom-link smart-footer-link" data-type="${e.cta_link_type}" data-position="${i}" target="${target}" href="${e.url}">${e.website_footer_label}</a></li>`);
1076    })
1077
1078    var intervalCount = 0
1079    var interval = setInterval(() => {
1080      if(intervalCount == 50){
1081        clearInterval(interval);
1082      }
1083      removeOverflowingFooterLinks();
1084      intervalCount ++;
1085    }, 200);
1086
1087    $('.smart-footer-link').on("click", function(){
1088          if (typeof shUrlParams !== "undefined" && shUrlParams['source'] === undefined){
1089                    shUrlParams['source'] = 'footer';
1090                    sessionStorage.setItem('shUrlParams', JSON.stringify(shUrlParams));
1091          }
1092
1093          var visibleLinks = $('.smart-footer-link').map(function (e) {
1094              return $(this).data('type');
1095          }).toArray().join(',');
1096
1097          universal_ga('send', 'event', {
1098                  eventCategory: 'Button',
1099                  eventAction: 'Click_footer_2',
1100                  eventLabel: "type:" + $(this).data('type') + "|position:" + $(this).data('position') + "|visible:" + visibleLinks,
1101                  transport: 'beacon'
1102            });
1103    });
1104  }
1105
1106  function removeOverflowingFooterLinks(){
1107    var bottomNavLinks = document.querySelectorAll('#bottom-navbar .navbar-nav li');
1108    var width_sum = 0;
1109
1110    bottomNavLinks.forEach(e => {
1111      width_sum += e.getBoundingClientRect().width;
1112      if ((width_sum) > window.innerWidth) {
1113        console.log(`%cLink %c${e.textContent} %cdeleted couldn't fit screen`,"color: #fff;background: #202124;", "background: red;color: #fff", "color: #fff;background: #202124;");
1114        e.remove();
1115      }
1116    });
1117  }
1118
1119  function getUrlTarget(url){
1120    if(url.startsWith('tel')){
1121      return '_self';
1122    }
1123    if(url.startsWith('/') || url.includes('tmt.spotapps.co') || url.includes(window.location.host)){
1124      return '_self';
1125    }
1126    return '_blank';
1127  }
1128
1129  function npb()
1130    {
1131    	var list= document.getElementsByClassName("bottom-list-item");
1132    	if (!list) return;
1133
1134      if (document.getElementById("bottom-navbar") == null){
1135        return;
1136      }
1137
1138      var url = ""
1139    	for (var i=0; i < all_cta_links.length; i++)
1140    	{
1141    		if (all_cta_links[i].cta_link_type == "order"){
1142          url = all_cta_links[i].url;
1143        }
1144    	}
1145
1146    	if ( url == ""){
1147        return;
1148      }
1149
1150    	for (i=0; i < list.length; i++)
1151    	{
1152    		console.log(cta_link_matches_href(list[i].firstChild.href, url));
1153    		if (cta_link_matches_href(list[i].firstChild.href,url))  return;
1154
1155    	};
1156
1157    	var item = list[list.length-1]
1158    	document.getElementById("bottom-navbar").getElementsByClassName("nav navbar-nav")[0].appendChild(item.cloneNode(true));
1159    	var width_sum = 0;
1160    	for (i=0; i < list.length; i++) {
1161    		width_sum += list[i].getBoundingClientRect().width;
1162    	}
1163
1164    	var item = list[list.length-1]
1165    	if ((width_sum - 10) > window.innerWidth) { item.parentNode.removeChild(item); console.log("link deleted couldn't fit screen"); return; }
1166
1167    	item.firstChild.text = "Order";
1168    	item.firstChild.href = url;
1169    	item.firstChild.id = "bottom_link_" + list.length;
1170
1171      $(item.firstChild).on("click", function(){
1172
1173          if (typeof shUrlParams !== "undefined" && shUrlParams['source'] === undefined){
1174                    shUrlParams['source'] = 'footer';
1175                    sessionStorage.setItem('shUrlParams', JSON.stringify(shUrlParams));
1176                  }
1177
1178          universal_ga('send', 'event', {
1179                  eventCategory: 'Button',
1180                  eventAction: 'Click',
1181                  eventLabel: 'Plan B-2 Order',
1182                  transport: 'beacon'
1183            });
1184      });
1185
1186
1187    }
1188
1189function activateSmartFooter(){
1190    var smart_footer_active = true;
1191    var smart_footer_version = 2;
1192    var man_bottom_active = false;
1193    if(window.location.hash == '#smartFooterV2=enabled'){
1194      smartFooterV2();
1195      return;
1196    }
1197    if (smart_footer_active && !man_bottom_active){
1198      if(smart_footer_version == 2 ){
1199          smartFooterV2();
1200       }else {
1201          npb();
1202       }
1203    }
1204  }
1205
1206  activateSmartFooter();
1207
1208  var corona_config_str = '{"id":107590,"spot_id":159375,"promote_deliveries":true,"promote_pick_up":true,"promote_gift_cards":true,"promote_private_parties":true,"promote_catering":true,"promote_reservations":true,"promote_happy_hour":true,"promote_events":true,"promote_walk_ins":true,"instructions_on_food_page":false,"food_page_instruction_text":"To place a delivery or curbside pick-up order, please call:","food_page_instruction_phone":null,"created_at":"2023-12-21T14:33:19+00:00","updated_at":"2024-08-09T14:41:11+00:00","food_page_button_color":null,"food_page_button_text_color":null,"food_page_link_color":null,"food_page_text_color":null,"wine_and_beer_to_go_license":false,"all_alcoholic_to_go_lincense":false,"current_operating_status":"Offering To Go and Dine-in with Full Capacity","contact_tracing_active":false,"contact_tracing_text":"In cooperation with health guidelines for contact tracing, please fill out the form below.","contact_tracing_address_required":false,"collapse_all":false,"deliveries_priority_value":4,"pick_ups_priority_value":3,"reservations_priority_value":0,"private_parties_priority_value":0,"catering_priority_value":5,"gift_cards_priority_value":3,"jobs_priority_value":0,"food_and_drinks_priority_value":3,"specials_priority_value":5,"national_days_priority_value":3,"holidays_priority_value":3,"sports_priority_value":3,"walk_ins_priority_value":3,"collecting_emails_priority_value":5,"collecting_phone_numbers_priority_value":5,"growing_social_media_followers_priority_value":5,"increasing_revenue_vs_saving_time_priority_value":5,"events_priority_value":3,"shopping_cart_type":"TMT","shopping_cart_active":false}';
1209  var corona_config =  corona_config_str != '' ?  JSON.parse('{"id":107590,"spot_id":159375,"promote_deliveries":true,"promote_pick_up":true,"promote_gift_cards":true,"promote_private_parties":true,"promote_catering":true,"promote_reservations":true,"promote_happy_hour":true,"promote_events":true,"promote_walk_ins":true,"instructions_on_food_page":false,"food_page_instruction_text":"To place a delivery or curbside pick-up order, please call:","food_page_instruction_phone":null,"created_at":"2023-12-21T14:33:19+00:00","updated_at":"2024-08-09T14:41:11+00:00","food_page_button_color":null,"food_page_button_text_color":null,"food_page_link_color":null,"food_page_text_color":null,"wine_and_beer_to_go_license":false,"all_alcoholic_to_go_lincense":false,"current_operating_status":"Offering To Go and Dine-in with Full Capacity","contact_tracing_active":false,"contact_tracing_text":"In cooperation with health guidelines for contact tracing, please fill out the form below.","contact_tracing_address_required":false,"collapse_all":false,"deliveries_priority_value":4,"pick_ups_priority_value":3,"reservations_priority_value":0,"private_parties_priority_value":0,"catering_priority_value":5,"gift_cards_priority_value":3,"jobs_priority_value":0,"food_and_drinks_priority_value":3,"specials_priority_value":5,"national_days_priority_value":3,"holidays_priority_value":3,"sports_priority_value":3,"walk_ins_priority_value":3,"collecting_emails_priority_value":5,"collecting_phone_numbers_priority_value":5,"growing_social_media_followers_priority_value":5,"increasing_revenue_vs_saving_time_priority_value":5,"events_priority_value":3,"shopping_cart_type":"TMT","shopping_cart_active":false}') : null;
1210
1211
1212  //corona instuctions
1213  function show_corona_instructions(text, phone, btnText){
1214    //format to US number
1215    var match = phone.match(/^(\d{3})(\d{3})(\d{4})$/);
1216
1217    if(corona_config.shopping_cart_type == "TMT" && corona_config.shopping_cart_active == true) {
1218        var linkLocation = "https://tmt.spotapps.co/ordering-menu/?spot_id="+corona_config.spot_id+"&images=yes&accordion=true";
1219        var btnLinkLocation = "https://tmt.spotapps.co/ordering-menu/?spot_id="+corona_config.spot_id+"&images=yes&accordion=true";
1220    }else {
1221        var linkLocation = 'tel:+1'+phone+'';
1222        var btnLinkLocation = 'tel:+1'+ match[1] + '-' + match[2] + '-' + match[3] +''
1223    }
1224    var appendPhone = 'tel:+1'+phone+'';
1225    //inject html content
1226    if ($('.food-menu-nav').length) {
1227      //new template
1228      var pageEl =  $('.food-menu-nav').css('margin','20px auto 10px auto');
1229      var textColor = rgb2hex($('.section-header').css('color'));
1230      var linkColor = rgb2hex($('.food-menu-nav-item.active').css('background-color'));
1231      var fontSize = parseInt($('.food-menu-nav-item').css('font-size'));
1232      fontSize = fontSize + Math.round(fontSize  * 0.25);
1233
1234      // var html = '<div id="show-corona-instructions" style="padding:20px;flex: 0 1 100%;" class="text-center"><p style="color:'+textColor+';">'+text+' <a onclick="ga(\'send\', \'event\', \'Button\', \'Click\', \'Corona Instructions Phone\');" style="color:'+linkColor+';"href="tel:+1'+phone+'">'+ match[1] + '-' + match[2] + '-' + match[3] +'</a></p><a onclick="ga(\'send\', \'event\', \'Button\', \'Click\', \'Corona Instructions Phone\');" style="font-size:'+fontSize+'px" class="food-menu-nav-item custom-temp-btn hvr-fade active" href="tel:+1'+phone+'">'+btnText+'</a></div>';
1235      var html = '<div id="show-corona-instructions" style="padding:20px;flex: 0 1 100%;" class="text-center"><p style="color:'+textColor+';">'+text+' <a onclick="ga(\'send\', \'event\', \'Button\', \'Click\', \'Corona Instructions Phone\');" style="text-decoration: underline;color:'+textColor+';" href="tel:+1'+phone+'">'+ match[1] + '-' + match[2] + '-' + match[3] +'</a></p><a onclick="ga(\'send\', \'event\', \'Button\', \'Click\', \'Corona Instructions Phone\');" style="display: inline-block !important;font-size:'+fontSize+'px" class="food-menu-nav-item custom-temp-btn hvr-fade active" href="'+btnLinkLocation +'">'+btnText+'</a></div>';
1236
1237    }else {
1238      //old template
1239      var pageEl = $('.tabnav');
1240      var textColor = rgb2hex($('.menu-item-name-traditional').css('color'));
1241      var linkColor = rgb2hex($('.style-traditional .tabnav .nav>li.active>a').css('color'));
1242
1243      var linkTextColor = getContrast50(linkColor);
1244      var fontSize = parseInt($('.menu-item-name-traditional').css('font-size'));
1245      fontSize = fontSize + Math.round(fontSize  * 0.25);
1246      var textTransform = $('.style-traditional .tabnav .nav>li>a').css('text-transform');
1247
1248      // var html = '<div id="show-corona-instructions" style="padding:20px;flex: 0 1 100%;" class="text-center"><p style="color:'+textColor+';margin-bottom:20px;">'+text+' <a onclick="ga(\'send\', \'event\', \'Button\', \'Click\', \'Corona Instructions Phone\');" style="color:'+linkColor+';"href="tel:+1'+phone+'">'+ match[1] + '-' + match[2] + '-' + match[3] +'</a></p><a onclick="ga(\'send\', \'event\', \'Button\', \'Click\', \'Corona Instructions Phone\');" style="margin: 20px auto; padding: 10px 50px 10px 30px; cursor: pointer; background-color: '+linkColor+'; background: '+linkColor+'; text-decoration: none; color: '+textColor+'; border: 2px solid '+linkColor+';font-size:'+fontSize+'px;text-transform: '+textTransform+'" href="tel:+1'+phone+'">'+btnText+'</a></div>';
1249      var html = '<div id="show-corona-instructions" style="padding:20px;flex: 0 1 100%;" class="text-center"><p style="color:'+textColor+';margin-bottom:20px;">'+text+' <a onclick="ga(\'send\', \'event\', \'Button\', \'Click\', \'Corona Instructions Phone\');" style="text-decoration: underline;color:'+textColor+';"href="tel:+1'+phone+'">'+ match[1] + '-' + match[2] + '-' + match[3] +'</a></p><a onclick="ga(\'send\', \'event\', \'Button\', \'Click\', \'Corona Instructions Phone\');" style="margin: 20px auto; padding: 10px 30px 10px 30px; cursor: pointer; background-color: '+linkColor+'; background: '+linkColor+'; text-decoration: none; color: '+linkTextColor+'; border: 2px solid '+linkColor+';font-size:'+fontSize+'px;text-transform: '+textTransform+'" href="'+btnLinkLocation+'">'+btnText+'</a></div>';
1250
1251    }
1252     //html content
1253    pageEl.prepend(html);
1254  }
1255
1256  function rgb2hex(rgb) {
1257    if(typeof rgb !== "undefined"){
1258      rgbColor = rgb.match(/^rgb\((\d+),\s*(\d+),\s*(\d+)\)$/);
1259      if (!rgbColor) {
1260        rgba = rgb.match(/^rgba?\((\d+),\s*(\d+),\s*(\d+)(,\s*\d+\.*\d+)?\)$/);
1261        return "#" + hex(rgba[1]) + hex(rgba[2]) + hex(rgba[3]);
1262      }
1263      function hex(x) {
1264          return ("0" + parseInt(x).toString(16)).slice(-2);
1265      }
1266      return "#" + hex(rgbColor[1]) + hex(rgbColor[2]) + hex(rgbColor[3]);
1267    }
1268    return rgb;
1269  }
1270
1271  function getContrast50(hexcolor){
1272    return (parseInt(hexcolor, 16) > 0xffffff/2) ? '#000':'#fff';
1273  }
1274
1275  function show_corona_sidebar_instructions(text, phone){
1276    //format to US number
1277    var match = phone.match(/^(\d{3})(\d{3})(\d{4})$/);
1278    var divWidth = 230;
1279    var top = 50;
1280    var linkSize = '1.6em';
1281    var pSize = $('p').css('font-size');
1282    var appendPhone = 'tel:+1'+phone+'';
1283
1284    if ($(window).width() < 1600)
1285      var top = 30;
1286    if ($(window).width() < 1200){
1287      var divWidth = 180;
1288      var linkSize = '1.4em';
1289      var pSize ='1.1em';
1290    }
1291
1292    if($('.food-menu-nav').length){ //new template
1293      var textColor = $('.food-menu-nav-item.active').css('color');
1294      var linkColor = $('.food-menu-nav-item.active').css('background-color');
1295
1296      var linkTextColor = $('.food-menu-nav-item.active').css('color');
1297      var parent = $('.food-menu-page');
1298    }
1299    else { //old template
1300      var textColor = $('.menu-item-name-traditional').css('color');
1301      var linkColor = $('.style-traditional .tabnav .nav>
1301li.active>a').css('color');
1302      var parent = $('.food-menu').length ? $('.food-menu') : $('.drink-menu');
1303      var linkTextColor = getContrast50(linkColor);
1304    }
1305
1306    // $(parent).append('<div id="corona-instructions-sidebar" style="display:none;position:fixed;width:'+divWidth+'px;top:'+top+'vh;right:0;background-color:'+linkColor+';padding:15px;text-align:center;color:'+textColor+';text-transform:uppercase;"><p style="margin:0 0 5px;font-size:'+pSize+';">'+text+'</p><i class="fa fa-phone" aria-hidden="true"></i> <a onclick="ga(\'send\', \'event\', \'Button\', \'Click\', \'Food Page Side Element Phone\');"  style="font-size:'+linkSize+';color:'+textColor+';" href="tel:+1'+phone+'">'+ match[1] + '-' + match[2] + '-' + match[3] +'</a></div>');
1307    $(parent).append('<div id="corona-instructions-sidebar" style="display:none;position:fixed;width:'+divWidth+'px;top:'+top+'vh;right:0;background-color:'+linkColor+';padding:15px;text-align:center;color:'+linkTextColor+';text-transform:uppercase;"><p style="margin:0 0 5px;font-size:'+pSize+';">'+text+'</p><i class="fa fa-phone" aria-hidden="true"></i> <a onclick="ga(\'send\', \'event\', \'Button\', \'Click\', \'Food Page Side Element Phone\');this.href=\'' + appendPhone + '\';"  style="font-size:'+linkSize+';color:'+linkTextColor+';" href="/call-us/'+phone+'">'+ match[1] + '-' + match[2] + '-' + match[3] +'</a></div>');
1308
1309    //check if resolution is bigger than tablet resolution
1310/*  if ($(window).width() > 991) {
1311      //detect scroll
1312      window.onscroll = function (e) {
1313      if ($(window).scrollTop() == 0) {
1314          $('#corona-instructions-sidebar').hide();
1315        }else {
1316          $('#corona-instructions-sidebar').show();
1317        }
1318      }
1319    } */
1320  }
1321
1322  function check_corona_config(config){
1323    console.log(config)
1324    if (config) {
1325      if (config.instructions_on_food_page && config.food_page_instruction_text && config.food_page_instruction_phone) {
1326        if (!config.promote_deliveries && config.promote_pick_up) {
1327          var btnText = 'Call For Pick Up';
1328        }
1329        if (config.promote_deliveries && !config.promote_pick_up) {
1330          var btnText = 'Call For Delivery';
1331        }
1332        if (config.promote_deliveries && config.promote_pick_up) {
1333          var btnText = 'Call For Pick Up Or Delivery';
1334        }
1335
1336        if(typeof btnText !== "undefined"){ // check if pick up or delivery are true
1337          if(config.shopping_cart_type == "TMT" && config.shopping_cart_active == true) {
1338                var btnText = 'ORDER NOW';
1339                    if($('.food-menu-nav').length){ //new template
1340                      var textColor = rgb2hex($('.section-header').css('color'));
1341                      var linkColor = rgb2hex($('.food-menu-nav-item.active').css('background-color'));
1342                      var fontSize = parseInt($('.food-menu-nav-item').css('font-size'));
1343                      fontSize = fontSize + Math.round(fontSize  * 0.25);
1344                    }
1345                    else { //old template
1346                        var textColor = rgb2hex($('.menu-item-name-traditional').css('color'));
1347                        var linkColor = rgb2hex($('.style-traditional .tabnav .nav>li.active>a').css('color'));
1348
1349                        var linkTextColor = getContrast50(linkColor);
1350                        var fontSize = parseInt($('.menu-item-name-traditional').css('font-size'));
1351                        fontSize = fontSize + Math.round(fontSize  * 0.25);
1352                    }
1353                show_corona_instructions('For online orders, use our own <a style="text-decoration:underline;color: '+textColor+';" href="https://tmt.spotapps.co/ordering-menu/?spot_id='+config.spot_id+'&images=yes&accordion=true#"> commission free ordering platform! </a> or call:', config.food_page_instruction_phone, btnText);
1354                show_corona_sidebar_instructions(btnText, config.food_page_instruction_phone);
1355            } else {
1356                show_corona_instructions(config.food_page_instruction_text, config.food_page_instruction_phone, btnText);
1357                show_corona_sidebar_instructions(btnText, config.food_page_instruction_phone);
1358            }
1359
1360        }
1361      }
1362    }
1363  }
1364
1365
1366  if (is_food_menu_page() && !window.location.search.includes("contactless=true")){
1367    $( document ).ready(function() {
1368       setTimeout(function(){
1369        check_corona_config(corona_config);
1370       }, 300);
1371    });
1372  }
1373
1374
1375
1376  function isPhone(phone){
1377      var regex = /^(\+\d{1,2}\s?)?\(?\d{3}\)?[\s.-]?\d{3}[\s.-]?\d{4}$/;
1378      return regex.test(phone);
1379  }
1380
1381  function sendEmail_MT (input_id) {
1382    const $loader = $("[data-id=newsletter-widget-2] .sph-loading-img");
1383
1384    const $step = {
1385      form: $("[data-id=newsletter-widget-2] .sph-email-form"),
1386      message: $("[data-id=newsletter-widget-2] .sph-response-message"),
1387    }
1388
1389    const $field = {
1390      email: $("[data-id=newsletter-widget-2] #sph-newsletter-input-" + input_id),
1391      phone: $("[data-id=newsletter-widget-2] #sph-newsletter-phone-" + input_id),
1392      consent: $("[data-id=newsletter-widget-2] #sph-newsletter-checkbox-phone-" + input_id),
1393    };
1394
1395    const $error = {
1396      email: $("[data-id=newsletter-widget-2] #sph-newsletter-email-error-" + input_id),
1397      phone: $("[data-id=newsletter-widget-2] #sph-newsletter-phone-error-" + input_id),
1398    };
1399
1400    if ($field.email.val().trim() === "") {
1401        $error.email
1402          .html("This field is required")
1403          .show();
1404    }
1405    else if (!isEmail($field.email.val().trim())) {
1406      $error.email
1407        .html("Please use the format “[email protected]”")
1408        .show();
1409    } else {
1410      $error.email
1411        .html("")
1412        .hide();
1413    }
1414
1415    if ($field.consent.is(':checked') && $field.phone.val().trim() === "") {
1416      $error.phone
1417        .html("This field is required")
1418        .show();
1419    } else if ($field.phone.val().trim().length > 0 && !isPhone($field.phone.val().trim())) {
1420      $error.phone
1421        .html("The phone number must contain 10 digits")
1422        .show();
1423    } else {
1424      $error.phone
1425        .html("")
1426        .hide();
1427    }
1428
1429    const errorField = $step.form.find('.sh-form-error:visible');
1430
1431    if (errorField.length > 0) {
1432      const input = errorField.first().next();
1433
1434      document.activeElement.blur();
1435
1436      setTimeout(() => {
1437        input.focus();
1438      }, 160)
1439
1440      return;
1441    }
1442
1443    $loader
1444      .show()
1445      .prev()
1446      .hide();
1447
1448    $.ajax({
1449      method: "POST",
1450      url: "https://www.spothopperapp.com/api/spots/159375/contacts/add_with_texting_permission",
1451      crossDomain: true,
1452      dataType: 'json',
1453      data: {
1454        email: $field.email.val().trim(),
1455        phone: $field.phone.val().trim(),
1456        texting_permission: $field.consent.is(':checked'),
1457      },
1458      success: function (data) {
1459        afterRequestSubmission(data);
1460      },
1461      error: function () {
1462        afterRequestSubmission("Something went wrong. Please try again later.");
1463      }
1464    });
1465
1466    function afterRequestSubmission (data) {
1467      $step.form.hide();
1468
1469      $step.message
1470        .html(data)
1471        .show()
1472        .trigger('focus');
1473    }
1474  }
1475</script>
1475<script>function addPromotionParamsToTMTLinks()
1476{
1477    if (sessionStorage.getItem('shUrlParams')) {
1478        let shParams = JSON.parse(sessionStorage.getItem('shUrlParams'));
1479        if (!Object.keys(shParams).length)
1480            return;
1481        if(!shParams.source)
1482            return;
1483        $('a').each(function () {
1484            if (this.href.includes('tmt.spotapps.co')) {
1485                if(this.href.includes('&source=') || this.href.includes('&destination=') || this.href.includes('&promotion='))
1486                    return;
1487
1488                this.href = this.href + '&source=' + shParams.source;
1489                if(shParams.destination)
1490                    this.href = this.href + '&destination=' + shParams.destination;
1491                if(shParams.promotion)
1492                    this.href = this.href + '&promotion=' + shParams.promotion;
1493                if(shParams.fb_post_id)
1494                    this.href = this.href + '&fb_post_id=' + shParams.fb_post_id;
1495                if(shParams.email_post_id)
1496                    this.href = this.href + '&email_post_id=' + shParams.email_post_id;
1497            }
1498        })
1499    }
1500}
1501setTimeout(function() {
1502  addPromotionParamsToTMTLinks();
1503  addFooterToSourceParam();
1504},600)
1505
1506function addFooterToSourceParam()
1507{
1508    $('.bottom-link').each(function (){
1509        if(shouldAddSourceParam(this.href))
1510          this.href = this.href + '&source=footer';
1511    })
1512    $('#sh-multiple-links-content-holder a').each(function (){
1513       if(shouldAddSourceParam(this.href))
1514          this.href = this.href + '&source=footer';
1515    })
1516}
1517function shouldAddSourceParam(link){
1518  if (link.includes('tmt.spotapps.co') && !link.includes('&source=')){
1519    return true;
1520  }
1521  return false;
1522}
1523</script>
1523<script>
1524;(async () => {
1525if (typeof window.focusTrap === 'undefined') {
1526    await getScript('https://unpkg.com/tabbable/dist/index.umd.js');
1527    await getScript('https://unpkg.com/focus-trap/dist/focus-trap.umd.js');
1528}
1529
1530document.querySelectorAll('.modal').forEach((element) => {
1531    const trap = window.focusTrap?.createFocusTrap(element, {
1532        allowOutsideClick: true,
1533    });
1534
1535    $(element).on('shown.bs.modal', () => {
1536	    trap?.activate();
1537	});
1538
1539	$(element).on('hidden.bs.modal', () => {
1540        trap?.deactivate();
1541    });
1542});
1543
1544async function getScript (source) {
1545    return new Promise((resolve, reject) => {
1546        const script = document.createElement('script');
1547        script.src = source;
1548        script.async = true;
1549
1550        script.onload = resolve;
1551        script.onerror = reject;
1552
1553        document.head.appendChild(script);
1554    });
1555}
1556})();
1557</script>
1557<script src="https://wcache-plugins.spotapps.co/production/wcpl_bootstrap_ada_fix/wcpl_bootstrap_ada_fix.js"></script>
1557<link href="https://wcache-plugins.spotapps.co/production/wcpl_bday_club/wcpl_bday_club.css" rel="stylesheet" media="screen"/>
1557<script src="https://wcache-plugins.spotapps.co/production/wcpl_bday_club/wcpl_bday_club.js"></script>
1557<script src="https://wcache-plugins.spotapps.co/production/wcpl_ga_tracking/wcpl_ga_tracking.js"></script>
1557<script src="https://wcache-plugins.spotapps.co/production/wcpl_media_controls/script.js"></script>
1557<link href="https://wcache-plugins.spotapps.co/production/wcpl_website_editor_interpreter/website_interpreter_helper_style.css" rel="stylesheet" media="screen"/>
1557<script>var changes_log_array = {};</script>
1557<script src="https://wcache-plugins.spotapps.co/production/wcpl_website_editor_interpreter/website_interpreter.js"></script>
1557</body></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.