PageSourceSearch

https://www.hunancafefallschurchva.com/page/delivery-info

html hunancafefallschurchva.com collected 2026-10-02 00:50:38 UTC 117,254 bytes, 2,446 lines download raw bytes

1<!DOCTYPE html>
2
3<html class="no-js css-scroll eds-theme-light" lang="en">
4	<head>
5		<meta charset="utf-8" />
6		<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
7		<meta name="viewport" content="width=device-width, initial-scale=1.0">
8		<meta name="apple-mobile-web-app-status-bar-style" content="black">
9		<meta name="mobile-web-app-capable" content="yes">
10		
11				
12						<title>Hunan Cafe - Falls Church in VA | Delivery Info | Chinese</title>
13							<meta name="keywords" content="hunan cafe, hunan cafe falls church, hunan cafe menu, falls church chinese delivery, falls church chinese food, falls church chinese restaurants, chinese delivery, best chinese food in falls church, chinese restaurants in falls church, chinese restaurants near me, chinese food near me, falls church chinese takeout" />
14						
15						<meta property="og:type" content="website">
16							<meta property="og:title" content="Hunan Cafe - Falls Church in VA | Delivery Info | Chinese">
17													<meta property="og:image" content="https://imagedelivery.net/9lr8zq_Jvl7h6OFWqEi9IA/a4c7938a-acd0-4ad0-19b2-b9b7e1845b00/public" />
18			
19						<meta name="twitter:card" content="summary_large_image">
20							<meta name="twitter:title" content="Hunan Cafe - Falls Church in VA | Delivery Info | Chinese">
21													<meta name="twitter:image" content="https://imagedelivery.net/9lr8zq_Jvl7h6OFWqEi9IA/a4c7938a-acd0-4ad0-19b2-b9b7e1845b00/public" />
22			
23										<link rel="shortcut icon" href="https://imagedelivery.net/9lr8zq_Jvl7h6OFWqEi9IA/e447e32e-c741-4ddb-5738-13c2a8126b00/public" type="image/x-icon" />
24					
25							<link rel="canonical" href="https://www.hunancafefallschurchva.com/page/delivery-info"/>
26		
27				<link type="text/css" rel="stylesheet" href="/min/g=eds_css&amp;1788377785" />
28		<link type="text/css" rel="stylesheet" href="/min/g=css4.0&amp;1788377785" />
29					<link href="https://fonts.googleapis.com/css?family=Nunito:400,700|Open+Sans:400,600,700" rel="stylesheet" />
30				<link rel="stylesheet" href="//ajax.googleapis.com/ajax/libs/jqueryui/1.10.1/themes/base/minified/jquery-ui.min.css" />
31		
31<script src="https://kit.fontawesome.com/0208faa9a2.js" crossorigin="anonymous"></script>
31
32
33		<style>
34								.home_hero, .menu_hero{ background-image: url(https://imagedelivery.net/9lr8zq_Jvl7h6OFWqEi9IA/b2432901-6956-469e-fd9b-4cb19e93db00/public); }
35					@media
36					(-webkit-min-device-pixel-ratio: 1.25),
37					(min-resolution: 120dpi){
38						/* Retina header*/
39						.home_hero, .menu_hero{ background-image: url(https://imagedelivery.net/9lr8zq_Jvl7h6OFWqEi9IA/688121bc-14cf-4b8c-4aab-6eb3bc188c00/public); }
40					}
41															/*body{  } */
42
43					
44		</style>
45
46		
47		
47<script type="text/javascript">
48			var UrlTag = "hunancafefallschurch";
49			var template = 'defaultv4';
50			var formname = 'page';
51			var menulink = 'https://www.hunancafefallschurchva.com/order';
52			var checkoutlink = 'https://www.hunancafefallschurchva.com/checkout';
53		</script>
53
54		
54<script>
55			/* http://writing.colin-gourlay.com/safely-using-ready-before-including-jquery/ */
56			(function(w,d,u){w.readyQ=[];w.bindReadyQ=[];function p(x,y){if(x=="ready"){w.bindReadyQ.push(y);}else{w.readyQ.push(x);}};var a={ready:p,bind:p};w.$=w.jQuery=function(f){if(f===d||f===u){return a}else{p(f)}}})(window,document)
57		</script>
57
58
59		
60<!-- Google Tag Manager -->
61<script>
62	window.dataLayer = window.dataLayer || [];
63	window.gtag = window.gtag || function gtag() { dataLayer.push(arguments); };
64	gtag('js', new Date());
65
66	let data = {
67		account: 'hunancafefallschurch',
68		context: 'direct',
69		templateVersion: 4,
70		rid: 66,
71			}
72		dataLayer.push({ ...data, event: 'app_data_ready' });
vendor: 337 bytes, lines 72-78
72
73
74	(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
75		new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
76		j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
77		'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
78	})(window,document,'script','dataLayer','
78GTM-K9P93M
vendor: 4 bytes, line 78
78');
79</script>
vendor: 67 bytes, lines 79-81
79
80
81		<script async src="https://www.googletagmanager.com/gtag/js?id=
81G-0X1FYFX232
vendor: 15 bytes, lines 81-83
81"></script>
82
83		
83<script>
84			
85							gtag('config', "G-0X1FYFX232");
86					</script>
86
87	
88
89
90					<meta name="smartbanner:title" content="Hunan Cafe Falls Church Order">
91					<meta name="smartbanner:author" content="Online Ordering">
92					<meta name="smartbanner:price" content="FREE">
93					<meta name="smartbanner:price-suffix-google" content=" ">
94					<meta name="smartbanner:button" content="VIEW">
95					<meta name="smartbanner:button-url-google" content="https://play.google.com/store/apps/details?id=com.chinesemenuonline.hunancafefallschurch">
96					<meta name="smartbanner:enabled-platforms" content="android">
97											<meta name="smartbanner:icon-google" content="https://ehc-west-0-bucket.s3.us-west-2.amazonaws.com/web/documents/hunancafefallschurch/">
98						</head>
99
100	<body
101		data-event-on:customer_registered="window.location.reload()"
102		data-event-on:customer_logged_in="window.location.reload()"
103		data-event-on:customer_logged_out="window.location.reload()"
104	>
105		<a class="skip-to-content-link" href="#main">Skip to content</a>
106				<!-- Google Tag Manager (noscript) -->
vendor: 70 bytes, lines 106-107
106
107		<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
107GTM-K9P93M
vendor: 85 bytes, lines 107-108
107" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
108		
108<!-- End Google Tag Manager (noscript) -->
109						<!-- wrapper starts -->
110		<div class="wrapper">
111			<section style="grid-area: header-announcements" aria-label="Announcement">
112				<div id="upgradeBrowserBanner" class="alert alert-warning mb-0 rounded-0 py-4" style="display:none;">
113	<div class="alert-icon"><i class="fas fa-warning" aria-hidden="true"></i></div>
114	<div>
115		<strong>We're sorry, but the Web browser you are using is not supported.</strong> <br/> Please upgrade your browser or try a different one to use this Website. Supported browsers include:<br/>
116		<ul class="list-unstyled">
117			<li class="mt-2"><a href="https://www.google.com/chrome" target="_blank" rel="noopener noreferrer" class="simple-link"><i class="fab fa-chrome"></i> Chrome</a></li>
118			<li class="mt-2"><a href="https://www.mozilla.com/firefox/upgrade.html" target="_blank" rel="noopener noreferrer" class="simple-link"><i class="fab fa-firefox"></i> Firefox</a></li>
119			<li class="mt-2"><a href="https://www.microsoft.com/en-us/windows/microsoft-edge" target="_blank" rel="noopener noreferrer" class="simple-link"><i class="fab fa-edge"></i> Edge</a></li>
120			<li class="mt-2"><a href="http://www.apple.com/safari/" target="_blank" rel="noopener noreferrer" class="simple-link"><i class="fab fa-safari"></i> Safari</a></li>
121		</ul>
122	</div>
123</div>
124<script>
125	var ua = navigator.userAgent;
126	var match = ua.match(/Firefox\/([0-9]+)\./);
127	var firefoxVersion = match ? parseInt(match[1]) : 1000;
128	var match = ua.match(/Chrome\/([0-9]+)\./);
129	var chromeVersion = match ? parseInt(match[1]) : 1000;
130	var isIE = ua.indexOf('MSIE') > -1 || ua.indexOf('Trident') > -1;
131	var upgradeBrowserBanner = document.getElementById('upgradeBrowserBanner');
132	var isMatchesSupported = typeof(upgradeBrowserBanner.matches)!="undefined";
133	var isEntriesSupported = typeof(Object.entries)!="undefined";
134	//Safari version is verified with isEntriesSupported
135	if (isIE || !isMatchesSupported || !isEntriesSupported || firefoxVersion <= 46 || chromeVersion <= 53) {
136		upgradeBrowserBanner.style.display = 'flex';
137	}
138</script>
138				
139				<!-- get closed sign if applicable. -->
140				
141				
142							</section>
143
144						<!-- Header Starts -->
145			<div class="headerAndWtype" style="grid-area: header">
146				<header class="header" >
147										<div class="d-flex flex-column align-items-start flex-md-row align-items-md-center">
148												<div class="logo_name_alt flex-shrink-0 d-flex align-items-center align-self-stretch pe-6 pe-md-0">
149							<button class="eds_button btn btn-outline eds_menu_button" style="color: inherit" aria-label="Main menu" aria-expanded="false" data-bs-toggle="offcanvas" data-bs-target="#side-menu" aria-controls="side-menu" type="button"><span aria-hidden="true"></span><span aria-hidden="true"></span><span aria-hidden="true"></span></button>
150							<div class="d-flex flex-column align-items-center mx-auto align-items-md-start mx-md-0">
151								<a
152									class="eds-display-text-title-xs text-truncate title-container"
153									href="https://www.hunancafefallschurchva.com"
154									aria-current="false"
155								>
156									Hunan Cafe - Falls Church								</a>
157
158																	<span class="eds-copy-text-s-regular text-center text-md-start address-container" title="126 W Broad St Falls Church, VA 22046">
159										126 W Broad St Falls Church, VA 22046									</span>
160															</div>
161						</div>
162
163												
164												<div class="position-absolute top-0 end-0 p-2">
165							
166	<div id="login-status" >
167					<button class="eds_button btn btn-outline px-2 text-nowrap" aria-label="Log in" style="color: currentColor" data-bs-toggle="modal" data-bs-target="#login-modal" type="button"><i class="eds_icon fa fa-lg fa-user-circle d-block d-lg-none" style="" aria-hidden="true"></i> <div class="d-none d-lg-flex align-items-baseline gap-2"><i class="eds_icon fa fa-user-circle" style="" aria-hidden="true"></i><div class="profile-container text-truncate">Log in</div></div></button>			</div>
168
169							</div>
170					</div>
171
172															
173	<div		data-eds-id="6abeffdd7deed"
174		class="eds_side_menu offcanvas offcanvas-start "
175		tabindex="-1"
176		aria-label="Side navigation"
177				id="side-menu" data-event-on:menu_selected="this.dispatchEvent(new CustomEvent('eds.hide'))" data-event-on:category_selected="this.dispatchEvent(new CustomEvent('eds.hide'))"	>
178		
179		<div class="eds_side_menu-body offcanvas-body d-flex flex-column pt-0 px-0 css-scroll" style="padding-bottom: 115px; scroll-padding-bottom: 115px;">
180										<div
181					class="eds_side_menu-close position-absolute top-0 end-0 pt-3 pe-3 "
182					style="z-index: 1"
183				>
184					<button data-bs-dismiss="offcanvas" data-bs-target="[data-eds-id=&quot;6abeffdd7deed&quot;]" aria-label="Close" class="eds_button btn btn-outline-secondary eds_button--shape-circle" type="button"><i class="eds_icon fa fa-close" style="" aria-hidden="true"></i></button>				</div>
185			
186			<nav aria-labelledby="header-navigation-title">
187							<h2 id="header-navigation-title" class="eds-display-text-title-m m-0 p-3">Pages</h2>
188<ul class="eds_list eds_list--border-none border-bottom">
189	<li class="eds_list-item">
190		<a class="d-block p-3 " href="https://www.hunancafefallschurchva.com" aria-current="false">
191			Home		</a>
192	</li>
193
194		<li class="eds_list-item">
195		<a
196			class="d-block p-3 "
197			href="https://www.hunancafefallschurchva.com/order"
198			aria-current="false"
199		>
200			Menu		</a>
201	</li>
202
203		
204					<li class="eds_list-item">
205					<a class="d-block p-3 active" href="https://www.hunancafefallschurchva.com/page/delivery-info"  aria-current="page">
206						Delivery Info					</a>
207				</li>
208			
209			<li class="eds_list-item">
210			<a class="d-block p-3 " href="https://www.hunancafefallschurchva.com/locationinfo" aria-current="false">
211				Location &amp; Hours			</a>
212		</li>
213	
214	<li class="eds_list-item">
215		<a class="d-block p-3 " href="https://www.hunancafefallschurchva.com/contact" aria-current="false">
216			Contact
217		</a>
218	</li>
219</ul>
220						</nav>
221					
222																	
223	<div class="border-bottom border-light p-3">
224					<h2 class="eds-display-text-title-m m-0 pb-3">
225				Restaurant Menus <span class="sr-only">2 menus.</span>
226			</h2>
227		
228		
229			<details
230				class="eds_list eds_list--border-none" open				data-menu-id="10543"
231									data-event-on:document_ready="this.open = localStorage.getItem('menu-open-10543') !== 'false'"
232										onclick="localStorage.setItem('menu-open-10543', !this.open)"
233							>
234									<summary
235						class="eds_list-item eds-copy-text-l-regular list-unstyled rounded-3 mb-1 px-3 px-lg-4 py-2p5 "
236						data-event-on:category_pinned="(category) => $(this).toggleClass('active', category.menuId === '10543')"
237						tabindex="0"
238					>
239						<i class="eds_icon fas fa-chevron-right" style="" aria-hidden="true"></i> Main Menu<span class="sr-only"> menu, 14 categories</span>
240					</summary>
241				
242																		
243									<a
244						class="eds_list-item eds-copy-text-l-regular list-unstyled rounded-3 mb-1 px-3 px-lg-4 py-2p5 ps-5 ps-lg-5 d-flex "
245						data-event-on:category_pinned="(category) => {
246							const isCurrent = category.id === '128672';
247							$(this).toggleClass('active', isCurrent);
248							this.setAttribute('aria-current', isCurrent ? 'page' : 'false');
249						}"
250						href="https://www.hunancafefallschurchva.com/order/main-menu/hot-appetizers"
251						aria-current="false"
252						onclick="if (!event.ctrlKey) {
253							const currentMenuIsActive = false || $(this).closest('details').find('summary').hasClass('active');
254							if (currentMenuIsActive) {
255								app.event.emit('category_selected', { id: '128672' });
256							} else {
257								app.event.emit('menu_selected', { menu_id: '10543', menu_description: &quot;Please note: requests for additional items or special preparation may incur an &lt;b&gt;extra charge&lt;\/b&gt; not calculated on your online order.&quot;, category_id: '128672' });
258							}
259													}"
260					>
261						Hot Appetizers<span class="sr-only"> menu category</span>
262													<span class="ms-auto">11<span class="sr-only"> items available</span></span>
263											</a>
264									<a
265						class="eds_list-item eds-copy-text-l-regular list-unstyled rounded-3 mb-1 px-3 px-lg-4 py-2p5 ps-5 ps-lg-5 d-flex "
266						data-event-on:category_pinned="(category) => {
267							const isCurrent = category.id === '128673';
268							$(this).toggleClass('active', isCurrent);
269							this.setAttribute('aria-current', isCurrent ? 'page' : 'false');
270						}"
271						href="https://www.hunancafefallschurchva.com/order/main-menu/soups"
272						aria-current="false"
273						onclick="if (!event.ctrlKey) {
274							const currentMenuIsActive = false || $(this).closest('details').find('summary').hasClass('active');
275							if (currentMenuIsActive) {
276								app.event.emit('category_selected', { id: '128673' });
277							} else {
278								app.event.emit('menu_selected', { menu_id: '10543', menu_description: &quot;Please note: requests for additional items or special preparation may incur an &lt;b&gt;extra charge&lt;\/b&gt; not calculated on your online order.&quot;, category_id: '128673' });
279							}
280													}"
281					>
282						Soups<span class="sr-only"> menu category</span>
283													<span class="ms-auto">8<span class="sr-only"> items available</span></span>
284											</a>
285									<a
286						class="eds_list-item eds-copy-text-l-regular list-unstyled rounded-3 mb-1 px-3 px-lg-4 py-2p5 ps-5 ps-lg-5 d-flex "
287						data-event-on:category_pinned="(category) => {
288							const isCurrent = category.id === '128674';
289							$(this).toggleClass('active', isCurrent);
290							this.setAttribute('aria-current', isCurrent ? 'page' : 'false');
291						}"
292						href="https://www.hunancafefallschurchva.com/order/main-menu/rice-noodle"
293						aria-current="false"
294						onclick="if (!event.ctrlKey) {
295							const currentMenuIsActive = false || $(this).closest('details').find('summary').hasClass('active');
296							if (currentMenuIsActive) {
297								app.event.emit('category_selected', { id: '128674' });
298							} else {
299								app.event.emit('menu_selected', { menu_id: '10543', menu_description: &quot;Please note: requests for additional items or special preparation may incur an &lt;b&gt;extra charge&lt;\/b&gt; not calculated on your online order.&quot;, category_id: '128674' });
300							}
301													}"
302					>
303						Rice & Noodle<span class="sr-only"> menu category</span>
304													<span class="ms-auto">8<span class="sr-only"> items available</span></span>
305											</a>
306									<a
307						class="eds_list-item eds-copy-text-l-regular list-unstyled rounded-3 mb-1 px-3 px-lg-4 py-2p5 ps-5 ps-lg-5 d-flex "
308						data-event-on:category_pinned="(category) => {
309							const isCurrent = category.id === '128675';
310							$(this).toggleClass('active', isCurrent);
311							this.setAttribute('aria-current', isCurrent ? 'page' : 'false');
312						}"
313						href="https://www.hunancafefallschurchva.com/order/main-menu/mei-fun-or-chow-fun"
314						aria-current="false"
315						onclick="if (!event.ctrlKey) {
316							const currentMenuIsActive = false || $(this).closest('details').find('summary').hasClass('active');
317							if (currentMenuIsActive) {
318								app.event.emit('category_selected', { id: '128675' });
319							} else {
320								app.event.emit('menu_selected', { menu_id: '10543', menu_description: &quot;Please note: requests for additional items or special preparation may incur an &lt;b&gt;extra charge&lt;\/b&gt; not calculated on your online order.&quot;, category_id: '128675' });
321							}
322													}"
323					>
324						Mei Fun or Chow Fun<span class="sr-only"> menu category</span>
325													<span class="ms-auto">5<span class="sr-only"> items available</span></span>
326											</a>
327									<a
328						class="eds_list-item eds-copy-text-l-regular list-unstyled rounded-3 mb-1 px-3 px-lg-4 py-2p5 ps-5 ps-lg-5 d-flex "
329						data-event-on:category_pinned="(category) => {
330							const isCurrent = category.id === '128676';
331							$(this).toggleClass('active', isCurrent);
332							this.setAttribute('aria-current', isCurrent ? 'page' : 'false');
333						}"
334						href="https://www.hunancafefallschurchva.com/order/main-menu/egg-foo-young"
335						aria-current="false"
336						onclick="if (!event.ctrlKey) {
337							const currentMenuIsActive = false || $(this).closest('details').find('summary').hasClass('active');
338							if (currentMenuIsActive) {
339								app.event.emit('category_selected', { id: '128676' });
340							} else {
341								app.event.emit('menu_selected', { menu_id: '10543', menu_description: &quot;Please note: requests for additional items or special preparation may incur an &lt;b&gt;extra charge&lt;\/b&gt; not calculated on your online order.&quot;, category_id: '128676' });
342							}
343													}"
344					>
345						Egg Foo Young<span class="sr-only"> menu category</span>
346													<span class="ms-auto">6<span class="sr-only"> items available</span></span>
347											</a>
348									<a
349						class="eds_list-item eds-copy-text-l-regular list-unstyled rounded-3 mb-1 px-3 px-lg-4 py-2p5 ps-5 ps-lg-5 d-flex "
350						data-event-on:category_pinned="(category) => {
351							const isCurrent = category.id === '128677';
352							$(this).toggleClass('active', isCurrent);
353							this.setAttribute('aria-current', isCurrent ? 'page' : 'false');
354						}"
355						href="https://www.hunancafefallschurchva.com/order/main-menu/pork"
356						aria-current="false"
357						onclick="if (!event.ctrlKey) {
358							const currentMenuIsActive = false || $(this).closest('details').find('summary').hasClass('active');
359							if (currentMenuIsActive) {
360								app.event.emit('category_selected', { id: '128677' });
361							} else {
362								app.event.emit('menu_selected', { menu_id: '10543', menu_description: &quot;Please note: requests for additional items or special preparation may incur an &lt;b&gt;extra charge&lt;\/b&gt; not calculated on your online order.&quot;, category_id: '128677' });
363							}
364													}"
365					>
366						Pork<span class="sr-only"> menu category</span>
367													<span class="ms-auto">6<span class="sr-only"> items available</span></span>
368											</a>
369									<a
370						class="eds_list-item eds-copy-text-l-regular list-unstyled rounded-3 mb-1 px-3 px-lg-4 py-2p5 ps-5 ps-lg-5 d-flex "
371						data-event-on:category_pinned="(category) => {
372							const isCurrent = category.id === '128678';
373							$(this).toggleClass('active', isCurrent);
374							this.setAttribute('aria-current', isCurrent ? 'page' : 'false');
375						}"
376						href="https://www.hunancafefallschurchva.com/order/main-menu/poultry"
377						aria-current="false"
378						onclick="if (!event.ctrlKey) {
379							const currentMenuIsActive = false || $(this).closest('details').find('summary').hasClass('active');
380							if (currentMenuIsActive) {
381								app.event.emit('category_selected', { id: '128678' });
382							} else {
383								app.event.emit('menu_selected', { menu_id: '10543', menu_description: &quot;Please note: requests for additional items or special preparation may incur an &lt;b&gt;extra charge&lt;\/b&gt; not calculated on your online order.&quot;, category_id: '128678' });
384							}
385													}"
386					>
387						Poultry<span class="sr-only"> menu category</span>
388													<span class="ms-auto">13<span class="sr-only"> items available</span></span>
389											</a>
390									<a
391						class="eds_list-item eds-copy-text-l-regular list-unstyled rounded-3 mb-1 px-3 px-lg-4 py-2p5 ps-5 ps-lg-5 d-flex "
392						data-event-on:category_pinned="(category) => {
393							const isCurrent = category.id === '128679';
394							$(this).toggleClass('active', isCurrent);
395							this.setAttribute('aria-current', isCurrent ? 'page' : 'false');
396						}"
397						href="https://www.hunancafefallschurchva.com/order/main-menu/beef"
398						aria-current="false"
399						onclick="if (!event.ctrlKey) {
400							const currentMenuIsActive = false || $(this).closest('details').find('summary').hasClass('active');
401							if (currentMenuIsActive) {
402								app.event.emit('category_selected', { id: '128679' });
403							} else {
404								app.event.emit('menu_selected', { menu_id: '10543', menu_description: &quot;Please note: requests for additional items or special preparation may incur an &lt;b&gt;extra charge&lt;\/b&gt; not calculated on your online order.&quot;, category_id: '128679' });
405							}
406													}"
407					>
408						Beef<span class="sr-only"> menu category</span>
409													<span class="ms-auto">10<span class="sr-only"> items available</span></span>
410											</a>
411									<a
412						class="eds_list-item eds-copy-text-l-regular list-unstyled rounded-3 mb-1 px-3 px-lg-4 py-2p5 ps-5 ps-lg-5 d-flex "
413						data-event-on:category_pinned="(category) => {
414							const isCurrent = category.id === '128680';
415							$(this).toggleClass('active', isCurrent);
416							this.setAttribute('aria-current', isCurrent ? 'page' : 'false');
417						}"
418						href="https://www.hunancafefallschurchva.com/order/main-menu/seafood"
419						aria-current="false"
420						onclick="if (!event.ctrlKey) {
421							const currentMenuIsActive = false || $(this).closest('details').find('summary').hasClass('active');
422							if (currentMenuIsActive) {
423								app.event.emit('category_selected', { id: '128680' });
424							} else {
425								app.event.emit('menu_selected', { menu_id: '10543', menu_description: &quot;Please note: requests for additional items or special preparation may incur an &lt;b&gt;extra charge&lt;\/b&gt; not calculated on your online order.&quot;, category_id: '128680' });
426							}
427													}"
428					>
429						Seafood<span class="sr-only"> menu category</span>
430													<span class="ms-auto">13<span class="sr-only"> items available</span></span>
431											</a>
432									<a
433						class="eds_list-item eds-copy-text-l-regular list-unstyled rounded-3 mb-1 px-3 px-lg-4 py-2p5 ps-5 ps-lg-5 d-flex "
434						data-event-on:category_pinned="(category) => {
435							const isCurrent = category.id === '128681';
436							$(this).toggleClass('active', isCurrent);
437							this.setAttribute('aria-current', isCurrent ? 'page' : 'false');
438						}"
439						href="https://www.hunancafefallschurchva.com/order/main-menu/vegetables"
440						aria-current="false"
441						onclick="if (!event.ctrlKey) {
442							const currentMenuIsActive = false || $(this).closest('details').find('summary').hasClass('active');
443							if (currentMenuIsActive) {
444								app.event.emit('category_selected', { id: '128681' });
445							} else {
446								app.event.emit('menu_selected', { menu_id: '10543', menu_description: &quot;Please note: requests for additional items or special preparation may incur an &lt;b&gt;extra charge&lt;\/b&gt; not calculated on your online order.&quot;, category_id: '128681' });
447							}
448													}"
449					>
450						Vegetables<span class="sr-only"> menu category</span>
451													<span class="ms-auto">9<span class="sr-only"> items available</span></span>
452											</a>
453									<a
454						class="eds_list-item eds-copy-text-l-regular list-unstyled rounded-3 mb-1 px-3 px-lg-4 py-2p5 ps-5 ps-lg-5 d-flex "
455						data-event-on:category_pinned="(category) => {
456							const isCurrent = category.id === '128682';
457							$(this).toggleClass('active', isCurrent);
458							this.setAttribute('aria-current', isCurrent ? 'page' : 'false');
459						}"
460						href="https://www.hunancafefallschurchva.com/order/main-menu/health-food-section"
461						aria-current="false"
462						onclick="if (!event.ctrlKey) {
463							const currentMenuIsActive = false || $(this).closest('details').find('summary').hasClass('active');
464							if (currentMenuIsActive) {
465								app.event.emit('category_selected', { id: '128682' });
466							} else {
467								app.event.emit('menu_selected', { menu_id: '10543', menu_description: &quot;Please note: requests for additional items or special preparation may incur an &lt;b&gt;extra charge&lt;\/b&gt; not calculated on your online order.&quot;, category_id: '128682' });
468							}
469													}"
470					>
471						Health Food Section<span class="sr-only"> menu category</span>
472													<span class="ms-auto">4<span class="sr-only"> items available</span></span>
473											</a>
474									<a
475						class="eds_list-item eds-copy-text-l-regular list-unstyled rounded-3 mb-1 px-3 px-lg-4 py-2p5 ps-5 ps-lg-5 d-flex "
476						data-event-on:category_pinned="(category) => {
477							const isCurrent = category.id === '128683';
478							$(this).toggleClass('active', isCurrent);
479							this.setAttribute('aria-current', isCurrent ? 'page' : 'false');
480						}"
481						href="https://www.hunancafefallschurchva.com/order/main-menu/chefs-specialties"
482						aria-current="false"
483						onclick="if (!event.ctrlKey) {
484							const currentMenuIsActive = false || $(this).closest('details').find('summary').hasClass('active');
485							if (currentMenuIsActive) {
486								app.event.emit('category_selected', { id: '128683' });
487							} else {
488								app.event.emit('menu_selected', { menu_id: '10543', menu_description: &quot;Please note: requests for additional items or special preparation may incur an &lt;b&gt;extra charge&lt;\/b&gt; not calculated on your online order.&quot;, category_id: '128683' });
489							}
490													}"
491					>
492						Chef's Specialties<span class="sr-only"> menu category</span>
493													<span class="ms-auto">15<span class="sr-only"> items available</span></span>
494											</a>
495									<a
496						class="eds_list-item eds-copy-text-l-regular list-unstyled rounded-3 mb-1 px-3 px-lg-4 py-2p5 ps-5 ps-lg-5 d-flex "
497						data-event-on:category_pinned="(category) => {
498							const isCurrent = category.id === '168938';
499							$(this).toggleClass('active', isCurrent);
500							this.setAttribute('aria-current', isCurrent ? 'page' : 'false');
501						}"
502						href="https://www.hunancafefallschurchva.com/order/main-menu/side-order"
503						aria-current="false"
504						onclick="if (!event.ctrlKey) {
505							const currentMenuIsActive = false || $(this).closest('details').find('summary').hasClass('active');
506							if (currentMenuIsActive) {
507								app.event.emit('category_selected', { id: '168938' });
508							} else {
509								app.event.emit('menu_selected', { menu_id: '10543', menu_description: &quot;Please note: requests for additional items or special preparation may incur an &lt;b&gt;extra charge&lt;\/b&gt; not calculated on your online order.&quot;, category_id: '168938' });
510							}
511													}"
512					>
513						Side Order<span class="sr-only"> menu category</span>
514													<span class="ms-auto">3<span class="sr-only"> items available</span></span>
515											</a>
516									<a
517						class="eds_list-item eds-copy-text-l-regular list-unstyled rounded-3 mb-1 px-3 px-lg-4 py-2p5 ps-5 ps-lg-5 d-flex "
518						data-event-on:category_pinned="(category) => {
519							const isCurrent = category.id === '189250';
520							$(this).toggleClass('active', isCurrent);
521							this.setAttribute('aria-current', isCurrent ? 'page' : 'false');
522						}"
523						href="https://www.hunancafefallschurchva.com/order/main-menu/beverage"
524						aria-current="false"
525						onclick="if (!event.ctrlKey) {
526							const currentMenuIsActive = false || $(this).closest('details').find('summary').hasClass('active');
527							if (currentMenuIsActive) {
528								app.event.emit('category_selected', { id: '189250' });
529							} else {
530								app.event.emit('menu_selected', { menu_id: '10543', menu_description: &quot;Please note: requests for additional items or special preparation may incur an &lt;b&gt;extra charge&lt;\/b&gt; not calculated on your online order.&quot;, category_id: '189250' });
531							}
532													}"
533					>
534						Beverage<span class="sr-only"> menu category</span>
535													<span class="ms-auto">9<span class="sr-only"> items available</span></span>
536											</a>
537							</details>
538		
539			<details
540				class="eds_list eds_list--border-none" open				data-menu-id="22080"
541									data-event-on:document_ready="this.open = localStorage.getItem('menu-open-22080') !== 'false'"
542										onclick="localStorage.setItem('menu-open-22080', !this.open)"
543							>
544									<summary
545						class="eds_list-item eds-copy-text-l-regular list-unstyled rounded-3 mb-1 px-3 px-lg-4 py-2p5 "
546						data-event-on:category_pinned="(category) => $(this).toggleClass('active', category.menuId === '22080')"
547						tabindex="0"
548					>
549						<i class="eds_icon fas fa-chevron-right" style="" aria-hidden="true"></i> Lunch Menu<span class="sr-only"> menu, 6 categories</span>
550					</summary>
551				
552																		
553									<a
554						class="eds_list-item eds-copy-text-l-regular list-unstyled rounded-3 mb-1 px-3 px-lg-4 py-2p5 ps-5 ps-lg-5 d-flex "
555						data-event-on:category_pinned="(category) => {
556							const isCurrent = category.id === '287067';
557							$(this).toggleClass('active', isCurrent);
558							this.setAttribute('aria-current', isCurrent ? 'page' : 'false');
559						}"
560						href="https://www.hunancafefallschurchva.com/order/lunch-menu/pork-1"
561						aria-current="false"
562						onclick="if (!event.ctrlKey) {
563							const currentMenuIsActive = false || $(this).closest('details').find('summary').hasClass('active');
564							if (currentMenuIsActive) {
565								app.event.emit('category_selected', { id: '287067' });
566							} else {
567								app.event.emit('menu_selected', { menu_id: '22080', menu_description: &quot;Tuesday - Saturday 11:00 am - 3:00 pm&quot;, category_id: '287067' });
568							}
569													}"
570					>
571						Pork<span class="sr-only"> menu category</span>
572													<span class="ms-auto">6<span class="sr-only"> items available</span></span>
573											</a>
574									<a
575						class="eds_list-item eds-copy-text-l-regular list-unstyled rounded-3 mb-1 px-3 px-lg-4 py-2p5 ps-5 ps-lg-5 d-flex "
576						data-event-on:category_pinned="(category) => {
577							const isCurrent = category.id === '287068';
578							$(this).toggleClass('active', isCurrent);
579							this.setAttribute('aria-current', isCurrent ? 'page' : 'false');
580						}"
581						href="https://www.hunancafefallschurchva.com/order/lunch-menu/poultry-1"
582						aria-current="fa
582lse"
583						onclick="if (!event.ctrlKey) {
584							const currentMenuIsActive = false || $(this).closest('details').find('summary').hasClass('active');
585							if (currentMenuIsActive) {
586								app.event.emit('category_selected', { id: '287068' });
587							} else {
588								app.event.emit('menu_selected', { menu_id: '22080', menu_description: &quot;Tuesday - Saturday 11:00 am - 3:00 pm&quot;, category_id: '287068' });
589							}
590													}"
591					>
592						Poultry<span class="sr-only"> menu category</span>
593													<span class="ms-auto">13<span class="sr-only"> items available</span></span>
594											</a>
595									<a
596						class="eds_list-item eds-copy-text-l-regular list-unstyled rounded-3 mb-1 px-3 px-lg-4 py-2p5 ps-5 ps-lg-5 d-flex "
597						data-event-on:category_pinned="(category) => {
598							const isCurrent = category.id === '287064';
599							$(this).toggleClass('active', isCurrent);
600							this.setAttribute('aria-current', isCurrent ? 'page' : 'false');
601						}"
602						href="https://www.hunancafefallschurchva.com/order/lunch-menu/beef-1"
603						aria-current="false"
604						onclick="if (!event.ctrlKey) {
605							const currentMenuIsActive = false || $(this).closest('details').find('summary').hasClass('active');
606							if (currentMenuIsActive) {
607								app.event.emit('category_selected', { id: '287064' });
608							} else {
609								app.event.emit('menu_selected', { menu_id: '22080', menu_description: &quot;Tuesday - Saturday 11:00 am - 3:00 pm&quot;, category_id: '287064' });
610							}
611													}"
612					>
613						Beef<span class="sr-only"> menu category</span>
614													<span class="ms-auto">10<span class="sr-only"> items available</span></span>
615											</a>
616									<a
617						class="eds_list-item eds-copy-text-l-regular list-unstyled rounded-3 mb-1 px-3 px-lg-4 py-2p5 ps-5 ps-lg-5 d-flex "
618						data-event-on:category_pinned="(category) => {
619							const isCurrent = category.id === '287065';
620							$(this).toggleClass('active', isCurrent);
621							this.setAttribute('aria-current', isCurrent ? 'page' : 'false');
622						}"
623						href="https://www.hunancafefallschurchva.com/order/lunch-menu/seafood-1"
624						aria-current="false"
625						onclick="if (!event.ctrlKey) {
626							const currentMenuIsActive = false || $(this).closest('details').find('summary').hasClass('active');
627							if (currentMenuIsActive) {
628								app.event.emit('category_selected', { id: '287065' });
629							} else {
630								app.event.emit('menu_selected', { menu_id: '22080', menu_description: &quot;Tuesday - Saturday 11:00 am - 3:00 pm&quot;, category_id: '287065' });
631							}
632													}"
633					>
634						Seafood<span class="sr-only"> menu category</span>
635													<span class="ms-auto">11<span class="sr-only"> items available</span></span>
636											</a>
637									<a
638						class="eds_list-item eds-copy-text-l-regular list-unstyled rounded-3 mb-1 px-3 px-lg-4 py-2p5 ps-5 ps-lg-5 d-flex "
639						data-event-on:category_pinned="(category) => {
640							const isCurrent = category.id === '287066';
641							$(this).toggleClass('active', isCurrent);
642							this.setAttribute('aria-current', isCurrent ? 'page' : 'false');
643						}"
644						href="https://www.hunancafefallschurchva.com/order/lunch-menu/vegetables-1"
645						aria-current="false"
646						onclick="if (!event.ctrlKey) {
647							const currentMenuIsActive = false || $(this).closest('details').find('summary').hasClass('active');
648							if (currentMenuIsActive) {
649								app.event.emit('category_selected', { id: '287066' });
650							} else {
651								app.event.emit('menu_selected', { menu_id: '22080', menu_description: &quot;Tuesday - Saturday 11:00 am - 3:00 pm&quot;, category_id: '287066' });
652							}
653													}"
654					>
655						Vegetables<span class="sr-only"> menu category</span>
656													<span class="ms-auto">7<span class="sr-only"> items available</span></span>
657											</a>
658									<a
659						class="eds_list-item eds-copy-text-l-regular list-unstyled rounded-3 mb-1 px-3 px-lg-4 py-2p5 ps-5 ps-lg-5 d-flex "
660						data-event-on:category_pinned="(category) => {
661							const isCurrent = category.id === '304002';
662							$(this).toggleClass('active', isCurrent);
663							this.setAttribute('aria-current', isCurrent ? 'page' : 'false');
664						}"
665						href="https://www.hunancafefallschurchva.com/order/lunch-menu/luncheon-special"
666						aria-current="false"
667						onclick="if (!event.ctrlKey) {
668							const currentMenuIsActive = false || $(this).closest('details').find('summary').hasClass('active');
669							if (currentMenuIsActive) {
670								app.event.emit('category_selected', { id: '304002' });
671							} else {
672								app.event.emit('menu_selected', { menu_id: '22080', menu_description: &quot;Tuesday - Saturday 11:00 am - 3:00 pm&quot;, category_id: '304002' });
673							}
674													}"
675					>
676						Luncheon Special<span class="sr-only"> menu category</span>
677													<span class="ms-auto">20<span class="sr-only"> items available</span></span>
678											</a>
679							</details>
680		
681			</div>
682
683												
684					<div class="restaurant-info border-top border-light p-3 position-absolute bottom-0 left-0 w-100">
685							<h2 class="eds-display-text-title-xs mb-0 me-2 pe-4"><span class="sr-only">Location: You're currently ordering from </span>Hunan Cafe - Falls Church</h2>
686
687			<address class="eds-copy-text-s-regular mb-0">
688			126 W Broad St Falls Church, VA 22046		</address>
689						</div>
690
691																	<div class="eds-copy-text-s-regular p-3 d-lg-none">
692							<h2 class="eds-display-text-title-m m-0 pb-3">Additional info</h2>
693									<ul class="list-unstyled" aria-label="App store links">
694										<li><a href="https://play.google.com/store/apps/details?id=com.chinesemenuonline.hunancafefallschurch"><span class="sr-only">Download from the Google Play Store</span><img src="/web/default4.0/images/google-play-badge.svg" alt="" aria-hidden="true"></a></li>
695					</ul>
696	
697	<ul class="list-unstyled d-flex gap-2" aria-label="Social network links">
698						<li><a href="https://www.yelp.com/biz/hunan-cafe-falls-church?start=80" target="new"  title="Opens in new tab" class="icon" title="Yelp"><i class="fab fa-yelp"></i><span class="sr-only">Yelp</span></a></li>
699							<li><a href="https://www.tripadvisor.com/Restaurant_Review-g57722-d5049599-Reviews-Hunan_Cafe-Falls_Church_Virginia.html" target="new"  title="Opens in new tab" class="icon" title="TripAdvisor"><i class="fak fa-tripadvisor"></i><span class="sr-only">TripAdvisor</span></a></li>
700				</ul>
701	
702<div>&copy; 2026 Online Ordering by <a href="http://chinesemenuonline.com">Chinese Menu Online</a></div>
703	<div>Discover the best Chinese restaurants with <a href="https://www.springroll.com" target="_blank" title="Opens in new tab" >Springroll</a></div>
704
705<ul class="list-unstyled mb-0 pt-3" aria-label="Legal and support">
706	<li><a href="https://www.hunancafefallschurchva.com/reportbug">Technical Support</a></li>
707	<li><a href="https://www.hunancafefallschurchva.com/privacy">Privacy Policy</a></li>
708	<li><a href="https://www.hunancafefallschurchva.com/tos">Terms of Service</a></li>
709	<li><a href="https://www.hunancafefallschurchva.com/accessibility">Accessibility</a></li>
710</ul>
711
712This site is protected by reCAPTCHA and <a href="https://policies.google.com/privacy">Google's Privacy Policy</a> and <a href="https://policies.google.com/terms">Google's Terms of Service</a> apply.
713						</div>		</div>
714
715		
715<script>
716		{
717			const container = document.querySelector('[data-eds-id="6abeffdd7deed"]');
718
719						['show', 'hide', 'toggle', 'dispose'].forEach((eventName) => {
720				container.addEventListener(`eds.${eventName}`, (e) => {
721					bootstrap.Offcanvas.getOrCreateInstance(container)[eventName](
722						...(Array.isArray(e.detail) ? e.detail : [e.detail])
723					);
724				});
725			});
726		}
727		</script>
727
728	</div>
729
730					</header>
731			</div>
732
733										<aside class="container p-0" style="grid-area: hero" aria-labelledby="hero-section-title">
734					<section class="hero">
735												<div class="menu_hero backbgbox position-relative">
736									<div class="logo">
737		<a class="logo-image" href="https://www.hunancafefallschurchva.com" aria-current="false" >
738			<img
739				src="https://imagedelivery.net/9lr8zq_Jvl7h6OFWqEi9IA/a4c7938a-acd0-4ad0-19b2-b9b7e1845b00/public"
740				srcset="https://imagedelivery.net/9lr8zq_Jvl7h6OFWqEi9IA/a4c7938a-acd0-4ad0-19b2-b9b7e1845b00/public 1x, https://imagedelivery.net/9lr8zq_Jvl7h6OFWqEi9IA/a4c7938a-acd0-4ad0-19b2-b9b7e1845b00/public 2x"				alt="Go to Home"
741								onerror="this.closest('.logo').style.setProperty('display', 'none', 'important')"
742			/>
743		</a>
744	</div>
745						</div>
746
747													<div class="p-3">
748								<div class="pb-1">
749									<h1 id="hero-section-title" class="eds-display-text-title-s m-0 p-0">Hunan Cafe - Falls Church</h1>
750																	</div>
751
752								<div class="d-sm-flex align-items-baseline">
753																			<div class="mt-2">
754											
755	<span
756		class="eds_label eds_label--variant-success eds-interface-text-m-bold me-1 text-nowrap"
757			>
758		Open	</span>
759
760	11:00AM - 9:30PM										</div>
761									
762									<div class="d-flex gap-2 ms-sm-auto mt-2">
763																					
764					<a
765				class="eds_button btn btn-outline-secondary btn-sm col text-nowrap"
766				href="https://www.hunancafefallschurchva.com/locationinfo?lid=8285"
767							>
768				<i class="eds_icon fa fa-info-circle" style="" aria-hidden="true"></i> Store info			</a>
769		
770												
771																					
772		<a
773			class="eds_button btn btn-outline-secondary btn-sm col d-lg-none text-nowrap"
774			href="tel:(703) 533-8704"
775					>
776			<i class="eds_icon fa fa-phone" style="" aria-hidden="true"></i> Call us		</a>
777
778												
779									</div>
780								</div>
781							</div>
782											</section>
783				</aside>
784			
785						
786						
787										<div class="container" style="grid-area: messages">
788									</div>
789						<!-- Header ends -->
790<main class="main_content" id="main">
791	<div class="container locationinfo mt10">
792			<div class="custom-content">
793	<p>We deliver within a 3 mile radius of our restaurant.</p>
794
795<p>Minimum delivery order: $20</p>
796
797<p>Delivery fee: $2</p>
798
799<p> </p>
800
801<p><em><span style="font-size:12px;"><span style="color:#B22222;">Delivery due time quoted at the time of ordering is approximate only and may vary. The restaurant will make every effort to deliver within the time stated. If the food is not delivered within the estimated delivery time quoted, please contact the restaurant by phone. You must notify the restaurant immediately if you decide to cancel your order. If the restaurant refuses cancellation because preparation of food delivery has been completed and/or delivery personnel has already been dispatched, it may not be cancelled and refunded.</span></span></em></p></div>	</div>
802</main>
803
804<footer class="footer bg-white" style="grid-area: footer">
805	<div class="container">
806					<div class="social_wrapper">
807				<div class="social_links">
808												<ul class="d-flex align-items-start">
809																																																		<li>
810											<a class="icon" href="https://www.yelp.com/biz/hunan-cafe-falls-church?start=80" target="_blank" title="Yelp (opens in new tab)">
811												<span class="sr-only">Yelp</span>
812												<i class="eds_icon fab fa-yelp" style="" aria-hidden="true"></i>											</a>
813										</li>
814																											<li>
815											<a class="icon" href="https://www.tripadvisor.com/Restaurant_Review-g57722-d5049599-Reviews-Hunan_Cafe-Falls_Church_Virginia.html" target="_blank" title="TripAdvisor (opens in new tab)">
816												<span class="sr-only">TripAdvisor</span>
817												<img class="eds_icon fab fa-tripadvisor" style="" aria-hidden="true" src="/web/website/assets/svg/icons/social/tripadvisor.svg" alt="Tripadvisor" />											</a>
818										</li>
819																																								</ul>
820															</div>
821				<div class="d_app">
822											<ul>
823															<li><a href="https://play.google.com/store/apps/details?id=com.chinesemenuonline.hunancafefallschurch"><span class="sr-only">Download from the Google Play Store</span><img src="/web/default4.0/images/google-play-badge.svg" alt="Get it on Google Play" aria-hidden="true"></a></li>
824														</ul>
825										</div>
826			</div>
827
828			<div class="d-flex flex-wrap justify-content-between gap-2 mt-2" style="--bs-link-color: var(--bs-body-color); --bs-link-hover-color: var(--bs-gray-dark)">
829				<ul class="list-unstyled d-flex gap-3 mb-0 eds-interface-text-l-regular">
830					<li><a class="text-decoration-none" href="https://www.hunancafefallschurchva.com" aria-current="false">Home</a></li>
831					<li><a class="text-decoration-none" href="https://www.hunancafefallschurchva.com/order" aria-current="false">Menu</a></li>
832													<li>
833									<a class="text-decoration-none" href="https://www.hunancafefallschurchva.com/page/delivery-info" aria-current="page">Delivery Info</a>
834								</li>
835																						<li><a class="text-decoration-none" href="https://www.hunancafefallschurchva.com/locationinfo" aria-current="false">Location &amp; Hours</a></li>
836															<li><a class="text-decoration-none" href="https://www.hunancafefallschurchva.com/contact" aria-current="false">Contact</a></li>
837				</ul>
838
839				<ul class="list-unstyled d-flex mb-0 eds-interface-text-m-regular">
840					<li class="bullet-separated"><a href="https://www.hunancafefallschurchva.com/reportbug" class="errorLink">Technical Support</a></li>
841					<li class="bullet-separated"><a href="https://www.hunancafefallschurchva.com/privacy">Privacy Policy</a></li>
842					<li class="bullet-separated"><a href="https://www.hunancafefallschurchva.com/tos">Terms of Service</a></li>
843					<li class="bullet-separated"><a href="https://www.hunancafefallschurchva.com/accessibility">Accessibility</a></li>
844				</ul>
845			</div>
846
847			<div class="d-flex justify-content-between gap-3 border-top mt-3 pt-3" style="--bs-link-color: var(--bs-body-color); --bs-link-hover-color: var(--bs-gray-dark)">
848				<p class="eds-copy-text-m-regular">
849					This site is protected by reCAPTCHA and <a href="https://policies.google.com/privacy">Google's Privacy Policy</a> and <a href="https://policies.google.com/terms">Google's Terms of Service</a> apply.
850				</p>
851
852				<p class="eds-copy-text-m-regular text-end">
853					&copy; 2026 Online Ordering by <a href="http://chinesemenuonline.com">Chinese Menu Online</a>											<br>Discover the best Chinese restaurants with <a href="https://www.springroll.com" target="_blank" title="Opens in new tab" >Springroll</a>									</p>
854			</div>
855			</div>
856</footer>
857<!-- footer ends -->
858
859
860</div>
861<!-- wrapper ends -->
862
863
864
865	<div
866		data-eds-id="6abeffdd7fb60"
867		class="eds_dialog modal fade  "
868		tabindex="-1"
869		aria-labelledby="eds-dialog-title-6abeffdd7fb60"
870		aria-hidden="true"
871		id="forgot-password-modal"	>
872		<div class="modal-dialog modal-dialog-centered modal-fullscreen-sm-down modal-md">
873			<div class="modal-content ">
874									
875	<div class="modal-header d-flex justify-content-between gap-3 eds-display-text-title-m ">
876		<h2 id="eds-dialog-title-6abeffdd7fb60" class="eds_dialog-title modal-title eds-display-text-title-m  pe-5" style="max-width: 100%">
877			Forgot Password		</h2>
878
879		<button class="eds_button btn btn-outline-secondary btn-lg eds_button--shape-circle position-absolute top-0 end-0 border d-sm-none" style="width: 3rem; height: 3rem; margin-top: 6px; margin-right: 6px" data-bs-dismiss="modal" aria-label="Close" type="button"><i class="eds_icon fa fa-close" style="" aria-hidden="true"></i></button>	</div>
880
881	<div class="eds_dialog-body modal-body css-scroll eds-copy-text-l-regular ">
882		<form
883			id="forgot-password-form"
884			name="forgot-password"
885			data-async-on-submit
886			method="post"
887			action="https://www.hunancafefallschurchva.com/auth/forgotpassword"
888			data-async-block="#forgot-password-modal .modal-content"
889			data-async-target="#forgot-password-modal .eds_dialog-body"
890			data-async-recaptcha
891			novalidate
892		>
893			
894			
895	<label
896		data-eds-id="6abeffdd7fb10"
897		class="eds_formfield eds_formfield--size-medium eds_formfield--variant-primary eds-copy-text-m-regular w-100 mb-3"
898			>
899					<div class="eds_formfield-label">
900				Your email				<span aria-hidden="true">*</span>							</div>
901		
902		<div class="position-relative d-flex flex-column">
903							<div class="eds_formfield-error eds-interface-text-m-bold" style="order: 1000"></div>
904			
905										<input
906					type="email"
907					class="eds-copy-text-l-regular  "
908										placeholder=" " name="email" autocomplete="email" required value=""				/>
909
910				
911							
912			<i class="eds_icon fa eds_formfield-validation" style="" aria-hidden="true"></i>
913					</div>
914
915		
916		
916<script>
917		{
918			const container = document.querySelector('[data-eds-id="6abeffdd7fb10"]');
919			const input = container.querySelector('input, textarea, select');
920			const error = container.querySelector('.eds_formfield-error');
921
922			
923						input.addEventListener('eds.validation.reset', () => {
924				input.removeAttribute('data-validation');
925				input.setCustomValidity('');
926				error.innerHTML = '';
927			});
928
929						input.addEventListener('eds.validation.hide', () => {
930				input.removeAttribute('data-validation');
931			});
932
933						input.addEventListener('eds.validation.success', (e) => {
934				input.setCustomValidity('');
935				input.setAttribute('data-validation', '');
936				error.innerHTML = '';
937			});
938
939						input.addEventListener('eds.validation.warning', (e) => {
940				input.setCustomValidity('');
941				input.setAttribute('data-validation', '');
942				error.innerHTML = e.detail;
943			});
944
945						input.addEventListener('eds.validation.error', (e) => {
946				input.setCustomValidity(e.detail);
947				input.checkValidity(); 				input.setAttribute('data-validation', '');
948			});
949
950			input.addEventListener('invalid', (e) => {
951				error.innerHTML = input.validationMessage;
952			});
953
954								}
955		</script>
955
956	</label>
957
958	
959			<button class="eds_button btn btn-primary w-100 mb-3" type="submit" form="forgot-password-form">Reset password</button>
960							<div class="text-center">
961					<button data-bs-dismiss="modal" data-bs-toggle="modal" data-bs-target="#login-modal" class="eds_button btn btn-link btn-text-link border-0 p-0 text-inherit text-decoration-none" type="button">&lt; Back</button>				</div>
962					</form>	</div>
963
964	
965								</div>
966		</div>
967
968		
968<script>
969		{
970			const container = document.querySelector('[data-eds-id="6abeffdd7fb60"]');
971			let edsMethodsDisabled = false;
972
973						['show', 'hide', 'toggle', 'dispose'].forEach((eventName) => {
974				container.addEventListener(`eds.${eventName}`, (e) => {
975					if (edsMethodsDisabled) return;
976
977					bootstrap.Modal.getOrCreateInstance(container)[eventName](
978						...(Array.isArray(e.detail) ? e.detail : [e.detail])
979					);
980				});
981			});
982
983						['show', 'shown', 'hide', 'hidden'].forEach((eventName) => {
984				container.addEventListener(`${eventName}.bs.modal`, (e) => {
985					if (edsMethodsDisabled) return;
986
987					edsMethodsDisabled = true; // Prevent infinite loop of triggering events
988					container.dispatchEvent(new CustomEvent(`eds.${eventName}`));
989					edsMethodsDisabled = false;
990				});
991			});
992
993			
994						['show.bs.modal', 'shown.bs.modal'].forEach((eventName) => {
995				container.addEventListener(eventName, () => {
996					const autofocusInput = container.querySelector('[autofocus]');
997					if (autofocusInput) {
998						container.style.display = 'block';
999						autofocusInput.focus();
1000					}
1001				});
1002			});
1003
1004					}
1005		</script>
1005
1006	</div>
1007
1008	
1009	<div
1010		data-eds-id="6abeffdd7fedb"
1011		class="eds_dialog modal fade  "
1012		tabindex="-1"
1013		aria-labelledby="eds-dialog-title-6abeffdd7fedb"
1014		aria-hidden="true"
1015		id="login-modal"	>
1016		<div class="modal-dialog modal-dialog-centered modal-fullscreen-sm-down modal-md">
1017			<div class="modal-content ">
1018									
1019	<div class="modal-header d-flex justify-content-between gap-3 eds-display-text-title-m ">
1020		<h2 id="eds-dialog-title-6abeffdd7fedb" class="eds_dialog-title modal-title eds-display-text-title-m  pe-5" style="max-width: 100%">
1021			Log in		</h2>
1022
1023		<button class="eds_button btn btn-outline-secondary btn-lg eds_button--shape-circle position-absolute top-0 end-0 border d-sm-none" style="width: 3rem; height: 3rem; margin-top: 6px; margin-right: 6px" data-bs-dismiss="modal" aria-label="Close" type="button"><i class="eds_icon fa fa-close" style="" aria-hidden="true"></i></button>	</div>
1024
1025	<div class="eds_dialog-body modal-body css-scroll eds-copy-text-l-regular ">
1026		<form
1027			id="login-form"
1028			name="login"
1029			data-async-on-submit
1030			method="post"
1031			action="https://www.hunancafefallschurchva.com/auth"
1032			data-async-block="#login-modal .modal-content"
1033			data-async-target="#login-modal .eds_dialog-body"
1034			data-async-then="document.querySelector('#login-modal').dispatchEvent(new CustomEvent('eds.hide'))"
1035			data-async-recaptcha
1036			novalidate
1037		>
1038						
1039						
1040	<label
1041		data-eds-id="6abeffdd7fd9b"
1042		class="eds_formfield eds_formfield--size-medium eds_formfield--variant-primary eds-copy-text-m-regular w-100 mb-3"
1043			>
1044					<div class="eds_formfield-label">
1045				Your email				<span aria-hidden="true">*</span>							</div>
1046		
1047		<div class="position-relative d-flex flex-column">
1048							<div class="eds_formfield-error eds-interface-text-m-bold" style="order: 1000"></div>
1049			
1050										<input
1051					type="email"
1052					class="eds-copy-text-l-regular  "
1053										placeholder=" " name="email" autocomplete="username" required value=""				/>
1054
1055				
1056							
1057			<i class="eds_icon fa eds_formfield-validation" style="" aria-hidden="true"></i>
1058					</div>
1059
1060		
1061		
1061<script>
1062		{
1063			const container = document.querySelector('[data-eds-id="6abeffdd7fd9b"]');
1064			const input = container.querySelector('input, textarea, select');
1065			const error = container.querySelector('.eds_formfield-error');
1066
1067			
1068						input.addEventListener('eds.validation.reset', () => {
1069				input.removeAttribute('data-validation');
1070				input.setCustomValidity('');
1071				error.innerHTML = '';
1072			});
1073
1074						input.addEventListener('eds.validation.hide', () => {
1075				input.removeAttribute('data-validation');
1076			});
1077
1078						input.addEventListener('eds.validation.success', (e) => {
1079				input.setCustomValidity('');
1080				input.setAttribute('data-validation', '');
1081				error.innerHTML = '';
1082			});
1083
1084						input.addEventListener('eds.validation.warning', (e) => {
1085				input.setCustomValidity('');
1086				input.setAttribute('data-validation', '');
1087				error.innerHTML = e.detail;
1088			});
1089
1090						input.addEventListener('eds.validation.error', (e) => {
1091				input.setCustomValidity(e.detail);
1092				input.checkValidity(); 				input.setAttribute('data-validation', '');
1093			});
1094
1095			input.addEventListener('invalid', (e) => {
1096				error.innerHTML = input.validationMessage;
1097			});
1098
1099								}
1100		</script>
1100
1101	</label>
1102
1103	
1104						
1105	<label
1106		data-eds-id="6abeffdd7fdbd"
1107		class="eds_formfield eds_formfield--size-medium eds_formfield--variant-primary eds-copy-text-m-regular w-100 mb-2"
1108			>
1109					<div class="eds_formfield-label">
1110				Your password				<span aria-hidden="true">*</span>							</div>
1111		
1112		<div class="position-relative d-flex flex-column">
1113							<div class="eds_formfield-error eds-interface-text-m-bold" style="order: 1000"></div>
1114			
1115										<input
1116					type="password"
1117					class="eds-copy-text-l-regular  pe-6"
1118					data-event-on:toggle_password_6abeffdd7fdbd="(shown) => $(this).attr('type', shown ? 'text' : 'password')"					placeholder=" " name="password" autocomplete="current-password" required value=""				/>
1119
1120				
1121									<button class="eds_button btn btn-outline eds_formfield-toggle_password position-absolute end-0 px-2" style="--bs-btn-bg: transparent" title="Show password" aria-label="Show password" onclick="app.event.emit('toggle_password_6abeffdd7fdbd', !$(this).data('password-shown'))" data-event-on:toggle_password_6abeffdd7fdbd="(shown) =&gt; $(this).data('password-shown', shown).attr('title', shown ? 'Hide password' : 'Show password').attr('aria-label', shown ? 'Hide password' : 'Show password')" type="button"><i class="eds_icon fas fa-sm fa-eye" style="" aria-hidden="true" data-event-on:toggle_password_6abeffdd7fdbd="(shown) =&gt; this.hidden = shown"></i> <i class="eds_icon fas fa-sm fa-eye-slash" style="" aria-hidden="true" data-event-on:toggle_password_6abeffdd7fdbd="(shown) =&gt; this.hidden = !shown" hidden></i></button>							
1122			<i class="eds_icon fa eds_formfield-validation" style="" aria-hidden="true"></i>
1123					</div>
1124
1125		
1126		
1126<script>
1127		{
1128			const container = document.querySelector('[data-eds-id="6abeffdd7fdbd"]');
1129			const input = container.querySelector('input, textarea, select');
1130			const error = container.querySelector('.eds_formfield-error');
1131
1132			
1133						input.addEventListener('eds.validation.reset', () => {
1134				input.removeAttribute('data-validation');
1135				input.setCustomValidity('');
1136				error.innerHTML = '';
1137			});
1138
1139						input.addEventListener('eds.validation.hide', () => {
1140				input.removeAttribute('data-validation');
1141			});
1142
1143						input.addEventListener('eds.validation.success', (e) => {
1144				input.setCustomValidity('');
1145				input.setAttribute('data-validation', '');
1146				error.innerHTML = '';
1147			});
1148
1149						input.addEventListener('eds.validation.warning', (e) => {
1150				input.setCustomValidity('');
1151				input.setAttribute('data-validation', '');
1152				error.innerHTML = e.detail;
1153			});
1154
1155						input.addEventListener('eds.validation.error', (e) => {
1156				input.setCustomValidity(e.detail);
1157				input.checkValidity(); 				input.setAttribute('data-validation', '');
1158			});
1159
1160			input.addEventListener('invalid', (e) => {
1161				error.innerHTML = input.validationMessage;
1162			});
1163
1164								}
1165		</script>
1165
1166	</label>
1167
1168	
1169						<div class="text-end mb-3">
1170				<button data-bs-dismiss="modal" data-bs-toggle="modal" data-bs-target="#forgot-password-modal" class="eds_button btn btn-link btn-text-link border-0 p-0 text-inherit text-decoration-none" type="button">Forgot your password?</button>			</div>
1171
1172																
1173						<button class="eds_button btn btn-primary w-100 mb-3" type="submit">Log in</button>
1174						<div class="d-flex align-items-center mb-3"><hr class="flex-grow-1"><span class="mx-3 text-muted eds-interface-text-s-regular">OR</span><hr class="flex-grow-1"></div>				<div class="google-signin-container text-center mb-2">
1175		<a href="https://sso.onlineorderingsecure.com/auth/google/redirect?return_to=https%3A%2F%2Fwww.hunancafefallschurchva.com%2Fauth%2Fgoogle&amp;redirect=%2Fpage%2Fdelivery-info" class="btn btn-outline-secondary w-100 eds_button eds_button--shape-default d-flex align-items-center justify-content-center gap-2" onclick="var url = new URL(this.href); url.searchParams.set('redirect', window.location.pathname + window.location.search); this.href = url.toString();">
1176			<svg width="18" height="18" viewBox="0 0 18 18" xmlns="http://www.w3.org/2000/svg"><path d="M17.64 9.2c0-.637-.057-1.251-.164-1.84H9v3.481h4.844a4.14 4.14 0 0 1-1.796 2.716v2.259h2.908c1.702-1.567 2.684-3.875 2.684-6.615Z" fill="#4285F4"/><path d="M9 18c2.43 0 4.467-.806 5.956-2.18l-2.908-2.259c-.806.54-1.837.86-3.048.86-2.344 0-4.328-1.584-5.036-3.711H.957v2.332A8.997 8.997 0 0 0 9 18Z" fill="#34A853"/><path d="M3.964 10.71A5.41 5.41 0 0 1 3.682 9c0-.593.102-1.17.282-1.71V4.958H.957A8.997 8.997 0 0 0 0 9c0 1.452.348 2.827.957 4.042l3.007-2.332Z" fill="#FBBC05"/><path d="M9 3.58c1.321 0 2.508.454 3.44 1.345l2.582-2.58C13.463.891 11.426 0 9 0A8.997 8.997 0 0 0 .957 4.958L3.964 6.29C4.672 4.163 6.656 2.58 9 2.58Z" fill="#EA4335"/></svg>
1177			Continue with Google
1178		</a>
1179	</div>
1180					<div class="apple-signin-container text-center mb-2">
1181		<a href="https://sso.onlineorderingsecure.com/auth/apple/redirect?return_to=https%3A%2F%2Fwww.hunancafefallschurchva.com%2Fauth%2Fapple&amp;redirect=%2Fpage%2Fdelivery-info" class="btn btn-outline-secondary w-100 eds_button eds_button--shape-default d-flex align-items-center justify-content-center gap-2" onclick="var url = new URL(this.href); url.searchParams.set('redirect', window.location.pathname + window.location.search); this.href = url.toString();">
1182			<svg width="18" height="18" viewBox="0 0 18 18" xmlns="http://www.w3.org/2000/svg"><path d="M15.1 6.2c-.1.1-2.1 1.2-2.1 3.7 0 2.9 2.5 3.9 2.6 3.9 0 0 0 .1-.4 1.3-.6 1.5-1.7 3-2.9 3-1.3 0-1.6-.7-3.1-.7s-2 .8-3.1.8c-1.2 0-2.2-1.3-3-2.8C2 13.3 1.4 10.9 1.4 8.6c0-3.7 2.4-5.6 4.7-5.6 1.2 0 2.3.8 3 .8.7 0 1.9-.9 3.3-.9.5 0 2.4.1 3.7 1.3zM11.7 1.5c.6-.7 1-1.7 1-2.7 0-.1 0-.3 0-.4-1 0-2.1.6-2.8 1.4-.6.6-1.1 1.6-1.1 2.6 0 .2 0 .3 0 .4.1 0 .2 0 .3 0 .9 0 1.9-.6 2.6-1.3z" fill="currentColor"/></svg>
1183			Continue with Apple
1184		</a>
1185	</div>
1186					<small class="d-block mt-2 eds-interface-text-s-regular">
1187		By continuing, you agree to our <a href="https://www.hunancafefallschurchva.com/tos" target="_blank" rel="noopener" title="Opens in new tab">Terms of Service</a> &amp; <a href="https://www.hunancafefallschurchva.com/privacy" target="_blank" rel="noopener" title="Opens in new tab">Privacy Policy</a>		and consent to receive automated promotional emails. See our <a href="https://www.hunancafefallschurchva.com/privacy#section-7-7" target="_blank" rel="noopener" title="Opens in new tab">Notice of Financial Incentive</a> regarding how we use your data for rewards and offers.
1188	</small>
1189	
1190						<div class="text-center mt-3">
1191				Don't have an account?
1192				<button data-bs-dismiss="modal" data-bs-toggle="modal" data-bs-target="#register-modal" class="eds_button btn btn-link btn-text-link border-0 p-0 text-inherit text-decoration-none" type="button">Sign up</button>			</div>
1193		</form>	</div>
1194
1195	
1196								</div>
1197		</div>
1198
1199		
1199<script>
1200		{
1201			const container = document.querySelector('[data-eds-id="6abeffdd7fedb"]');
1202			let edsMethodsDisabled = false;
1203
1204						['show', 'hide', 'toggle', 'dispose'].forEach((eventName) => {
1205				container.addEventListener(`eds.${eventName}`, (e) => {
1206					if (edsMethodsDisabled) return;
1207
1208					bootstrap.Modal.getOrCreateInstance(container)[eventName](
1209						...(Array.isArray(e.detail) ? e.detail : [e.detail])
1210					);
1211				});
1212			});
1213
1214						['show', 'shown', 'hide', 'hidden'].forEach((eventName) => {
1215				container.addEventListener(`${eventName}.bs.modal`, (e) => {
1216					if (edsMethodsDisabled) return;
1217
1218					edsMethodsDisabled = true; // Prevent infinite loop of triggering events
1219					container.dispatchEvent(new CustomEvent(`eds.${eventName}`));
1220					edsMethodsDisabled = false;
1221				});
1222			});
1223
1224			
1225						['show.bs.modal', 'shown.bs.modal'].forEach((eventName) => {
1226				container.addEventListener(eventName, () => {
1227					const autofocusInput = container.querySelector('[autofocus]');
1228					if (autofocusInput) {
1229						container.style.display = 'block';
1230						autofocusInput.focus();
1231					}
1232				});
1233			});
1234
1235					}
1236		</script>
1236
1237	</div>
1238
1239	
1240	<div
1241		data-eds-id="6abeffdd801de"
1242		class="eds_dialog modal fade  "
1243		tabindex="-1"
1244		aria-labelledby="eds-dialog-title-6abeffdd801de"
1245		aria-hidden="true"
1246		id="register-modal"	>
1247		<div class="modal-dialog modal-dialog-centered modal-fullscreen-sm-down modal-md">
1248			<div class="modal-content ">
1249									
1250	<div class="modal-header d-flex justify-content-between gap-3 eds-display-text-title-m ">
1251		<h2 id="eds-dialog-title-6abeffdd801de" class="eds_dialog-title modal-title eds-display-text-title-m  pe-5" style="max-width: 100%">
1252			Sign up		</h2>
1253
1254		<button class="eds_button btn btn-outline-secondary btn-lg eds_button--shape-circle position-absolute top-0 end-0 border d-sm-none" style="width: 3rem; height: 3rem; margin-top: 6px; margin-right: 6px" data-bs-dismiss="modal" aria-label="Close" type="button"><i class="eds_icon fa fa-close" style="" aria-hidden="true"></i></button>	</div>
1255
1256	<div class="eds_dialog-body modal-body css-scroll eds-copy-text-l-regular p-0">
1257		<form
1258			id="register-form"
1259			name="register"
1260			data-async-on-submit
1261			method="post"
1262			action="https://www.hunancafefallschurchva.com/auth/register"
1263			data-async-block="#register-modal .modal-content"
1264			data-async-target="#register-modal .eds_dialog-body"
1265			data-async-then="document.querySelector('#register-modal').dispatchEvent(new CustomEvent('eds.hide'))"
1266			data-async-recaptcha
1267			novalidate
1268		>
1269			
1270			<div class="p-3 pt-0">
1271								
1272	<label
1273		data-eds-id="6abeffdd8003c"
1274		class="eds_formfield eds_formfield--size-medium eds_formfield--variant-primary eds-copy-text-m-regular w-100 mb-2p5"
1275			>
1276					<div class="eds_formfield-label">
1277				First name				<span aria-hidden="true">*</span>							</div>
1278		
1279		<div class="position-relative d-flex flex-column">
1280							<div class="eds_formfield-error eds-interface-text-m-bold" style="order: 1000"></div>
1281			
1282										<input
1283					type="text"
1284					class="eds-copy-text-l-regular  "
1285										placeholder=" " name="firstname" autocomplete="given-name" required value=""				/>
1286
1287				
1288							
1289			<i class="eds_icon fa eds_formfield-validation" style="" aria-hidden="true"></i>
1290					</div>
1291
1292		
1293		
1293<script>
1294		{
1295			const container = document.querySelector('[data-eds-id="6abeffdd8003c"]');
1296			const input = container.querySelector('input, textarea, select');
1297			const error = container.querySelector('.eds_formfield-error');
1298
1299			
1300						input.addEventListener('eds.validation.reset', () => {
1301				input.removeAttribute('data-validation');
1302				input.setCustomValidity('');
1303				error.innerHTML = '';
1304			});
1305
1306						input.addEventListener('eds.validation.hide', () => {
1307				input.removeAttribute('data-validation');
1308			});
1309
1310						input.addEventListener('eds.validation.success', (e) => {
1311				input.setCustomValidity('');
1312				input.setAttribute('data-validation', '');
1313				error.innerHTML = '';
1314			});
1315
1316						input.addEventListener('eds.validation.warning', (e) => {
1317				input.setCustomValidity('');
1318				input.setAttribute('data-validation', '');
1319				error.innerHTML = e.detail;
1320			});
1321
1322						input.addEventListener('eds.validation.error', (e) => {
1323				input.setCustomValidity(e.detail);
1324				input.checkValidity(); 				input.setAttribute('data-validation', '');
1325			});
1326
1327			input.addEventListener('invalid', (e) => {
1328				error.innerHTML = input.validationMessage;
1329			});
1330
1331								}
1332		</script>
1332
1333	</label>
1334
1335	
1336								
1337	<label
1338		data-eds-id="6abeffdd8005d"
1339		class="eds_formfield eds_formfield--size-medium eds_formfield--variant-primary eds-copy-text-m-regular w-100 mb-2p5"
1340			>
1341					<div class="eds_formfield-label">
1342				Last name				<span aria-hidden="true">*</span>							</div>
1343		
1344		<div class="position-relative d-flex flex-column">
1345							<div class="eds_formfield-error eds-interface-text-m-bold" style="order: 1000"></div>
1346			
1347										<input
1348					type="text"
1349					class="eds-copy-text-l-regular  "
1350										placeholder=" " name="lastname" autocomplete="family-name" required value=""				/>
1351
1352				
1353							
1354			<i class="eds_icon fa eds_formfield-validation" style="" aria-hidden="true"></i>
1355					</div>
1356
1357		
1358		
1358<script>
1359		{
1360			const container = document.querySelector('[data-eds-id="6abeffdd8005d"]');
1361			const input = container.querySelector('input, textarea, select');
1362			const error = container.querySelector('.eds_formfield-error');
1363
1364			
1365						input.addEventListener('eds.validation.reset', () => {
1366				input.removeAttribute('data-validation');
1367				input.setCustomValidity('');
1368				error.innerHTML = '';
1369			});
1370
1371						input.addEventListener('eds.validation.hide', () => {
1372				input.removeAttribute('data-validation');
1373			});
1374
1375						input.addEventListener('eds.validation.success', (e) => {
1376				input.setCustomValidity('');
1377				input.setAttribute('data-validation', '');
1378				error.innerHTML = '';
1379			});
1380
1381						input.addEventListener('eds.validation.warning', (e) => {
1382				input.setCustomValidity('');
1383				input.setAttribute('data-validation', '');
1384				error.innerHTML = e.detail;
1385			});
1386
1387						input.addEventListener('eds.validation.error', (e) => {
1388				input.setCustomValidity(e.detail);
1389				input.checkValidity(); 				input.setAttribute('data-validation', '');
1390			});
1391
1392			input.addEventListener('invalid', (e) => {
1393				error.innerHTML = input.validationMessage;
1394			});
1395
1396								}
1397		</script>
1397
1398	</label>
1399
1400	
1401								
1402	<label
1403		data-eds-id="6abeffdd80076"
1404		class="eds_formfield eds_formfield--size-medium eds_formfield--variant-primary eds-copy-text-m-regular w-100 mb-2p5"
1405			>
1406					<div class="eds_formfield-label">
1407				Email				<span aria-hidden="true">*</span>							</div>
1408		
1409		<div class="position-relative d-flex flex-column">
1410							<div class="eds_formfield-error eds-interface-text-m-bold" style="order: 1000"></div>
1411			
1412										<input
1413					type="email"
1414					class="eds-copy-text-l-regular  "
1415										placeholder=" " name="email" autocomplete="username" required value=""				/>
1416
1417				
1418							
1419			<i class="eds_icon fa eds_formfield-validation" style="" aria-hidden="true"></i>
1420					</div>
1421
1422		
1423		
1423<script>
1424		{
1425			const container = document.querySelector('[data-eds-id="6abeffdd80076"]');
1426			const input = container.querySelector('input, textarea, select');
1427			const error = container.querySelector('.eds_formfield-error');
1428
1429			
1430						input.addEventListener('eds.validation.reset', () => {
1431				input.removeAttribute('data-validation');
1432				input.setCustomValidity('');
1433				error.innerHTML = '';
1434			});
1435
1436						input.addEventListener('eds.validation.hide', () => {
1437				input.removeAttribute('data-validation');
1438			});
1439
1440						input.addEventListener('eds.validation.success', (e) => {
1441				input.setCustomValidity('');
1442				input.setAttribute('data-validation', '');
1443				error.innerHTML = '';
1444			});
1445
1446						input.addEventListener('eds.validation.warning', (e) => {
1447				input.setCustomValidity('');
1448				input.setAttribute('data-validation', '');
1449				error.innerHTML = e.detail;
1450			});
1451
1452						input.addEventListener('eds.validation.error', (e) => {
1453				input.setCustomValidity(e.detail);
1454				input.checkValidity(); 				input.setAttribute('data-validation', '');
1455			});
1456
1457			input.addEventListener('invalid', (e) => {
1458				error.innerHTML = input.validationMessage;
1459			});
1460
1461								}
1462		</script>
1462
1463	</label>
1464
1465	
1466								
1467	<label
1468		data-eds-id="6abeffdd8009e"
1469		class="eds_formfield eds_formfield--size-medium eds_formfield--variant-primary eds-copy-text-m-regular w-100 mb-2p5"
1470			>
1471					<div class="eds_formfield-label">
1472				Password				<span aria-hidden="true">*</span>							</div>
1473		
1474		<div class="position-relative d-flex flex-column">
1475							<div class="eds_formfield-error eds-interface-text-m-bold" style="order: 1000"></div>
1476			
1477										<input
1478					type="password"
1479					class="eds-copy-text-l-regular  pe-6"
1480					data-event-on:toggle_password_6abeffdd8009e="(shown) => $(this).attr('type', shown ? 'text' : 'password')"					placeholder=" " name="password" autocomplete="current-password" required value=""				/>
1481
1482				
1483									<button class="eds_button btn btn-outline eds_formfield-toggle_password position-absolute end-0 px-2" style="--bs-btn-bg: transparent" title="Show password" aria-label="Show password" onclick="app.event.emit('toggle_password_6abeffdd8009e', !$(this).data('password-shown'))" data-event-on:toggle_password_6abeffdd8009e="(shown) =&gt; $(this).data('password-shown', shown).attr('title', shown ? 'Hide password' : 'Show password').attr('aria-label', shown ? 'Hide password' : 'Show password')" type="button"><i class="eds_icon fas fa-sm fa-eye" style="" aria-hidden="true" data-event-on:toggle_password_6abeffdd8009e="(shown) =&gt; this.hidden = shown"></i> <i class="eds_icon fas fa-sm fa-eye-slash" style="" aria-hidden="true" data-event-on:toggle_password_6abeffdd8009e="(shown) =&gt; this.hidden = !shown" hidden></i></button>							
1484			<i class="eds_icon fa eds_formfield-validation" style="" aria-hidden="true"></i>
1485					</div>
1486
1487		
1488		
1488<script>
1489		{
1490			const container = document.querySelector('[data-eds-id="6abeffdd8009e"]');
1491			const input = container.querySelector('input, textarea, select');
1492			const error = container.querySelector('.eds_formfield-error');
1493
1494			
1495						input.addEventListener('eds.validation.reset', () => {
1496				input.removeAttribute('data-validation');
1497				input.setCustomValidity('');
1498				error.innerHTML = '';
1499			});
1500
1501						input.addEventListener('eds.validation.hide', () => {
1502				input.removeAttribute('data-validation');
1503			});
1504
1505						input.addEventListener('eds.validation.success', (e) => {
1506				input.setCustomValidity('');
1507				input.setAttribute('data-validation', '');
1508				error.innerHTML = '';
1509			});
1510
1511						input.addEventListener('eds.validation.warning', (e) => {
1512				input.setCustomValidity('');
1513				input.setAttribute('data-validation', '');
1514				error.innerHTML = e.detail;
1515			});
1516
1517						input.addEventListener('eds.validation.error', (e) => {
1518				input.setCustomValidity(e.detail);
1519				input.checkValidity(); 				input.setAttribute('data-validation', '');
1520			});
1521
1522			input.addEventListener('invalid', (e) => {
1523				error.innerHTML = input.validationMessage;
1524			});
1525
1526								}
1527		</script>
1527
1528	</label>
1529
1530	
1531								
1532	<label
1533		data-eds-id="6abeffdd800e3"
1534		class="eds_formfield eds_formfield--size-medium eds_formfield--variant-primary eds-copy-text-m-regular w-100 mb-3"
1535			>
1536					<div class="eds_formfield-label">
1537				Phone number				<span aria-hidden="true">*</span>							</div>
1538		
1539		<div class="position-relative d-flex flex-column">
1540							<div class="eds_formfield-error eds-interface-text-m-bold" style="order: 1000"></div>
1541			
1542										<input
1543					type="text"
1544					class="eds-copy-text-l-regular  "
1545										placeholder=" " name="primary_phone" autocomplete="tel-national" required value=""				/>
1546
1547				
1548							
1549			<i class="eds_icon fa eds_formfield-validation" style="" aria-hidden="true"></i>
1550					</div>
1551
1552					<div class="eds-interface-text-s-regular mt-2">
1553				<i class="eds_icon fa fa-info-circle text-muted" style="" aria-hidden="true"></i> We require a phone number in case we need to contact you about your order.			</div>
1554		
1555		
1555<script>
1556		{
1557			const container = document.querySelector('[data-eds-id="6abeffdd800e3"]');
1558			const input = container.querySelector('input, textarea, select');
1559			const error = container.querySelector('.eds_formfield-error');
1560
1561			
1562						input.addEventListener('eds.validation.reset', () => {
1563				input.removeAttribute('data-validation');
1564				input.setCustomValidity('');
1565				error.innerHTML = '';
1566			});
1567
1568						input.addEventListener('eds.validation.hide', () => {
1569				input.removeAttribute('data-validation');
1570			});
1571
1572						input.addEventListener('eds.validation.success', (e) => {
1573				input.setCustomValidity('');
1574				input.setAttribute('data-validation', '');
1575				error.innerHTML = '';
1576			});
1577
1578						input.addEventListener('eds.validation.warning', (e) => {
1579				input.setCustomValidity('');
1580				input.setAttribute('data-validation', '');
1581				error.innerHTML = e.detail;
1582			});
1583
1584						input.addEventListener('eds.validation.error', (e) => {
1585				input.setCustomValidity(e.detail);
1586				input.checkValidity(); 				input.setAttribute('data-validation', '');
1587			});
1588
1589			input.addEventListener('invalid', (e) => {
1590				error.innerHTML = input.validationMessage;
1591			});
1592
1593								}
1594		</script>
1594
1595	</label>
1596
1597	
1598				
1599	<div class="eds_checkable d-inline-block mb-2" >
1600		<input id="eds-checkable-6abeffdd800fe" name="receive_promotions" value="1" checked type="checkbox" />
1601		<label for="eds-checkable-6abeffdd800fe" class="eds_checkable-text eds-interface-text-l-regular ">
1602			Receive Promotional Offers & Updates		</label>
1603	</div>
1604
1605	
1606								<button class="eds_button btn btn-primary w-100 mt-1 mb-3" type="submit">Sign up</button>
1607								<div class="d-flex align-items-center mb-3"><hr class="flex-grow-1"><span class="mx-3 text-muted eds-interface-text-s-regular">OR</span><hr class="flex-grow-1"></div>					<div class="google-signin-container text-center mb-2">
1608		<a href="https://sso.onlineorderingsecure.com/auth/google/redirect?return_to=https%3A%2F%2Fwww.hunancafefallschurchva.com%2Fauth%2Fgoogle&amp;redirect=%2Fpage%2Fdelivery-info" class="btn btn-outline-secondary w-100 eds_button eds_button--shape-default d-flex align-items-center justify-content-center gap-2" onclick="var url = new URL(this.href); url.searchParams.set('redirect', window.location.pathname + window.location.search); this.href = url.toString();">
1609			<svg width="18" height="18" viewBox="0 0 18 18" xmlns="http://www.w3.org/2000/svg"><path d="M17.64 9.2c0-.637-.057-1.251-.164-1.84H9v3.481h4.844a4.14 4.14 0 0 1-1.796 2.716v2.259h2.908c1.702-1.567 2.684-3.875 2.684-6.615Z" fill="#4285F4"/><path d="M9 18c2.43 0 4.467-.806 5.956-2.18l-2.908-2.259c-.806.54-1.837.86-3.048.86-2.344 0-4.328-1.584-5.036-3.711H.957v2.332A8.997 8.997 0 0 0 9 18Z" fill="#34A853"/><path d="M3.964 10.71A5.41 5.41 0 0 1 3.682 9c0-.593.102-1.17.282-1.71V4.958H.957A8.997 8.997 0 0 0 0 9c0 1.452.348 2.827.957 4.042l3.007-2.332Z" fill="#FBBC05"/><path d="M9 3.58c1.321 0 2.508.454 3.44 1.345l2.582-2.58C13.463.891 11.426 0 9 0A8.997 8.997 0 0 0 .957 4.958L3.964 6.29C4.672 4.163 6.656 2.58 9 2.58Z" fill="#EA4335"/></svg>
1610			Continue with Google
1611		</a>
1612	</div>
1613						<div class="apple-signin-container text-center mb-2">
1614		<a href="https://sso.onlineorderingsecure.com/auth/apple/redirect?return_to=https%3A%2F%2Fwww.hunancafefallschurchva.com%2Fauth%2Fapple&amp;redirect=%2Fpage%2Fdelivery-info" class="btn btn-outline-secondary w-100 eds_button eds_button--shape-default d-flex align-items-center justify-content-center gap-2" onclick="var url = new URL(this.href); url.searchParams.set('redirect', window.location.pathname + window.location.search); this.href = url.toString();">
1615			<svg width="18" height="18" viewBox="0 0 18 18" xmlns="http://www.w3.org/2000/svg"><path d="M15.1 6.2c-.1.1-2.1 1.2-2.1 3.7 0 2.9 2.5 3.9 2.6 3.9 0 0 0 .1-.4 1.3-.6 1.5-1.7 3-2.9 3-1.3 0-1.6-.7-3.1-.7s-2 .8-3.1.8c-1.2 0-2.2-1.3-3-2.8C2 13.3 1.4 10.9 1.4 8.6c0-3.7 2.4-5.6 4.7-5.6 1.2 0 2.3.8 3 .8.7 0 1.9-.9 3.3-.9.5 0 2.4.1 3.7 1.3zM11.7 1.5c.6-.7 1-1.7 1-2.7 0-.1 0-.3 0-.4-1 0-2.1.6-2.8 1.4-.6.6-1.1 1.6-1.1 2.6 0 .2 0 .3 0 .4.1 0 .2 0 .3 0 .9 0 1.9-.6 2.6-1.3z" fill="currentColor"/></svg>
1616			Continue with Apple
1617		</a>
1618	</div>
1619						<small class="d-block mt-2 eds-interface-text-s-regular">
1620		By continuing, you agree to our <a href="https://www.hunancafefallschurchva.com/tos" target="_blank" rel="noopener" title="Opens in new tab">Terms of Service</a> &amp; <a href="https://www.hunancafefallschurchva.com/privacy" target="_blank" rel="noopener" title="Opens in new tab">Privacy Policy</a>		and consent to receive automated promotional emails. See our <a href="https://www.hunancafefallschurchva.com/privacy#section-7-7" target="_blank" rel="noopener" title="Opens in new tab">Notice of Financial Incentive</a> regarding how we use your data for rewards and offers.
1621	</small>
1622	
1623								<div class="text-center mt-3">
1624					Already have an account?
1625					<button data-bs-dismiss="modal" data-bs-toggle="modal" data-bs-target="#login-modal" class="eds_button btn btn-link btn-text-link border-0 p-0 text-inherit text-decoration-none" type="button">Log in</button>				</div>
1626			</div>
1627		</form>	</div>
1628
1629	
1630								</div>
1631		</div>
1632
1633		
1633<script>
1634		{
1635			const container = document.querySelector('[data-eds-id="6abeffdd801de"]');
1636			let edsMethodsDisabled = false;
1637
1638						['show', 'hide', 'toggle', 'dispose'].forEach((eventName) => {
1639				container.addEventListener(`eds.${eventName}`, (e) => {
1640					if (edsMethodsDisabled) return;
1641
1642					bootstrap.Modal.getOrCreateInstance(container)[eventName](
1643						...(Array.isArray(e.detail) ? e.detail : [e.detail])
1644					);
1645				});
1646			});
1647
1648						['show', 'shown', 'hide', 'hidden'].forEach((eventName) => {
1649				container.addEventListener(`${eventName}.bs.modal`, (e) => {
1650					if (edsMethodsDisabled) return;
1651
1652					edsMethodsDisabled = true; // Prevent infinite loop of triggering events
1653					container.dispatchEvent(new CustomEvent(`eds.${eventName}`));
1654					edsMethodsDisabled = false;
1655				});
1656			});
1657
1658			
1659						['show.bs.modal', 'shown.bs.modal'].forEach((eventName) => {
1660				container.addEventListener(eventName, () => {
1661					const autofocusInput = container.querySelector('[autofocus]');
1662					if (autofocusInput) {
1663						container.style.display = 'block';
1664						autofocusInput.focus();
1665					}
1666				});
1667			});
1668
1669					}
1670		</script>
1670
1671	</div>
1672
1673	
1674	
1674<script>
1675	window.__ssoConfig = {
1676		google: {
1677			pendingUrl: "https:\/\/www.hunancafefallschurchva.com\/auth\/google\/pending",
1678			registerModalId: "register-modal",
1679			loginModalId: "login-modal"		},
1680		apple: {
1681			pendingUrl: "https:\/\/www.hunancafefallschurchva.com\/auth\/apple\/pending",
1682			registerModalId: "register-modal",
1683			loginModalId: "login-modal"		}
1684	};
1685	</script>
1685
1686	
1687
1688<div class="modal fade" id="modal-order-time" tabindex="-1" role="dialog"
1689	aria-hidden="true">
1690	<div class="modal-dialog modal-fullscreen-md-down mt-md-6" role="document">
1691		<div class="modal-content">
1692			<button class="d-md-none close" type="button" data-bs-dismiss="modal" aria-label="Close"></button>
1693			<div class="modal-header">
1694				<h2 class="modal-title eds-display-text-title-m">Order time</h2>
1695			</div>
1696			<div class="modal-body">
1697								<div class="btn-group w-100 btn-group-order-time-type mb-3" >
1698											<input type="radio" name="param_order~time~type_i_n_1" id="order_time_type_0-" value="0" class="btn-check beforetimeswitch orderTimeTypeOption"
1699							checked>
1700						<label for="order_time_type_0-" class="d-flex align-items-center justify-content-center btn btn-outline-secondary w-50">ASAP</label>
1701					
1702											<input type="radio" name="param_order~time~type_i_n_1" id="order_time_type_1-" value="1" class="btn-check timeswitch orderTimeTypeOption"
1703							 />
1704						<label for="order_time_type_1-" class="d-flex align-items-center justify-content-center btn btn-outline-secondary  w-50">
1705						<span>
1706							Later
1707							<span class="d-block small fw-normal">Later</span>
1708						</span>
1709						</label>
1710									</div>
1711									<div id="asapContent" class="">
1712						<p class="mt-3 mb-0">Your order will be ready as soon as possible.</p>
1713					</div>
1714													<div id="laterContent" class="d-none">
1715						<div class="select-time-container">
1716	<div class="selecttime showcheck_parent ">
1717	<div class="select-time-header clearfix">
1718		<h3 class="bold fl fs-5">Pick a day and time</h3>
1719			</div>
1720	<div class="select-time-content clearfix">
1721		<div class="row select-time-row">
1722						<div class="datepicker col-md-8" style="min-height: 248px;">
1723				<div class="datepicker-days" style="display: block;">
1724					<div data-datetimepicker data-datepicker-min-date="2026-10-01" class="errorable"></div>
1725				</div>
1726							</div>
1727							<div class="timepicker col-md-4">
1728					<div class="timepicker-picker">
1729												<ul class="ready-at-time css-scroll">
1730																														<li class="time-button ">
1731									<input id="timeValue0" type="radio" value="11:15 AM" name="param_ready~at~time_s_n_15"
1732									class="btn-check rad-ready_at_time" onchange="saveFormState('param_ready~at~time_s_n_15', this.value, true);"
1733									 data-required-field data-ready-attime/>
1734									<label for="timeValue0" class="btn btn-outline-secondary btn-sm" for="">11:15 AM</label>
1735								</li>
1736																								<li class="time-button ">
1737									<input id="timeValue1" type="radio" value="11:30 AM" name="param_ready~at~time_s_n_15"
1738									class="btn-check rad-ready_at_time" onchange="saveFormState('param_ready~at~time_s_n_15', this.value, true);"
1739									 data-required-field data-ready-attime/>
1740									<label for="timeValue1" class="btn btn-outline-secondary btn-sm" for="">11:30 AM</label>
1741								</li>
1742																								<li class="time-button ">
1743									<input id="timeValue2" type="radio" value="11:45 AM" name="param_ready~at~time_s_n_15"
1744									class="btn-check rad-ready_at_time" onchange="saveFormState('param_ready~at~time_s_n_15', this.value, true);"
1745									 data-required-field data-ready-attime/>
1746									<label for="timeValue2" class="btn btn-outline-secondary btn-sm" for="">11:45 AM</label>
1747								</li>
1748																								<li class="time-button ">
1749									<input id="timeValue3" type="radio" value="12:00 PM" name="param_ready~at~time_s_n_15"
1750									class="btn-check rad-ready_at_time" onchange="saveFormState('param_ready~at~time_s_n_15', this.value, true);"
1751									 data-required-field data-ready-attime/>
1752									<label for="timeValue3" class="btn btn-outline-secondary btn-sm" for="">12:00 PM</label>
1753								</li>
1754																								<li class="time-button ">
1755									<input id="timeValue4" type="radio" value="12:15 PM" name="param_ready~at~time_s_n_15"
1756									class="btn-check rad-ready_at_time" onchange="saveFormState('param_ready~at~time_s_n_15', this.value, true);"
1757									 data-required-field data-ready-attime/>
1758									<label for="timeValue4" class="btn btn-outline-secondary btn-sm" for="">12:15 PM</label>
1759								</li>
1760																								<li class="time-button ">
1761									<input id="timeValue5" type="radio" value="12:30 PM" name="param_ready~at~time_s_n_15"
1762									class="btn-check rad-ready_at_time" onchange="saveFormState('param_ready~at~time_s_n_15', this.value, true);"
1763									 data-required-field data-ready-attime/>
1764									<label for="timeValue5" class="btn btn-outline-secondary btn-sm" for="">12:30 PM</label>
1765								</li>
1766																								<li class="time-button ">
1767									<input id="timeValue6" type="radio" value="12:45 PM" name="param_ready~at~time_s_n_15"
1768									class="btn-check rad-ready_at_time" onchange="saveFormState('param_ready~at~time_s_n_15', this.value, true);"
1769									 data-required-field data-ready-attime/>
1770									<label for="timeValue6" class="btn btn-outline-secondary btn-sm" for="">12:45 PM</label>
1771								</li>
1772																								<li class="time-button ">
1773									<input id="timeValue7" type="radio" value="1:00 PM" name="param_ready~at~time_s_n_15"
1774									class="btn-check rad-ready_at_time" onchange="saveFormState('param_ready~at~time_s_n_15', this.value, true);"
1775									 data-required-field data-ready-attime/>
1776									<label for="timeValue7" class="btn btn-outline-secondary btn-sm" for="">1:00 PM</label>
1777								</li>
1778																								<li class="time-button ">
1779									<input id="timeValue8" type="radio" value="1:15 PM" name="param_ready~at~time_s_n_15"
1780									class="btn-check rad-ready_at_time" onchange="saveFormState('param_ready~at~time_s_n_15', this.value, true);"
1781									 data-required-field data-ready-attime/>
1782									<label for="timeValue8" class="btn btn-outline-secondary btn-sm" for="">1:15 PM</label>
1783								</li>
1784																								<li class="time-button ">
1785									<input id="timeValue9" type="radio" value="1:30 PM" name="param_ready~at~time_s_n_15"
1786									class="btn-check rad-ready_at_time" onchange="saveFormState('param_ready~at~time_s_n_15', this.value, true);"
1787									 data-required-field data-ready-attime/>
1788									<label for="timeValue9" class="btn btn-outline-secondary btn-sm" for="">1:30 PM</label>
1789								</li>
1790																								<li class="time-button ">
1791									<input id="timeValue10" type="radio" value="1:45 PM" name="param_ready~at~time_s_n_15"
1792									class="btn-check rad-ready_at_time" onchange="saveFormState('param_ready~at~time_s_n_15', this.value, true);"
1793									 data-required-field data-ready-attime/>
1794									<label for="timeValue10" class="btn btn-outline-secondary btn-sm" for="">1:45 PM</label>
1795								</li>
1796																								<li class="time-button ">
1797									<input id="timeValue11" type="radio" value="2:00 PM" name="param_ready~at~time_s_n_15"
1798									class="btn-check rad-ready_at_time" onchange="saveFormState('param_ready~at~time_s_n_15', this.value, true);"
1799									 data-required-field data-ready-attime/>
1800									<label for="timeValue11" class="btn btn-outline-secondary btn-sm" for="">2:00 PM</label>
1801								</li>
1802																								<li class="time-button ">
1803									<input id="timeValue12" type="radio" value="2:15 PM" name="param_ready~at~time_s_n_15"
1804									class="btn-check rad-ready_at_time" onchange="saveFormState('param_ready~at~time_s_n_15', this.value, true);"
1805									 data-required-field data-ready-attime/>
1806									<label for="timeValue12" class="btn btn-outline-secondary btn-sm" for="">2:15 PM</label>
1807								</li>
1808																								<li class="time-button ">
1809									<input id="timeValue13" type="radio" value="2:30 PM" name="param_ready~at~time_s_n_15"
1810									class="btn-check rad-ready_at_time" onchange="saveFormState('param_ready~at~time_s_n_15', this.value, true);"
1811									 data-required-field data-ready-attime/>
1812									<label for="timeValue13" class="btn btn-outline-secondary btn-sm" for="">2:30 PM</label>
1813								</li>
1814																								<li class="time-button ">
1815									<input id="timeValue14" type="radio" value="2:45 PM" name="param_ready~at~time_s_n_15"
1816									class="btn-check rad-ready_at_time" onchange="saveFormState('param_ready~at~time_s_n_15', this.value, true);"
1817									 data-required-field data-ready-attime/>
1818									<label for="timeValue14" class="btn btn-outline-secondary btn-sm" for="">2:45 PM</label>
1819								</li>
1820																								<li class="time-button ">
1821									<input id="timeValue15" type="radio" value="3:00 PM" name="param_ready~at~time_s_n_15"
1822									class="btn-check rad-ready_at_time" onchange="saveFormState('param_ready~at~time_s_n_15', this.value, true);"
1823									 data-required-field data-ready-attime/>
1824									<label for="timeValue15" class="btn btn-outline-secondary btn-sm" for="">3:00 PM</label>
1825								</li>
1826																								<li class="time-button ">
1827									<input id="timeValue16" type="radio" value="3:15 PM" name="param_ready~at~time_s_n_15"
1828									class="btn-check rad-ready_at_time" onchange="saveFormState('param_ready~at~time_s_n_15', this.value, true);"
1829									 data-required-field data-ready-attime/>
1830									<label for="timeValue16" class="btn btn-outline-secondary btn-sm" for="">3:15 PM</label>
1831								</li>
1832																								<li class="time-button ">
1833									<input id="timeValue17" type="radio" value="3:30 PM" name="param_ready~at~time_s_n_15"
1834									class="btn-check rad-ready_at_time" onchange="saveFormState('param_ready~at~time_s_n_15', this.value, true);"
1835									 data-required-field data-ready-attime/>
1836									<label for="timeValue17" class="btn btn-outline-secondary btn-sm" for="">3:30 PM</label>
1837								</li>
1838																								<li class="time-button ">
1839									<input id="timeValue18" type="radio" value="3:45 PM" name="param_ready~at~time_s_n_15"
1840									class="btn-check rad-ready_at_time" onchange="saveFormState('param_ready~at~time_s_n_15', this.value, true);"
1841									 data-required-field data-ready-attime/>
1842									<label for="timeValue18" class="btn btn-outline-secondary btn-sm" for="">3:45 PM</label>
1843								</li>
1844																								<li class="time-button ">
1845									<input id="timeValue19" type="radio" value="4:00 PM" name="param_ready~at~time_s_n_15"
1846									class="btn-check rad-ready_at_time" onchange="saveFormState('param_ready~at~time_s_n_15', this.value, true);"
1847									 data-required-field data-ready-attime/>
1848									<label for="timeValue19" class="btn btn-outline-secondary btn-sm" for="">4:00 PM</label>
1849								</li>
1850																								<li class="time-button ">
1851									<input id="timeValue20" type="radio" value="4:15 PM" name="param_ready~at~time_s_n_15"
1852									class="btn-check rad-ready_at_time" onchange="saveFormState('param_ready~at~time_s_n_15', this.value, true);"
1853									 data-required-field data-ready-attime/>
1854									<label for="timeValue20" class="btn btn-outline-secondary btn-sm" for="">4:15 PM</label>
1855								</li>
1856																								<li class="time-button ">
1857									<input id="timeValue21" type="radio" value="4:30 PM" name="param_ready~at~time_s_n_15"
1858									class="btn-check rad-ready_at_time" onchange="saveFormState('param_ready~at~time_s_n_15', this.value, true);"
1859									 data-required-field data-ready-attime/>
1860									<label for="timeValue21" class="btn btn-outline-secondary btn-sm" for="">4:30 PM</label>
1861								</li>
1862																								<li class="time-button ">
1863									<input id="timeValue22" type="radio" value="4:45 PM" name="param_ready~at~time_s_n_15"
1864									class="btn-check rad-ready_at_time" onchange="saveFormState('param_ready~at~time_s_n_15', this.value, true);"
1865									 data-required-field data-ready-attime/>
1866									<label for="timeValue22" class="btn btn-outline-secondary btn-sm" for="">4:45 PM</label>
1867								</li>
1868																								<li class="time-button ">
1869									<input id="timeValue23" type="radio" value="5:00 PM" name="param_ready~at~time_s_n_15"
1870									class="btn-check rad-ready_at_time" onchange="saveFormState('param_ready~at~time_s_n_15', this.value, true);"
1871									 data-required-field data-ready-attime/>
1872									<label for="timeValue23" class="btn btn-outline-secondary btn-sm" for="">5:00 PM</label>
1873								</li>
1874																								<li class="time-button ">
1875									<input id="timeValue24" type="radio" value="5:15 PM" name="param_ready~at~time_s_n_15"
1876									class="btn-check rad-ready_at_time" onchange="saveFormState('param_ready~at~time_s_n_15', this.value, true);"
1877									 data-required-field data-ready-attime/>
1878									<label for="timeValue24" class="btn btn-outline-secondary btn-sm" for="">5:15 PM</label>
1879								</li>
1880																								<li class="time-button ">
1881									<input id="timeValue25" type="radio" value="5:30 PM" name="param_ready~at~time_s_n_15"
1882									class="btn-check rad-ready_at_time" onchange="saveFormState('param_ready~at~time_s_n_15', this.value, true);"
1883									 data-required-field data-ready-attime/>
1884									<label for="timeValue25" class="btn btn-outline-secondary btn-sm" for="">5:30 PM</label>
1885								</li>
1886																								<li class="time-button ">
1887									<input id="timeValue26" type="radio" value="5:45 PM" name="param_ready~at~time_s_n_15"
1888									class="btn-check rad-ready_at_time" onchange="saveFormState('param_ready~at~time_s_n_15', this.value, true);"
1889									 data-required-field data-ready-attime/>
1890									<label for="timeValue26" class="btn btn-outline-secondary btn-sm" for="">5:45 PM</label>
1891								</li>
1892																								<li class="time-button ">
1893									<input id="timeValue27" type="radio" value="6:00 PM" name="param_ready~at~time_s_n_15"
1894									class="btn-check rad-ready_at_time" onchange="saveFormState('param_ready~at~time_s_n_15', this.value, true);"
1895									 data-required-field data-ready-attime/>
1896									<label for="timeValue27" class="btn btn-outline-secondary btn-sm" for="">6:00 PM</label>
1897								</li>
1898																								<li class="time-button ">
1899									<input id="timeValue28" type="radio" value="6:15 PM" name="param_ready~at~time_s_n_15"
1900									class="btn-check rad-ready_at_time" onchange="saveFormState('param_ready~at~time_s_n_15', this.value, true);"
1901									 data-required-field data-ready-attime/>
1902									<label for="timeValue28" class="btn btn-outline-secondary btn-sm" for="">6:15 PM</label>
1903								</li>
1904																								<li class="time-button ">
1905									<input id="timeValue29" type="radio" value="6:30 PM" name="param_ready~at~time_s_n_15"
1906									class="btn-check rad-ready_at_time" onchange="saveFormState('param_ready~at~time_s_n_15', this.value, true);"
1907									 data-required-field data-ready-attime/>
1908									<label for="timeValue29" class="btn btn-outline-secondary btn-sm" for="">6:30 PM</label>
1909								</li>
1910																								<li class="time-button ">
1911									<input id="timeValue30" type="radio" value="6:45 PM" name="param_ready~at~time_s_n_15"
1912									class="btn-check rad-ready_at_time" onchange="saveFormState('param_ready~at~time_s_n_15', this.value, true);"
1913									 data-required-field data-ready-attime/>
1914									<label for="timeValue30" class="btn btn-outline-secondary btn-sm" for="">6:45 PM</label>
1915								</li>
1916																								<li class="time-button ">
1917									<input id="timeValue31" type="radio" value="7:00 PM" name="param_ready~at~time_s_n_15"
1918									class="btn-check rad-ready_at_time" onchange="saveFormState('param_ready~at~time_s_n_15', this.value, true);"
1919									 data-required-field data-ready-attime/>
1920									<label for="timeValue31" class="btn btn-outline-secondary btn-sm" for="">7:00 PM</label>
1921								</li>
1922																								<li class="time-button ">
1923									<input id="timeValue32" type="radio" value="7:15 PM" name="param_ready~at~time_s_n_15"
1924									class="btn-check rad-ready_at_time" onchange="saveFormState('param_ready~at~time_s_n_15', this.value, true);"
1925									 data-required-field data-ready-attime/>
1926									<label for="timeValue32" class="btn btn-outline-secondary btn-sm" for="">7:15 PM</label>
1927								</li>
1928																								<li class="time-button ">
1929									<input id="timeValue33" type="radio" value="7:30 PM" name="param_ready~at~time_s_n_15"
1930									class="btn-check rad-ready_at_time" onchange="saveFormState('param
1930_ready~at~time_s_n_15', this.value, true);"
1931									 data-required-field data-ready-attime/>
1932									<label for="timeValue33" class="btn btn-outline-secondary btn-sm" for="">7:30 PM</label>
1933								</li>
1934																								<li class="time-button ">
1935									<input id="timeValue34" type="radio" value="7:45 PM" name="param_ready~at~time_s_n_15"
1936									class="btn-check rad-ready_at_time" onchange="saveFormState('param_ready~at~time_s_n_15', this.value, true);"
1937									 data-required-field data-ready-attime/>
1938									<label for="timeValue34" class="btn btn-outline-secondary btn-sm" for="">7:45 PM</label>
1939								</li>
1940																								<li class="time-button ">
1941									<input id="timeValue35" type="radio" value="8:00 PM" name="param_ready~at~time_s_n_15"
1942									class="btn-check rad-ready_at_time" onchange="saveFormState('param_ready~at~time_s_n_15', this.value, true);"
1943									 data-required-field data-ready-attime/>
1944									<label for="timeValue35" class="btn btn-outline-secondary btn-sm" for="">8:00 PM</label>
1945								</li>
1946																								<li class="time-button ">
1947									<input id="timeValue36" type="radio" value="8:15 PM" name="param_ready~at~time_s_n_15"
1948									class="btn-check rad-ready_at_time" onchange="saveFormState('param_ready~at~time_s_n_15', this.value, true);"
1949									 data-required-field data-ready-attime/>
1950									<label for="timeValue36" class="btn btn-outline-secondary btn-sm" for="">8:15 PM</label>
1951								</li>
1952																								<li class="time-button ">
1953									<input id="timeValue37" type="radio" value="8:30 PM" name="param_ready~at~time_s_n_15"
1954									class="btn-check rad-ready_at_time" onchange="saveFormState('param_ready~at~time_s_n_15', this.value, true);"
1955									 data-required-field data-ready-attime/>
1956									<label for="timeValue37" class="btn btn-outline-secondary btn-sm" for="">8:30 PM</label>
1957								</li>
1958																								<li class="time-button ">
1959									<input id="timeValue38" type="radio" value="8:45 PM" name="param_ready~at~time_s_n_15"
1960									class="btn-check rad-ready_at_time" onchange="saveFormState('param_ready~at~time_s_n_15', this.value, true);"
1961									 data-required-field data-ready-attime/>
1962									<label for="timeValue38" class="btn btn-outline-secondary btn-sm" for="">8:45 PM</label>
1963								</li>
1964																								<li class="time-button ">
1965									<input id="timeValue39" type="radio" value="9:00 PM" name="param_ready~at~time_s_n_15"
1966									class="btn-check rad-ready_at_time" onchange="saveFormState('param_ready~at~time_s_n_15', this.value, true);"
1967									 data-required-field data-ready-attime/>
1968									<label for="timeValue39" class="btn btn-outline-secondary btn-sm" for="">9:00 PM</label>
1969								</li>
1970																								<li class="time-button ">
1971									<input id="timeValue40" type="radio" value="9:15 PM" name="param_ready~at~time_s_n_15"
1972									class="btn-check rad-ready_at_time" onchange="saveFormState('param_ready~at~time_s_n_15', this.value, true);"
1973									 data-required-field data-ready-attime/>
1974									<label for="timeValue40" class="btn btn-outline-secondary btn-sm" for="">9:15 PM</label>
1975								</li>
1976														</ul>
1977					</div>
1978				</div>
1979					</div>
1980	</div>
1981</div>
1982</div>
1983<input type="hidden" name="param_ready~at_s_n_100" class="hid-ready-at" value="" />
1984<input type="hidden" class="hid-ready-at-date" value="2026-10-01" />
1985<input type="hidden" class="hid-eot" value="1969-12-31 16:00:00" />					</div>
1986							</div>
1987			<div class="modal-footer">
1988								<input type="hidden" id="hid-order-time-type" value="0" />
1989				<button type="button" class="btn btn-outline-secondary" data-bs-dismiss="modal">Cancel</button>
1990				<button type="button" class="btn btn-primary" data-save-time-modal>Save</button>
1991			</div>
1992		</div>
1993	</div>
1994</div>
1995
1996<!-- www modal start -->
1997<div class="modal fade mob_full_modal www_modal order-options" id="modal-order-options" tabindex="-1" role="dialog"
1998	 aria-hidden="true" data-update-otype-on-modal-close>
1999	<div class="modal-dialog modal-fullscreen-sm-down mt-sm-6" role="document">
2000		<div class="modal-content">
2001			<button class="d-md-none close" type="button" data-bs-dismiss="modal" aria-label="Close"></button>
2002			<div class="modal-header">
2003				<h2 class="modal-title eds-display-text-title-m">Order details</h2>
2004			</div>
2005			<div class="modal-body">
2006				<div class="www_moda_content">
2007					<div class="cs_box order_type" onchange="app.event.emit('order_type_changed', { order_type: event.target.value })">
2008						<div class="h5">What:</div>
2009												<div class="position-relative">
2010	<div class="mdropbtn" data-toggle-mdrop role="button">
2011		<span class="visually-hidden">Order type:</span>
2012		<span data-order-type-label>
2013			Select		</span>
2014	</div>
2015	<ul data-mdrop-ul>
2016							<li class=" ">
2017						<input data-order-type-on-change type="radio" name="param_order~type_s_n_10" id="order-type-pickup-1"
2018							class="orderTypeOption css-checkbox " data-name="Pick up"							 value="PICKUP"
2019							data-constant="1" data-base="PICKUP" >
2020						<label for="order-type-pickup-1" class="css-label" data-update-mdrop-on-click>
2021							Pick up						</label>
2022					</li>
2023									<li class=" ">
2024						<input data-order-type-on-change type="radio" name="param_order~type_s_n_10" id="order-type-
2024delivery-1"
2025							class="orderTypeOption css-checkbox deliveryswitch" data-name="Delivery"							 value="DELIVERY"
2026							data-constant="2" data-base="DELIVERY" >
2027						<label for="order-type-delivery-1" class="css-label" data-update-mdrop-on-click>
2028							Delivery						</label>
2029					</li>
2030					</ul>
2031</div>
2032					</div>
2033					<form class="">
2034																				<div class="cs_box guest_checkout_address checkout_address deliveryAddressContainer" style="display:none;">
2035								<label for="street-address-bar" class="h5">Enter your address:</label>
2036								<div class="form-group street-address-container">
2037									<input name="param_full~address_s_n_255" id="street-address-bar" placeholder="Enter your address"
2038										   data-autocomplete-address data-autocomplete-success="autoCompleteSuccess"
2039										   onkeyup="scheduleFormStateSave(this.name, this.value)" onchange="validateAddress($('#modal-order-options .deliveryAddressContainer'))"
2040										   type="search" class="form-control input-search input-validate-address input-street-address user-address-field"
2041										   value="" data-required-field />
2042								</div>
2043																<input type="hidden" name="param_street~address_s_n_255" data-autocompleted-street-address />
2044								<input type="hidden" name="param_city_s_n_90" data-autocompleted-city />
2045								<input type="hidden" name="param_state_s_n_2" data-autocompleted-state />
2046								<input type="hidden" name="param_zip~code_z_n_10" data-autocompleted-zip />
2047															</div>
2048											</form>
2049					<!-- <div class="form-submit-wrapper">
2050						<input type="submit" class="form-submit btn btn-primary" value="Save" data-close-modal data-select-later-date data-saveotype-modal>
2051					</div> -->
2052				</div>
2053			</div>
2054			<div
2055				data-async-on-event="order_type_changed"
2056				data-async-action="https://www.hunancafefallschurchva.com/ajax/?form=minimum_order_value_warning&component=order_type"
2057				data-async-method="get"
2058			>
2059							</div>
2060			<div class="modal-footer">
2061				<button type="button" class="btn btn-outline-secondary" data-bs-dismiss="modal">Close</button>
2062				<button type="button" class="btn btn-primary" data-close-modal data-saveotype-modal>Save</button>
2063			</div>
2064		</div>
2065	</div>
2066</div>
2067<!-- www modal end -->
2068
2069<!-- menu item modal -->
2070<div class="modal fade add_menu" id="add_menu_item" tabindex="-1" role="dialog" aria-hidden="true" aria-labelledby="item_name">
2071	<div class="modal-dialog modal-dialog-centered modal-fullscreen-md-down" role="document">
2072		<div class="modal-content menu-item-container-wrapper">
2073			<div class="modal-body menu-item-container ">
2074				<p id="item_name">Menu item dialog</p>
2075							</div>
2076		</div>
2077	</div>
2078</div>
2079<!-- menu item modal end -->
2080
2081
2082	<div
2083		data-eds-id="6abeffdd8c387"
2084		class="eds_dialog modal fade  "
2085		tabindex="-1"
2086		aria-labelledby="eds-dialog-title-6abeffdd8c387"
2087		aria-hidden="true"
2088		data-event-on:coupon_modal_shown="(shown) =&gt; $(this).data(`coupon_modal_shown`, shown)" data-event-on:show_coupon_restrictions="({ coupon, errors }) =&gt; {
2089				if ($(this).data(`coupon_modal_shown`)) return;
2090
2091				$(this).find(`.eds_dialog-title`).html(`&lt;div class=&quot;text-truncate&quot;&gt;${coupon}&lt;/div&gt;`);
2092				$(this).find(`.eds_dialog-body`).html(errors);
2093				this.dispatchEvent(new CustomEvent(`eds.show`));
2094			}" data-event-on:restore_coupon_modal="this.dispatchEvent(new CustomEvent(`eds.hide`))"	>
2095		<div class="modal-dialog modal-dialog-scrollable modal-dialog-centered modal-fullscreen-sm-down modal-md">
2096			<div class="modal-content ">
2097									
2098	<div class="modal-header d-flex justify-content-between gap-3 eds-display-text-title-m ">
2099		<h2 id="eds-dialog-title-6abeffdd8c387" class="eds_dialog-title modal-title eds-display-text-title-m  pe-5" style="max-width: 100%">
2100			Coupon restrictions		</h2>
2101
2102		<button class="eds_button btn btn-outline-secondary btn-lg eds_button--shape-circle position-absolute top-0 end-0 border" style="width: 3rem; height: 3rem; margin-top: 6px; margin-right: 6px" data-bs-dismiss="modal" aria-label="Close" type="button"><i class="eds_icon fa fa-close" style="" aria-hidden="true"></i></button>	</div>
2103
2104	<div class="eds_dialog-body modal-body css-scroll eds-copy-text-l-regular vh-100">
2105			</div>
2106
2107	
2108								</div>
2109		</div>
2110
2111		
2111<script>
2112		{
2113			const container = document.querySelector('[data-eds-id="6abeffdd8c387"]');
2114			let edsMethodsDisabled = false;
2115
2116						['show', 'hide', 'toggle', 'dispose'].forEach((eventName) => {
2117				container.addEventListener(`eds.${eventName}`, (e) => {
2118					if (edsMethodsDisabled) return;
2119
2120					bootstrap.Modal.getOrCreateInstance(container)[eventName](
2121						...(Array.isArray(e.detail) ? e.detail : [e.detail])
2122					);
2123				});
2124			});
2125
2126						['show', 'shown', 'hide', 'hidden'].forEach((eventName) => {
2127				container.addEventListener(`${eventName}.bs.modal`, (e) => {
2128					if (edsMethodsDisabled) return;
2129
2130					edsMethodsDisabled = true; // Prevent infinite loop of triggering events
2131					container.dispatchEvent(new CustomEvent(`eds.${eventName}`));
2132					edsMethodsDisabled = false;
2133				});
2134			});
2135
2136			
2137						['show.bs.modal', 'shown.bs.modal'].forEach((eventName) => {
2138				container.addEventListener(eventName, () => {
2139					const autofocusInput = container.querySelector('[autofocus]');
2140					if (autofocusInput) {
2141						container.style.display = 'block';
2142						autofocusInput.focus();
2143					}
2144				});
2145			});
2146
2147					}
2148		</script>
2148
2149	</div>
2150
2151	
2152<!-- location modal mobile start-->
2153<div class="modal fade location-picker" id="locationModal" tabindex="-1" role="dialog" aria-hidden="true">
2154	<div class="backdrop" data-bs-dismiss="modal"></div>
2155	<div class="modal-dialog modal-sm modal-dialog-centered" role="document">
2156		<div class="modal-content">
2157			<div class="modal-header">
2158				<h2 class="modal-title eds-display-text-title-m">Change Location</h2>
2159			</div>
2160
2161			<div class="modal-body">
2162				
2163<div class="change_location-locations">
2164			<input
2165			type="radio"
2166			class="css-checkbox"
2167			id="locations-1-location-8285"
2168			name="locations-1"
2169			value="https://www.hunancafefallschurchva.com/order"
2170						checked		/>
2171		<label class="css-label" for="locations-1-location-8285">
2172			<div style="line-height: normal">
2173				<strong>Hunan Cafe - Falls Church</strong>
2174				<br />
2175				126 W Broad St Falls Church, VA 22046			</div>
2176		</label>
2177	</div>
2178
2179			</div>
2180
2181			<div class="modal-footer">
2182				<button type="button" class="btn btn-outline-secondary" data-bs-dismiss="modal">Close</button>
2183				<button type="button" class="btn btn-warning" data-go-to-url-on-click="[name='locations-1']:checked">
2184					Change location				</button>
2185			</div>
2186		</div>
2187	</div>
2188</div>
2189<!-- location modal mobile end -->
2190
2191<div class="modal fade add_new_card_modal" id="modal-add-new-card" tabindex="-1" role="dialog" aria-modal="true">
2192	<div class="modal-dialog modal-dialog-centered modal-fullscreen-sm-down" role="document">
2193		<div class="modal-content">
2194			<button type="button" class="close" data-bs-dismiss="modal" aria-label="Close"></button>
2195			<div class="modal-header">
2196				<h2 class="modal-title eds-display-text-title-m">Add new card</h2>
2197			</div>
2198			<div class="modal-body pb-6">
2199				<div class="ajax-creditcards">
2200					<div class="fa fa-spinner fa-spin fa-4x">
2201					</div>
2202				</div>
2203			</div>
2204		</div>
2205	</div>
2206</div>
2207
2208<div class="modal fade" id="modal-payment-change" tabindex="-1" role="dialog" aria-modal="true">
2209	<div class="modal-dialog modal-dialog-centered" role="document">
2210		<div class="modal-content">
2211			<div class="modal-header">
2212				<h2 class="modal-title modal-title-accent eds-display-text-title-m">Confirm <span data-confirm-payment-name>Pay with cash</span></h2>
2213			</div>
2214			<div class="modal-body">
2215				<p>You've just changed your payment type to <strong data-confirm-payment-name>Pay with cash</strong>. Please confirm that to proceed.</p>
2216				<button class="btn btn-primary w-100" data-bs-dismiss="modal" data-confirm-payment-switch>Confirm and proceed</button>
2217				<button class="btn eh-btn-silent w-100 mt-2" data-bs-dismiss="modal" data-cancel-payment-switch>Cancel</button>
2218			</div>
2219		</div>
2220	</div>
2221</div>
2222
2223<div class="modal fade modal_over_modal" id="modal-confirm-no-number-address" tabindex="-1" role="dialog" aria-modal="true" style="z-index: 2000;">
2224	<div class="modal-dialog modal-dialog-centered" role="document">
2225		<div class="modal-content">
2226			<div class="modal-header">
2227				<h2 class="modal-title modal-title-accent eds-display-text-title-m">Confirm Address</h2>
2228			</div>
2229			<div class="modal-body">
2230				<p>This address doesn't start with a street number. Please confirm the address is correct.</p>
2231				<button class="btn btn-warning w-100" data-bs-dismiss="modal" data-confirm-no-number-address>Yes, it's correct</button>
2232				<button class="btn btn-secondary w-100 mt-2" data-bs-dismiss="modal" data-cancel-no-number-address>No, let me edit it</button>
2233			</div>
2234		</div>
2235	</div>
2236</div>
2237
2238<div class="modal fade mob_full_modal" id="modal-invalid-address" tabindex="-1" role="dialog" aria-modal="true">
2239	<div class="modal-dialog modal-dialog-centered" role="document">
2240		<div class="modal-content">
2241			<button class="close" type="button" data-bs-dismiss="modal" aria-label="Close"></button>
2242			<div class="modal-header">
2243				<h2 class="modal-title eds-display-text-title-m">Sorry we do not deliver to your address!</h2>
2244			</div>
2245			<div class="modal-body">
2246				<div class="www_moda_content">
2247									<div class="cs_box pickup_when showcheck_parent">
2248						<div>You can Pick up your order at this location</div>
2249						<div class="pickup_locbox">
2250		<div class="rest_loc">
2251		<p>
2252			Hunan Cafe - Falls Church<br/>
2253			126 W Broad St<br/>Falls Church, VA 22046		</p>
2254	</div>
2255</div>					</div>
2256					<div class="form-submit-wrapper">
2257						<input type="submit" class="form-submit" value="Switch to pickup" data-bs-dismiss="modal" data-switch-to-pickup>
2258					</div>
2259								</div>
2260			</div>
2261		</div>
2262	</div>
2263</div>
2264
2265<div class="modal fade mob_full_modal" id="modal-view-delivery-zone" tabindex="-1" role="dialog" aria-modal="true">
2266	<div class="modal-dialog modal-dialog-centered" role="document">
2267		<div class="modal-content">
2268			<div class="modal-body modal-body-view-delivery-zone" style="min-height: 75px;">
2269				<div id="loading-view-delivery-area" class="loading-ajax-spinner"><i class="fa fa-spin fa-spinner fa-3x "></i></div>
2270				<button type="button" class="close" data-bs-dismiss="modal" aria-label="Close"></button>
2271				<div id="modal-view-delivery-zone-content" style="display:none;">
2272					<div class="h4 mt15">View our delivery area</div>
2273					<div class="mb15"></div>
2274					<style>
2275						#iframe-view-delivery-area {
2276							width:100%;
2277							height:100%;
2278							min-height:556px;
2279						}
2280						@media screen and (max-width: 768px) {
2281							#iframe-view-delivery-area {
2282								height: calc(100vh - 90px);
2283							}
2284						}
2285					</style>
2286					<iframe id="iframe-view-delivery-area" name="iframe-deliveryzone" frameborder="0" hspace="0" scrolling="auto"
2287						data-src="https://www.hunancafefallschurchva.com/viewdeliveryzone/altdoc/1/vdz/1" title="Map of delivery areas"></iframe>
2288				</div>
2289			</div>
2290		</div>
2291	</div>
2292</div>
2293
2294<!-- Alert modal -->
2295<div class="modal fade" id="modal-alert" tabindex="-1" aria-labelledby="modal-alert" aria-hidden="true">
2296	<div class="modal-dialog">
2297		<div class="modal-content">
2298			<div class="modal-header">
2299				<h2 class="modal-title fs-5 eds-display-text-title-m">Error</h2>
2300				<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
2301			</div>
2302			<div class="modal-body">
2303				Description
2304			</div>
2305			<div class="modal-footer">
2306				<button type="button" class="btn btn-primary btn-close-modal" data-bs-dismiss="modal">Close</button>
2307				<button type="button" class="btn btn-primary hidden">Save changes</button>
2308			</div>
2309		</div>
2310	</div>
2311</div>
2312
2313
2314
2315
2316
2317	<div
2318		id="toasts"
2319		class="toast-container position-fixed start-50 translate-middle-x"
2320		style="bottom: calc(var(--eds-fixed-cta-height, 0) * 1px); max-width: calc(100% - 2rem)"
2321	>
2322			</div>
2323
2324		
2324<script>
2325	$(() => {
2326		const ctas = document.querySelectorAll('[data-fixed-cta]');
2327		if (!ctas.length) {
2328			return;
2329		}
2330
2331		function updateFixedCTAHeight() {
2332			document.documentElement.style.setProperty(
2333				'--eds-fixed-cta-height',
2334				Math.max(0, ...Array.from(ctas, (element) => {
2335										const rect = element.getBoundingClientRect();
2336					return rect.height > 0 && getComputedStyle(element).position === 'fixed'
2337						? Math.max(0, window.innerHeight - rect.top)
2338						: 0;
2339				}))
2340			);
2341		}
2342
2343				if ('ResizeObserver' in window) {
2344			ctas.forEach((cta) => new ResizeObserver(updateFixedCTAHeight).observe(cta));
2345		} else {
2346			updateFixedCTAHeight();
2347		}
2348
2349		window.addEventListener('resize', app.throttle(updateFixedCTAHeight));
2350	});
2351	</script>
2351
2352
2353		<div class="visually-hidden">
2354		<div id="announcements-polite" aria-live="polite" aria-atomic="true">
2355			<div id="announcement-polite"></div>
2356		</div>
2357
2358				<div id="announcements-assertive" aria-live="assertive" aria-atomic="true">
2359			<div id="announcement-assertive"></div>
2360		</div>
2361	</div>
2362
2363	
2364<script type="text/javascript" src="/share42/share42.js"></script>
2364
2365
2366<!-- SET: SCRIPTS -->
2367<script src="https://code.jquery.com/jquery-3.6.0.min.js" integrity="sha256-/xUj+3OJU5yExlq6GSYGSHk7tPXikynS7ogEvDej/m4=" crossorigin="anonymous"></script>
vendor: 1 bytes, line 2367
2367
2368<script>window.jQuery || document.write('
2368<script src="/web/default3.0/js/vendor/jquery-3.6.0.min.js"><\/script>')</script>
vendor: 1 bytes, line 2368
2368
2369<script src="https://code.jquery.com/jquery-migrate-3.3.2.js" integrity="sha384-KwAndHbPSueZ9+pG1mDjru/Q6KT6cliBs+/SCGpcOO6XvhrkbF0cBzkSs3+Pl2Zz" crossorigin="anonymous"></script>
2369
2370<!-- 
2370<script src="https://code.jquery.com/jquery-migrate-3.3.2.min.js" integrity="sha256-Ap4KLoCf1rXb52q+i3p0k2vjBsmownyBTE1EqlRiMwA=" crossorigin="anonymous"></script>
2370-->
2371<script>
2372	/* http://writing.colin-gourlay.com/safely-using-ready-before-including-jquery/ */
2373	(function($,d){$.each(readyQ,function(i,f){$(f)});$.each(bindReadyQ,function(i,f){$(d).bind("ready",f)})})(jQuery,document)
2374</script>
vendor: 1 bytes, line 2374
2374
2375<script src="https://code.jquery.com/ui/1.13.2/jquery-ui.min.js" integrity="sha256-lSjKY0/srUM9BE3dPm+c4fBo1dky2v27Gdjm2uoZaL0=" crossorigin="anonymous"></script>
vendor: 1 bytes, line 2375
2375
2376<script type="text/javascript" src="/min/g=js4.0&amp;1788675044"></script>
2376
2377<!-- END: SCRIPTS -->
2378
2379
2380<script>
2381	function closeAnnouncementModal(){
2382		$("#announcementBox").hide();
2383		setAnnouncementSession("");
2384	}
2385
2386	$('body').on('click', '#closeAnnouncement', function(e) {
2387		e.preventDefault();
2388		setAnnouncementSession("");
2389	});
2390</script>
vendor: 1 bytes, line 2390
2390
2391<script>
2392$(() => {
2393	const stickyHeader = document.querySelector('.headerAndWtype');
2394	if (!stickyHeader) {
2395		return;
2396	}
2397
2398	function updateHeaderHeight() {
2399		const gap = parseFloat(getComputedStyle(document.documentElement).fontSize) || 16;
2400		const offset = stickyHeader.offsetHeight + gap;
2401		document.documentElement.style.scrollPaddingTop = offset + 'px';
2402
2403				document.documentElement.style.setProperty('--sticky-header-offset', offset + 'px');
2404	}
2405
2406	updateHeaderHeight();
2407		if ('ResizeObserver' in window) {
2408		new ResizeObserver(updateHeaderHeight).observe(stickyHeader);
2409	} else {
2410		window.addEventListener('resize', app.throttle(updateHeaderHeight));
2411	}
2412});
2413</script>
2413
2414
2415		<div id="recaptcha" class="g-recaptcha" data-callback="submitAjaxForm" data-size="invisible"></div>
2416					<div id="async-recaptcha" class="g-recaptcha" data-callback="recaptchaAsyncCallback" data-size="invisible"></div>
2417				
2418		
2418<script>
2419			var ajaxRecaptcha;
2420			var asyncRecaptcha;
2421			var checkoutRecaptcha;
2422
2423			function initRecaptchas() {
2424				const options = {
2425					sitekey: "6LeS6lMUAAAAADOPnBKluMb49PS1NyzPT1kR87Re",
2426					size: 'invisible',
2427				};
2428
2429				$('[data-recaptcha]').not('[data-ajax-form]').each(function (k, v) {
2430					const submit = $(v).find('[type="submit"]');
2431					grecaptcha.render(submit[0], {
2432						...options, 
2433						callback(token) {
2434							$(v).submit();
2435						},
2436					});
2437				});
2438
2439				ajaxRecaptcha = grecaptcha.render('recaptcha', options);
2440									asyncRecaptcha = grecaptcha.render('async-recaptcha', options);
2441											}
2442		</script>
vendor: 119 bytes, lines 2442-2444
2442
2443		<script src="https://www.google.com/recaptcha/api.js?render=explicit&onload=initRecaptchas" async defer></script>
2444	
2445</body>
2446</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.