PageSourceSearch

https://lucysonthesquare.com/about

html lucysonthesquare.com collected 2026-09-30 18:44:07 UTC 86,042 bytes, 1,910 lines download raw bytes

1<!DOCTYPE html>
2�<html lang="en"><head><meta content="null" property="og:site_name"/><meta content="http://lucysonthesquare.com/about" property="og:url"/><meta content="website" property="og:type"/><meta content="From wagon wheels to warm hospitality, Lucy's on the Square is Celina's most charming restaurant. Learn our story — Texas comfort food with a family heart." property="og:description"/><meta content="About | Lucy's on the Square" property="og:title"/><!-- 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-PRZ6C6JLBL');
8    gtag('config', 'G-VG24VK2VKT');
9  </script>
9<!-- wcache 2026-09-30 13:04:59.188690Z --><!--
10smart_footer: true,
11smart_footer_version: 2,
12scripting_active: false
13--><link href="https://lucysonthesquare.com/about" rel="canonical"/><meta charset="utf-8"/><meta content="IE=edge" http-equiv="X-UA-Compatible"/><meta content="width=device-width, initial-scale=1" name="viewport"/><meta content="From wagon wheels to warm hospitality, Lucy's on the Square is Celina's most charming restaurant. Learn our story — Texas comfort food with a family heart." name="description"/><meta content="" name="author"/><meta content="https://static.spotapps.co/website_images/ab_websites/634274_website_v1/social_share.jpg" property="og:image"/><meta content="Lucy's on the Square image" property="og:image:alt"/><meta content="image/png" property="og:image:type"/><meta content="615983408524009" property="fb:app_id"/><meta content="summary_large_image" name="twitter:card"/><meta content="Lucy's on the Square - About" name="twitter:title"/><meta content="Nothing says deep in the heart of Texas quite like Lucy's on the Square. The eatery resides in a more than 100-year-old brick building in Celina, Texas, about an hour away from the hect..." name="twitter:description"/><meta content="https://static.spotapps.co/website_images/ab_websites/634274_website_v1/social_share.jpg" name="twitter:image"/><title>About | Lucy&apos;s on the Square</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/634274_website_v1/favicons/favicon-96x96.png" rel="icon" sizes="96x96" type="image/png"/><link href="https://static.spotapps.co/website_images/ab_websites/634274_website_v1/favicons/favicon.svg" rel="icon" type="image/svg+xml"/><link href="https://static.spotapps.co/website_images/ab_websites/634274_website_v1/favicons/favicon.ico" rel="shortcut icon"/><link href="https://static.spotapps.co/website_images/ab_websites/634274_website_v1/favicons/apple-touch-icon.png" rel="apple-touch-icon" sizes="180x180"/><meta content="Lucy's on the Square" name="apple-mobile-web-app-title"/><link href="https://static.spotapps.co/website_images/ab_websites/634274_website_v1/favicons/site.webmanifest" rel="manifest"/><link href="https://static.spotapps.co/web/lucysonthesquare--com/lib/bootstrap/css/bootstrap.min.css" rel="stylesheet"/><link href="https://static.spotapps.co/web/lucysonthesquare--com/lib/custom-scrollbar/jquery.mCustomScrollbar.css" rel="stylesheet"/><link href="https://static.spotapps.co/web/lucysonthesquare--com/lib/uikit/css/uikit.docs.min.css" rel="stylesheet"/><link href="https://static.spotapps.co/web/lucysonthesquare--com/lib/uikit/css/slidenav.css" rel="stylesheet"/><link href="//static.spotapps.co/web-lib/leaflet/[email protected]/dist/leaflet-gesture-handling.min.css" rel="stylesheet" type="text/css"/><link href="https://static.spotapps.co/web/lucysonthesquare--com/lib/font-awesome-4.7.0/css/font-awesome.min.css" rel="stylesheet"/><link href="https://static.spotapps.co/web/lucysonthesquare--com/lib/hover_css/css/hover-min.css" rel="stylesheet"/><link href="https://static.spotapps.co/web/lucysonthesquare--com/lib/owlcarousel/owl.carousel.min.css" rel="stylesheet"/><link href="https://static.spotapps.co/web/lucysonthesquare--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/lucysonthesquare--com/css/style.css?version2" id="mainCSS" rel="stylesheet"/><link href="https://static.spotapps.co/web/lucysonthesquare--com/css/bottom_navigation_v1.css?v1786695874" rel="stylesheet"/><link href="css/custom.css?v1786695874&domain=lucysonthesquare.com" rel="stylesheet"/><link href="https://static.spotapps.co/web/lucysonthesquare--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/lucysonthesquare--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      .webkit-mobile-body>div:first-child{
15          -webkit-overflow-scrolling: touch;
16      }
17      .about-us-s1-wrapper .about-us-item-holder {
18        background-color: #fff;
19      }
20      .about-us-page .about-us-s1-content {
21        width: 40%;
22        color: #1D1C1B;
23        text-align: center;
24      }
25      .about-us-page .about-us-s1-slide {
26        width: 60%;
27      }
28      .about-us-page .about-us-s1-content h2 {
29        color: #1D1C1B;
30      }
31      .about-us-s1-slide .slideshow-controls-btn {
32        color: rgba(255, 255, 255, 0.8);
33      }
34            .about-us-page .about-us-s2-wrapper {
35        background-color: #fff;
36      }
37      .about-us-page .about-us-s2-image {
38        width: 40%;
39      }
40      .about-us-page .about-us-s2-content {
41        width: 60%;
42      }
43      .about-us-s2-wrapper .about-us-item-holder {
44        min-height: 40vh;
45      }
46      .about-us-v7-content .text-wrapper {
47        color: #1D1C1B;
48        background: rgba(250,250,250,0);
49      }
50      .about-page-content .about-us-v7-content .text-wrapper .text-content {
51        text-align: left;
52      }
53      .about-us-v7-content .text-wrapper h2 {
54        color: #1D1C1B;
55      }
56      .about-us-v7-content .text-wrapper:before {
57        background-image: url('https://static.spotapps.co/web/lucysonthesquare--com/');
58              }
59                  .about-us-s3-wrapper .map-footer {
60        background: rgba(0,0,0,0.6);
61        color: #fff;
62        text-align: center;
63      }
64      .about-us-s3-wrapper .map-footer a {
65        color: #fff;
66      }
67            @media (max-width: 991px) {
68        .about-us-page .about-us-s1-content,
69        .about-us-page .about-us-s1-slide,
70        .about-us-page .about-us-s2-image,
71        .about-us-page .about-us-s2-content {
72          width: 100%;
73        }
74        .about-us-s2-wrapper .about-us-item-holder {
75          min-height: auto;
76          height: auto;
77        }
78      }
79    </style>
79<script src="https://static.spotapps.co/websites/lib/lazysizes/lazysizes.min.js" async=""></script>
79<script>
80function ga_check(){
81  return true;
82}
83</script>
83<script>
84function universal_ga(action, type, category, ev_action, label){
85  if(typeof ga === 'function')
86  {
87    if(!(action && label))
88      ga(action, type, category)
89    else
90      ga(action, type, category, ev_action, label)
91  }
92
93  if(typeof gtag === 'function')
94  {
95    if(!(action && label))
96    {
97      hash = category
98      ev_label = hash["eventLabel"]
99      var splits = ev_label.match(/.{1,100}/g) ?? [];
100      delete(hash["eventLabel"])
101
102      if(splits.length <= 1)
103        hash["eventLabel"] = ev_label
104      else
105      {
106        for (let i = 0; i < splits.length; i++) {
107          var key = "eventLabel_"+i
108          hash[key] = splits[i]
109        }
110      }
111      console.log(hash)
112      gtag("event", hash["eventCategory"], hash);
113    }
114    else
115    {
116      var hash = {
117        eventCategory: category,
118        eventAction: ev_action
119      }
120
121      var splits = label.match(/.{1,100}/g) ?? [];
122      if(splits.length <= 1)
123        hash["eventLabel"] = label
124      else
125      {
126        for (let i = 0; i < splits.length; i++) {
127          var key = "eventLabel_"+i
128          hash[key] = splits[i]
129        }
130      }
131      gtag("event", hash["eventCategory"], hash);
132    }
133  }
134}
135</script>
135<script>    function getPromotionUrlParams(){
136      var params_str = sessionStorage.getItem('shUrlParams');
137      if (params_str != null){
138        return JSON.parse(params_str);
139      }else{
140        return {};
141      }
142    }
143
144    function getPromotionSourceDetails(){
145        var params_str = localStorage.getItem('promotionSourceDetails');
146        if (params_str != null){
147          return JSON.parse(params_str);
148        }else{
149          return {};
150        }
151    }
152
153    function getLastEmailVisitInDays(){
154      var promotionSourceDetails = getPromotionSourceDetails();
155      if (!promotionSourceDetails['last_visit_email'] ){
156        return null;
157      }
158      return Math.floor((new Date() - new Date(promotionSourceDetails['last_visit_email'])) / (1000 * 60 * 60 * 24));
159    }
160
161    function getLastSocialVisitInDays(){
162      var promotionSourceDetails = getPromotionSourceDetails();
163      if (!promotionSourceDetails['last_visit_social'] ){
164        return null;
165      }
166      return Math.floor((new Date() - new Date(promotionSourceDetails['last_visit_social'])) / (1000 * 60 * 60 * 24));
167    }
168
169    var shUrlParams = getPromotionUrlParams();
170    var promotionSourceDetails = getPromotionSourceDetails();
171
172    new URL(document.location).searchParams.forEach(function(value, paramName){
173
174     shUrlParams[paramName] = value;
175
176     if (paramName == 'source' && value =='social' ){
177       promotionSourceDetails['last_visit_social'] = new Date();
178       localStorage.setItem('promotionSourceDetails', JSON.stringify(promotionSourceDetails));
179     }
180
181     if (paramName == 'source' && value =='email' ){
182       promotionSourceDetails['last_visit_email'] = new Date();
183       localStorage.setItem('promotionSourceDetails', JSON.stringify(promotionSourceDetails));
184     }
185
186    });
187
188    sessionStorage.setItem('shUrlParams', JSON.stringify(shUrlParams))
189</script>
189<style>a:focus:not(:focus-visible){outline:none;box-shadow:none;}
190a.get-directions-footer-link{display:inline-block;transform-origin:left center;transition:transform .2s ease;}
191a.get-directions-footer-link:hover{transform:scale(1.08);}
192@media (prefers-reduced-motion:reduce){a.get-directions-footer-link{transition:none;transform:none;}}
193a.get-directions-footer-link,a.get-directions-footer-link:hover{color:inherit!important;}</style></head><body class="drink-menu about-us-page  "><header><style>
194
195.nav-v8 .nav-tab:nth-child(n+7) {
196  -webkit-box-ordinal-group: 3;
197  order: 3;
198}
199
200.navbar.nav-v6.nav-v8 .desktop-navigation .header-logo {
201  top: 0px;
202}
203
204
205.navbar.nav-v6.nav-v8.nav-scroll .desktop-navigation .header-logo {
206  top: 0px;
207}
208
209.navbar.nav-v6 .container {
210  padding-top: 10px;
211  padding-bottom: 10px;
212}
213.navbar.nav-v6.nav-scroll .container {
214  padding-top: 0px;
215  padding-bottom: 0px;
216}
217.navbar.nav-v6 .header-logo img {
218  max-width: 100%;
219}
220
221@media (max-width: 767px) {
222  /* DO NOT change mobile nav height on page scroll */
223  .navbar.nav-v6 .navbar-header,
224  .navbar.nav-v6.nav-scroll .navbar-header {
225    padding-top: 10px;
226    padding-bottom: 10px;
227  }
228  .navbar.nav-v6.nav-v8 .socialnav,
229  .navbar.nav-v6.nav-v8.nav-scroll .socialnav {
230    margin-top: 10px;
231  }
232  .navbar.nav-v6 .container,
233  .navbar.nav-v6.nav-scroll .container {
234    padding-top: 0;
235    padding-bottom: 0;
236  }
237  .navbar.nav-v6 .header-logo,
238  .navbar.nav-v6.nav-scroll .header-logo {
239    height: 70px;
240  }
241  .navbar.nav-v6 .header-logo img {
242    max-height: 100%;
243  }
244  .navbar.nav-v6.nav-scroll .header-logo img {
245    max-width: 100%;
246  }
247  /* HOME page CHANGE mobile nav height on page scroll */
248  /* Remove body.home-page from below code if there should be mobile nav height change on ALL pages */
249  body.home-page .navbar.nav-v6 .navbar-header {
250    padding-top: 10px;
251    padding-bottom: 10px;
252  }
253  body.home-page .navbar.nav-v6.nav-scroll .navbar-header{
254    padding-top: 0px;
255    padding-bottom: 0px;
256  }
257  body.home-page .navbar.nav-v6.nav-v8 .socialnav {
258    margin-top: 10px;
259  }
260  body.home-page .navbar.nav-v6.nav-v8.nav-scroll .socialnav {
261    margin-top: 0px;
262  }
263  body.home-page .navbar.nav-v6 .container{
264    padding-top: 0;
265    padding-bottom: 0;
266  }
267  body.home-page .navbar.nav-v6.nav-scroll .container {
268    padding-top: 0;
269    padding-bottom: 0;
270  }
271  body.home-page .navbar.nav-v6 .header-logo {
272    height: 70px;
273  }
274  body.home-page .navbar.nav-v6.nav-scroll .header-logo {
275    height: 50px;
276  }
277  body.home-page .navbar.nav-v6 .header-logo img {
278    max-height: 100%;
279    max-width: 100%;
280  }
281  body.home-page .navbar.nav-v6.nav-scroll .header-logo img {
282    max-width: 80%;
283  }
284}
285
286
287.navbar-regular .navbar-collapse.collapse.in {
288  background-color: transparent;
289  width: 100%;
290}
291.navbar.nav-v6 .navbar-tabs {
292    background-color: #fff;
293    -webkit-box-shadow: 0px 4px 4px 0px rgba(0,0,0,0);
294    -moz-box-shadow: 0px 4px 4px 0px rgba(0,0,0,0);
295    box-shadow: 0px 4px 4px 0px rgba(0,0,0,0);
296}
297.navbar.nav-v6.nav-scroll .navbar-tabs {
298    background-color: #fff;
299    -webkit-box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.2);
300    -moz-box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.2);
301    box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.2);
302}
303.drink-menu .navbar.nav-v6 .navbar-tabs {
304  background-color: #fff;
305  -webkit-box-shadow: 0px 4px 4px 0px rgba(0,0,0,0);
306  -moz-box-shadow: 0px 4px 4px 0px rgba(0,0,0,0);
307  box-shadow: 0px 4px 4px 0px rgba(0,0,0,0);
308}
309.drink-menu .navbar.nav-v6.nav-scroll .navbar-tabs {
310  background-color: #fff;
311  -webkit-box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.2);
312  -moz-box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.2);
313  box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.2);
314}
315li.drop-down-link .sub-menu {
316  background-color: #fff;
317  color: #1D1C1B;
318  }
319.nav-scroll li.drop-down-link .sub-menu {
320  background-color: #fff;
321  color: #1D1C1B;
322}
323.drink-menu li.drop-down-link .sub-menu {
324  background-color: #fff;
325  color: #1D1C1B;
326}
327.drink-menu .nav-scroll li.drop-down-link .sub-menu {
328  background-color: #fff;
329  color: #1D1C1B;
330}
331li.drop-down-link .sub-menu a,
332li.drop-down-link div.drop-down {
333  color: #1D1C1B;
334}
335.nav-scroll li.drop-down-link .sub-menu a,
336.nav-scroll li.drop-down-link div.drop-down {
337  color: #1D1C1B;
338}
339.drink-menu li.drop-down-link .sub-menu a,
340.drink-menu li.drop-down-link div.drop-down {
341  color: #1D1C1B;
342}
343.drink-menu .nav-scroll li.drop-down-link .sub-menu a,
344.drink-menu .nav-scroll li.drop-down-link div.drop-down {
345  color: #1D1C1B;
346}
347
348.navbar-regular.nav-v6 .navbar-nav>li>a,
349.navbar-regular.nav-v6 .navbar-nav>li>a:hover,
350.navbar-regular.nav-v6 .navbar-nav>.active>a,
351.navbar-regular.nav-v6 .navbar-nav>.active>a:focus,
352.navbar-regular.nav-v6 .navbar-nav>.active>a:hover{
353  border: none;
354  background-color: transparent;
355  color: #1D1C1B;
356}
357.navbar-regular.nav-v6 .navbar-nav>li>a {
358  color: #1D1C1B;
359}
360.drink-menu .navbar.nav-v6 .navbar-nav>li>a {
361  color: #1D1C1B;
362}
363.drink-menu .navbar-regular.nav-v6 .navbar-nav>li>a:hover,
364.drink-menu .navbar-regular.nav-v6 .navbar-nav>.active>a,
365.drink-menu .navbar-regular.nav-v6 .navbar-nav>.active>a:focus,
366.drink-menu .navbar-regular.nav-v6 .navbar-nav>.active>a:hover {
367  color: #1D1C1B;
368}
369
370li.drop-down-link .sub-menu a:hover,
371li.drop-down-link .sub-menu a:focus {
372  color: #1D1C1B;
373}
374.drink-menu li.drop-down-link .sub-menu a:hover,
375.drink-menu li.drop-down-link .sub-menu a:focus {
376  color: #1D1C1B;
377}
378
379.drink-menu .navbar.nav-v7 .navbar-nav>li>a {
380  color: #1D1C1B;
381}
382
383.navbar-regular.nav-v6 .navbar-toggle .icon-bar {
384  background-color: #1D1C1B;
385}
386.drink-menu .navbar-regular.nav-v6 .navbar-toggle .icon-bar {
387  background-color: #1D1C1B;
388}
389.navbar-regular.nav-v6 [aria-expanded="true"].navbar-toggle .icon-bar {
390  background-color: #1D1C1B;
391}
392.drink-menu .navbar-regular.nav-v6 [aria-expanded="true"].navbar-toggle .icon-bar {
393  background-color: #1D1C1B;
394}
395.navbar-regular.nav-v6.nav-scroll .navbar-nav>li>a,
396.navbar-regular.nav-v6.nav-scroll .navbar-nav>li>a:hover,
397.navbar-regular.nav-v6.nav-scroll .navbar-nav>.active>a,
398.navbar-regular.nav-v6.nav-scroll .navbar-nav>.active>a:focus,
399.navbar-regular.nav-v6.nav-scroll .navbar-nav>.active>a:hover {
400  border: none;
401  color: #1D1C1B;
402}
403.navbar-regular.nav-v6.nav-scroll .navbar-nav>li>a {
404  color: #1D1C1B;
405}
406.drink-menu .navbar.nav-v6.nav-scroll .navbar-nav>li>a {
407  border: none;
408  color: #1D1C1B;
409}
410.drink-menu .navbar-regular.nav-v6.nav-scroll .navbar-nav>li>a:hover,
411.drink-menu .navbar-regular.nav-v6.nav-scroll .navbar-nav>.active>a,
412.drink-menu .navbar-regular.nav-v6.nav-scroll .navbar-nav>.active>a:focus,
413.drink-menu .navbar-regular.nav-v6.nav-scroll .navbar-nav>.active>a:hover {
414  color: #1D1C1B;
415}
416
417.nav-scroll li.drop-down-link .sub-menu a:hover,
418.nav-scroll li.drop-down-link .sub-menu a:focus {
419  color: #1D1C1B;
420}
421.drink-menu .nav-scroll li.drop-down-link .sub-menu a:hover,
422.drink-menu .nav-scroll li.drop-down-link .sub-menu a:focus {
423  color: #1D1C1B;
424}
425
426.navbar-regular.nav-v6.nav-scroll .navbar-toggle .icon-bar {
427  background-color: #1D1C1B;
428}
429.drink-menu .navbar-regular.nav-v6.nav-scroll .navbar-toggle .icon-bar {
430  background-color: #1D1C1B;
431}
432.navbar-regular.nav-v6.nav-scroll [aria-expanded="true"].navbar-toggle .icon-bar {
433  background-color: #1D1C1B;
434}
435.drink-menu .navbar-regular.nav-v6.nav-scroll [aria-expanded="true"].navbar-toggle .icon-bar {
436  background-color: #1D1C1B;
437}
438.navbar.nav-v6 .header-logo-text{
439  color: #1D1C1B;
440}
441.navbar.nav-v6.nav-scroll .header-logo-text{
442  color: #1D1C1B;
443}
444.navbar.nav-v6 .social-icon{
445  color: #1D1C1B;
446}
447.navbar.nav-v6.nav-scroll .social-icon{
448  color: #1D1C1B;
449}
450.navbar.nav-v6 .social-square .contact-icon:hover {
451  color: #1D1C1B;
452  background-color: #1D1C1B;
453}
454.navbar.nav-v6.nav-scroll .social-square .contact-icon:hover {
455  color: #1D1C1B;
456  background-color: #1D1C1B;
457}
458
459.drink-menu .navbar.nav-v6 .header-logo-text{
460  color: #1D1C1B;
461}
462.drink-menu .navbar.nav-v6.nav-scroll .header-logo-text{
463  color: #1D1C1B;
464}
465.drink-menu .navbar.nav-v6 .social-icon{
466  color: #1D1C1B;
467}
468.drink-menu .navbar.nav-v6.nav-scroll .social-icon{
469  color: #1D1C1B;
470}
471.drink-menu .navbar.nav-v6 .social-square .contact-icon:hover {
472  color: #1D1C1B;
473  background-color: #1D1C1B;
474}
475.drink-menu .navbar.nav-v6.nav-scroll .social-square .contact-icon:hover {
476  color: #1D1C1B;
477  background-color: #1D1C1B;
478}
479.navbar.nav-v6 .navbar-tabs {
480  border-bottom: 1px solid transparent;
481}
482.navbar.nav-v6.nav-scroll .navbar-tabs {
483  border-bottom: 1px solid transparent;
484}
485.drink-menu .navbar.nav-v6 .navbar-tabs {
486  border-bottom: 1px solid transparent;
487}
488.drink-menu .navbar.nav-v6.nav-scroll .navbar-tabs {
489  border-bottom: 1px solid transparent;
490}
491@media (max-width: 767px) {
492  .navbar.nav-v6 {
493      background-color: #fff;
494      -webkit-box-shadow: 0px 4px 4px 0px rgba(0,0,0,0);
495      -moz-box-shadow: 0px 4px 4px 0px rgba(0,0,0,0);
496      box-shadow: 0px 4px 4px 0px rgba(0,0,0,0);
497  }
498  .navbar.nav-v6.nav-scroll {
499      background-color: #fff;
500      -webkit-box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.2);
501      -moz-box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.2);
502      box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.2);
503  }
504  .drink-menu .navbar.nav-v6 {
505    background-color: #fff;
506    -webkit-box-shadow: 0px 4px 4px 0px rgba(0,0,0,0);
507    -moz-box-shadow: 0px 4px 4px 0px rgba(0,0,0,0);
508    box-shadow: 0px 4px 4px 0px rgba(0,0,0,0);
509  }
510  .drink-menu .navbar.nav-v6.nav-scroll {
511    background-color: #fff;
512    -webkit-box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.2);
513    -moz-box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.2);
514    box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.2);
515  }
516  .navbar.nav-v6 .container,
517  .navbar.nav-v6.nav-scroll .container,
518  .drink-menu .navbar.nav-v6 .container,
519  .drink-menu .navbar.nav-v6.nav-scroll .container {
520    border-bottom: none;
521  }
522  .navbar.nav-v6 .navbar-header {
523    border-bottom: 1px solid transparent;
524  }
525  .navbar.nav-v6.nav-scroll .navbar-header {
526    border-bottom: 1px solid transparent;
527  }
528  .drink-menu .navbar.nav-v6 .navbar-header {
529    border-bottom: 1px solid transparent;
530  }
531  .drink-menu .navbar.nav-v6.nav-scroll .navbar-header {
532    border-bottom: 1spx solid transparent;
533  }
534  li.drop-down-link .sub-menu,
535  .drink-menu li.drop-down-link .sub-menu {
536    background-color: transparent;
537  }
538  .nav-scroll li.drop-down-link .sub-menu,
539  .drink-menu .nav-scroll li.drop-down-link .sub-menu {
540    background-color: transparent;
541  }
542      /* Mobile home background */
543  .navbar.nav-v6.navbar-regular.mobile-full-height .navbar-collapse.collapse,
544  .navbar.nav-v6.navbar-regular.mobile-full-height .navbar-collapse.collapsing,
545  .navbar.nav-v6.navbar-regular.mobile-full-height .navbar-collapse.collapse.in {
546          background-color: #ffffff;
547      }
548  /* Mobile home background scroll */
549  .navbar.nav-v6.navbar-regular.nav-scroll.mobile-full-height .navbar-collapse.collapse,
550  .navbar.nav-v6.navbar-regular.nav-scroll.mobile-full-height .navbar-collapse.collapsing,
551  .navbar.nav-v6.navbar-regular.nav-scroll.mobile-full-height .navbar-collapse.collapse.in {
552          background-color: #ffffff;
553      }
554  /* Mobile pages background */
555  .drink-menu .navbar.nav-v6.navbar-regular.mobile-full-height .navbar-collapse.collapse,
556  .drink-menu .navbar.nav-v6.navbar-regular.mobile-full-height .navbar-collapse.collapsing,
557  .drink-menu .navbar.nav-v6.navbar-regular.mobile-full-height .navbar-collapse.collapse.in {
558          background-color: #ffffff;
559      }
560  /* Mobile pages background scroll */
561  .drink-menu .nav-v6.navbar-regular.nav-scroll.mobile-full-height .navbar-collapse.collapse,
562  .drink-menu .nav-v6.navbar-regular.nav-scroll.mobile-full-height .navbar-collapse.collapsing,
563  .drink-menu .nav-v6.navbar-regular.nav-scroll.mobile-full-height .navbar-collapse.collapse.in {
564          background-color: #ffffff;
565      }
566  .navbar-regular.nav-v6 .navbar-nav>li>a:hover,
567  .navbar-regular.nav-v6 .navbar-nav>.active>a,
568  .navbar-regular.nav-v6 .navbar-nav>.active>a:focus,
569  .navbar-regular.nav-v6 .navbar-nav>.active>a:hover{
570    background-color: #1D1C1B;
571    color: #1D1C1B;
572  }
573  .navbar-regular.nav-v6.nav-scroll .navbar-nav>li>a:hover,
574  .navbar-regular.nav-v6.nav-scroll .navbar-nav>.active>a,
575  .navbar-regular.nav-v6.nav-scroll .navbar-nav>.active>a:focus,
576  .navbar-regular.nav-v6.nav-scroll .navbar-nav>.active>a:hover{
577    background-color: #1D1C1B;
578    color: #1D1C1B;
579  }
580  .drink-menu .navbar-regular.nav-v6 .navbar-nav>li>a:hover,
581  .drink-menu .navbar-regular.nav-v6 .navbar-nav>.active>a,
582  .drink-menu .navbar-regular.nav-v6 .navbar-nav>.active>a:focus,
583  .drink-menu .navbar-regular.nav-v6 .navbar-nav>.active>a:hover{
584    background-color: #1D1C1B;
585    color: #1D1C1B;
586  }
587  .drink-menu .navbar-regular.nav-v6.nav-scroll .navbar-nav>li>a:hover,
588  .drink-menu .navbar-regular.nav-v6.nav-scroll .navbar-nav>.active>a,
589  .drink-menu .navbar-regular.nav-v6.nav-scroll .navbar-nav>.active>a:focus,
590  .drink-menu .navbar-regular.nav-v6.nav-scroll .navbar-nav>.active>a:hover{
591    background-color: #1D1C1B;
592    color: #1D1C1B;
593  }
594
595  .navbar-regular.nav-v6 li.drop-down-link.active .drop-down .fa.fa-angle-up {
596    color: #1D1C1B;
597  }
598  .navbar-regular.nav-v6.nav-scroll li.drop-down-link.active .drop-down .fa.fa-angle-up {
599    color: #1D1C1B;
600  }
601  .drink-menu .navbar-regular.nav-v6 li.drop-down-link.active .drop-down .fa.fa-angle-up {
602    color: #1D1C1B;
603  }
604  .drink-menu .navbar-regular.nav-v6.nav-scroll li.drop-down-link.active .drop-down .fa.fa-angle-up {
605    color: #1D1C1B;
606  }
607}
608</style><!-- nav --><nav class="navbar nav-v4 nav-v6 nav-v7 nav-v8 nav-top navbar-regular navbar-fixed-top mobile-full-height" id="navbar" role="navigation"><div id="skip"><a class="visuallyhidden skip-content" href="#content">Skip to main content</a></div><div class="desktop-navigation"><div class="navbar-tabs"><div class="container"><div class="navbar-content"><ul class="nav navbar-nav"><li class="logo-holder"><div class="header-logo logo-top"><img alt="Lucy's on the Square logo top - Homepage" aria-label="Homepage" class="img-responsive logo-top logo-image" role="link" src="https://static.spotapps.co/website_images/ab_websites/634274_website_v1/logo_new_3.png" tabindex="0"/></div><div class="header-logo logo-scroll"><img alt="Lucy's on the Square logo scroll - Homepage" aria-label="Homepage" class="img-responsive logo-scroll logo-image" role="link" src="https://static.spotapps.co/website_images/ab_websites/634274_website_v1/logo_new_3.png" tabindex="0"/></div></li><li class="nav-tab nav-menu-page"><a class="" href="/food-menu" id="nav_tab_1_link" target="_self">
609                        
610                      Menu
611                                          </a></li><li class="nav-tab nav-menus-page"><a class="" href="/pies" id="nav_tab_2_link" target="_self">
612                        
613                      Pies
614                                          </a></li><li class="nav-tab"><a class="" href="/specials" id="nav_tab_3_link" target="_self">
615                        
616                      Specials
617                                          </a></li><li class="nav-tab nav-catering-link"><a class="link-catering-sh" href="/catering#" id="nav_tab_4_link" target="_self">
618                        
619                      Catering
620                                          </a></li><li class="nav-tab"><a class="" href="/events" id="nav_tab_5_link" target="_self">
621                        
622                      Events
623                                          </a></li><li class="nav-tab nav-parties-link"><a class="link-parties-sh" href="/party#" id="nav_tab_6_link" target="_self">
624                        
625                      Parties
626                                          </a></li><li class="nav-tab"><a class="" href="/jobs" id="nav_tab_8_link" target="_self">
627                        
628                      Jobs
629                                          </a></li><li class="nav-tab"><a class="" href="/gallery" id="nav_tab_9_link" target="_self">
630                        
631                      Gallery
632                                          </a></li><li class="nav-tab drop-down-link nav-order-link cta-nav-tab"><a aria-expanded="false" class="drop-down" href="#" id="nav_tab_10_link1" role="button" target="">
633                        
634                      Order
635                                            <i aria-hidden="true" class="fa fa-angle-down"></i><i aria-hidden="true" class="fa fa-angle-up"></i></a><ul class="sub-menu"><li>
635<a class="sub-menu-link" href="https://online.skytab.com/f24b67519a2f51ef3c22136c9fb172f0/order-settings" id="nav_tab_10_link1_option1" target="_blank">
636                          Pickup                          </a></li><li><a class="sub-menu-link" href="https://www.doordash.com/store/lucy's-on-the-square-celina-40975555/97256956/?srsltid=AfmBOooSX37GUZ7cfLI2cy8Cin7xWkKqJ2Mz6BVsuNMp0IewYDt29G-J" id="nav_tab_10_link1_option2" target="_blank">
637                          Delivery                          </a></li></ul></li><li class="nav-tab helper-tab"><a href="#" id="hidden_tab_r" target="_self"><span class="visuallyhidden">Go to top</span></a></li></ul><ul class="socialnav"><li class="social-links social-icons-holder social-square"><a class="pull-left contact-icon" href="https://www.facebook.com/615983408524009" target="_blank"><i class="social-icon fa fa-facebook"></i><span>Facebook page</span></a></li><li class="social-links social-icons-holder social-square"><a class="pull-left contact-icon" href="https://www.instagram.com/lucysonthesquare" 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=Lucy%27s+on+the+Square+127+North+Ohio+Street+celina&rlz=1C1YTUH_enRS1087RS1087&oq=Lucy%27s+on+the+Square+127+North+Ohio+Street+celina&gs_lcrp=EgZjaHJvbWUyBggAEEUYOTIHCAEQIRigATIHCAIQIRiPAjIHCAMQIRiPAtIBCDE1NjNqMGo3qAIAsAIA&sourceid=chrome&ie=UTF-8#lrd=0x864c41993927053b:0x67b45c971554af27,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="Lucy's on the Square logo top - Homepage" aria-label="Homepage" class="img-responsive logo-top" src="https://static.spotapps.co/website_images/ab_websites/634274_website_v1/logo_new_3.png"/></a><a class="header-logo logo-scroll" href="/"><img alt="Lucy's on the Square logo scroll - Homepage" aria-label="Homepage" class="img-responsive logo-scroll" src="https://static.spotapps.co/website_images/ab_websites/634274_website_v1/logo_new_3.png"/></a><ul class="socialnav"><li class="social-links social-icons-holder social-square"><a class="pull-left contact-icon" href="https://www.facebook.com/615983408524009" target="_blank"><i class="social-icon fa fa-facebook"></i><span>Facebook page</span></a></li><li class="social-links social-icons-holder social-square"><a class="pull-left contact-icon" href="https://www.instagram.com/lucysonthesquare" 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=Lucy%27s+on+the+Square+127+North+Ohio+Street+celina&rlz=1C1YTUH_enRS1087RS1087&oq=Lucy%27s+on+the+Square+127+North+Ohio+Street+celina&gs_lcrp=EgZjaHJvbWUyBggAEEUYOTIHCAEQIRigATIHCAIQIRiPAjIHCAMQIRiPAtIBCDE1NjNqMGo3qAIAsAIA&sourceid=chrome&ie=UTF-8#lrd=0x864c41993927053b:0x67b45c971554af27,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 aria-expanded="false" 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-menu-page"><a class="" href="/food-menu" id="mobile_nav_tab_1_link" target="_self">
638                    Menu
639                    
640                </a></li><li class=" nav-menus-page"><a class="" href="/pies" id="mobile_nav_tab_2_link" target="_self">
641                    Pies
642                    
643                </a></li><li class=" "><a class="" href="/specials" id="mobile_nav_tab_3_link" target="_self">
644                    Specials
645                    
646                </a></li><li class=" nav-catering-link"><a class="link-catering-sh" href="/catering#" id="mobile_nav_tab_4_link" target="_self">
647                    Catering
648                    
649                </a></li><li class=" "><a class="" href="/events" id="mobile_nav_tab_5_link" target="_self">
650                    Events
651                    
652                </a></li><li class=" nav-parties-link"><a class="link-parties-sh" href="/party#" id="mobile_nav_tab_6_link" target="_self">
653                    Parties
654                    
655                </a></li><li class=" "><a class="" href="/jobs" id="mobile_nav_tab_8_link" target="_self">
656                    Jobs
657                    
658                </a></li><li class=" "><a class="" href="/gallery" id="mobile_nav_tab_9_link" target="_self">
659                    Gallery
660                    
661                </a></li><li class=" drop-down-link nav-order-link cta-nav-tab"><a aria-expanded="false" class="drop-down" href="#" id="mobile_nav_tab_10_link1" role="button" target="">
662                    Order
663                                          <i aria-hidden="true" class="fa fa-angle-down"></i><i aria-hidden="true" class="fa fa-angle-up"></i></a><ul class="sub-menu"><li>
663<a class="sub-menu-link" href="https://online.skytab.com/f24b67519a2f51ef3c22136c9fb172f0/order-settings" id="mobile_nav_tab_10_link1_option1" target="_blank">
664                        Pickup                        </a></li><li><a class="sub-menu-link" href="https://www.doordash.com/store/lucy's-on-the-square-celina-40975555/97256956/?srsltid=AfmBOooSX37GUZ7cfLI2cy8Cin7xWkKqJ2Mz6BVsuNMp0IewYDt29G-J" id="mobile_nav_tab_10_link1_option2" target="_blank">
665                        Delivery                        </a></li></ul></li></ul></div></div></div></nav></header><main id="content" role="main"><h1 class="visuallyhidden">About us</h1><article><div class="about-page-content"><section id="about_s1_section"><!-- Start Section 1 --><div class="about-us-s1-wrapper section-wrapper" id="about_s1"><div class="container"><div class="about-us-item-holder"><div class="about-us-item about-us-s1 about-us-s1-content hidden-sm hidden-xs"><div class="text-wrapper"><div class="text-content"><h2 class="page-title">Hospitality with a Family Heart</h2><p>A LOCAL FAVORITE SINCE DAY ONE</p></div></div></div><div aria-hidden="true" class="about-us-item about-us-s1 about-us-s1-slide" style="height:60vh"><div class="uk-slidenav-position" data-uk-slideshow="data-uk-slideshow" style="height:100%; overflow-y: hidden;"><button aria-hidden="true" aria-label="The slideshow is currently playing, pause the slideshow" class="slideshow-controls-btn playing" tabindex="-1" type="button"><span class="off-screen">slideshow start stop playing</span><i aria-hidden="true" class="fa fa-play"></i><i aria-hidden="true" class="fa fa-pause"></i></button><ul class="uk-dotnav uk-dotnav-contrast uk-position-bottom uk-flex-center"><li data-uk-slideshow-item="0"><a aria-hidden="true" href="" tabindex="-1"><span class="off-screen">Dot slide navigation number 1</span></a></li><li data-uk-slideshow-item="1"><a aria-hidden="true" href="" tabindex="-1"><span class="off-screen">Dot slide navigation number 2</span></a></li></ul><a aria-hidden="true" class="uk-slidenav uk-slidenav-contrast uk-slidenav-previous" data-uk-slideshow-item="previous" href="" tabindex="-1"><span class="off-screen">previous slide</span></a><a aria-hidden="true" class="uk-slidenav uk-slidenav-contrast uk-slidenav-next" data-uk-slideshow-item="next" href="" tabindex="-1"><span class="off-screen">next slide</span></a><ul class="uk-slideshow">
665<li><img alt="" aria-hidden="true" src="https://static.spotapps.co/website_images/ab_websites/634274_website_v1/about_s1.jpg"/></li><li><img alt="" aria-hidden="true" src="https://static.spotapps.co/website_images/ab_websites/634274_website_v1/about_s2.jpg"/></li></ul></div></div><div class="about-us-item about-us-s1 about-us-s1-content visible-sm visible-xs"><div class="text-wrapper"><div class="text-content"><h2 class="page-title">Hospitality with a Family Heart</h2><p>A LOCAL FAVORITE SINCE DAY ONE</p></div></div></div></div></div></div><!-- End Section 1 --></section><section id="about_s2_section"><!-- Start Section 2 --><div class="about-us-v7-wrapper about-us-s2-wrapper section-wrapper" id="about_s2"><div class="container about-us-v7"><div class="about-us-item-holder"><div class="about-us-item about-us-s2-image about-us-v7-content" style="background-image: url('https://static.spotapps.co/website_images/ab_websites/634274_website_v1/about_pg.jpg')"></div><div class="about-us-item about-us-s2-content about-us-v7-content"><div class="text-wrapper"><div class="text-content"><h2 class="section-header">About Lucy&apos;s</h2><p style="text-align: left;">Nothing says deep in the heart of Texas quite like Lucy&apos;s on the Square. The eatery resides in a more than 100-year-old brick building in Celina, Texas, about an hour away from the hectic bustle of Dallas. Inside, Texas-themed knick-knacks abound: diners can spot everything from a railroad sign to a wagon wheel, cowboy hat or an acoustic guitar. </p></div></div></div></div></div></div><!-- End Section 2 --></section><section id="about_s4_section"><!-- Start Section 4 Custom section --><div class="about-us-s4-wrapper section-wrapper" id="about_s4"><div class="container"></div></div><!-- End  Section 4 Custom section --></section><section id="about_s3_section"><!-- Start Section 3 --><div class="about-us-s3-wrapper maps-wrapper section-wrapper" id="about_s3"><div class="container"><div class="about-us-item-holder"><div class="map-holder"><div aria-label="OpenStreet map" id="map-container" role="region"></div><div class="map-footer"><p>
666                              Contact us:
667                                                                <a href="tel:+19723821212" id="contact_us_v3_section_phone_link"><span class="off-screen">by phone</span> (972)-382-1212,</a><a href="mailto:[email protected]"><span class="off-screen">by email</span> [email protected]</a></p></div></div></div></div></div><!-- End Section 3 --></section></div></article></main><style type="text/css">
668    .navbar-fixed-bottom.nav-v1 {
669        bottom: -100px;
670    }
671    .navbar-fixed-bottom.nav-v1 .nav.navbar-nav.navbar-right {
672        background-color: #1D1C1B;
673    }
674    .navbar-fixed-bottom.nav-v1 .bottom-svg-border path,
675    .navbar-fixed-bottom.nav-v1 .bottom-svg-border polygon {
676      fill: #000;
677    }
678    .navbar-fixed-bottom.nav-v1 .bottom-list-item a {
679        color: #fff;
680    }
681    .navbar-fixed-bottom.nav-v1 .bottom-list-item a:hover,
682    .navbar-fixed-bottom.nav-v1 .bottom-list-item a:focus {
683        color: #fff;
684    }
685</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://online.skytab.com/f24b67519a2f51ef3c22136c9fb172f0/order-settings" id="bottom_link_4" target="_self">
686                        Order                    </a></li><li class="bottom-list-item "><a class="bottom-link " href="/party" id="bottom_link_5" target="_self">
687                        Parties                    </a></li><li class="bottom-list-item "><a class="bottom-link " href="/catering" id="bottom_link_6" target="_self">
688                        Catering                    </a></li><li class="bottom-list-item "><a class="bottom-link " href="https://tmt.spotapps.co/job-listings?spot_id=634274&callback_url=http://lucysonthesquare.com/about" id="bottom_link_7" target="_self">
689                        Jobs                    </a></li></ul></div></nav>
689<script src="https://static.spotapps.co/web/lucysonthesquare--com/lib/jquery/jquery.min.js"></script>
689<script src="https://static.spotapps.co/web/lucysonthesquare--com/lib/bootstrap/js/bootstrap.min.js"></script>
689<script src="https://static.spotapps.co/web/lucysonthesquare--com/lib/uikit/js/uikit.min.js"></script>
689<script src="https://static.spotapps.co/web/lucysonthesquare--com/lib/uikit/js/slideshow.min.js"></script>
689<script src="https://static.spotapps.co/web/lucysonthesquare--com/lib/uikit/js/slideshow-fx.min.js"></script>
689<script src="https://static.spotapps.co/iframeResizer.js" type="text/javascript"></script>
689<script src="//static.spotapps.co/web-lib/leaflet/[email protected]/dist/leaflet.js"></script>
689<script src="//static.spotapps.co/web-lib/leaflet/leaflet-providers.js"></script>
689<script src="//static.spotapps.co/web-lib/leaflet/[email protected]/dist/leaflet-gesture-handling.min.js"></script>
689<script>
690  
691	$("#bottom_link_4").on("click", function(){
692		if (ga_check())
693			universal_ga('send', 'event', 'Button', 'Click', 'Order Online');
694	});
695	$("#bottom_link_5").on("click", function(){
696		if (ga_check())
697			universal_ga('send', 'event', 'Button', 'Click', 'Private Party');
698	});
699	$("#bottom_link_6").on("click", function(){
700		if (ga_check())
701			universal_ga('send', 'event', 'Button', 'Click', 'Catering');
702	});
703	$("#bottom_link_7").on("click", function(){
704		if (ga_check())
705			universal_ga('send', 'event', 'Button', 'Click', 'Jobs');
706	});
707  $('.header-logo, .nav-v2-home-btn').click(function(event) {
708    if ( window.location.pathname == '/' || window.location.pathname == '/index.php') {
709      event.preventDefault();
710      var windowScrollTop = $(window).scrollTop();
711      if(windowScrollTop > 150) {
712        $('html, body').animate({scrollTop: 0}, 750);
713      }
714    }
715  });
716
717$(".banner-section a.banner-pin").click(function(e) {
718    // target element id
719    var id = $(this).attr('href');
720
721    // target element
722    var section = $(id);
723    if (section.length === 0) {
724        return;
725    }
726
727    // prevent standard hash navigation (avoid blinking in IE)
728    e.preventDefault();
729
730    // top position relative to the document
731    var pos = section.offset().top - 100 + 10;
732
733    // animated top scrolling
734    $('body, html').animate({scrollTop: pos}, 750);
735});
736
737$(document).ready(function() {
738  var navHeight = $('nav.navbar').height();
739  $('html').css("scroll-padding-top", navHeight);
740});
741
742var called_v8_scroll = false;
743
744$(document).on('scroll', function (e) {
745    if($(document).scrollTop() > 0) {
746      $('.navbar.nav-v7').addClass('nav-scroll');
747      $('.navbar.nav-v7').removeClass('nav-top');
748      if (2 !=2 && 2 == 2) {
749        if(!called_v8_scroll) {
750          setTimeout(function(){
751            setHelperTabWidth();
752            called_v8_scroll = true;
753          }, 300);
754        }
755      }
756    }else {
757      $('.navbar.nav-v7').removeClass('nav-scroll');
758      $('.navbar.nav-v7').addClass('nav-top');
759      if (2 != 2 && 2 == 2) {
760        $('#hidden_tab_r').width(0);
761        $('#hidden_tab_l').width(0);
762        $('.navbar-nav li.nav-tab').first().css('margin-left', '0px');
763        $('.navbar-nav li.nav-tab').last().css('margin-right', '0px');
764        called_v8_scroll = false;
765      }
766    }
767});
768
769$(function() {
770  setDropDownMenuWidth();
771
772  function setDropDownMenuWidth() {
773    var tabs_list = $('.navbar-tabs .navbar-nav');
774
775    $(tabs_list).find('li.drop-down-link').each(function() {
776      var sub_menu_width = $(this).outerWidth(true);
777      if (sub_menu_width < 100) {
778        sub_menu_width = 100;
779      }
780      $(this).find('.sub-menu').css('width', sub_menu_width+'px');
781    });
782  }
783
784  $( window ).resize(function() {
785    setDropDownMenuWidth();
786  });
787  $( window ).load(function() {
788    setDropDownMenuWidth();
789  });
790
791});
792
793
794
795$( '.drop-down-link .drop-down' ).click(function(event) {
796  event.preventDefault();
797  event.stopPropagation();
798
799  var drop_down = $(this).closest('.drop-down-link');
800  var drop_down_a = $(this);
801
802  if($(drop_down_a).attr("aria-expanded") == "true") { 
803    $(drop_down_a).attr("aria-expanded",false)
804  } else { 
805    $(drop_down_a).attr("aria-expanded",true)
806  }
807
808  
809  var sub_menu = $(this).closest('.drop-down-link').find( '.sub-menu' );
810
811  if ( $(sub_menu).is( ':hidden' ) ) {
812    $(sub_menu).slideDown();
813    $(drop_down).addClass('active');
814  } else {
815    $(sub_menu).slideUp();
816    $(drop_down).removeClass('active');
817  }
818});
819
820//// Set width for corresponding helper tab or margin for first or last nav tab depending on calculeted width sum of left and right tabs
821function setHelperTabWidth() {
822  var nav_tab_width;
823  var tabs_left_width = 0;
824  var tabs_right_width = 0;
825
826  var full_nav_tab_width;
827  var full_tabs_left_width = 0;
828  var full_tabs_right_width = 0;
829
830  $('li.nav-tab').each(function( index, element ) {
831
832    nav_tab_width = $(element).find('a').width();
833    full_nav_tab_width = $(element).outerWidth(true);
834
835    if (!($(element).hasClass('helper-tab'))) {
836      if (index<5) {
837        tabs_left_width += nav_tab_width;
838        full_tabs_left_width += full_nav_tab_width;
839      } else {
840        tabs_right_width += nav_tab_width;
841        full_tabs_right_width += full_nav_tab_width;
842      }
843    } else {
844      if(index == 0) {
845        full_tabs_left_width += full_nav_tab_width;
846      } else {
847        full_tabs_right_width += full_nav_tab_width;
848      }
849    }
850
851  });
852
853  var tabs_width_differance = tabs_left_width - tabs_right_width;
854  var helper_value = Math.abs(tabs_width_differance);
855  var full_tabs_width_differance = full_tabs_left_width - full_tabs_right_width;
856
857  // if sum of left tabs width is smaller than rigth tabs width tabs_width_differance is negative set margin left for first tab
858  if (full_tabs_width_differance != 0) {
859    if (tabs_width_differance < 0) {
860      $('.navbar-nav li.nav-tab').first().css('margin-left', helper_value+'px');
861    } else {
862      $('.navbar-nav li.nav-tab').last().css('margin-right', helper_value+'px');
863    }
864  }
865  
866}
867
868$(function() {
869  setNavTabsWidth();
870
871  function setNavTabsWidth() {
872    var container_width = $('.navbar-tabs .container').outerWidth();
873    var social_icons_width = $('.navbar-tabs .socialnav').outerWidth(true);
874    var reduced_tabs_width = container_width - (2 * social_icons_width) -10;
875
876    $('.navbar-tabs .navbar-content').width(reduced_tabs_width);
877
878    // helper value set in case logo is centered and tabs width sum on the left and on the right are not the same
879    if (2 == 2) {
880      setTimeout(function(){
881        setHelperTabWidth();
882        $('.navbar.nav-v8 .desktop-navigation .navbar-nav').css('opacity', '1');
883      }, 300);
884
885    }
886  }
887
888  $( window ).resize(function() {
889      setNavTabsWidth();
890  });
891
892  $('.nav a:not(.drop-down)').on('click', function () {
893    $('.navbar-collapse').collapse('hide');
894  });
895
896});
897
898$('.logo-holder .logo-image').click(function(event) {
899  if ( window.location.pathname == '/' || window.location.pathname == '/index.php') {
900    var windowScrollToTop = $(window).scrollTop();
901    if(windowScrollToTop > 150) {
902      $('html, body').animate({scrollTop: 0}, 750);
903    }
904  } else {
905      window.location = "/";
906  }
907});
908
909const mobileDrop = document.querySelector('.mobile-full-height #navbar-collapse-1 .navbar-nav');
910const mobileDropButton = document.querySelector('.mobile-full-height .navbar-toggle');
911const mobileHeader = document.querySelector('.mobile-full-height .navbar-header');
912
913mobileDropButton?.addEventListener('click', () => {
914  mobileHeaderBottomPos = mobileHeader.getBoundingClientRect().bottom;
915  mobileDrop.style.paddingTop = mobileHeaderBottomPos + 'px';
916});
917
918(function () {
919  const isSafari = (() => {
920    const ua = navigator.userAgent;
921    return ua.includes('Safari') && // Safari must be present
922            !ua.includes('Chrome') && // Exclude Chrome (has 'Safari' in UA)
923            !ua.includes('Edg'); // Exclude Edge
924  })();
925
926  if (!isSafari) return;
927  const menu = document.getElementById('navbar-collapse-1');
928
929  // When coming back from a _blank tab or bfcache restore, force a repaint.
930  function nudgeRepaint() {
931    if (!menu || !menu.classList.contains('in')) return;
932    // toggle display to flush rendering, then poke will-change for one frame
933    const prev = menu.style.display;
934    menu.style.display = 'none';
935    // force reflow
936    void menu.offsetHeight;
937    menu.style.display = prev || '';
938    menu.style.willChange = 'opacity';
939    requestAnimationFrame(() => { menu.style.willChange = 'auto'; });
940  }
941
942  document.addEventListener('visibilitychange', () => {
943    if (document.visibilityState === 'visible') nudgeRepaint();
944  });
945
946  // iOS/macOS Safari often restores pages from bfcache
947  window.addEventListener('pageshow', (e) => {
948    if (e.persisted) nudgeRepaint();
949    else nudgeRepaint();
950  }, { passive: true });
951
952  // Keep menu open when clicking links that open in a new tab
953  menu?.addEventListener('click', (e) => {
954    const a = e.target.closest('a');
955    if (!a) return;
956    if (a.target === '_blank') {
957      // avoid any delegated "close on link click" handlers firing first
958      e.stopPropagation();
959      // allow navigation; after we return, repaint nudge will run
960    }
961  }, true);
962})();
963
964document.querySelectorAll('.navbar .navbar-nav > li.cta-nav-tab').forEach((li) => {
965  li.addEventListener('click', (e) => {
966    if (e.defaultPrevented) return;
967    
968    if (e.target.closest('a')) return;
969
970    const link = li.querySelector('a[href]');
971    if (!link) return;
972
973    if (e.metaKey || e.ctrlKey || e.shiftKey || e.button === 1 || link.target === '_blank') {
974      window.open(link.href, link.target || '_blank');
975      return;
976    }
977
978    link.click();
979  });
980
981  li.addEventListener('keydown', (e) => {
982    if ((e.key === 'Enter' || e.key === ' ') && !e.target.closest('a')) {
983      const link = li.querySelector('a[href]');
984      if (!link) return;
985      e.preventDefault();
986      link.click();
987    }
988  });
989});
990    setTimeout(function(){
991        $('.navbar-fixed-bottom.nav-v1').addClass('show-bottom-nav'); triggerShowFooterEvents();
992    }, 4000);
993   function setSlideSectionHeight() {
994
995     var window_width = $(window).width();
996     if(window_width > 991) {
997       var section_first_content_height = $('.about-us-s1-content.hidden-sm').outerHeight(true);
998
999       var initial_slide_height_vh = '60vh';
1000       var initial_slide_height = initial_slide_height_vh.slice(0, -2);
1001       var initial_slide_height_px = $(window).height() * (initial_slide_height/100);
1002
1003       if(section_first_content_height >= initial_slide_height_px) {
1004         $('.about-us-s1.about-us-s1-slide').height(section_first_content_height);
1005       }
1006     }
1007
1008   }
1009
1010   function setImageTextSectionHeight() {
1011     var section_text_content_height = $('.about-us-s2-content .text-content').outerHeight(true);
1012     var section_text_holder_height = $('.about-us-s2-content').outerHeight(true);
1013
1014     if(section_text_content_height >= section_text_holder_height) {
1015       var new_section_text_holder_height = section_text_content_height + 20;
1016       $('.about-us-page .about-us-s2-content').css('min-height', section_text_content_height + 'px');
1017     }
1018   }
1019
1020   $(document).ready(function() {
1021
1022     setSlideSectionHeight();
1023     setImageTextSectionHeight();
1024
1025     var slideshow_about_page = UIkit.slideshow('.about-us-s1-slide [data-uk-slideshow]', {
1026       autoplay: true,
1027       height:	'100%',
1028       animation:	'fade',
1029       duration: 500,
1030       autoplayInterval: 3000,
1031       pauseOnHover: false
1032     });
1033
1034     //play or pause slideshow functions
1035      $('.about-us-s1-slide .slideshow-controls-btn').click(function () {
1036          if($(this).hasClass('playing')){
1037            slideshow_about_page.stop();
1038            $(this).removeClass('playing');
1039            $(this).addClass('paused');
1040            $(this).attr( "aria-label", "The slideshow is currently paused, play the slideshow");
1041          }else {
1042            slideshow_about_page.start();
1043            $(this).removeClass('paused');
1044            $(this).addClass('playing');
1045            $(this).attr( "aria-label", "The slideshow is currently playing, pause the slideshow");
1046          }
1047      });
1048
1049      $('.about-us-s1-slide .uk-dotnav a, .about-us-s1-slide a.uk-slidenav').click(function () {
1050        $('.about-us-s1-slide .slideshow-controls-btn').removeClass('playing');
1051        $('.about-us-s1-slide .slideshow-controls-btn').addClass('paused');
1052        $('.about-us-s1-slide .slideshow-controls-btn').attr( "aria-label", "The slideshow is currently paused, play the slideshow");
1053      });
1054
1055   });
1056
1057   $( window ).resize(function() {
1058     setSlideSectionHeight();
1059     setImageTextSectionHeight();
1060   });
1061
1062   iFrameResize({
1063      enablePublicMethods: true,
1064      enableInPageLinks: true
1065    });
1066
1067    var marker_icon = "";
1068    var additionalPins = '';
1069    if (additionalPins) {
1070      var locationsArray = JSON.parse('');
1071    }
1072
1073    var google_map_url = 'https://www.google.com/maps/place/' + ",127 N Ohio 
1073St,Celina,TX,75009".split(' ').join('+');
1074    function open_google_map() {
1075      window.open(google_map_url, '_blank')
1076    }
1077
1078    function discontinuous(func){
1079      var timer;
1080      return function(event){
1081        if(timer) clearTimeout(timer);
1082        timer = setTimeout(func,200,event);
1083      };
1084    }
1085
1086    function init_open_street_map() {
1087      if (additionalPins) {
1088        var map = L.map('map-container', {
1089          minZoom: 3,
1090          zoomControl: false,
1091          attributionControl: false,
1092          zoomSnap: 1.1,
1093          gestureHandling: true
1094        });
1095        
1096        var allMarkers = [];
1097        
1098        var marker = L.marker([33.324487, -96.786022], {title: '127 N Ohio St, Celina', alt: 'View 127 N Ohio St, Celina on Google maps - opens in a new tab'}).addTo(map);
1099
1100        marker.on('click keypress', open_google_map);
1101
1102        allMarkers.push(marker);
1103
1104        locationsArray.forEach(function(element, index) {
1105          var additionalMarker = L.marker([element.lat_coords, element.lng_coords], {title: element.pin_title, alt: 'View ' + element.pin_title + ' on Google maps - opens in a new tab'}).addTo(map);
1106      
1107          additionalMarker.on('click keypress', function() {
1108            window.open(element.pin_link, '_blank');
1109          });
1110      
1111          allMarkers.push(additionalMarker);
1112      
1113        });
1114        
1115        function fitBoundsToMarkers(osmap, markers) {
1116          osmap.invalidateSize();
1117          var group = new L.featureGroup(markers);
1118          osmap.fitBounds(group.getBounds(), {padding: [50, 50]});
1119        }
1120      
1121        fitBoundsToMarkers(map, allMarkers);
1122      
1123        document.querySelector('.reset-zoom-btn').addEventListener('click', function () {
1124          fitBoundsToMarkers(map, allMarkers);
1125        });
1126
1127        window.addEventListener("resize", discontinuous(function(e) {
1128          fitBoundsToMarkers(map, allMarkers);
1129        }));
1130      } else {
1131        var map = L.map('map-container', {
1132          center: [ 33.324487, -96.786022],
1133          zoom: 16,
1134          dragging: false,
1135          minZoom: 3,
1136          zoomControl: false,
1137          attributionControl: false
1138        });
1139
1140        var marker = L.marker([33.324487, -96.786022], {title: '127 N Ohio St, Celina', alt: 'View 127 N Ohio St, Celina on Google maps - opens in a new tab'}).addTo(map);
1141
1142        marker.on('click keypress', open_google_map);
1143
1144        map.scrollWheelZoom.disable();
1145      }
1146
1147      if (marker_icon.length>0){
1148        var myIcon = L.icon({
1149          iconUrl: marker_icon,
1150          iconSize: [35,35]        });
1151
1152        if(allMarkers) {
1153          allMarkers.forEach(marker => {
1154            marker.setIcon(myIcon);
1155            marker.update();
1156          });
1157        } else {
1158          marker.setIcon(myIcon);
1159          marker.update();
1160        }
1161      }
1162
1163      L.tileLayer.provider('OpenStreetMap.Mapnik').addTo(map);
1164      L.control.zoom({
1165        position:'topleft'
1166      }).addTo(map);
1167      L.control.attribution({
1168        position:'topright'
1169      }).addTo(map);
1170
1171      $('.about-us-s3-wrapper #map-container').removeAttr('tabindex');
1172      $('.leaflet-touch .leaflet-bar a').attr('tabindex', '-1');
1173      $('.leaflet-container .leaflet-marker-pane img').attr('role', 'link');
1174    }
1175
1176    $(document).ready(function() {
1177      init_open_street_map();
1178    });
1179</script>
1179<script>
1180(function() {
1181  var name = "Lucy's on the Square";
1182  var pid = "ChIJOwUnOZlBTIYRJ69UFZdctGc";
1183  function build_url() {
1184    var q = encodeURIComponent(name).replace(/'/g, "%27");
1185    return "https://www.google.com/maps/search/?api=1"
1186         + "&query=" + q
1187         + "&query_place_id=" + encodeURIComponent(pid);
1188  }
1189  window.google_map_url = build_url();
1190  window.open_google_map = function() {
1191    window.open(build_url(), "_blank");
1192  };
1193})();
1194</script>
1194<script>
1195
1196  var spot_id = 634274;
1197  var sh_generic_form_params=JSON.parse('{}');
1198
1199  if (false){
1200    console.log("Check SpotHopper configuration. Probably there is no 'WEBSITE::DOMAIN_NAME' key for your website");
1201  }
1202
1203  if (navigator.userAgent.match(/iPhone/i)
1204       || navigator.userAgent.match(/iPad/i)
1205       || navigator.userAgent.match(/iPod/i)){
1206      $(document).ready(function(){
1207            document.body.className += " " + "webkit-mobile-body";
1208      });
1209    }
1210
1211  var promotion_url_param_domain = getPromotionUrlParams()['domain'];
1212  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')){
1213    $("a[href^='/']").each(function(){
1214      if (this.href.indexOf('domain=') == -1){
1215        var sh_internal_url = new URL(this.href);
1216        sh_internal_url.searchParams.set("domain", promotion_url_param_domain);
1217        this.href = sh_internal_url.toString();
1218      }
1219    })
1220  }
1221
1222
1223  function cta_link_matches_href(href, url){
1224    var domain = 'lucysonthesquare.com';
1225    if(typeof url === 'undefined'){
1226      return false;
1227    }
1228    var partsOfURL = url.split(domain);
1229    if (partsOfURL.length != 2){
1230      return href == url;
1231    }else{
1232      var urlPath = partsOfURL[1];
1233      if (urlPath.substring(0,1) == "/"){
1234        urlPath = urlPath.substring(1,urlPath.length);
1235      }
1236      return href.indexOf(urlPath, domain.length + href.indexOf(domain)-1) !== -1;
1237    }
1238  }
1239
1240  var all_cta_links = [{"id":1668684,"spot_id":634274,"url":"https://lucysonthesquare.com/-party","cta_link_type":"private_parties","created_at":"2025-11-18T17:40:40.904+00:00","updated_at":"2026-08-13T09:25:02.967+00:00","made_of_food":false,"link_name":"Private Parties","target":null,"website_footer_label":"Parties","position":3},{"id":1776297,"spot_id":634274,"url":"https://lucysonthesquare.com/specials","cta_link_type":"specials","created_at":"2026-02-02T13:34:41.258+00:00","updated_at":"2026-08-13T09:25:02.870+00:00","made_of_food":false,"link_name":"","position":null},{"id":1668683,"spot_id":634274,"url":"https://lucysonthesquare.com/-catering","cta_link_type":"catering","created_at":"2025-11-18T17:40:40.816+00:00","updated_at":"2026-08-13T09:25:03.146+00:00","made_of_food":false,"link_name":"Catering","target":null,"website_footer_label":"Catering","position":4},{"id":1776298,"spot_id":634274,"url":"https://lucysonthesquare.com/events","cta_link_type":"events","created_at":"2026-02-02T13:34:41.384+00:00","updated_at":"2026-08-13T09:25:03.022+00:00","made_of_food":false,"link_name":"","position":null},{"id":2072862,"spot_id":634274,"url":"https://www.doordash.com/store/lucy's-on-the-square-celina-40975555/97256956/?srsltid=AfmBOooSX37GUZ7cfLI2cy8Cin7xWkKqJ2Mz6BVsuNMp0IewYDt29G-J","cta_link_type":"order2","created_at":"2026-08-13T09:31:16.931+00:00","updated_at":"2026-08-13T09:33:13.728+00:00","made_of_food":false,"link_name":"","target":null,"website_footer_label":"Order","position":11},{"id":1776299,"spot_id":634274,"url":"https://lucysonthesquare.com/food-menu","cta_link_type":"food_menu","created_at":"2026-02-02T13:34:41.433+00:00","updated_at":"2026-08-13T09:25:03.075+00:00","made_of_food":false,"link_name":"","position":null},{"id":1726797,"spot_id":634274,"url":"https://online.skytab.com/f24b67519a2f51ef3c22136c9fb172f0/order-settings","cta_link_type":"order","created_at":"2025-12-30T09:33:20.480+00:00","updated_at":"2026-08-13T09:33:13.643+00:00","made_of_food":false,"link_name":"Order","target":null,"website_footer_label":"Order","position":0},{"id":1668685,"spot_id":634274,"url":"https://lucysonthesquare.com/jobs","cta_link_type":"job_listing","created_at":"2025-11-18T17:40:40.961+00:00","updated_at":"2026-08-13T09:25:03.201+00:00","made_of_food":false,"link_name":"Job Listing","target":null,"website_footer_label":"Jobs","position":2}];
1241
1242  function find_cta_link(href) {
1243    for (var i=0; i< all_cta_links.length; i++){
1244      var cta_link = all_cta_links[i];
1245      if ( cta_link_matches_href(href, cta_link.url)){
1246        return cta_link;
1247      }
1248    }
1249  }
1250
1251  function find_cta_links(href) {
1252    var cta_links = []
1253    for (var i=0; i< all_cta_links.length; i++){
1254      var cta_link = all_cta_links[i];
1255      if ( cta_link_matches_href(href, cta_link.url)){
1256        cta_links.push(cta_link);
1257      }
1258    }
1259    return cta_links;
1260  }
1261
1262
1263  function get_current_page_cta_link_types(){
1264    var types = [];
1265    var cta_links = find_cta_links(document.location.href);
1266    for (var i=0; i<cta_links.length; i++){
1267      types.push(cta_links[i].cta_link_type);
1268    }
1269    return types;
1270  }
1271
1272
1273  function is_food_menu_page(){
1274    var cta_link_types = get_current_page_cta_link_types();
1275    for (var i=0; i<cta_link_types.length; i++){
1276      if ('food_menu' == cta_link_types[i])
1277        return true;
1278    }
1279    return false;
1280  }
1281
1282
1283  function get_form_cat_from_cta(){
1284    var cta_link = find_cta_link(document.location.href);
1285    if (cta_link == null) {
1286        return null;
1287    }
1288    if (cta_link.cta_link_type == 'private_parties'){
1289        return 'private_party';
1290    }else if (cta_link.cta_link_type == 'reservations'){
1291        return 'reservation';
1292    }else if (cta_link.cta_link_type == 'catering'){
1293        return 'catering';
1294    }else if (cta_link.cta_link_type == 'job_listing'){
1295        return 'job_listings';
1296    }else if (cta_link.cta_link_type == 'gift_cards'){
1297          return 'gift_cards';
1298    }
1299    return null;
1300  }
1301
1302  function element_has_events_defined(elem){
1303    if ($._data(elem, "events") === undefined){
1304      return false;
1305    }
1306    return true;
1307  }
1308
1309  function create_ga_events_for_cta_clicks(){
1310    if (typeof $ === 'function'){
1311
1312      var cta_link_of_the_page = find_cta_link(location.href);
1313
1314
1315      $("a").each(function(index, elem){
1316        var href = $(elem).attr('href');
1317
1318        if (href  === undefined ){
1319           return;
1320        }
1321
1322        if (href.substring(0,4) == 'tel:'){
1323          if (!element_has_events_defined(elem)){  // not footer links
1324            $(elem).on("click", function(){
1325                universal_ga('send', 'event', {
1326                  eventCategory: 'Button',
1327                  eventAction: 'Click',
1328                  eventLabel: 'Phone',
1329                  transport: 'beacon'
1330                });
1331             });
1332
1333             if (cta_link_of_the_page){
1334                $(elem).on("click", function(){
1335                    universal_ga('send', 'event', {
1336                      eventCategory: 'Button',
1337                      eventAction: 'Click',
1338                      eventLabel: cta_link_of_the_page.cta_link_type +  ' page phone',
1339                      transport: 'beacon'
1340                    });
1341                 });
1342             }
1343          } else {
1344             if (cta_link_of_the_page){
1345               $(elem).on("click", function(){
1346                   universal_ga('send', 'event', {
1347                        eventCategory: 'Button',
1348                        eventAction: 'Click',
1349                        eventLabel: cta_link_of_the_page.cta_link_type +  ' page phone footer',
1350                        transport: 'beacon'
1351                   });
1352               });
1353             }
1354          }
1355
1356
1357        }else{
1358          var cta_link = find_cta_link(href);
1359          if (elem.className != null && elem.className.indexOf("bottom-link") > -1){
1360            // console.log("bottom link detected");
1361          }else{
1362            if (cta_link != null){
1363              $(elem).on("click", function(){
1364                universal_ga('send', 'event', {
1365                        eventCategory: 'Website Link',
1366                        eventAction: 'Click',
1367                        eventLabel: cta_link.cta_link_type,
1368                        transport: 'beacon'
1369                  });
1370              });
1371            }
1372          }
1373        }
1374
1375
1376      });
1377    }
1378  }
1379
1380  if (typeof angular === "undefined") {
1381    create_ga_events_for_cta_clicks();
1382  } else {
1383    angular.element(document).ready(function () {
1384      create_ga_events_for_cta_clicks();
1385    });
1386  }
1387
1388
1389  function triggerShowFooterEvents(){
1390    if (window.screen.availWidth < 768){
1391        universal_ga('send', 'event', {
1392                eventCategory: 'Mobile Footer',
1393                eventAction: 'View',
1394                eventLabel: '',
1395                transport: 'beacon'
1396          });
1397    }
1398  }
1399
1400
1401
1402
1403  ////////////
1404  function smartFooterV2()
1405  {
1406    var list= document.getElementsByClassName("bottom-list-item");
1407    if (!list) return;
1408
1409    if (document.getElementById("bottom-navbar") == null){
1410      return;
1411    }
1412
1413    var bottomNav = document.querySelector('#bottom-navbar .navbar-nav');
1414    var footerLinkPaddingLeft = $('#bottom-navbar .navbar-nav li a').css('padding-left');
1415    var footerLinkPaddingRight = $('#bottom-navbar .navbar-nav li a').css('padding-right');
1416
1417    bottomNav.innerHTML = '';
1418    var linksWithPosition = all_cta_links.filter(e => e.position != null && e.position >= 0);
1419    linksWithPosition.sort(function(a,b) {
1420      return a.position - b.position;
1421    });
1422
1423    var footerLinkStyle = (footerLinkPaddingLeft == '0px' || footerLinkPaddingRight == '0px' ? 'style="padding-left: 8px; padding-right: 8px;"' : '');
1424
1425    linksWithPosition.forEach((e, i) => {
1426        var target = e.target || getUrlTarget(e.url);
1427        bottomNav.insertAdjacentHTML('beforeend',
1428        `<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>`);
1429    })
1430
1431    var intervalCount = 0
1432    var interval = setInterval(() => {
1433      if(intervalCount == 50){
1434        clearInterval(interval);
1435      }
1436      removeOverflowingFooterLinks();
1437      intervalCount ++;
1438    }, 200);
1439
1440    $('.smart-footer-link').on("click", function(){
1441          if (typeof shUrlParams !== "undefined" && shUrlParams['source'] === undefined){
1442                    shUrlParams['source'] = 'footer';
1443                    sessionStorage.setItem('shUrlParams', JSON.stringify(shUrlParams));
1444          }
1445
1446          var visibleLinks = $('.smart-footer-link').map(function (e) {
1447              return $(this).data('type');
1448          }).toArray().join(',');
1449
1450          universal_ga('send', 'event', {
1451                  eventCategory: 'Button',
1452                  eventAction: 'Click_footer_2',
1453                  eventLabel: "type:" + $(this).data('type') + "|position:" + $(this).data('position') + "|visible:" + visibleLinks,
1454                  transport: 'beacon'
1455            });
1456    });
1457  }
1458
1459  function removeOverflowingFooterLinks(){
1460    var bottomNavLinks = document.querySelectorAll('#bottom-navbar .navbar-nav li');
1461    var width_sum = 0;
1462
1463    bottomNavLinks.forEach(e => {
1464      width_sum += e.getBoundingClientRect().width;
1465      if ((width_sum) > window.innerWidth) {
1466        console.log(`%cLink %c${e.textContent} %cdeleted couldn't fit screen`,"color: #fff;background: #202124;", "background: red;color: #fff", "color: #fff;background: #202124;");
1467        e.remove();
1468      }
1469    });
1470  }
1471
1472  function getUrlTarget(url){
1473    if(url.startsWith('tel')){
1474      return '_self';
1475    }
1476    if(url.startsWith('/') || url.includes('tmt.spotapps.co') || url.includes(window.location.host)){
1477      return '_self';
1478    }
1479    return '_blank';
1480  }
1481
1482  function npb()
1483    {
1484    	var list= document.getElementsByClassName("bottom-list-item");
1485    	if (!list) return;
1486
1487      if (document.getElementById("bottom-navbar") == null){
1488        return;
1489      }
1490
1491      var url = ""
1492    	for (var i=0; i < all_cta_links.length; i++)
1493    	{
1494    		if (all_cta_links[i].cta_link_type == "order"){
1495          url = all_cta_links[i].url;
1496        }
1497    	}
1498
1499    	if ( url == ""){
1500        return;
1501      }
1502
1503    	for (i=0; i < list.length; i++)
1504    	{
1505    		console.log(cta_link_matches_href(list[i].firstChild.href, url));
1506    		if (cta_link_matches_href(list[i].firstChild.href,url))  return;
1507
1508    	};
1509
1510    	var item = list[list.length-1]
1511    	document.getElementById("bottom-navbar").getElementsByClassName("nav navbar-nav")[0].appendChild(item.cloneNode(true));
1512    	var width_sum = 0;
1513    	for (i=0; i < list.length; i++) {
1514    		width_sum += list[i].getBoundingClientRect().width;
1515    	}
1516
1517    	var item = list[list.length-1]
1518    	if ((width_sum - 10) > window.innerWidth) { item.parentNode.removeChild(item); console.log("link deleted couldn't fit screen"); return; }
1519
1520    	item.firstChild.text = "Order";
1521    	item.firstChild.href = url;
1522    	item.firstChild.id = "bottom_link_" + list.length;
1523
1524      $(item.firstChild).on("click", function(){
1525
1526          if (typeof shUrlParams !== "undefined" && shUrlParams['source'] === undefined){
1527                    shUrlParams['source'] = 'footer';
1528                    sessionStorage.setItem('shUrlParams', JSON.stringify(shUrlParams));
1529                  }
1530
1531          universal_ga('send', 'event', {
1532                  eventCategory: 'Button',
1533                  eventAction: 'Click',
1534                  eventLabel: 'Plan B-2 Order',
1535                  transport: 'beacon'
1536            });
1537      });
1538
1539
1540    }
1541
1542function activateSmartFooter(){
1543    var smart_footer_active = true;
1544    var smart_footer_version = 2;
1545    var man_bottom_active = false;
1546    if(window.location.hash == '#smartFooterV2=enabled'){
1547      smartFooterV2();
1548      return;
1549    }
1550    if (smart_footer_active && !man_bottom_active){
1551      if(smart_footer_version == 2 ){
1552          smartFooterV2();
1553       }else {
1554          npb();
1555       }
1556    }
1557  }
1558
1559  activateSmartFooter();
1560
1561  var corona_config_str = '';
1562  var corona_config =  corona_config_str != '' ?  JSON.parse('') : null;
1563
1564
1565  //corona instuctions
1566  function show_corona_instructions(text, phone, btnText){
1567    //format to US number
1568    var match = phone.match(/^(\d{3})(\d{3})(\d{4})$/);
1569
1570    if(corona_config.shopping_cart_type == "TMT" && corona_config.shopping_cart_active == true) {
1571        var linkLocation = "https://tmt.spotapps.co/ordering-menu/?spot_id="+corona_config.spot_id+"&images=yes&accordion=true";
1572        var btnLinkLocation = "https://tmt.spotapps.co/ordering-menu/?spot_id="+corona_config.spot_id+"&images=yes&accordion=true";
1573    }else {
1574        var linkLocation = 'tel:+1'+phone+'';
1575        var btnLinkLocation = 'tel:+1'+ match[1] + '-' + match[2] + '-' + match[3] +''
1576    }
1577    var appendPhone = 'tel:+1'+phone+'';
1578    //inject html content
1579    if ($('.food-menu-nav').length) {
1580      //new template
1581      var pageEl =  $('.food-menu-nav').css('margin','20px auto 10px auto');
1582      var textColor = rgb2hex($('.section-header').css('color'));
1583      var linkColor = rgb2hex($('.food-menu-nav-item.active').css('background-color'));
1584      var fontSize = parseInt($('.food-menu-nav-item').css('font-size'));
1585      fontSize = fontSize + Math.round(fontSize  * 0.25);
1586
1587      // 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>';
1588      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>';
1589
1590    }else {
1591      //old template
1592      var pageEl = $('.tabnav');
1593      var textColor = rgb2hex($('.menu-item-name-traditional').css('color'));
1594      var linkColor = rgb2hex($('.style-traditional .tabnav .nav>li.active>a').css('color'));
1595
1596      var linkTextColor = getContrast50(linkColor);
1597      var fontSize = parseInt($('.menu-item-name-traditional').css('font-size'));
1598      fontSize = fontSize + Math.round(fontSize  * 0.25);
1599      var textTransform = $('.style-traditional .tabnav .nav>li>a').css('text-transform');
1600
1601      // 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>';
1602      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>';
1603
1604    }
1605     //html content
1606    pageEl.prepend(html);
1607  }
1608
1609  function rgb2hex(rgb) {
1610    if(typeof rgb !== "undefined"){
1611      rgbColor = rgb.match(/^rgb\((\d+),\s*(\d+),\s*(\d+)\)$/);
1612      if (!rgbColor) {
1613        rgba = rgb.match(/^rgba?\((\d+),\s*(\d+),\s*(\d+)(,\s*\d+\.*\d+)?\)$/);
1614        return "#" + hex(rgba[1]) + hex(rgba[2]) + hex(rgba[3]);
1615      }
1616      function hex(x) {
1617          return ("0" + parseInt(x).toString(16)).slice(-2);
1618      }
1619      return "#" + hex(rgbColor[1]) + hex(rgbColor[2]) + hex(rgbColor[3]);
1620    }
1621    return rgb;
1622  }
1623
1624  function getContrast50(hexcolor){
1625    return (parseInt(hexcolor, 16) > 0xffffff/2) ? '#000':'#fff';
1626  }
1627
1628  function show_corona_sidebar_instructions(text, phone){
1629    //format to US number
1630    var match = phone.match(/^(\d{3})(\d{3})(\d{4})$/);
1631    var divWidth = 230;
1632    var top = 50;
1633    var linkSize = '1.6em';
1634    var pSize = $('p').css('font-size');
1635    var appendPhone = 'tel:+1'+phone+'';
1636
1637    if ($(window).width() < 1600)
1638      var top = 30;
1639    if ($(window).width() < 1200){
1640      var divWidth = 180;
1641      var linkSize = '1.4em';
1642      var pSize ='1.1em';
1643    }
1644
1645    if($('.food-menu-nav').length){ //new template
1646      var textColor = $('.food-menu-nav-item.active').css('color');
1647      var linkColor = $('.food-menu-nav-item.active').css('background-color');
1648
1649      var linkTextColor = $('.food-menu-nav-item.active').css('color');
1650      var parent = $('.food-menu-page');
1651    }
1652    else { //old template
1653      var textColor = $('.menu-item-name-traditional').css('color');
1654      var linkColor = $('.style-traditional .tabnav .nav>li.active>a').css('color');
1655      var parent = $('.food-menu').length ? $('.food-menu') : $('.drink-menu');
1656      var linkTextColor = getContrast50(linkColor);
1657    }
1658
1659    // $(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>');
1660    $(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>');
1661
1662    //check if resolution is bigger than tablet resolution
1663/*  if ($(window).width() > 991) {
1664      //detect scroll
1665      window.onscroll = function (e) {
1666      if ($(window).scrollTop() == 0) {
1667          $('#corona-instructions-sidebar').hide();
1668        }else {
1669          $('#corona-instructions-sidebar').show();
1670        }
1671      }
1672    } */
1673  }
1674
1675  function check_corona_config(config){
1676    console.log(config)
1677    if (config) {
1678      if (config.instructions_on_food_page && config.food_page_instruction_text && config.food_page_instruction_phone) {
1679        if (!config.promote_deliveries && config.promote_pick_up) {
1680          var btnText = 'Call For Pick Up';
1681        }
1682        if (config.promote_deliveries && !config.promote_pick_up) {
1683          var btnText = 'Call For Delivery';
1684        }
1685        if (config.promote_deliveries && config.promote_pick_up) {
1686          var btnText = 'Call For Pick Up Or Delivery';
1687        }
1688
1689        if(typeof btnText !== "undefined"){ // check if pick up or delivery are true
1690          if(config.shopping_cart_type == "TMT" && config.shopping_cart_active == true) {
1691                var btnText = 'ORDER NOW';
1692                    if($('.food-menu-nav').length){ //new template
1693                      var textColor = rgb2hex($('.section-header').css('color'));
1694                      var linkColor = rgb2hex($('.food-menu-nav-item.active').css('background-color'));
1695                      var fontSize = parseInt($('.food-menu-nav-item').css('font-size'));
1696                      fontSize = fontSize + Math.round(fontSize  * 0.25);
1697                    }
1698                    else { //old template
1699                        var textColor = rgb2hex($('.menu-item-name-traditional').css('color'));
1700                        var linkColor = rgb2hex($('.style-traditional .tabnav .nav>
1700li.active>a').css('color'));
1701
1702                        var linkTextColor = getContrast50(linkColor);
1703                        var fontSize = parseInt($('.menu-item-name-traditional').css('font-size'));
1704                        fontSize = fontSize + Math.round(fontSize  * 0.25);
1705                    }
1706                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);
1707                show_corona_sidebar_instructions(btnText, config.food_page_instruction_phone);
1708            } else {
1709                show_corona_instructions(config.food_page_instruction_text, config.food_page_instruction_phone, btnText);
1710                show_corona_sidebar_instructions(btnText, config.food_page_instruction_phone);
1711            }
1712
1713        }
1714      }
1715    }
1716  }
1717
1718
1719  if (is_food_menu_page() && !window.location.search.includes("contactless=true")){
1720    $( document ).ready(function() {
1721       setTimeout(function(){
1722        check_corona_config(corona_config);
1723       }, 300);
1724    });
1725  }
1726
1727
1728
1729  function isPhone(phone){
1730      var regex = /^(\+\d{1,2}\s?)?\(?\d{3}\)?[\s.-]?\d{3}[\s.-]?\d{4}$/;
1731      return regex.test(phone);
1732  }
1733
1734  function sendEmail_MT (input_id) {
1735    const $loader = $("[data-id=newsletter-widget-2] .sph-loading-img");
1736
1737    const $step = {
1738      form: $("[data-id=newsletter-widget-2] .sph-email-form"),
1739      message: $("[data-id=newsletter-widget-2] .sph-response-message"),
1740    }
1741
1742    const $field = {
1743      email: $("[data-id=newsletter-widget-2] #sph-newsletter-input-" + input_id),
1744      phone: $("[data-id=newsletter-widget-2] #sph-newsletter-phone-" + input_id),
1745      consent: $("[data-id=newsletter-widget-2] #sph-newsletter-checkbox-phone-" + input_id),
1746    };
1747
1748    const $error = {
1749      email: $("[data-id=newsletter-widget-2] #sph-newsletter-email-error-" + input_id),
1750      phone: $("[data-id=newsletter-widget-2] #sph-newsletter-phone-error-" + input_id),
1751    };
1752
1753    if ($field.email.val().trim() === "") {
1754        $error.email
1755          .html("This field is required")
1756          .show();
1757    }
1758    else if (!isEmail($field.email.val().trim())) {
1759      $error.email
1760        .html("Please use the format “[email protected]”")
1761        .show();
1762    } else {
1763      $error.email
1764        .html("")
1765        .hide();
1766    }
1767
1768    if ($field.consent.is(':checked') && $field.phone.val().trim() === "") {
1769      $error.phone
1770        .html("This field is required")
1771        .show();
1772    } else if ($field.phone.val().trim().length > 0 && !isPhone($field.phone.val().trim())) {
1773      $error.phone
1774        .html("The phone number must contain 10 digits")
1775        .show();
1776    } else {
1777      $error.phone
1778        .html("")
1779        .hide();
1780    }
1781
1782    const errorField = $step.form.find('.sh-form-error:visible');
1783
1784    if (errorField.length > 0) {
1785      const input = errorField.first().next();
1786
1787      document.activeElement.blur();
1788
1789      setTimeout(() => {
1790        input.focus();
1791      }, 160)
1792
1793      return;
1794    }
1795
1796    $loader
1797      .show()
1798      .prev()
1799      .hide();
1800
1801    $.ajax({
1802      method: "POST",
1803      url: "https://www.spothopperapp.com/api/spots/634274/contacts/add_with_texting_permission",
1804      crossDomain: true,
1805      dataType: 'json',
1806      data: {
1807        email: $field.email.val().trim(),
1808        phone: $field.phone.val().trim(),
1809        texting_permission: $field.consent.is(':checked'),
1810      },
1811      success: function (data) {
1812        afterRequestSubmission(data);
1813      },
1814      error: function () {
1815        afterRequestSubmission("Something went wrong. Please try again later.");
1816      }
1817    });
1818
1819    function afterRequestSubmission (data) {
1820      $step.form.hide();
1821
1822      $step.message
1823        .html(data)
1824        .show()
1825        .trigger('focus');
1826    }
1827  }
1828</script>
1828<script>function addPromotionParamsToTMTLinks()
1829{
1830    if (sessionStorage.getItem('shUrlParams')) {
1831        let shParams = JSON.parse(sessionStorage.getItem('shUrlParams'));
1832        if (!Object.keys(shParams).length)
1833            return;
1834        if(!shParams.source)
1835            return;
1836        $('a').each(function () {
1837            if (this.href.includes('tmt.spotapps.co')) {
1838                if(this.href.includes('&source=') || this.href.includes('&destination=') || this.href.includes('&promotion='))
1839                    return;
1840
1841                this.href = this.href + '&source=' + shParams.source;
1842                if(shParams.destination)
1843                    this.href = this.href + '&destination=' + shParams.destination;
1844                if(shParams.promotion)
1845                    this.href = this.href + '&promotion=' + shParams.promotion;
1846                if(shParams.fb_post_id)
1847                    this.href = this.href + '&fb_post_id=' + shParams.fb_post_id;
1848                if(shParams.email_post_id)
1849                    this.href = this.href + '&email_post_id=' + shParams.email_post_id;
1850            }
1851        })
1852    }
1853}
1854setTimeout(function() {
1855  addPromotionParamsToTMTLinks();
1856  addFooterToSourceParam();
1857},600)
1858
1859function addFooterToSourceParam()
1860{
1861    $('.bottom-link').each(function (){
1862        if(shouldAddSourceParam(this.href))
1863          this.href = this.href + '&source=footer';
1864    })
1865    $('#sh-multiple-links-content-holder a').each(function (){
1866       if(shouldAddSourceParam(this.href))
1867          this.href = this.href + '&source=footer';
1868    })
1869}
1870function shouldAddSourceParam(link){
1871  if (link.includes('tmt.spotapps.co') && !link.includes('&source=')){
1872    return true;
1873  }
1874  return false;
1875}
1876</script>
1876<script>
1877;(async () => {
1878if (typeof window.focusTrap === 'undefined') {
1879    await getScript('https://unpkg.com/tabbable/dist/index.umd.js');
1880    await getScript('https://unpkg.com/focus-trap/dist/focus-trap.umd.js');
1881}
1882
1883document.querySelectorAll('.modal').forEach((element) => {
1884    const trap = window.focusTrap?.createFocusTrap(element, {
1885        allowOutsideClick: true,
1886    });
1887
1888    $(element).on('shown.bs.modal', () => {
1889	    trap?.activate();
1890	});
1891
1892	$(element).on('hidden.bs.modal', () => {
1893        trap?.deactivate();
1894    });
1895});
1896
1897async function getScript (source) {
1898    return new Promise((resolve, reject) => {
1899        const script = document.createElement('script');
1900        script.src = source;
1901        script.async = true;
1902
1903        script.onload = resolve;
1904        script.onerror = reject;
1905
1906        document.head.appendChild(script);
1907    });
1908}
1909})();
1910</script>
1910<script src="https://wcache-plugins.spotapps.co/production/wcpl_bootstrap_ada_fix/wcpl_bootstrap_ada_fix.js"></script>
1910<link href="https://wcache-plugins.spotapps.co/production/wcpl_bday_club/wcpl_bday_club.css" rel="stylesheet" media="screen"/>
1910<script src="https://wcache-plugins.spotapps.co/production/wcpl_bday_club/wcpl_bday_club.js"></script>
1910<script src="https://wcache-plugins.spotapps.co/production/wcpl_ga_tracking/wcpl_ga_tracking.js"></script>
1910<script src="https://wcache-plugins.spotapps.co/production/wcpl_media_controls/script.js"></script>
1910<link href="https://wcache-plugins.spotapps.co/production/wcpl_website_editor_interpreter/website_interpreter_helper_style.css" rel="stylesheet" media="screen"/>
1910<script>var changes_log_array = {};</script>
1910<script src="https://wcache-plugins.spotapps.co/production/wcpl_website_editor_interpreter/website_interpreter.js"></script>
1910</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.