PageSourceSearch

https://smartsignpro.ai/

html smartsignpro.ai collected 2026-10-02 00:41:54 UTC 64,831 bytes, 669 lines download raw bytes

1<!DOCTYPE html>
2<html lang="en" class="h-full landing" data-theme="staff">
3  <head>
4    <meta charset="UTF-8">
5    <meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover">
6    <title>SmartSignPro - Digital Signage, Online Ordering, Stripe &amp; Uber Delivery</title>
7    <meta name="description" content="SmartSignPro digital signage with built-in online ordering: QR-to-order storefronts, Stripe Connect payments, Uber Direct courier delivery, Square catalog sync, and optional AI audience insights. Start a 7-day trial.">
8    <meta name="robots" content="index,follow">
9    <link rel="canonical" href="https://smartsignpro.ai/">
10      <link rel="alternate" hreflang="en" href="https://smartsignpro.ai/?locale=en">
11      <link rel="alternate" hreflang="es" href="https://smartsignpro.ai/?locale=es">
12      <link rel="alternate" hreflang="x-default" href="https://smartsignpro.ai/?locale=en">
13    <meta name="keywords" content="digital signage, digital signage solutions, business signage, electronic displays, menu boards, SmartSignPro">
14    <!-- Open Graph / Facebook -->
15    <meta property="og:type" content="website">
16    <meta property="og:url" content="https://smartsignpro.ai/">
17    <meta property="og:title" content="SmartSignPro - Digital Signage, Online Ordering, Stripe &amp; Uber Delivery">
18    <meta property="og:description" content="SmartSignPro digital signage with built-in online ordering: QR-to-order storefronts, Stripe Connect payments, Uber Direct courier delivery, Square catalog sync, and optional AI audience insights. Start a 7-day trial.">
19    <meta property="og:image" content="https://smartsignpro.ai/logo.jpg">
20    <!-- Twitter -->
21    <meta name="twitter:card" content="summary_large_image">
22    <meta name="twitter:url" content="https://smartsignpro.ai/">
23    <meta name="twitter:title" content="SmartSignPro - Digital Signage, Online Ordering, Stripe &amp; Uber Delivery">
24    <meta name="twitter:description" content="SmartSignPro digital signage with built-in online ordering: QR-to-order storefronts, Stripe Connect payments, Uber Direct courier delivery, Square catalog sync, and optional AI audience insights. Start a 7-day trial.">
25    <meta name="twitter:image" content="https://smartsignpro.ai/assets/images/logo.jpg">
26      
26<script type="application/ld+json">{"@context":"https://schema.org","@type":"Organization","name":"SmartSignPro","url":"https://smartsignpro.ai","logo":"https://smartsignpro.ai/logo32x.png"}</script>
26
27      
27<script type="application/ld+json">{"@context":"https://schema.org","@type":"WebSite","name":"SmartSignPro","url":"https://smartsignpro.ai","inLanguage":"en"}</script>
27
28    <link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
29    <link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
30    <meta name="csrf-param" content="authenticity_token" />
31<meta name="csrf-token" content="j2YREtQFWO7QEPyhyfCCzs3Iu91lhhmLUKiN_50t6te13flWcV-vl242ZTMJjsQAT3wKhfWy-umY9VcxWOX5lQ" />
32    
33    <link rel="stylesheet" href="/assets/tailwind-5e23104b656c7dfb21d4dd0e58c237915b6ef423497b93fbebbb51116194d71a.css" data-turbo-track="reload" />
34<link rel="stylesheet" href="/assets/inter-font-8c3e82affb176f4bca9616b838d906343d1251adc8408efe02cf2b1e4fcf2bc4.css" data-turbo-track="reload" />
35    <link rel="stylesheet" href="/assets/application-08bf75f244ebc310ebf861980b3ae4584fac7bc2c95764d90a1fc62905145643.css" data-turbo-track="reload" />
36      <!-- Google tag (gtag.js) -->
vendor: 70 bytes, lines 36-37
36
37      <script async src="https://www.googletagmanager.com/gtag/js?id=
37G-N5BHZTKLD9
vendor: 18 bytes, lines 37-38
37"></script>
38      
38<script>
39        
vendor: 152 bytes, lines 39-43
39window.dataLayer = window.dataLayer || [];
40        function gtag(){dataLayer.push(arguments);}
41        gtag('js', new Date());
42
43        gtag('config', '
43G-N5BHZTKLD9
vendor: 10 bytes, lines 43-44
43');
44      
44</script>
44
45    
45<script type="importmap" data-turbo-track="reload">{
46  "imports": {
47    "application": "/assets/application-4e2967b3ae4335138ec0abfd8014539619712263522c0ab5a3e951a2afa71037.js",
48    "storefront": "/assets/storefront-7bf0dc187e562975c6069f5f252d7673fc0e030d33b9d483cd7573b43258fd45.js",
49    "@hotwired/turbo-rails": "/assets/turbo.min-c6325b8b56619b34aa6e0f34dfed82b010fe049f81b320a4cd0e2d99d3245118.js",
50    "@hotwired/stimulus": "/assets/@hotwired--stimulus-379f09adbcd004e5b2c2793635d128b6e72c08d1ef5337bf8a5d1e260aaa403e.js",
51    "@hotwired/stimulus-loading": "/assets/stimulus-loading-3576ce92b149ad5d6959438c6f291e2426c86df3b874c525b30faad51b0d96b3.js",
52    "trix": "/assets/trix-e17a480fcb4e30c8571f0fed42dc81de5faeef93755ca30fe9623eb3f5c709e5.js",
53    "@rails/actiontext": "/assets/actiontext-78de0ebeae470799f9ec25fd0e20ae2d931df88c2ff9315918d1054a2fca2596.js",
54    "jquery": "https://ga.jspm.io/npm:[email protected]/dist/jquery.js",
55    "tailwindcss": "https://ga.jspm.io/npm:[email protected]/lib/index.js",
56    "#node.js": "https://ga.jspm.io/npm:[email protected]/browser.js",
57    "@alloc/quick-lru": "https://ga.jspm.io/npm:@alloc/[email protected]/index.js",
58    "@jridgewell/gen-mapping": "https://ga.jspm.io/npm:@jridgewell/[email protected]/dist/gen-mapping.umd.js",
59    "@jridgewell/resolve-uri": "https://ga.jspm.io/npm:@jridgewell/[email protected]/dist/resolve-uri.umd.js",
60    "@jridgewell/set-array": "https://ga.jspm.io/npm:@jridgewell/[email protected]/dist/set-array.umd.js",
61    "@jridgewell/sourcemap-codec": "https://ga.jspm.io/npm:@jridgewell/[email protected]/dist/sourcemap-codec.umd.js",
62    "@jridgewell/trace-mapping": "https://ga.jspm.io/npm:@jridgewell/[email protected]/dist/trace-mapping.umd.js",
63    "@nodelib/fs.scandir": "https://ga.jspm.io/npm:@nodelib/[email protected]/out/index.js",
64    "@nodelib/fs.stat": "https://ga.jspm.io/npm:@nodelib/[email protected]/out/index.js",
65    "@nodelib/fs.walk": "https://ga.jspm.io/npm:@nodelib/[email protected]/out/index.js",
66    "@tailwindcss/line-clamp": "https://ga.jspm.io/npm:@tailwindcss/[email protected]/src/index.js",
67    "@tailwindcss/oxide": "https://ga.jspm.io/npm:@jspm/[email protected]/nodelibs/@empty.js",
68    "assert": "https://ga.jspm.io/npm:@jspm/[email protected]/nodelibs/browser/assert.js",
69    "braces": "https://ga.jspm.io/npm:[email protected]/index.js",
70    "browserslist": "https://ga.jspm.io/npm:[email protected]/index.js",
71    "buffer": "https://ga.jspm.io/npm:@jspm/[email protected]/nodelibs/browser/buffer.js",
72    "camelcase-css": "https://ga.jspm.io/npm:[email protected]/index-es5.js",
73    "caniuse-lite/dist/unpacker/agents": "https://ga.jspm.io/npm:[email protected]/dist/unpacker/agents.js",
74    "child_process": "https://ga.jspm.io/npm:@jspm/[email protected]/nodelibs/browser/child_process.js",
75    "crypto": "https://ga.jspm.io/npm:@jspm/[email protected]/nodelibs/browser/crypto.js",
76    "cssesc": "https://ga.jspm.io/npm:[email protected]/cssesc.js",
77    "detect-libc": "https://ga.jspm.io/npm:[email protected]/lib/detect-libc.js",
78    "didyoumean": "https://ga.jspm.io/npm:[email protected]/didYouMean-1.2.1.js",
79    "dlv": "https://ga.jspm.io/npm:[email protected]/dist/dlv.umd.js",
80    "electron-to-chromium/versions": "https://ga.jspm.io/npm:[email protected]/versions.js",
81    "events": "https://ga.jspm.io/npm:@jspm/[email protected]/nodelibs/browser/events.js",
82    "fast-glob": "https://ga.jspm.io/npm:[email protected]/out/index.js",
83    "fastq": "https://ga.jspm.io/npm:[email protected]/queue.js",
84    "fill-range": "https://ga.jspm.io/npm:[email protected]/index.js",
85    "fs": "https://ga.jspm.io/npm:@jspm/[email protected]/nodelibs/browser/fs.js",
86    "glob-parent": "https://ga.jspm.io/npm:[email protected]/index.js",
87    "is-extglob": "https://ga.jspm.io/npm:[email protected]/index.js",
88    "is-glob": "https://ga.jspm.io/npm:[email protected]/index.js",
89    "is-number": "https://ga.jspm.io/npm:[email protected]/index.js",
90    "jiti": "https://ga.jspm.io/npm:[email protected]/lib/index.js",
91    "lightningcss": "https://ga.jspm.io/npm:[email protected]/node/index.js",
92    "lines-and-columns": "https://ga.jspm.io/npm:[email protected]/build/index.js",
93    "merge2": "https://ga.jspm.io/npm:[email protected]/index.js",
94    "micromatch": "https://ga.jspm.io/npm:[email protected]/index.js",
95    "module": "https://ga.jspm.io/npm:@jspm/[email protected]/nodelibs/browser/module.js",
96    "nanoid/non-secure": "https://ga.jspm.io/npm:[email protected]/non-secure/index.cjs",
97    "node-releases/data/processed/envs.json": "https://ga.jspm.io/npm:[email protected]/data/processed/envs.json.js",
98    "node-releases/data/release-schedule/release-schedule.json": "https://ga.jspm.io/npm:[email protected]/data/release-schedule/release-schedule.json.js",
99    "normalize-path": "https://ga.jspm.io/npm:[email protected]/index.js",
100    "object-hash": "https://ga.jspm.io/npm:[email protected]/dist/object_hash.js",
101    "os": "https://ga.jspm.io/npm:@jspm/[email protected]/nodelibs/browser/os.js",
102    "path": "https://ga.jspm.io/npm:@jspm/[email protected]/nodelibs/browser/path.js",
103    "perf_hooks": "https://ga.jspm.io/npm:@jspm/[email protected]/nodelibs/browser/perf_hooks.js",
104    "picocolors": "https://ga.jspm.io/npm:[email protected]/picocolors.browser.js",
105    "picomatch": "https://ga.jspm.io/npm:[email protected]/index.js",
106    "picomatch/lib/utils": "https://ga.jspm.io/npm:[email protected]/lib/utils.js",
107    "postcss": "https://ga.jspm.io/npm:[email protected]/lib/postcss.js",
108    "postcss-js": "https://ga.jspm.io/npm:[email protected]/index.js",
109    "postcss-nested": "https://ga.jspm.io/npm:[email protected]/index.js",
110    "postcss-selector-parser": "https://ga.jspm.io/npm:[email protected]/dist/index.js",
111    "postcss-selector-parser/dist/util/unesc": "https://ga.jspm.io/npm:[email protected]/dist/util/unesc.js",
112    "process": "https://ga.jspm.io/npm:@jspm/[email protected]/nodelibs/browser/process-production.js",
113    "queue-microtask": "https://ga.jspm.io/npm:[email protected]/index.js",
114    "reusify": "https://ga.jspm.io/npm:[email protected]/reusify.js",
115    "run-parallel": "https://ga.jspm.io/npm:[email protected]/index.js",
116    "source-map-js": "https://ga.jspm.io/npm:[email protected]/source-map.js",
117    "stream": "https://ga.jspm.io/npm:@jspm/[email protected]/nodelibs/browser/stream.js",
118    "sucrase": "https://ga.jspm.io/npm:[email protected]/dist/esm/index.js",
119    "tailwindcss/plugin": "https://ga.jspm.io/npm:[email protected]/plugin.js",
120    "to-regex-range": "https://ga.jspm.io/npm:[email protected]/index.js",
121    "ts-interface-checker": "https://ga.jspm.io/npm:[email protected]/dist/index.js",
122    "tty": "https://ga.jspm.io/npm:@jspm/[email protected]/nodelibs/browser/tty.js",
123    "url": "https://ga.jspm.io/npm:@jspm/[email protected]/nodelibs/browser/url.js",
124    "util": "https://ga.jspm.io/npm:@jspm/[email protected]/nodelibs/browser/util.js",
125    "util-deprecate": "https://ga.jspm.io/npm:[email protected]/browser.js",
126    "v8": "https://ga.jspm.io/npm:@jspm/[email protected]/nodelibs/browser/v8.js",
127    "vm": "https://ga.jspm.io/npm:@jspm/[email protected]/nodelibs/browser/vm.js",
128    "@stimulus-components/rails-nested-form": "/assets/@stimulus-components--rails-nested-form-496493a32067408b4847d064c97b32e48d88649b57526e3a6d32d084c80778c9.js",
129    "stimulus-autocomplete": "/assets/stimulus-autocomplete-db62d6c44e96a8b465ccf65261cc8189936e1864b6282c67105ed83247146555.js",
130    "sortablejs": "/assets/sortablejs-68686d1e12934ac42f22f33f54142790b1871ade677693308b23c8b38866f8c6.js",
131    "@rails/request.js": "/assets/@rails--request.js-ba0e06d8d298e2036df9175766a9632787ebc8308c37e5bca53b8a7711883124.js",
132    "@rails/actioncable": "/assets/@rails--actioncable-a48fc154e1867758852b84ac9372064eaac4e2b50cab8e0e75a64b4348794a3d.js",
133    "chart.js": "https://cdn.jsdelivr.net/npm/[email protected]/+esm",
134    "chart.js/auto": "https://cdn.jsdelivr.net/npm/[email protected]/auto/+esm",
135    "controllers/application": "/assets/controllers/application-a75f5f2bbf6485a2a5ca7c89a543c7dd9254d2b0d45fc073c41c39281b005766.js",
136    "controllers/auto_select_controller": "/assets/controllers/auto_select_controller-9024cf1984e09469cc3cbe82e3b8333faf8f8436e97af0c141e451dd1ba402d4.js",
137    "controllers/auto_submit_controller": "/assets/controllers/auto_submit_controller-e93abd8b1320af214321a91220ff20ee7cd62f08c0ccb91bef5568c438f2ff21.js",
138    "controllers/button_loading_controller": "/assets/controllers/button_loading_controller-25667cd3ee13072ff2b4af19506fc62493c38f4b53619ce3829b82922d5899dd.js",
139    "controllers/category_card_preview_controller": "/assets/controllers/category_card_preview_controller-de42024557ed3abf1a570227a53109fd908fece3cde3fcf3781ecc91bcd8c751.js",
140    "controllers/checkout_form_controller": "/assets/controllers/checkout_form_controller-c7fca27f9ead922a1e9a04270c1a17595b6ad9bc41b31ac15224fca9f65435e7.js",
141    "controllers/copy_group_picker_controller": "/assets/controllers/copy_group_picker_controller-ac8e4b3bb05cef33c3753bcdff5720e94d7876416e73114a24ae1bad38982c88.js",
142    "controllers/custom_domain_dns_controller": "/assets/controllers/custom_domain_dns_controller-94d11ecf4fd99cf68d1e2a268c8132cf7e0d425a0af1c18beea2809c74f7063a.js",
143    "controllers/device_manager_controller": "/assets/controllers/device_manager_controller-dad0ed0ef89546947036432a792e82dc54720d52bdb8ce817b28011e73b52114.js",
144    "controllers/device_setup_controller": "/assets/controllers/device_setup_controller-fa998911dd5d73a8e17f3953b804ed02135557bdb51a97a2417a7f133f3f1b98.js",
145    "controllers/discount_form_controller": "/assets/controllers/discount_form_controller-94f4f5b93c8772737442be15e69f25e99da6ce88ea092f8feb9f99ed6302e144.js",
146    "controllers/drawer_controller": "/assets/controllers/drawer_controller-d2ee393e8bb5b64842b9be0298bf8815abaa74a3910d220f2c839c1185d776fc.js",
147    "controllers/dropdown_controller": "/assets/controllers/dropdown_controller-d51bcfa501801bf80aa8b12c6fee87ce7f767c34d182a8b1173a4db3a7398039.js",
148    "controllers/editor_chrome_controller": "/assets/controllers/editor_chrome_controller-ead9c2b1703df98721d106d644d3cd63b2d25142fbfc40ea76a360734e65aef5.js",
149    "controllers/flash_controller": "/assets/controllers/flash_controller-571e580bd707f01c4457c536e85feae13da0c348100ea38b0052d6546d2c711f.js",
150    "controllers/flash_dismiss_controller": "/assets/controllers/flash_dismiss_controller-01769d63bc713c711307fe6ff0e1defacfdcb5649789d5a37d9035ad2bf424a3.js",
151    "controllers/form_guard_controller": "/assets/controllers/form_guard_controller-cef31a228fc3a9552649c9d9cbe21ad11af56d5c2c7a0028a166c527517d5aea.js",
152    "controllers/grapesjs_tablet_controller": "/assets/controllers/grapesjs_tablet_controller-70a7aeccdb43b3e6e141e1e3daa39481e447731e4f3097d9c86c94e2e1d2c635.js",
153    "controllers/hello_controller": "/assets/controllers/hello_controller-549135e8e7c683a538c3d6d517339ba470fcfb79d62f738a0a089ba41851a554.js",
154    "controllers/hours_controller": "/assets/controllers/hours_controller-44e058e80de02f101778a26b51fa035a058cd8247a2661e5326a4288083447d6.js",
155    "controllers/image_upload_controller": "/assets/controllers/image_upload_controller-4a2294cfa5f40b8b78ad4dec20f39980f7bb68866524d8b2b17988337dd31096.js",
156    "controllers/impersonation_controller": "/assets/controllers/impersonation_controller-ac799e8ef79714aa1d622ba299c4c849ef345f27477a24c0f28cf801413155ca.js",
157    "controllers": "/assets/controllers/index-2db729dddcc5b979110e98de4b6720f83f91a123172e87281d5a58410fc43806.js",
158    "controllers/invoice_collect_controller": "/assets/controllers/invoice_collect_controller-20950f4eecf8a6d645dd7edda8d8bb83bec3b3a11172e6cbb413cfd47929a80b.js",
159    "controllers/invoice_form_controller": "/assets/controllers/invoice_form_controller-b0dade0a12601532454214664e36135e9f550fbf1826c1baa2290f67cca1093e.js",
160    "controllers/item_sheet_controller": "/assets/controllers/item_sheet_controller-f90ba96ca3712f0d1
1607bf67ff1df3a0c27f39290d2b20505ccf69a395604432fc.js",
161    "controllers/kiosk_poller_controller": "/assets/controllers/kiosk_poller_controller-e68b9028d6e418934c85ae6f3bbe091996ae8ea2ff08be292f4cfecd71557df2.js",
162    "controllers/kitchen_display_controller": "/assets/controllers/kitchen_display_controller-620bdf4961ec440456d47d1e9fe260e29c12fa89e7290e96d1cae55cc79fd3ff.js",
163    "controllers/locale_switch_controller": "/assets/controllers/locale_switch_controller-3957e9a15026c6dbc4139cf2c65c0f603902d75ca22cd78a1cfb207a7a57a572.js",
164    "controllers/location_controller": "/assets/controllers/location_controller-ce1b266493a8f8d20a11d0d8430373e8a84cf0d7c43339b55e176237912fd43b.js",
165    "controllers/location_users_controller": "/assets/controllers/location_users_controller-cb68ed2d69128dd0dc4b0d79c5b7eb6abe572cf9ba5c6b62af70a64b4db76f3a.js",
166    "controllers/menu_category_sortable_controller": "/assets/controllers/menu_category_sortable_controller-b0db9e156557c6d1795c69bec05f6d47428c568dcf8d0fbc67e40057e96eea44.js",
167    "controllers/menu_copy_controller": "/assets/controllers/menu_copy_controller-6cb4dd3e43d2a19ee2c956e7faa8e0a0f3bacd642bbf64b603cee7ac9f6e637a.js",
168    "controllers/menu_editor_controller": "/assets/controllers/menu_editor_controller-e0b33b2995c9649574544d9333486205dcf8f7a233e9a5c725c744d6924fa9e5.js",
169    "controllers/menu_item_controller": "/assets/controllers/menu_item_controller-5a015ac47d21cb94f28e5afcde0ace076f4eb123dd28d00ccae014511c6ce6af.js",
170    "controllers/menu_item_price_controller": "/assets/controllers/menu_item_price_controller-d59934dcbbfdd140b6b5445a6aa5a43c507e4913f08c94cfbb6910d648ce6618.js",
171    "controllers/menu_item_sortable_controller": "/assets/controllers/menu_item_sortable_controller-73e8604cfef727ee7ee5949628c5a6b914e805b98126992c3777b768348a4f0b.js",
172    "controllers/menu_nav_controller": "/assets/controllers/menu_nav_controller-3a815a04c4d0002d1ca4d04e2c7ebb7ab5deecd07d8fcfaec1647a72a497a06c.js",
173    "controllers/menu_payout_controller": "/assets/controllers/menu_payout_controller-bcd643ba3bc32bcf9d7fd0b12293fde1bd2c6127606377e4339f87409eba15db.js",
174    "controllers/modal_controller": "/assets/controllers/modal_controller-6d9fb38a9c7b7e3dbb80109b3893988b67dea1eb6d6cd8a1f8bc1d7df2aee04e.js",
175    "controllers/notifications_controller": "/assets/controllers/notifications_controller-072747a9fb2986a6c900cb5b85c9100a17519dafee4b6d31ad93d7f449668810.js",
176    "controllers/order_adjust_controller": "/assets/controllers/order_adjust_controller-e974fcbf77aaa555b1ac3eb58744a29c5c9a333aecb749c0bcd32ed901109ad5.js",
177    "controllers/order_print_controller": "/assets/controllers/order_print_controller-46352a85ae1ee5f6dd94bc05739ffd51775dc8bf5c8dfbee5963568d2f157ab5.js",
178    "controllers/order_status_controller": "/assets/controllers/order_status_controller-624f0bcb5bf1c26238be5b7a95a812f26274e9b906f1db52d73753961fb91302.js",
179    "controllers/orders_dashboard_controller": "/assets/controllers/orders_dashboard_controller-1a0866d8b01903bcdce7c0a7a0db03859066e7a2a99f609c6489afd93afcef32.js",
180    "controllers/pricing_interval_controller": "/assets/controllers/pricing_interval_controller-2336471e7a1bfa05b10b7a4e54a43f61f228418dfbe8a37bbdcf5b781131c0af.js",
181    "controllers/publication_controller": "/assets/controllers/publication_controller-056424e6684f4a92270fea2e49faf51e11a5225408a96676b9d94b395a952017.js",
182    "controllers/publication_nested_form_controller": "/assets/controllers/publication_nested_form_controller-2df8fb2a8d64c64391ddf44a5afc7ad161287ae50bee0e1e44b1ab5d523eb0c2.js",
183    "controllers/publication_search_controller": "/assets/controllers/publication_search_controller-de8dbcd5d4847fa526e178e3e74f79ed6d4903d17cfb04853b91e645768eebbb.js",
184    "controllers/push_subscription_controller": "/assets/controllers/push_subscription_controller-6923aff17f6d504d56d5d789d421f68c53c8f80d374876c2253763f66447a7ac.js",
185    "controllers/qr_code_controller": "/assets/controllers/qr_code_controller-6302e8d99e4f948072ebc99b6613c252ef389ccb824b3ba2844c355ed13127a6.js",
186    "controllers/reveal_controller": "/assets/controllers/reveal_controller-3bf7528ffbd33a3c954d3f4e1099e790052dec60532c60628544bafe4538bfdd.js",
187    "controllers/rule_form_controller": "/assets/controllers/rule_form_controller-d99533ce7118954
18708b79c054f04d5ddb445e4f504f1df75e1da07eb560056758.js",
188    "controllers/sales_chart_controller": "/assets/controllers/sales_chart_controller-43b2ffe0a8d89b18647f8eb1c0803d9b0e922c892364f8338c7a65102c6265c8.js",
189    "controllers/screen_controller": "/assets/controllers/screen_controller-a01c28ca9bfbd2382503cf7c67b9a3eebee77ba4e61877f9566ddc67900f1c06.js",
190    "controllers/screen_form_controller": "/assets/controllers/screen_form_controller-9f265e445afc045c5e3f183df78df8f78c371a860ba8c691433cf2195df37cd0.js",
191    "controllers/settings_tabs_controller": "/assets/controllers/settings_tabs_controller-6cffc7126655ea3a6d60caadd6d7895beb9a96497405768fba549cfa77973ba1.js",
192    "controllers/shipping_methods_controller": "/assets/controllers/shipping_methods_controller-ce59551d3b441a08e180b80bc7c4587fb8fbf37e59e19f009087edb0d2d8ce49.js",
193    "controllers/signup_form_controller": "/assets/controllers/signup_form_controller-567b4f39e5c5544a7028f27abe69dda7342f9d5839c01d2c3981c4bf08ce4c26.js",
194    "controllers/sortable_controller": "/assets/controllers/sortable_controller-b5dd621e62a93edce93d699c41ee53e150fb49cceb62387342bce7e86ed40e58.js",
195    "controllers/special_form_controller": "/assets/controllers/special_form_controller-7a970e6ec02d7e34a4241b12b0d5e108da37854330e49f2e1ec35a06e1fdf151.js",
196    "controllers/template_controller": "/assets/controllers/template_controller-fccd9f8587e054e5096aba693dd15c95281250e8854817b57f774a0b832f76ce.js",
197    "controllers/template_preview_controller": "/assets/controllers/template_preview_controller-7a1b57487e22cd481a9d137f956678a6b8b97a378aec676220dd681c0e055e4b.js",
198    "controllers/template_selection_controller": "/assets/controllers/template_selection_controller-26099af053ec6845b0c033044072f9ed053840f68be3d3177609ee796072d972.js",
199    "controllers/translate_controller": "/assets/controllers/translate_controller-7cef36598a760a9b2bb490bb7d5022cc19e4143130d275d4c5bbd2c399d7cb8f.js",
200    "controllers/verification_code_controller": "/assets/controllers/verification_code_controller-84ca043707e82cc777bbafb4409e403f91f0ae333893aea35df9ea1805198c32.js",
201    "lib/live_orders_channel": "/assets/lib/live_orders_channel-1ff59b85bed53acae779b5b48cdbf59fdd1de73ec82c709adb57e14bcc81a653.js"
202  }
203}</script>
203
204<link rel="modulepreload" href="/assets/application-4e2967b3ae4335138ec0abfd8014539619712263522c0ab5a3e951a2afa71037.js">
205<link rel="modulepreload" href="/assets/turbo.min-c6325b8b56619b34aa6e0f34dfed82b010fe049f81b320a4cd0e2d99d3245118.js">
206<link rel="modulepreload" href="/assets/@hotwired--stimulus-379f09adbcd004e5b2c2793635d128b6e72c08d1ef5337bf8a5d1e260aaa403e.js">
207<link rel="modulepreload" href="/assets/stimulus-loading-3576ce92b149ad5d6959438c6f291e2426c86df3b874c525b30faad51b0d96b3.js">
208<link rel="modulepreload" href="/assets/trix-e17a480fcb4e30c8571f0fed42dc81de5faeef93755ca30fe9623eb3f5c709e5.js">
209<link rel="modulepreload" href="/assets/actiontext-78de0ebeae470799f9ec25fd0e20ae2d931df88c2ff9315918d1054a2fca2596.js">
210<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/dist/jquery.js">
211<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/lib/index.js">
212<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/browser.js">
213<link rel="modulepreload" href="https://ga.jspm.io/npm:@alloc/[email protected]/index.js">
214<link rel="modulepreload" href="https://ga.jspm.io/npm:@jridgewell/[email protected]/dist/gen-mapping.umd.js">
215<link rel="modulepreload" href="https://ga.jspm.io/npm:@jridgewell/[email protected]/dist/resolve-uri.umd.js">
216<link rel="modulepreload" href="https://ga.jspm.io/npm:@jridgewell/[email protected]/dist/set-array.umd.js">
217<link rel="modulepreload" href="https://ga.jspm.io/npm:@jridgewell/[email protected]/dist/sourcemap-codec.umd.js">
218<link rel="modulepreload" href="https://ga.jspm.io/npm:@jridgewell/[email protected]/dist/trace-mapping.umd.js">
219<link rel="modulepreload" href="https://ga.jspm.io/npm:@nodelib/[email protected]/out/index.js">
220<link rel="modulepreload" href="https://ga.jspm.io/npm:@nodelib/[email protected]/out/index.js">
221<link rel="modulepreload" href="https://ga.jspm.io/npm:@nodelib/[email protected]/out/index.js">
222<link rel="modulepreload" href="https://ga.jspm.io/npm:@tailwindcss/[email protected]/src/index.js">
223<link rel="modulepreload" href="https://ga.jspm.io/npm:@jspm/[email protected]/nodelibs/@empty.js">
224<link rel="modulepreload" href="https://ga.jspm.io/npm:@jspm/[email protected]/nodelibs/browser/assert.js">
225<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/index.js">
226<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/index.js">
227<link rel="modulepreload" href="https://ga.jspm.io/npm:@jspm/[email protected]/nodelibs/browser/buffer.js">
228<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/index-es5.js">
229<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/dist/unpacker/agents.js">
230<link rel="modulepreload" href="https://ga.jspm.io/npm:@jspm/[email protected]/nodelibs/browser/child_process.js">
231<link rel="modulepreload" href="https://ga.jspm.io/npm:@jspm/[email protected]/nodelibs/browser/crypto.js">
232<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/cssesc.js">
233<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/lib/detect-libc.js">
234<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/didYouMean-1.2.1.js">
235<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/dist/dlv.umd.js">
236<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/versions.js">
237<link rel="modulepreload" href="https://ga.jspm.io/npm:@jspm/[email protected]/nodelibs/browser/events.js">
238<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/out/index.js">
239<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/queue.js">
240<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/index.js">
241<link rel="modulepreload" href="https://ga.jspm.io/npm:@jspm/[email protected]/nodelibs/browser/fs.js">
242<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/index.js">
243<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/index.js">
244<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/index.js">
245<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/index.js">
246<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/lib/index.js">
247<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/node/index.js">
248<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/build/index.js">
249<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/index.js">
250<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/index.js">
251<link rel="modulepreload" href="https://ga.jspm.io/npm:@jspm/[email protected]/nodelibs/browser/module.js">
252<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/non-secure/index.cjs">
253<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/data/processed/envs.json.js">
254<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/data/release-schedule/release-schedule.json.js">
255<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/index.js">
256<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/dist/object_hash.js">
257<link rel="modulepreload" href="https://ga.jspm.io/npm:@jspm/[email protected]/nodelibs/browser/os.js">
258<link rel="modulepreload" href="https://ga.jspm.io/npm:@jspm/[email protected]/nodelibs/browser/path.js">
259<link rel="modulepreload" href="https://ga.jspm.io/npm:@jspm/[email protected]/nodelibs/browser/perf_hooks.js">
260<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/picocolors.browser.js">
261<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/index.js">
262<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/lib/utils.js">
263<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/lib/postcss.js">
264<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/index.js">
265<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/index.js">
266<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/dist/index.js">
267<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/dist/util/unesc.js">
268<link rel="modulepreload" href="https://ga.jspm.io/npm:@jspm/[email protected]/nodelibs/browser/process-production.js">
269<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/index.js">
270<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/reusify.js">
271<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/index.js">
272<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/source-map.js">
273<link rel="modulepreload" href="https://ga.jspm.io/npm:@jspm/[email protected]/nodelibs/browser/stream.js">
274<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/dist/esm/index.js">
275<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/plugin.js">
276<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/index.js">
277<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/dist/index.js">
278<link rel="modulepreload" href="https://ga.jspm.io/npm:@jspm/[email protected]/nodelibs/browser/tty.js">
279<link rel="modulepreload" href="https://ga.jspm.io/npm:@jspm/[email protected]/nodelibs/browser/url.js">
280<link rel="modulepreload" href="https://ga.jspm.io/npm:@jspm/[email protected]/nodelibs/browser/util.js">
281<link rel="modulepreload" href="https://ga.jspm.io/npm:[email protected]/browser.js">
282<link rel="modulepreload" href="https://ga.jspm.io/npm:@jspm/[email protected]/nodelibs/browser/v8.js">
283<link rel="modulepreload" href="https://ga.jspm.io/npm:@jspm/[email protected]/nodelibs/browser/vm.js">
284<link rel="modulepreload" href="/assets/@stimulus-components--rails-nested-form-496493a32067408b4847d064c97b32e48d88649b57526e3a6d32d084c80778c9.js">
285<link rel="modulepreload" href="/assets/stimulus-autocomplete-db62d6c44e96a8b465ccf65261cc8189936e1864b6282c67105ed83247146555.js">
286<link rel="modulepreload" href="/assets/sortablejs-68686d1e12934ac42f22f33f54142790b1871ade677693308b23c8b38866f8c6.js">
287<link rel="modulepreload" href="/assets/@rails--request.js-ba0e06d8d298e2036df9175766a9632787ebc8308c37e5bca53b8a7711883124.js">
288<link rel="modulepreload" href="/assets/@rails--actioncable-a48fc154e1867758852b84ac9372064eaac4e2b50cab8e0e75a64b4348794a3d.js">
289<link rel="modulepreload" href="https://cdn.jsdelivr.net/npm/[email protected]/+esm">
290<link rel="modulepreload" href="https://cdn.jsdelivr.net/npm/[email protected]/auto/+esm">
291<link rel="modulepreload" href="/assets/controllers/application-a75f5f2bbf6485a2a5ca7c89a543c7dd9254d2b0d45fc073c41c39281b005766.js">
292<link rel="modulepreload" href="/assets/controllers/auto_select_controller-9024cf1984e09469cc3cbe82e3b8333faf8f8436e97af0c141e451dd1ba402d4.js">
293<link rel="modulepreload" href="/assets/controllers/auto_submit_controller-e93abd8b1320af214321a91220ff20ee7cd62f08c0ccb91bef5568c438f2ff21.js">
294<link rel="modulepreload" href="/assets/controllers/button_loading_controller-25667cd3ee13072ff2b4af19506fc62493c38f4b53619ce3829b82922d5899dd.js">
295<link rel="modulepreload" href="/assets/controllers/category_card_preview_controller-de42024557ed3abf1a570227a53109fd908fece3cde3fcf3781ecc91bcd8c751.js">
296<link rel="modulepreload" href="/assets/controllers/checkout_form_controller-c7fca27f9ead922a1e9a04270c1a17595b6ad9bc41b31ac15224fca9f65435e7.js">
297<link rel="modulepreload" href="/assets/controllers/copy_group_picker_controller-ac8e4b3bb05cef33c3753bcdff5720e94d7876416e73114a24ae1bad38982c88.js">
298<link rel="modulepreload" href="/assets/controllers/custom_domain_dns_controller-94d11ecf4fd99cf68d1e2a268c8132cf7e0d425a0af1c18beea2809c74f7063a.js">
299<link rel="modulepreload" href="/assets/controllers/device_manager_controller-dad0ed0ef89546947036432a792e82dc54720d52bdb8ce817b28011e73b52114.js">
300<link rel="modulepreload" href="/assets/controllers/device_setup_controller-fa998911dd5d73a8e17f3953b804ed02135557bdb51a97a2417a7f133f3f1b98.js">
301<link rel="modulepreload" href="/assets/controllers/discount_form_controller-94f4f5b93c8772737442be15e69f25e99da6ce88ea092f8feb9f99ed6302e144.js">
302<link rel="modulepreload" href="/assets/controllers/drawer_controller-d2ee393e8bb5b64842b9be
3020298bf8815abaa74a3910d220f2c839c1185d776fc.js">
303<link rel="modulepreload" href="/assets/controllers/dropdown_controller-d51bcfa501801bf80aa8b12c6fee87ce7f767c34d182a8b1173a4db3a7398039.js">
304<link rel="modulepreload" href="/assets/controllers/editor_chrome_controller-ead9c2b1703df98721d106d644d3cd63b2d25142fbfc40ea76a360734e65aef5.js">
305<link rel="modulepreload" href="/assets/controllers/flash_controller-571e580bd707f01c4457c536e85feae13da0c348100ea38b0052d6546d2c711f.js">
306<link rel="modulepreload" href="/assets/controllers/flash_dismiss_controller-01769d63bc713c711307fe6ff0e1defacfdcb5649789d5a37d9035ad2bf424a3.js">
307<link rel="modulepreload" href="/assets/controllers/form_guard_controller-cef31a228fc3a9552649c9d9cbe21ad11af56d5c2c7a0028a166c527517d5aea.js">
308<link rel="modulepreload" href="/assets/controllers/grapesjs_tablet_controller-70a7aeccdb43b3e6e141e1e3daa39481e447731e4f3097d9c86c94e2e1d2c635.js">
309<link rel="modulepreload" href="/assets/controllers/hello_controller-549135e8e7c683a538c3d6d517339ba470fcfb79d62f738a0a089ba41851a554.js">
310<link rel="modulepreload" href="/assets/controllers/hours_controller-44e058e80de02f101778a26b51fa035a058cd8247a2661e5326a4288083447d6.js">
311<link rel="modulepreload" href="/assets/controllers/image_upload_controller-4a2294cfa5f40b8b78ad4dec20f39980f7bb68866524d8b2b17988337dd31096.js">
312<link rel="modulepreload" href="/assets/controllers/impersonation_controller-ac799e8ef79714aa1d622ba299c4c849ef345f27477a24c0f28cf801413155ca.js">
313<link rel="modulepreload" href="/assets/controllers/index-2db729dddcc5b979110e98de4b6720f83f91a123172e87281d5a58410fc43806.js">
314<link rel="modulepreload" href="/assets/controllers/invoice_collect_controller-20950f4eecf8a6d645dd7edda8d8bb83bec3b3a11172e6cbb413cfd47929a80b.js">
315<link rel="modulepreload" href="/assets/controllers/invoice_form_controller-b0dade0a12601532454214664e36135e9f550fbf1826c1baa2290f67cca1093e.js">
316<link rel="modulepreload" href="/assets/controllers/item_sheet_controller-f90ba96ca3712f0d17bf67ff1df3a0c27f39290d2b20505ccf69a395604432fc.js">
317<link rel="modulepreload" href="/assets/controllers/kiosk_poller_controller-e68b9028d6e418934c85ae6f3bbe091996ae8ea2ff08be292f4cfecd71557df2.js">
318<link rel="modulepreload" href="/assets/controllers/kitchen_display_controller-620bdf4961ec440456d47d1e9fe260e29c12fa89e7290e96d1cae55cc79fd3ff.js">
319<link rel="modulepreload" href="/assets/controllers/locale_switch_controller-3957e9a15026c6dbc4139cf2c65c0f603902d75ca22cd78a1cfb207a7a57a572.js">
320<link rel="modulepreload" href="/assets/controllers/location_controller-ce1b266493a8f8d20a11d0d8430373e8a84cf0d7c43339b55e176237912fd43b.js">
321<link rel="modulepreload" href="/assets/controllers/location_users_controller-cb68ed2d69128dd0dc4b0d79c5b7eb6abe572cf9ba5c6b62af70a64b4db76f3a.js">
322<link rel="modulepreload" href="/assets/controllers/menu_category_sortable_controller-b0db9e156557c6d1795c69bec05f6d47428c568dcf8d0fbc67e40057e96eea44.js">
323<link rel="modulepreload" href="/assets/controllers/menu_copy_controller-6cb4dd3e43d2a19ee2c956e7faa8e0a0f3bacd642bbf64b603cee7ac9f6e637a.js">
324<link rel="modulepreload" href="/assets/controllers/menu_editor_controller-e0b33b2995c9649574544d9333486205dcf8f7a233e9a5c725c744d6924fa9e5.js">
325<link rel="modulepreload" href="/assets/controllers/menu_item_controller-5a015ac47d21cb94f28e5afcde0ace076f4eb123dd28d00ccae014511c6ce6af.js">
326<link rel="modulepreload" href="/assets/controllers/menu_item_price_controller-d59934dcbbfdd140b6b5445a6aa5a43c507e4913f08c94cfbb6910d648ce6618.js">
327<link rel="modulepreload" href="/assets/controllers/menu_item_sortable_controller-73e8604cfef727ee7ee5949628c5a6b914e805b98126992c3777b768348a4f0b.js">
328<link rel="modulepreload" href="/assets/controllers/menu_nav_controller-3a815a04c4d0002d1ca4d04e2c7ebb7ab5deecd07d8fcfaec1647a72a497a06c.js">
329<link rel="modulepreload" href="/assets/controllers/menu_payout_controller-bcd643ba3bc32bcf9d7fd0b12293fde1bd2c6127606377e4339f87409eba15db.js">
330<link rel="modulepreload" href="/assets/controllers/modal_controller-6d9fb38a9c7b7e3dbb80109b3893988b67dea1eb6d6cd8a1f8bc1d7df2aee04e.js">
331<link rel="modulepreload" href="/assets/controllers/notifications_controller-072747a9fb2986
331a6c900cb5b85c9100a17519dafee4b6d31ad93d7f449668810.js">
332<link rel="modulepreload" href="/assets/controllers/order_adjust_controller-e974fcbf77aaa555b1ac3eb58744a29c5c9a333aecb749c0bcd32ed901109ad5.js">
333<link rel="modulepreload" href="/assets/controllers/order_print_controller-46352a85ae1ee5f6dd94bc05739ffd51775dc8bf5c8dfbee5963568d2f157ab5.js">
334<link rel="modulepreload" href="/assets/controllers/order_status_controller-624f0bcb5bf1c26238be5b7a95a812f26274e9b906f1db52d73753961fb91302.js">
335<link rel="modulepreload" href="/assets/controllers/orders_dashboard_controller-1a0866d8b01903bcdce7c0a7a0db03859066e7a2a99f609c6489afd93afcef32.js">
336<link rel="modulepreload" href="/assets/controllers/pricing_interval_controller-2336471e7a1bfa05b10b7a4e54a43f61f228418dfbe8a37bbdcf5b781131c0af.js">
337<link rel="modulepreload" href="/assets/controllers/publication_controller-056424e6684f4a92270fea2e49faf51e11a5225408a96676b9d94b395a952017.js">
338<link rel="modulepreload" href="/assets/controllers/publication_nested_form_controller-2df8fb2a8d64c64391ddf44a5afc7ad161287ae50bee0e1e44b1ab5d523eb0c2.js">
339<link rel="modulepreload" href="/assets/controllers/publication_search_controller-de8dbcd5d4847fa526e178e3e74f79ed6d4903d17cfb04853b91e645768eebbb.js">
340<link rel="modulepreload" href="/assets/controllers/push_subscription_controller-6923aff17f6d504d56d5d789d421f68c53c8f80d374876c2253763f66447a7ac.js">
341<link rel="modulepreload" href="/assets/controllers/qr_code_controller-6302e8d99e4f948072ebc99b6613c252ef389ccb824b3ba2844c355ed13127a6.js">
342<link rel="modulepreload" href="/assets/controllers/reveal_controller-3bf7528ffbd33a3c954d3f4e1099e790052dec60532c60628544bafe4538bfdd.js">
343<link rel="modulepreload" href="/assets/controllers/rule_form_controller-d99533ce711895408b79c054f04d5ddb445e4f504f1df75e1da07eb560056758.js">
344<link rel="modulepreload" href="/assets/controllers/sales_chart_controller-43b2ffe0a8d89b18647f8eb1c0803d9b0e922c892364f8338c7a65102c6265c8.js">
345<link rel="modulepreload" href="/assets/controllers/screen_controller-a01c28ca9bfbd2382503cf7c67b9a3eebee77ba4e61877f9566ddc67900f1c06.js">
346<link rel="modulepreload" href="/assets/controllers/screen_form_controller-9f265e445afc045c5e3f183df78df8f78c371a860ba8c691433cf2195df37cd0.js">
347<link rel="modulepreload" href="/assets/controllers/settings_tabs_controller-6cffc7126655ea3a6d60caadd6d7895beb9a96497405768fba549cfa77973ba1.js">
348<link rel="modulepreload" href="/assets/controllers/shipping_methods_controller-ce59551d3b441a08e180b80bc7c4587fb8fbf37e59e19f009087edb0d2d8ce49.js">
349<link rel="modulepreload" href="/assets/controllers/signup_form_controller-567b4f39e5c5544a7028f27abe69dda7342f9d5839c01d2c3981c4bf08ce4c26.js">
350<link rel="modulepreload" href="/assets/controllers/sortable_controller-b5dd621e62a93edce93d699c41ee53e150fb49cceb62387342bce7e86ed40e58.js">
351<link rel="modulepreload" href="/assets/controllers/special_form_controller-7a970e6ec02d7e34a4241b12b0d5e108da37854330e49f2e1ec35a06e1fdf151.js">
352<link rel="modulepreload" href="/assets/controllers/template_controller-fccd9f8587e054e5096aba693dd15c95281250e8854817b57f774a0b832f76ce.js">
353<link rel="modulepreload" href="/assets/controllers/template_preview_controller-7a1b57487e22cd481a9d137f956678a6b8b97a378aec676220dd681c0e055e4b.js">
354<link rel="modulepreload" href="/assets/controllers/template_selection_controller-26099af053ec6845b0c033044072f9ed053840f68be3d3177609ee796072d972.js">
355<link rel="modulepreload" href="/assets/controllers/translate_controller-7cef36598a760a9b2bb490bb7d5022cc19e4143130d275d4c5bbd2c399d7cb8f.js">
356<link rel="modulepreload" href="/assets/controllers/verification_code_controller-84ca043707e82cc777bbafb4409e403f91f0ae333893aea35df9ea1805198c32.js">
357<link rel="modulepreload" href="/assets/lib/live_orders_channel-1ff59b85bed53acae779b5b48cdbf59fdd1de73ec82c709adb57e14bcc81a653.js">
358<script type="module">import "application"</script>
358
359    
360    
361  </head>
362  <body class="h-full" data-controller="button-loading auto-select" data-html-landing="true">
363      <header class="bg-gradient-to-r from-slate-900 via-slate-900 to-slate-800 text-white border-b border-white/5">
364  <div class="navbar max-w-none px-3 sm:px-4 lg:px-5 min-w-0 pl-[max(0.75rem,env(safe-area-inset-left))] pr-[max(0.75rem,env(safe-area-inset-right))]">
365    <div class="flex-1 min-w-0 flex items-center gap-2">
366      <a class="inline-flex items-center gap-2 min-w-0 rounded-lg px-2 py-1.5 -ml-2 hover:bg-white/5 transition-colors navbar-title no-underline" href="/">
367        <img src="/logo32x.png" alt="" class="w-8 h-8 shrink-0">
368        <span class="text-lg font-bold leading-tight truncate">SmartSignPro</span>
369      </a>
370    </div>
371    <div class="hidden lg:flex flex-none">
372      <ul class="menu menu-horizontal menu-nav-guest gap-0.5 px-0">
373          <li><a href="/online-ordering">Online Ordering</a></li>
374          <li><a href="/use-cases">Use Cases</a></li>
375          <li><a href="/integrations">Integrations</a></li>
376          <li><a href="/resources">Resources</a></li>
377          <li><a href="/pricing">Pricing</a></li>
378          <li><a href="/faq">FAQ</a></li>
379          <li><a href="/contact">Contact</a></li>
380          <li><a href="/users/sign_in">Login</a></li>
381      </ul>
382    </div>
383      <div class="hidden lg:flex flex-none ml-2 shrink-0">
384        <a class="navbar-cta inline-flex items-center justify-center rounded-xl bg-gradient-to-r from-cyan-500 to-teal-500 px-4 py-2 text-sm font-semibold text-slate-950 shadow-lg shadow-cyan-500/25 transition hover:brightness-110 no-underline" href="/pricing#plans">Start free trial</a>
385      </div>
386      <div class="lg:hidden flex-none">
387        <details class="dropdown dropdown-end" data-controller="dropdown" data-action="click@window->dropdown#closeOnOutsideClick keydown.esc->dropdown#close">
388          <summary class="btn btn-square btn-ghost btn-sm" aria-label="Open menu">
389            <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" class="w-5 h-5 stroke-current"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M4 6h16M4 12h16M4 18h16"></path></svg>
390          </summary>
391          <div class="dropdown-content z-[100] mt-2 w-56 rounded-xl bg-slate-900/95 backdrop-blur-md p-2 shadow-xl border border-white/10">
392            <ul class="menu menu-nav-guest p-0 gap-0.5">
393              <li><a class="min-h-10 rounded-lg" data-action="click-&gt;dropdown#close" href="/online-ordering">Online Ordering</a></li>
394              <li><a class="min-h-10 rounded-lg" data-action="click-&gt;dropdown#close" href="/use-cases">Use Cases</a></li>
395              <li><a class="min-h-10 rounded-lg" data-action="click-&gt;dropdown#close" href="/integrations">Integrations</a></li>
396              <li><a class="min-h-10 rounded-lg" data-action="click-&gt;dropdown#close" href="/resources">Resources</a></li>
397              <li><a class="min-h-10 rounded-lg" data-action="click-&gt;dropdown#close" href="/pricing">Pricing</a></li>
398              <li><a class="min-h-10 rounded-lg" data-action="click-&gt;dropdown#close" href="/faq">FAQ</a></li>
399              <li><a class="min-h-10 rounded-lg" data-action="click-&gt;dropdown#close" href="/contact">Contact</a></li>
400              <li><a class="min-h-10 rounded-lg" data-action="click-&gt;dropdown#close" href="/users/sign_in">Login</a></li>
401            </ul>
402            <div class="mt-2 pt-2 border-t border-white/10">
403              <a class="navbar-cta-mobile flex w-full min-h-10 items-center justify-center rounded-xl bg-gradient-to-r from-cyan-500 to-teal-500 px-4 py-2.5 text-sm font-semibold text-slate-950 shadow-lg shadow-cyan-500/25 no-underline transition hover:brightness-110" data-action="click-&gt;dropdown#close" href="/pricing#plans">Start free trial</a>
404            </div>
405          </div>
406        </details>
407      </div>
408  </div>
409</header>
410
411      <main class="w-full max-w-none mx-auto">
412        <div id="flash" class="fixed bottom-6 right-4 z-[999] flex flex-col gap-2 max-w-sm pointer-events-none empty:hidden [&>*]:pointer-events-auto">
413          
414        </div>
415        <div class="relative z-[1] w-full overflow-x-clip text-slate-100 px-4 sm:px-6 lg:px-10 pb-24">
416  <header class="hero-header mx-auto max-w-5xl pt-10 md:pt-16 text-center">
417    <p class="inline-flex items-center gap-2 rounded-full border border-cyan-400/30 bg-cyan-500/10 px-4 py-1.5 text-xs font-semibold uppercase tracking-widest text-cyan-200/90 mb-6">
418      <span class="h-1.5 w-1.5 rounded-full bg-cyan-400 animate-pulse" aria-hidden="true"></span>
419      SmartSignPro
420    </p>
421    <h1 class="text-4xl sm:text-5xl md:text-6xl font-extrabold tracking-tight bg-gradient-to-r from-cyan-500 via-purple-600 to-teal-500 bg-clip-text text-transparent animate-gradient drop-shadow-sm mb-6 leading-[1.1]">
422      Digital signage that feels alive
423    </h1>
424    <p class="text-lg md:text-xl text-slate-300/95 max-w-2xl mx-auto mb-4 leading-relaxed">
425      Manage locations, publish in minutes, take orders online, and optionally add AI audience insights: all from one calm, powerful workspace.
426    </p>
427    <p class="text-sm text-cyan-200/80 mb-10 font-medium">7-day trial · Stripe secure checkout</p>
428    <div class="flex flex-wrap gap-3 justify-center">
429      <a class="inline-flex items-center justify-center rounded-xl bg-gradient-to-r from-cyan-500 to-teal-500 px-6 py-3.5 text-base font-semibold text-slate-950 shadow-lg shadow-cyan-500/30 transition hover:brightness-110" href="/pricing#plans">Start free trial</a>
430      <a class="inline-flex items-center justify-center rounded-xl border border-white/20 bg-white/5 px-6 py-3.5 text-base font-semibold text-white backdrop-blur-sm hover:bg-white/10" href="/pricing">View pricing</a>
431      <a class="inline-flex items-center justify-center rounded-xl px-6 py-3.5 text-base font-semibold text-slate-200 underline-offset-4 hover:underline" href="#inquiry-form">Enterprise &amp; installation</a>
432    </div>
433  </header>
434  <section class="mx-auto max-w-6xl mt-20 md:mt-28" aria-labelledby="scale-heading">
435    <div class="text-center mb-12 md:mb-16">
436      <h2 id="scale-heading" class="text-3xl md:text-4xl font-bold text-white tracking-tight">Built for every scale</h2>
437      <p class="mt-3 text-slate-400 max-w-2xl mx-auto">From Solo (1 screen) through XLarge (10 screens). Pick self-serve online or talk to us for custom installs.</p>
438    </div>
439    <div class="grid md:grid-cols-3 gap-6 md:gap-8">
440      <article class="group rounded-2xl border border-white/10 bg-slate-950/40 p-8 backdrop-blur-md transition hover:border-cyan-400/40 hover:shadow-lg hover:shadow-cyan-500/10">
441        <div class="h-10 w-10 rounded-lg bg-gradient-to-br from-violet-500/80 to-fuchsia-500/60 mb-5 flex items-center justify-center text-lg font-bold text-white">S</div>
442        <h3 class="text-xl font-bold text-white mb-3">Starter venues</h3>
443        <p class="text-slate-400 leading-relaxed text-sm md:text-base">Solo, Small, and Quad - 1 to 4 screens at a single location for offices, cafés, and retail corners.</p>
444      </article>
445      <article class="group rounded-2xl border border-cyan-400/25 bg-gradient-to-b from-cyan-500/10 to-transparent p-8 backdrop-blur-md shadow-lg shadow-cyan-500/5 md:-translate-y-2 md:scale-[1.02]">
446        <div class="h-10 w-10 rounded-lg bg-gradient-to-br from-cyan-400 to-teal-500 mb-5 flex items-center justify-center text-lg font-bold text-slate-950">M</div>
447        <h3 class="text-xl font-bold text-white mb-3">Growing teams</h3>
448        <p class="text-slate-300/90 leading-relaxed text-sm md:text-base">Medium covers up to 5 screens across 2 locations. Large is up to 6 screens at one location. XLarge reaches 10 screens across 3 locations.</p>
449      </article>
450      <article class="group rounded-2xl border border-white/10 bg-slate-950/40 p-8 backdrop-blur-md transition hover:border-cyan-400/40 hover:shadow-lg hover:shadow-cyan-500/10">
451        <div class="h-10 w-10 rounded-lg bg-gradient-to-br from-amber-500/90 to-orange-600/70 mb-5 flex items-center justify-center text-lg font-bold text-white">E</div>
452        <h3 class="text-xl font-bold text-white mb-3">Enterprise</h3>
453        <p class="text-slate-400 leading-relaxed text-sm md:text-base">Unlimited scale, permissions, on-site hardware, installation, and white-glove setup.</p>
454      </article>
455    </div>
456  </section>
457  <section class="mx-auto max-w-6xl mt-20 md:mt-28 grid lg:grid-cols-2 gap-8 lg:gap-12">
458    <article class="rounded-2xl border border-white/10 overflow-hidden bg-slate-950/50 backdrop-blur-md flex flex-col md:flex-row md:items-stretch">
459      <div class="md:w-2/5 bg-gradient-to-br from-indigo-600/40 to-violet-900/40 p-8 flex items-center justify-center">
460        <span class="text-5xl" aria-hidden="true">✦</span>
461      </div>
462      <div class="p-8 md:p-10 flex-1">
463        <h2 class="text-2xl font-bold text-white mb-4">AI audience recognition</h2>
464        <p class="text-slate-400 leading-relaxed">Deliver tailored messaging in real time with fully anonymous, AI-driven signals. Optional add-on when you are ready.</p>
465        <p class="mt-4 text-sm font-semibold text-cyan-300/90">Add-on</p>
466      </div>
467    </article>
468    <article class="rounded-2xl border border-white/10 overflow-hidden bg-slate-950/50 backdrop-blur-md flex flex-col md:flex-row md:items-stretch">
469      <div class="md:w-2/5 bg-slate-900/80 p-8 flex items-center justify-center border-b md:border-b-0 md:border-r border-white/10">
470        <img alt="Square" class="h-12 w-auto opacity-90" src="/assets/Square_Logo_2025_White-4b91e49dd84e994eaf028cd916ca9b8cf46064bf2bd4bdb679daa938656bfb5b.svg" />
471      </div>
472      <div class="p-8 md:p-10 flex-1">
473        <h2 class="text-2xl font-bold text-white mb-4">Square catalog sync</h2>
474        <p class="text-slate-400 leading-relaxed">Pull product names, prices, and descriptions from Square into your signage. Updates flow automatically.</p>
475        <p class="mt-4 text-sm font-semibold text-emerald-300/90">Built-in</p>
476      </div>
477    </article>
478  </section>
479
480  <section class="mx-auto max-w-6xl mt-12 md:mt-16 grid lg:grid-cols-2 gap-8 lg:gap-12" aria-labelledby="integrations-heading">
481    <h2 id="integrations-heading" class="sr-only">Payments and delivery integrations</h2>
482    <article class="rounded-2xl border border-white/10 overflow-hidden bg-slate-950/50 backdrop-blur-md flex flex-col md:flex-row md:items-stretch">
483      <div class="md:w-2/5 bg-slate-900/80 p-8 flex items-center justify-center border-b md:border-b-0 md:border-r border-white/10">
484        <img alt="Stripe" class="h-10 w-auto opacity-95" src="/assets/Stripe_Logo_White-9904937da2e3829044efb49b719a8703bbd9196020ca90267aa63195c91045d6.svg" />
485      </div>
486      <div class="p-8 md:p-10 flex-1">
487        <h2 class="text-2xl font-bold text-white mb-4">Stripe payments</h2>
488        <p class="text-slate-400 leading-relaxed">Accept cards with Stripe Connect. Funds settle to your bank with a transparent platform fee, with no marketplace middleman.</p>
489        <p class="mt-4 text-sm font-semibold text-emerald-300/90">Built-in</p>
490      </div>
491    </article>
492    <article class="rounded-2xl border border-white/10 overflow-hidden bg-slate-950/50 backdrop-blur-md flex flex-col md:flex-row md:items-stretch">
493      <div class="md:w-2/5 bg-black/60 p-8 flex items-center justify-center border-b md:border-b-0 md:border-r border-white/10">
494        <img alt="Uber" class="h-8 w-auto opacity-95" src="/assets/Uber_Logo_White-55ebfeda4c589ba1f67811c5dbb4746cea6435b72ee9177d6e263f1148a300d3.svg" />
495      </div>
496      <div class="p-8 md:p-10 flex-1">
497        <h2 class="text-2xl font-bold text-white mb-4">Uber courier delivery</h2>
498        <p class="text-slate-400 leading-relaxed">Offer Uber Direct delivery from your own storefront. Enter your store address to get started. No separate courier app or marketplace listing required.</p>
499        <p class="mt-4 text-sm font-semibold text-emerald-300/90">Built-in</p>
500      </div>
501    </article>
502  </section>
503
504  <section class="mx-auto max-w-6xl mt-20 md:mt-28" aria-labelledby="ordering-heading">
505    <article class="rounded-3xl border border-cyan-400/25 overflow-hidden bg-gradient-to-br from-cyan-950/50 via-slate-950/60 to-slate-900/60 backdrop-blur-md flex flex-col md:flex-row md:items-stretch">
506      <div class="md:w-2/5 bg-gradient-to-br from-cyan-500/25 to-teal-600/20 p-8 md:p-10 flex flex-col items-center justify-center gap-6">
507        <div class="flex items-center gap-6">
508          <img alt="Stripe" class="h-7 w-auto opacity-90" src="/assets/Stripe_Logo_White-9904937da2e3829044efb49b719a8703bbd9196020ca90267aa63195c91045d6.svg" />
509          <img alt="Uber" class="h-6 w-auto opacity-90" src="/assets/Uber_Logo_White-55ebfeda4c589ba1f67811c5dbb4746cea6435b72ee9177d6e263f1148a300d3.svg" />
510        </div>
511      </div>
512      <div class="p-8 md:p-10 flex-1">
513        <p class="inline-flex items-center gap-2 rounded-full border border-cyan-400/30 bg-cyan-500/10 px-3 py-1 text-xs font-semibold uppercase tracking-widest text-cyan-200/90 mb-4">
514          New
515        </p>
516        <h2 id="ordering-heading" class="text-2xl md:text-3xl font-bold text-white mb-4">Online ordering, built in</h2>
517        <p class="text-slate-400 leading-relaxed mb-6">Turn your menu into a branded, mobile-first storefront. Customers scan a QR code to browse, customize, and pay with Stripe for pickup, in-store, delivery, or shipping, with Uber courier delivery when you enable it. The kitchen board and Pulse app keep the line moving, and promos, combo specials, and discounts apply at checkout. Funds settle to you with no marketplace commissions.</p>
518        <a class="inline-flex items-center gap-2 rounded-xl bg-gradient-to-r from-cyan-500 to-teal-500 px-5 py-3 text-sm font-semibold text-slate-950 shadow-lg shadow-cyan-500/25 transition hover:brightness-110" href="/online-ordering">
519          Explore online ordering
520          <span aria-hidden="true">→</span>
521</a>      </div>
522    </article>
523  </section>
524
525  <section class="mx-auto max-w-4xl mt-20 md:mt-28 rounded-3xl border border-white/10 bg-gradient-to-r from-slate-900/90 via-slate-900/70 to-cyan-950/50 p-10 md:p-14 text-center backdrop-blur-xl">
526    <h2 class="text-2xl md:text-3xl font-bold text-white mb-4">Ready when you are</h2>
527    <p class="text-slate-400 max-w-xl mx-auto mb-8">Start online in minutes or request a quote for enterprise deployment.</p>
528    <div class="flex flex-wrap gap-3 justify-center">
529      <a class="inline-flex rounded-xl bg-white text-slate-900 px-6 py-3 font-semibold hover:bg-slate-100 transition" href="/pricing#plans">Start free trial</a>
530      <a class="inline-flex rounded-xl border border-white/25 px-6 py-3 font-semibold text-white hover:bg-white/5 transition" href="#inquiry-form">Enterprise &amp; installation</a>
531    </div>
532  </section>
533  <section class="mx-auto max-w-6xl mt-20 md:mt-24" aria-labelledby="learn-heading">
534    <h2 id="learn-heading" class="text-2xl md:text-3xl font-bold text-white text-center mb-6">Plan your rollout with practical guides</h2>
535    <div class="grid gap-4 md:grid-cols-3">
536      <a class="rounded-2xl border border-white/10 bg-slate-950/50 p-5 hover:border-cyan-400/35 transition block" href="/use-cases">
537        <h3 class="text-lg font-semibold text-white mb-2">Industry use cases</h3>
538        <p class="text-slate-300 text-sm">See how retail, restaurant, healthcare, and corporate teams deploy signage.</p>
539</a>      <a class="rounded-2xl border border-white/10 bg-slate-950/50 p-5 hover:border-cyan-400/35 transition block" href="/integrations">
540        <h3 class="text-lg font-semibold text-white mb-2">Integration workflows</h3>
541        <p class="text-slate-300 text-sm">Connect Square, Stripe, Uber Direct, and Pulse so menus, payments, delivery, and the kitchen stay in sync.</p>
542</a>      <a class="rounded-2xl border border-white/10 bg-slate-950/50 p-5 hover:border-cyan-400/35 transition block" href="/resources">
543        <h3 class="text-lg font-semibold text-white mb-2">Implementation resources</h3>
544        <p class="text-slate-300 text-sm">Use launch checklists and planning templates to reduce rollout friction.</p>
545</a>    </div>
546  </section>
547
548  <div class="mx-auto max-w-6xl mt-20 md:mt-28">
549    <section id="inquiry-form" class="relative scroll-mt-24 max-w-xl mx-auto rounded-2xl border border-white/10 bg-slate-950/50 backdrop-blur-xl p-8 md:p-10 shadow-2xl shadow-cyan-500/10">
550    <h2 class="text-2xl md:text-3xl font-bold text-center text-white mb-2 tracking-tight">Get a custom quote</h2>
551    <p class="text-center text-slate-300/90 text-sm md:text-base mb-8">Tell us about screens, locations, and timelines. We will respond quickly.</p>
552
553  <form data-turbo="false" class="space-y-5" action="/users" accept-charset="UTF-8" method="post"><input type="hidden" name="authenticity_token" value="K4GETwxM8YVOZ_FgioH5hq8HEOTF1TEQvvD75uQ4PtQnEa2jhJ_qy0OlFSalsQL1zSMa5baAq97Gh0gAOD5Kpg" autocomplete="off" />
554    
555    <div>
556      <label class="block text-sm font-medium text-slate-200 mb-1.5" for="inquiry_name">Name</label>
557      <input class="w-full rounded-xl border border-white/10 bg-slate-900/80 px-4 py-3 text-white placeholder:text-slate-500 focus:border-cyan-400/50 focus:outline-none focus:ring-2 focus:ring-cyan-500/30" type="text" name="inquiry[name]" id="inquiry_name" />
558    </div>
559    <div>
560      <label class="block text-sm font-medium text-slate-200 mb-1.5" for="inquiry_email">Email</label>
561      <input class="w-full rounded-xl border border-white/10 bg-slate-900/80 px-4 py-3 text-white placeholder:text-slate-500 focus:border-cyan-400/50 focus:outline-none focus:ring-2 focus:ring-cyan-500/30" type="email" name="inquiry[email]" id="inquiry_email" />
562    </div>
563    <div>
564      <label class="block text-sm font-medium text-slate-200 mb-1.5" for="inquiry_message">Message</label>
565      <textarea rows="4" class="w-full rounded-xl border border-white/10 bg-slate-900/80 px-4 py-3 text-white placeholder:text-slate-500 focus:border-cyan-400/50 focus:outline-none focus:ring-2 focus:ring-cyan-500/30" placeholder="Screens, locations, timeline, and anything else we should know…" name="inquiry[message]" id="inquiry_message">
566</textarea>
567    </div>
vendor: 70 bytes, lines 567-568
567
568      <script src="https://www.recaptcha.net/recaptcha/api.js?render=
5686Lcu9WwqAAAAAOkSVjGAa7YvRHJlbgrGV1x-t_bW
vendor: 23 bytes, lines 568-569
568"   ></script>
569        
569<script>
570          // Define function so that we can call it again later if we need to reset it
571          // This executes reCAPTCHA and then calls our callback.
572          function executeRecaptchaForSignup() {
573            grecaptcha.ready(function() {
574              grecaptcha.execute('6Lcu9WwqAAAAAOkSVjGAa7YvRHJlbgrGV1x-t_bW', {action: 'signup'}).then(function(token) {
575                setInputWithRecaptchaResponseTokenForSignup('g-recaptcha-response-data-signup', token)
576              });
577            });
578          };
579          // Invoke immediately
580          executeRecaptchaForSignup()
581
582          // Async variant so you can await this function from another async function (no need for
583          // an explicit callback function then!)
584          // Returns a Promise that resolves with the response token.
585          async function executeRecaptchaForSignupAsync() {
586            return new Promise((resolve, reject) => {
587             grecaptcha.ready(async function() {
588                resolve(await grecaptcha.execute('6Lcu9WwqAAAAAOkSVjGAa7YvRHJlbgrGV1x-t_bW', {action: 'signup'}))
589              });
590            })
591          };
592
593                  var setInputWithRecaptchaResponseTokenForSignup = function(id, token) {
594          var element = document.getElementById(id);
595          if (element !== null) element.value = token;
596        }
597
598        </script>
598
599<input type="hidden" name="g-recaptcha-response-data[signup]" id="g-recaptcha-response-data-signup" data-sitekey="6Lcu9WwqAAAAAOkSVjGAa7YvRHJlbgrGV1x-t_bW" class="g-recaptcha g-recaptcha-response "/>
600
601    <input type="submit" name="commit" value="Send message" class="w-full rounded-xl bg-gradient-to-r from-cyan-500 to-teal-500 px-6 py-3.5 font-semibold text-slate-950 shadow-lg shadow-cyan-500/25 transition hover:brightness-110 active:scale-[0.99]" data-disable-with="Send message" />
602</form></section>
603
604  </div>
605</div>
606
607          <link rel="stylesheet" href="/assets/landing_page-e4dc197fa5224005189b52447e38bda33b8fd5b2b4b476001475db5b3c0de63b.css" />
608
609        <footer class="rounded-t-2xl border-t border-white/10 bg-slate-950/60 backdrop-blur-sm mt-16">
610  <div class="mx-auto max-w-6xl px-4 sm:px-6 lg:px-10 py-10 grid gap-10 sm:grid-cols-2 lg:grid-cols-4">
611    <div class="space-y-4">
612      <p class="text-sm font-semibold text-white">SmartSignPro</p>
613      <p class="text-sm text-slate-500">SmartSignPro is a product of Brand-It Media, Inc.</p>
614      <form class="flex flex-col gap-2" data-turbo="true" data-controller="locale-switch" action="/locale" accept-charset="UTF-8" method="post"><input type="hidden" name="_method" value="patch" autocomplete="off" /><input type="hidden" name="authenticity_token" value="FE-SnwUmOgzdowgsrsrnu6Ds4XCwm4eBvHF6ZGxjL9wVLofCJxebuA0pNk22SPQ73T6m3UCfEKW8mKJY-J9vag" autocomplete="off" />
615        <label class="text-xs font-semibold uppercase tracking-wider text-slate-500" for="landing-locale-select">Language</label>
616        <select name="locale" id="landing-locale-select" class="select select-bordered select-sm w-full max-w-48 bg-slate-900/80 border-white/15 text-slate-200" data-action="change-&gt;locale-switch#submit"><option selected="selected" value="en">English</option>
617<option value="es">Español</option></select>
618</form>    </div>
619
620    <nav aria-label="Product">
621      <p class="text-xs font-semibold uppercase tracking-wider text-slate-500 mb-3">Product</p>
622      <ul class="space-y-2">
623        <li><a class="text-sm text-slate-400 hover:text-cyan-300 transition" href="/online-ordering">Online Ordering</a></li>
624        <li><a class="text-sm text-slate-400 hover:text-cyan-300 transition" href="/pricing">Pricing</a></li>
625        <li><a class="text-sm text-slate-400 hover:text-cyan-300 transition" href="/use-cases">Use Cases</a></li>
626        <li><a class="text-sm text-slate-400 hover:text-cyan-300 transition" href="/integrations">Integrations</a></li>
627        <li><a class="text-sm text-slate-400 hover:text-cyan-300 transition" href="/resources">Resources</a></li>
628      </ul>
629    </nav>
630
631    <nav aria-label="Apps">
632      <p class="text-xs font-semibold uppercase tracking-wider text-slate-500 mb-3">Apps</p>
633      <ul class="space-y-2">
634        <li><a class="text-sm text-slate-400 hover:text-cyan-300 transition" href="/kiosk-app">Kiosk</a></li>
635        <li>
636          <a target="_blank" rel="noopener noreferrer" class="text-sm text-slate-400 hover:text-cyan-300 transition" href="https://play.google.com/store/apps/details?id=com.smartsignpro.pulse">
637            Pulse
638            <span class="text-slate-500">(Google Play)</span>
639</a>        </li>
640      </ul>
641    </nav>
642
643    <nav aria-label="Company">
644      <p class="text-xs font-semibold uppercase tracking-wider text-slate-500 mb-3">Company</p>
645      <ul class="space-y-2">
646        <li><a class="text-sm text-slate-400 hover:text-cyan-300 transition" href="/faq">FAQ</a></li>
647        <li><a class="text-sm text-slate-400 hover:text-cyan-300 transition" href="/contact">Contact</a></li>
648      </ul>
649    </nav>
650  </div>
651
652  <div class="mx-auto max-w-6xl px-4 sm:px-6 lg:px-10 pb-8 flex flex-col sm:flex-row sm:items-center sm:justify-between gap-3 border-t border-white/10 pt-6">
653    <p class="text-xs text-slate-500">© 2024–2026 SmartSignPro</p>
654    <nav class="flex flex-wrap gap-x-4 gap-y-1" aria-label="Legal">
655      <a class="text-xs text-slate-500 hover:text-slate-300 transition" href="/privacy">Privacy Policy</a>
656      <a class="text-xs text-slate-500 hover:text-slate-300 transition" href="/terms">Terms of Use</a>
657      <a class="text-xs text-slate-500 hover:text-slate-300 transition" href="/pulse/data-deletion">Data deletion</a>
658    </nav>
659  </div>
660</footer>
661
662      </main>
663    
663<script>
664      if ("serviceWorker" in navigator) {
665        navigator.serviceWorker.register("/sw.js", { scope: "/" }).catch(function () {})
666      }
667    </script>
667
668  </body>
669</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.