PageSourceSearch

https://dpdough.com/locations

html dpdough.com collected 2026-10-02 06:08:14 UTC 57,131 bytes, 2,079 lines download raw bytes

1<!DOCTYPE html>
2<html>
3<head>
4	<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" />
5	<meta name="description" content="Delivering our fresh baked Zone® brand calzones to university communities across the country.">
6	<meta name="facebook-domain-verification" content="4ffd3ij5c6n3myqzmxbzaixkuuakzp" />
7	<link rel="apple-touch-icon" sizes="180x180" href="https://dpdough.com/apple-touch-icon.png">
8	<link rel="icon" type="image/png" sizes="32x32" href="https://dpdough.com/favicon-32x32.png">
9	<link rel="icon" type="image/png" sizes="16x16" href="https://dpdough.com/favicon-16x16.png">
10	<link rel="manifest" href="https://dpdough.com/site.webmanifest">
11	<link rel="mask-icon" href="https://dpdough.com/safari-pinned-tab.svg" color="#5bbad5">
12	<meta name="msapplication-TileColor" content="#da532c">
13	<meta name="theme-color" content="#ffffff">
14	<link rel="stylesheet" href="https://dpdough.com/css/bootstrap.min.css"/>
15	<link rel="stylesheet" href="https://dpdough.com/css/themify-icons.css"/>
16	<link rel="stylesheet" href="https://dpdough.com/css/main.css?ver=2.0"/>
17	
17<script src="https://dpdough.com/js/jquery.js"></script>
17
18	
18<script src="https://dpdough.com/js/bootstrap.min.js"></script>
18
19	<!--
19<script src="https://dpdough.com/js/iframeResizer.min.js"></script>
19-->
20	
20<script src="https://dpdough.com/scripts/cookie.js"></script>
20
21	
21<script src="https://dpdough.com/scripts/cookies.js"></script>
21
22	
22<script src="https://dpdough.com/scripts/lto.js?ver=37.2.0"></script>
22
23	
23<script src="https://dpdough.com/scripts/stores.js?ver=163.2.0"></script>
23
24	
24<script src="https://dpdough.com/scripts/menu.js?ver=43.2.0"></script>
24
25	
25<script src="https://dpdough.com/scripts/zod.js?ver=55.2.0"></script>
25
26	
26<script src="https://dpdough.com/scripts/main.js"></script>
26
27
28	<style type="text/css">
29		@-webkit-keyframes rotating /* Safari and Chrome */ {
30		  from {
31		    -ms-transform: rotate(0deg);
32		    -moz-transform: rotate(0deg);
33		    -webkit-transform: rotate(0deg);
34		    -o-transform: rotate(0deg);
35		    transform: rotate(0deg);
36		  }
37		  to {
38		    -webkit-transform: rotate(360deg);
39		    -o-transform: rotate(360deg);
40		    transform: rotate(360deg);
41		  }
42		}
43		@keyframes rotating {
44		  from {
45		    -ms-transform: rotate(0deg);
46		    -moz-transform: rotate(0deg);
47		    -webkit-transform: rotate(0deg);
48		    -o-transform: rotate(0deg);
49		    transform: rotate(0deg);
50		  }
51		  to {
52		    -ms-transform: rotate(360deg);
53		    -moz-transform: rotate(360deg);
54		    -webkit-transform: rotate(360deg);
55		    -o-transform: rotate(360deg);
56		    transform: rotate(360deg);
57		  }
58		}
59		.rotating {
60		  -webkit-animation: rotating 80s linear infinite reverse;
61		  -moz-animation: rotating 80s linear infinite reverse;
62		  -ms-animation: rotating 80s linear infinite reverse;
63		  -o-animation: rotating 80s linear infinite reverse;
64		  animation: rotating 80s linear infinite reverse;
65		}
66		@keyframes bounce {
67		  from {
68		    -ms-transform: translateY(0px);
69		    -moz-transform: translateY(0px);
70		    -webkit-transform: translateY(0px);
71		    -o-transform: translateY(0px);
72		    transform: translateY(0px);
73		  }
74		  to {
75		    -ms-transform: translateY(-15px);
76		    -moz-transform: translateY(-15px);
77		    -webkit-transform: translateY(-15px);
78		    -o-transform: translateY(-15px);
79		    transform: translateY(-15px);
80		  }
81		}
82		@-webkit-keyframes bounce {
83		  from {
84		    -ms-transform: translateY(0px);
85		    -moz-transform: translateY(0px);
86		    -webkit-transform: translateY(0px);
87		    -o-transform: translateY(0px);
88		    transform: translateY(0px);
89		  }
90		  to {
91		    -ms-transform: translateY(-15px);
92		    -moz-transform: translateY(-15px);
93		    -webkit-transform: translateY(-15px);
94		    -o-transform: translateY(-15px);
95		    transform: translateY(-15px);
96		  }
97		}
98		.bounce {
99		  animation: bounce 1s infinite alternate;
100		  -webkit-animation: bounce 1s infinite alternate;
101		}
102		@keyframes slide {
103		  0% {
104		    margin-left: 0;
105		    margin-right: 0;
106		  }
107		  50% {
108		    margin-left: 50px;
109		    margin-right: 50px;
110		  }
111		  100% {
112		    margin-left: 0;
113		    margin-right: 0;
114		  }
115		}
116		.slide {
117			x-transition: all 5s ease-in-out;
118  			animation: slide 5s infinite;
119		}
120		.flip-horz {
121			-moz-transform: scaleX(-1);
122	        -o-transform: scaleX(-1);
123	        -webkit-transform: scaleX(-1);
124	        transform: scaleX(-1);
125	        filter: FlipH;
126	        -ms-filter: "FlipH";
127		}
128		  /* WebKit and Opera browsers */ 
129		  @-webkit-keyframes flip { 
130		    from 
131		    { 
132		        -ms-transform: rotateY(0deg);
133			    -moz-transform: rotateY(0deg);
134			    -webkit-transform: rotateY(0deg);
135			    -o-transform: rotateY(0deg);
136			    transform: rotateY(0deg);
137		    } 
138		    to { 
139		        -ms-transform: rotateY(-360deg);
140			    -moz-transform: rotateY(-360deg);
141			    -webkit-transform: rotateY(-360deg);
142			    -o-transform: rotateY(-360deg);
143			    transform: rotateY(-360deg);
144		    } 
145		} /* all other browsers */ 
146
147		body {
148			background: #15181c;
149		}
150		* {
151			outline: none;
152		}
153		.desktop {
154			display: none !important;
155		}
156		.container {
157		    max-width: 1024px !important;
158		}
159		h2 {
160		    font-family: "chalk_font", sans-serif;
161		    font-size: 65px;
162		    font-weight: normal;
163		}
164		a {
165		    color: #D30000;
166		}
167		a:hover {
168		    color: #D30000;
169		}
170		.triangle-section {
171		    padding: 40px 20px;
172		    position: relative;
173		}
174		.triangle-section * {
175		    max-width: 100%;
176		    overflow: hidden;
177		}
178		.triangle-section:before {
179		    background: inherit;
180		    top: 0px;
181		    content: '';
182		    display: block;
183		    height: 40px;
184		    left: 0;
185		    position: absolute;
186		    right: 0;
187		    transform: skewY(2deg);
188		    transform-origin: 100%;
189		    z-index: 0;
190		}
191		.triangle-section.bottom:before {
192		    transform: skewY(-2deg);
193		    top: -40px;
194		}
195		.line-right img {
196		    max-width: 100%;
197		}
198		
199		header#header {
200		    position: absolute;
201		    top: 0px;
202		    left: 0;
203		    width: 100%;
204		    z-index: 9999;
205		    border-top: 5px solid #D30000;
206		    transition: top 1s ease 0s;
207		}
208		header#header.scrolling {
209			top: -2000px;
210		}
211		header#header.home-sticky {
212    position: absolute;
213    top: 0;
214}
215		header#header.sticky {
216		    position: fixed;
217		    top: 0;
218		    background: #0e0e0e;
219		    box-shadow: 0 -8px 10px 4px #000;
220		    border: 0;
221		    /*background-image: url(https://dpdough.com/img/ingr-bg-dark.png);*/
222		    background-size: 300px;
223		    border-bottom: 3px solid #D20000;
224		}
225		.header-content {
226    /*background: #0e0e0e;*/
227    padding: 10px 20px;
228    height: 86px;
229    overflow: hidden;
230    position: relative;
231    max-width: 1024px;
232    margin: 0 auto;
233    
234}
235		.header-content .logo {
236		    display: inline-block;
237		    width: 200px;
238		    position: absolute;
239		    top: 4px;
240		    left: 25px;
241		}
242		.header-content .logo a, .header-content .logo img {
243		    overflow: auto;
244		    display: inline-block;
245		    width: 100%;
246		}
247		.header-content nav {
248		    display: inline-block;
249		    margin-left: 160px;
250		    float: right;
251		    margin-top: 16px;
252		}
253		.header-content nav ul {
254		    list-style: none;
255		    text-align: right;
256		}
257		.header-content nav ul li {
258		    line-height: 30px;
259		    display: inline-block;
260		    padding-left: 25px;
261		}
262		.header-content nav ul li a, .header-content nav ul li > span {
263    color: #fff;
264    font-size: 18px;
265    font-family: 'Rakkas', sans-serif;
266    font-weight: 800;
267    text-transform: uppercase;
268    cursor: pointer;
269}
270		.header-content nav ul li a:hover {
271		    color: #D20000;
272		    text-decoration: none;
273		}
274		header#header.sticky .header-content nav ul li a:hover {
275		    color: #D20000;
276		}
277		#mobile-nav-button {
278		    color: #fff;
279		    font-size: 30px;
280		    float: right;
281		    line-height: 56.7px;
282		    cursor: pointer;
283		}
284		nav#mobile-nav-container {
285		    position: fixed;
286		    top: 86px;
287		    left: 0;
288		    width: 100vw;
289		    height: 100vh;
290		    z-index: 999;
291		    background: #000;
292		    color: #fff;
293		    display: none;
294		    opacity: 0;
295		    transition: all 0.2s linear;
296		    padding: 0;
297		}
298		nav#mobile-nav-container.active {
299			opacity: 1;
300		    display: block;
301		}
302		#mobile-nav-container ul {
303		    padding: 0;
304		    list-style: none;
305		}
306		#mobile-nav-container ul a, #mobile-nav-container ul > li > span {
307    padding: 10px 20px;
308    display: block;
309    color: #fff;
310    font-size: 24px;
311    border-bottom: 1px solid rgba(255,255,255,0.2);
312    text-transform: uppercase;
313    font-family: 'Rakkas';
314    font-weight: 800;
315    cursor: pointer;
316}
317		#mobile-nav-container.active + nav#more-nav-menu {
318		    max-height: calc(100vh - 86px);
319		    bottom: 0;
320		    display: none;
321		    opacity: 0;
322		    background: rgba(0,0,0,0.9);
323		    padding: 20px;
324		}
325		#mobile-nav-container.active + nav#more-nav-menu.active {
326			z-index: 9999;
327		    display: block !important;
328		    opacity: 1;
329		}
330		#more-nav-menu {
331		    position: fixed;
332		    top: 82px;
333		    left: 0;
334		    width: 100vw;
335		    z-index: 9999999;
336		    background: #d30000;
337		    padding: 40px;
338		    min-height: 50vh;
339		    background-image: url(https://dpdough.com/img/ingr-bg-dark.png);
340		    background-size: 25%;
341		    display: none !important;
342		    transition: all 0.25s ease-in-out;
343		    opacity: 0;
344		    overflow-y: scroll;
345		    max-height: calc(100vh - 81px);
346		}
347		#more-nav-menu.active {
348		    display: block !important;
349		    opacity: 1;
350		}
351		header#header.sticky + nav#more-nav-menu {
352		    background-color: #D30000;
353		}
354		.more-nav-container {
355		    flex-grow: 1;
356		    overflow: hidden;
357		    z-index: 2;
358		    padding-bottom: 40px;
359		}
360		.more-nav-container h3 {
361		    color: #fff;
362		    font-size: 20px;
363		    display: inline-block;
364		    padding: 0px 20px 0px 5px;
365		}
366		.more-nav-container h3 span {
367		    margin-right: 5px;
368		    background: red;
369		    border-radius: 50%;
370		    padding: 10px;
371		    position: relative;
372		    top: 3px;
373		    display: block;
374		    width: 40px;
375		    margin: 0px 0 20px;
376		    color: #000;
377		}
378		.more-nav-container ul {
379		    padding-left: 10px;
380		    list-style: none;
381		}
382		.more-nav-container ul a {
383			color: #fff !important
384		}
385		span.more-button * {
386		    pointer-events: none;
387		}
388		.more-nav-bg {
389			display: none;
390		}
391		a.order-online-button {
392		    width: 100%;
393		    display: block;
394		    padding: 20px !important;
395		    text-align: left;
396		    margin-bottom: 10px;
397		}
398		#header.sticky a.order-online-button, #mobile-nav-container a.order-online-button {
399		    background: #111;
400		}
401		a.order-online-button img {
402		    height: 100%;
403		    width: 100%;
404		}
405		@media screen and (min-width: 769px) {
406			.mobile {
407				display: none !important;
408			}
409			.desktop {
410				display: block !important;
411			}
412			.triangle-section:before {
413		    	transform: skewY(1.5deg);
414			}
415			.triangle-section.bottom:before {
416		    	transform: skewY(-1.5deg);
417			}
418			.header-content .logo {
419			    left: auto;
420			    margin-left: 10px;
421			}
422			#more-nav-menu.active .container {
423			    display: flex;
424			}
425			.more-nav-container {
426			    float: left;
427			    margin-right: 60px;
428			    width: 200px;
429			    z-index: 9;
430			}
431			#mobile-nav-container.active + nav#more-nav-menu {
432			    z-index: 9999;
433			    max-height: calc(100vh - 455px);
434			    top: 369px;
435			    bottom: auto;
436			    background: rgba(0,0,0,0.1);
437			}
438			.more-nav-bg {
439				display: block;
440			}
441			#more-nav-bg-1 {
442			    width: 200px;
443			    height: 200px;
444			    position: fixed;
445			    bottom: 235px;
446			    right: calc(50% - 478px);
447			    background: url(https://dpdough.com/img/box-chalk-dark.png);
448			    background-size: contain;
449			    background-repeat: no-repeat;
450			    opacity: 0.5;
451			}
452			#more-nav-bg-2 {
453			    width: 200px;
454			    height: 200px;
455			    position: fixed;
456			    bottom: 222px;
457			    left: calc(50% - 408px);
458			    background: url(https://dpdough.com/img/calzone-chalk.png);
459			    background-size: contain;
460			    background-repeat: no-repeat;
461			    opacity: 0.3;
462			}
463			#more-nav-bg-3 {
464			    width: 200px;
465			    height: 200px;
466			    position: fixed;
467			    top: 50px;
468			    left: 120px;
469			    background: url(https://dpdough.com/img/cloud3.png);
470			    background-size: contain;
471			    background-repeat: no-repeat;
472			    opacity: 0.2;
473			}
474			#more-nav-bg-4 {
475			    width: 200px;
476			    height: 200px;
477			    position: fixed;
478			    top: 50px;
479			    right: calc(50% - 230px);
480			    background: url(https://dpdough.com/img/cloud2.png);
481			    background-size: contain;
482			    background-repeat: no-repeat;
483			    opacity: 0.15;
484			}
485			#more-nav-bg-5 {
486			    width: 200px;
487			    height: 200px;
488			    position: fixed;
489			    top: 68px;
490			    right: 125px;
491			    background: url(https://dpdough.com/img/cloud1.png);
492			    background-size: contain;
493			    background-repeat: no-repeat;
494			    opacity: 0.2;
495			}
496			#more-nav-bg-6 {
497			    width: 150px;
498			    height: 150px;
499			    position: fixed;
500			    top: 187px;
501			    right: calc(50% - 152px);
502			    background: url(https://dpdough.com/img/no-pizza.png);
503			    background-size: contain;
504			    background-repeat: no-repeat;
505			    opacity: 0.3;
506			}
507			.more-nav-container h3 span {
508			    margin: 0px 0 20px;
509			    z-index: 2;
510			}
511			.more-nav-container .right-align-deskktop {
512				text-align: right;
513			}
514			.more-nav-container .right-align-deskktop h3 {
515				padding: 0 0 5px;
516			}
517			#dough-hand {
518				display: block;
519			    position: absolute;
520			    right: -30px;
521			    top: -80px;
522			    background: url(https://dpdough.com/img/dpdough-hand.png);
523			    width: 300px;
524			    height: 300px;
525			    background-repeat: no-repeat;
526			    background-size: cover; 
527			    z-index: 9;
528			    opacity: 1;
529			    transform: rotate(-90deg);
530			}
531			a.order-online-button {
532			    width: 150px;
533			    margin-top: -20px;
534			    padding: 10px 12px !important;
535			}
536		}
537	</style>
538	<!--Drive PG pixel code-->
539	
539<script> !function(w,d,s,t,a){if(w.amzn)return;w.amzn=a=function(){w.amzn.q.push([arguments,(new Date).getTime()])};a.q=[];a.version="0.0";s=d.createElement("script");s.src="https://c.amazon-adsystem.com/aat/amzn.js";s.id="amzn-pixel";s.async=true;t=d.getElementsByTagName("script")[0];t.parentNode.insertBefore(s,t)}(window,document); amzn("setRegion", "NA"); amzn("addTag", "2c445578-4fa1-40b7-a7f8-4d1454953453"); amzn("trackEvent", "PageView"); </script>
539
540	<!-- Facebook Pixel Code -->
541	
541<script>
vendor: 408 bytes, lines 541-550
541
542	!function(f,b,e,v,n,t,s)
543	{if(f.fbq)return;n=f.fbq=function(){n.callMethod?
544	n.callMethod.apply(n,arguments):n.queue.push(arguments)};
545	if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';
546	n.queue=[];t=b.createElement(e);t.async=!0;
547	t.src=v;s=b.getElementsByTagName(e)[0];
548	s.parentNode.insertBefore(t,s)}(window, document,'script',
549	'https://connect.facebook.net/en_US/fbevents.js');
550	fbq('init', '
550206907784269480
vendor: 32 bytes, lines 550-552
550');
551	fbq('track', 'PageView');
552	
552</script>
552
553	<noscript><img height="1" width="1" style="display:none"
554	src="https://www.facebook.com/tr?id=206907784269480&ev=PageView&noscript=1"
555	/></noscript>
556	<!-- End Facebook Pixel Code -->
557
558	<!-- Google tag (gtag.js) -->
vendor: 64 bytes, line 558
558 <script async src="https://www.googletagmanager.com/gtag/js?id=
558AW-11396171168
vendor: 12 bytes, line 558
558"></script> 
558<script> 
vendor: 127 bytes, line 558
558window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', '
558AW-11396171168
vendor: 4 bytes, line 558
558'); 
558</script>
558
559</head>
560<body>
561	<header id="header">
562		<div class="header-content" style="top: 0px;">
563			<div class="container">
564				<div class="logo">
565					<a href="https://dpdough.com/">
566						<img alt="D.P. Dough" class="default" src="https://dpdough.com/img/dpdoughtext.png">
567					</a>
568				</div>
569				<span id="mobile-nav-button" class="mobile ti-menu"></span>
570				<nav class="desktop">
571					<ul>
572						
573						<li><a href="https://dpdough.com/menu">Menu</a></li>
574						<li><a href="https://dpdough.com/locations">Locations</a></li>
575						
576						<!--<li><a href="https://dpdough.com/catering">Catering</a></li>
577						<li><a target="_blank" href="https://dpdough.fancollab.com/">Merch</a></li>
578						-->
579						<li><span class="more-button">More <span class="ti-menu"></span></span></li>
580						<li><a href="https://dpdough.com/locations" class="order-online-button"><img src="https://dpdough.com/img/order-online.png" alt="Order Online"/></a></li>
581					</ul>
582				</nav>
583			</div>
584		</div>
585	</header>
586	<nav id="mobile-nav-container" class="mobile">
587		<ul>
588			<li><a href="https://dpdough.com/locations" class="order-online-button"><img src="https://dpdough.com/img/order-online.png" alt="Order Online"/></a></li>
589			<li><a href="https://dpdough.com/menu">Menu</a></li>
590			<li><a href="https://dpdough.com/locations">Locations</a></li>
591			
592			<!--<li><a href="https://dpdough.com/catering">Catering</a></li>
593			<li><a target="_blank" href="https://dpdough.fancollab.com/">Merch</a></li>
594			-->
595			<li><span class="more-button">More <span class="ti-menu"></span></span></li>
596		</ul>
597	</nav>
598	<nav id="more-nav-menu" class="desktop">
599		<div class="container">
600			<div class="more-nav-container">
601				<h3><span class="ti-heart"></span> The Pizza Alternative &reg;</h3>
602				<ul>
603					<li><a href="https://dpdough.com/menu">Menu</a></li>
604					<!--<li><a href="https://dpdough.com/zod">Zone Of The Day</a></li>
605					<li><a href="https://dpdough.com/catering">Catering</a></li>-->
606					<li><a href="https://dpdough.com/nutrition">Nutrition</a></li>
607				</ul>
608			</div>
609			<div class="more-nav-container">
610				<h3><span class="ti-crown"></span> Company</h3>
611				<ul>
612					<li><a href="https://dpdough.com/story">Our Story</a></li>
613					<li><a href="http://ownadpdough.com/" rel="noreferrer" target="_blank">Franchising</a></li>
614					<li><a href="https://dpdough.com/jobs">Jobs</a></li>
615					<li><a href="https://dpdough.com/legal">Legal</a></li>
616					<!--<li><a href="https://dpdough.com/fundraising">Fundraising</a></li>-->
617					<li><a href="https://dpdough.com/contact">Contact Us</a></li>
618				</ul>
619			</div>
620			<div class="more-nav-container right-align-desktop">
621				<h3><span class="ti-announcement"></span> Social</h3>
622				<ul>
623					<li><a href="https://www.facebook.com/dpdoughcalzones/" rel="noreferrer" target="_blank"><span class="ti-facebook"></span> Facebook</a></li>
624					<li><a href="https://www.instagram.com/dpdough/" rel="noreferrer" target="_blank"><span class="ti-instagram"></span> Instagram</a></li>
625					<li><a href="https://twitter.com/dpdough" rel="noreferrer" target="_blank"><span class="ti-twitter"></span> Twitter</a></li>
626					<li><a href="https://www.youtube.com/channel/UC8EgLtr6-1JsNi24lihc0zA" rel="noreferrer" target="_blank"><span class="ti-youtube"></span> Youtube</a></li>
627				</ul>
628			</div>
629		</div>
630		<div id="more-nav-bg-1" class="more-nav-bg"></div>
631		<div id="more-nav-bg-2" class="more-nav-bg"></div>
632		<div id="more-nav-bg-3" class="slide more-nav-bg"></div>
633		<div id="more-nav-bg-4" class="more-nav-bg"></div>
634		<div id="more-nav-bg-5" class="slide more-nav-bg"></div>
635		<div id="more-nav-bg-6" class="more-nav-bg"></div>
636	</nav>
637
638	
638<script>
639
640function cntrHeaderParseQueryString(query) {
641  var vars = query.split("&");
642  var query_string = {};
643  for (var i = 0; i < vars.length; i++) {
644    var pair = vars[i].split("=");
645    var key = decodeURIComponent(pair[0]);
646    var value = decodeURIComponent(pair[1]);
647    // If first entry with this name
648    if (typeof query_string[key] === "undefined") {
649      query_string[key] = decodeURIComponent(value);
650      // If second entry with this name
651    } else if (typeof query_string[key] === "string") {
652      var arr = [query_string[key], decodeURIComponent(value)];
653      query_string[key] = arr;
654      // If third or later entry with this name
655    } else {
656      query_string[key].push(decodeURIComponent(value));
657    }
658  }
659  return query_string;
660}
661
662document.addEventListener("DOMContentLoaded", function(event) { 
663	var cntrQuery = window.location.search.substring(1);
664	var cntrHeaderQS = cntrHeaderParseQueryString(cntrQuery);
665	if ('ad_source' in cntrHeaderQS) {
666		Cookies.set("ad_source", cntrHeaderQS['ad_source'], { expires: 1 });
667	}
668	if ('campaign_id' in cntrHeaderQS) {
669		Cookies.set("campaign_id", cntrHeaderQS['campaign_id'], { expires: 1 });
670	}
671	if ('order_instructions' in cntrHeaderQS) {
672		Cookies.set("order_instructions", cntrHeaderQS['order_instructions'], { expires: 1 });
673	}
674});
675
676</script>
676
677
678
679	
679<script>
680	window.onscroll = function() {adjustHeaderNavigation()};
681
682	if (window.self !== window.top) {
683		document.addEventListener("DOMContentLoaded", function() {
684			document.querySelector('#header').remove();
685			document.querySelector('#mobile-nav-container').remove();
686			document.querySelector('#more-nav-menu').remove();
687		});
688	}
689
690	/*
691	navigator.geolocation.getCurrentPosition((position) => {
692	  if (typeof userCoords !== "undefined") {
693	  	userCoords = {lat: position.coords.latitude, lng: position.coords.longitude};
694	  }
695
696      if (typeof initMap === "function") {
697      	initMap();
698      }
699    }, (err) => {
700      if (typeof initMap === "function") {
701      	initMap();
702      }
703    }, {
704        enableHighAccuracy: false,
705        timeout: 5000,
706        maximumAge: 86400000
707    });
708    */
709
710	var header = $("header#header");
711	var sticky = $(window).height();
712	var url = "https://dpdough.com";
713	initialLoad = true;
714
715	adjustHeaderNavigation();
716
717	function adjustHeaderNavigation() {
718		if ($(document).scrollTop() >= 0 && $(document).scrollTop() < sticky) {
719			if (window.location.href.length <= url.length + 1 && !$('#mobile-nav-container').hasClass("active")) {
720				$("#more-nav-menu").removeClass("active");
721				$('#mobile-nav-container').removeClass("active");
722				header.addClass("scrolling");
723				header.addClass("home-sticky");
724				header.removeClass("sticky");
725	  			//header.find(".logo img").prop("src", "https://dpdough.com/img/dpdoughtext.png");
726	  		} else {
727	  			header.addClass("sticky");
728	  		}
729		} else if ($(document).scrollTop() <= sticky && window.location.href.length > url.length + 1) {
730			//header.find(".logo img").prop("src", "https://dpdough.com/img/clownshoes.png");
731			header.addClass("sticky");
732		} else {
733			header.removeClass("scrolling");
734			if ($(document).scrollTop() > sticky && !header.hasClass("sticky")) {
735			  	//header.find(".logo img").prop("src", "https://dpdough.com/img/clownshoes.png");
736			  	header.addClass("sticky");
737			  	if (!checkLTO()) {
738					$('#ltoContainer').addClass("active");
739				}
740			} else if ((header.hasClass("sticky") || initialLoad) && $(document).scrollTop() <= sticky) {
741			  	initialLoad = false;
742			  	if (window.location.href.length <= url.length + 1) {
743		  			//header.find(".logo img").prop("src", "https://dpdough.com/img/dpdoughtext.png");
744		  		}
745		  		header.removeClass("sticky");
746		  		header.addClass("home-sticky");
747			} else if (!header.hasClass("sticky") && $(document).scrollTop() > sticky) {
748			  	//header.find(".logo img").prop("src", "https://dpdough.com/img/clownshoes.png");
749			  	header.addClass("sticky");
750			  	if (!checkLTO()) {
751					$('#ltoContainer').addClass("active");
752				}
753			}
754		}
755	}
756
757	var currentViewport = $(window).width() <= 768 ? "mobile" : "desktop";
758	$(window).resize(function(){
759		if ($(window).width() <= 768 && currentViewport == "desktop") {
760			$('#mobile-nav-container').removeClass("active");
761			$("#more-nav-menu").removeClass("active");
762			adjustHeaderNavigation();
763			currentViewport = "mobile";
764		} else if ($(window).width() > 768 && currentViewport == "mobile") {
765			$('#mobile-nav-container').removeClass("active");
766			$("#more-nav-menu").removeClass("active");
767			adjustHeaderNavigation();
768			currentViewport = "desktop";
769		}
770	})
771
772	$('#mobile-nav-button').click(function(){
773		if ($('#mobile-nav-container').hasClass("active")) {
774			$('#mobile-nav-button').removeClass("ti-close");
775			$('#mobile-nav-button').addClass("ti-menu");
776			$('#mobile-nav-container').removeClass("active");
777			$("#more-nav-menu").removeClass("active");
778			adjustHeaderNavigation();
779		} else {
780			$('#mobile-nav-button').addClass("ti-close");
781			$('#mobile-nav-button').removeClass("ti-menu");
782			//$("header#header").find(".logo img").prop("src", "https://dpdough.com/img/clownshoes.png");
783			$("header#header").addClass("sticky");
784			$('#mobile-nav-container').addClass("active");
785			$("#more-nav-menu").addClass("active");
786		}
787	});
788
789	$(document).click(function(e){
790		var elem = $(e.target);
791		if (elem.hasClass('more-button')) {
792			if ($('#more-nav-menu').hasClass("active")) {
793				$("#more-nav-menu").removeClass("active");
794				adjustHeaderNavigation();
795			} else {
796				$("header#header").addClass("sticky");
797				//$("header#header").find(".logo img").prop("src", "https://dpdough.com/img/clownshoes.png");
798				$("#more-nav-menu").addClass("active");
799			}
800		} else if ($('#more-nav-menu').hasClass('active') && elem.parents('#more-nav-menu').length == 0 && !elem.hasClass('more-button')) {
801			console.log("skjdk")
802			$('#more-nav-menu').removeClass('active');
803		}
804	});
805
806
807	</script>
vendor: 1 bytes, line 807
807
808<script src="https://dpdough.com/scripts/zipcodes.js"></script>
808
809<style>
810  @-webkit-keyframes rotating /* Safari and Chrome */ {
811    from {
812      -webkit-transform: rotate(0deg);
813      -o-transform: rotate(0deg);
814      transform: rotate(0deg);
815    }
816    to {
817      -webkit-transform: rotate(360deg);
818      -o-transform: rotate(360deg);
819      transform: rotate(360deg);
820    }
821  }
822  @keyframes rotating {
823    from {
824      -ms-transform: rotate(0deg);
825      -moz-transform: rotate(0deg);
826      -webkit-transform: rotate(0deg);
827      -o-transform: rotate(0deg);
828      transform: rotate(0deg);
829    }
830    to {
831      -ms-transform: rotate(360deg);
832      -moz-transform: rotate(360deg);
833      -webkit-transform: rotate(360deg);
834      -o-transform: rotate(360deg);
835      transform: rotate(360deg);
836    }
837  }
838  .rotating {
839    -webkit-animation: rotating 80s linear infinite reverse;
840    -moz-animation: rotating 80s linear infinite reverse;
841    -ms-animation: rotating 80s linear infinite reverse;
842    -o-animation: rotating 80s linear infinite reverse;
843    animation: rotating 80s linear infinite reverse;
844  }
845
846  #splash-spinner {
847      height: 200px;
848      width: 200px;
849      margin: 40px auto;
850      background: url(https://dpdough.com/img/swirl.png);
851      background-size: contain;
852      z-index: 0;
853      background-position: center;
854  }
855
856  #splash-spinner.loaded {
857    display: none;
858  }
859
860#locations-container {
861    display: flex;
862    height: 100vh;
863    overflow: hidden;
864    background: #0e0e0e
865}
866#locations-select-container {
867    flex-grow: 1;
868}
869#locations-select-container {
870    flex-grow: 1;
871    background: transparent;
872    background-position: center;
873}
874#location-search-container {
875    background: #D30000;
876    padding: 20px;
877}
878#zip-search-form {
879    width: calc(100% - 80px);
880    display: inline-block;
881}
882input.zip-search {
883    border: 0;
884    border-radius: 4px;
885    padding: 10px 20px;
886    line-height: 40px;
887    font-family: 'poppinsregular', sans-serif;
888    font-size: 16px;
889    display: inline-block;
890    width: 100%;
891}
892#zip-search-button {
893    background: #111;
894    color: #fff;
895    font-family: 'poppinsbold', sans-serif;
896    padding: 10px 20px;
897    border-radius: 5px;
898    cursor: pointer;
899    margin-left: 10px;
900    display: inline-block;
901    transition: all 0.2s linear;
902    line-height: 40px
903}
904#zip-search-button:hover {
905    color: #111;
906    background: #fff;
907}
908#map {
909    height: calc(100vh - 86px);
910    width: calc(100% - 364px);
911    display: none;
912}
913#map.mobile-visible {
914    height: 100vh;
915    width: 100vw;
916    display: block;
917    position: fixed !important;
918    top: 0;
919    left: 0;
920}
921div#map-button {
922    position: fixed;
923    bottom: 20px;
924    right: 20px;
925    width: 60px;
926    height: 60px;
927    background: #D30000;
928    color: #fff;
929    text-align: center;
930    line-height: 60px;
931    font-size: 27px;
932    border-radius: 50%;
933}
934#location-results-container {
935    overflow-y: scroll;
936    max-height: calc(100vh - 180px);
937}
938div#view-all-button {
939    line-height: 58px;
940    text-align: center;
941    color: #d30000;
942    border: 1px solid;
943    margin: 20px;
944    cursor: pointer;
945}
946.location-result {
947    padding: 40px;
948    color: #111;
949    border-bottom: 2px dotted #dedede;
950    padding-bottom: 20px;
951    background: #d0d0d0;
952}
953.location-result:first-of-type {
954    background: #1e1e1e;
955    color: #fff;
956}
957.location-result:nth-of-type(2n) {
958    background: #efefef;
959}
960.location-result:first-of-type .location-result-button {
961  background: #D30000;
962}
963.location-result h5 {
964    font-family: 'poppinsbold', sans-serif;
965    font-size: 14px;
966}
967.location-result h2.location-result-name {
968    font-size: 16px;
969    font-family: "chalk_font", sans-serif;
970    color: #D30000;
971}
972.location-result p {
973    margin-bottom: 7px;
974    font-size: 14px;
975}
976.location-result b {
977    font-family: 'poppinsblack',sans-serif;
978    font-size: 15px;
979    margin-right: 10px;
980}
981.location-result-button-container {
982    margin-top: 40px;
983}
984.location-result-button {
985    display: block;
986    background: #111;
987    padding: 8px 15px;
988    border-radius: 5px;
989    box-shadow: 2px 3px 0px 2px #eaeaea;
990    cursor: pointer;
991    font-family: 'chalk_font', sans-serif;
992    transition: all 0.25s linear;
993    color: #fff;
994    font-size: 20px;
995    margin: 20px;
996    text-align: center;
997}
998.location-result-button:hover {
999    background: #D30000;
1000    color: #fff;
1001}
1002ul.location-result-hours {
1003    padding: 0;
1004}
1005.location-result-hours li {
1006    display: inline-block;
1007    width: calc(50% - 5px);
1008    margin: 0;
1009    padding: 0;
1010    text-align: left;
1011}
1012.location-result-hours li:nth-of-type(2n) {
1013    text-align: right;
1014}
1015.location-result-name a.ti-location-pin {
1016    color: #333;
1017    text-decoration: none;
1018    transition: all 0.25s linear;
1019}
1020.location-result-name a.ti-location-pin:hover {
1021    color: #D30000;
1022}
1023#select-location {
1024    display: none;
1025    position: fixed;
1026    top: 86px;
1027    width: 100vw;
1028    text-align: center;
1029    background: #eee;
1030    padding: 12px;
1031    color: #999;
1032    text-transform: uppercase;
1033}
1034.no-store-results {
1035    height: calc(100vh - 186px);
1036    text-align: center;
1037    display: block;
1038    color: #D30000;
1039    position: relative;
1040    font-size: 16px;
1041    font-family: 'poppinsbold', sans-serif;
1042}
1043.no-store-results-image {
1044    background: url(https://dpdough.com/img/clownshoes-chalk.png);
1045    width: 100%;
1046    height: 100%;
1047    display: inline-block;
1048    position: absolute;
1049    top: 0;
1050    left: 0;
1051    z-index: 0;
1052    opacity: 0.08;
1053    background-position: center;
1054    margin-top: -50%;
1055}
1056.no-store-results b {
1057    font-size: 40px;
1058    display: block;
1059    margin-top: 50%;
1060    text-transform: uppercase;
1061    font-family: 'poppinsblack', sans-serif;
1062}
1063.no-store-results i {
1064    display: block;
1065    font-size: 14px;
1066    color: #333;
1067    font-family: 'poppinsregular',sans-serif;
1068    margin-top: 20px;
1069}
1070p.store-entity {
1071    margin-top: 15px;
1072    opacity: 0.3;
1073}
1074#loading-location-container {
1075    z-index: 999;
1076    background: rgba(0,0,0,0.6);
1077    height: 100vh;
1078    width: 100vw;
1079    position: fixed;
1080    top: 0;
1081    left: 0;
1082    color: #fff;
1083    line-height: 100vh;
1084    text-align: center;
1085    display: block;
1086}
1087#loading-location-container.loaded {
1088    display: none;
1089}
1090div#zip-search-text {
1091    padding: 20px 40px;
1092    background: #0e0e0e;
1093    color: #fff;
1094    text-align: center;
1095    font-style: italic;
1096    font-size: 18px;
1097}
1098div#mobile-app-banner-container {
1099    padding: 140px 20px 50px;
1100    background: #d30000;
1101    color: #fff;
1102    position: relative;
1103}
1104.mobile-phones-image {
1105    position: absolute;
1106    top: 0;
1107    bottom: 0;
1108    right: 0;
1109    width: 100%;
1110    max-width: 720px;
1111    background-size: cover;
1112    background-repeat: no-repeat;
1113    z-index: 0;
1114}
1115div#mobile-app-banner-container .container {
1116    z-index: 1;
1117    position: relative;
1118}
1119div#mobile-app-banner-container h2 {
1120    font-size: 60px;
1121    text-align: left;
1122    font-family: 'poppinsbold', sans-serif;
1123    margin-bottom: 40px;
1124    max-width: 400px;
1125    background: rgba(0,0,0,0.75);
1126    padding: 20px 20px 0;
1127}
1128
1129.mobile-app-links small {
1130    font-size: 27px;
1131    font-family: 'poppinsbold', sans-serif;
1132    position: relative;
1133    top: -20px;
1134    color: #d30000;
1135}
1136
1137div#mobile-app-banner-container .container {
1138    z-index: 1;
1139}
1140
1141.app-links-container {
1142    display: flex;
1143    flex-direction: row;
1144}
1145.app-links-container img {
1146    max-width: 200px;
1147    width: 100%;
1148}
1149.or-continue-online {
1150    color: #d30000;
1151    text-align: center;
1152    padding: 60px;
1153    font-size: 24px;
1154    background: #000;
1155    font-family: 'poppinsbold', sans-serif;
1156}
1157a.location-menu-button {
1158    text-align: center;
1159    display: block;
1160    background: #d30000;
1161    color: #fff;
1162    padding: 10px 0;
1163    font-weight: bold;
1164    margin: 20px;
1165}
1166@media screen and (min-width: 769px) {
1167	#map {
1168	    display: block;
1169	}
1170  /*
1171	#locations-select-container {
1172	    max-width: 364px;
1173	}
1174  */
1175  #locations-container {
1176      height: auto;
1177  }
1178  #locations-select-container {
1179    max-width: 800px;
1180    margin: 0 auto;
1181  }
1182  #location-results-container {
1183      max-height: none;
1184      margin-bottom: 200px;
1185  }
1186}
1187</style>
1188<div id="mobile-app-banner-container">
1189  <div class="mobile-phones-image" style="background-image: url('https://dpdough.com/img/mobile-phones.png')"></div>
1190  <div class="container">
1191      <div class="mobile-app-links">
1192        <h1>Order Now<br /><small style="color: #fff">On Our Mobile App</small></h1>
1193        <div class="app-links-container">
1194          <a href="https://apps.apple.com/us/app/d-p-dough/id1622433962"><img src="https://dpdough.com/img/app-store.png"/></a>
1195          <a href="https://play.google.com/store/apps/details?id=io.dpdough.dpdough"><img src="https://dpdough.com/img/play-store.png"/></a>
1196        </div>
1197      </div>
1198  </div>
1199</div>
1200<div class="or-continue-online" style="background: #0e0e0e;background-image: url(https://dpdough.com/img/ingr-bg-light.png);background-size: 400px;">- Or Continue Online -</div>
1201<div id="locations-container" style="background: #0e0e0e;background-image: url(https://dpdough.com/img/ingr-bg-light.png);background-size: 400px;">
1202
1203	<div id="locations-select-container">
1204    <div id="zip-search-text">Enter 5 digit zip code to find your nearest store</div>
1205		<div id="location-search-container">
1206			<form id="zip-search-form" submit="#">
1207				<input type="number" class="zip-search" placeholder="Search by Zip Code...">
1208			</form>
1209			<div id="zip-search-button">GO</div>
1210		</div>
1211		<div id="location-results-container"></div>
1212    <div id="splash-spinner" class="loaded rotating"></div>
1213    <div class="mobile-app-links">
1214        <title>Download the D.P. Dough app on your phone!</title>
1215        <div class="app-links-container" style="justify-content: center; margin-bottom: 40px;">
1216          <a href="https://apps.apple.com/us/app/d-p-dough/id1622433962"><img src="https://dpdough.com/img/app-store.png"/></a>
1217          <a href="https://play.google.com/store/apps/details?id=io.dpdough.dpdough"><img src="https://dpdough.com/img/play-store.png"/></a>
1218        </div>
1219      </div>
1220    <!--<div id="view-all-button">View All Locations</div>-->
1221	</div>
1222	<!--<div id="map"></div>
1223	<div id="map-button" class="mobile"><span class="ti-map-alt"></span></div>
1224	<div id="select-location">Select A Location</div>-->
1225</div>
1226<div id="loading-location-container" class="loaded"><span>Finding Closest Locations...</div>
1227<script>
1228function getLatLngByZipcode(zipcode, callback) {
1229  var results = cntrZipCodes.filter(function (entry) { return entry.zip_code === Number(zipcode) });
1230    if (results.length > 0) {
1231      var latitude = results[0].latitude;
1232      var longitude = results[0].longitude;
1233      callback({ lat:latitude, lng: longitude});
1234    } else {
1235      var geocoder = new google.maps.Geocoder();
1236      var address = zipcode;
1237      geocoder.geocode({ 'address': 'zipcode '+address }, function (results, status) {
1238          if (status == google.maps.GeocoderStatus.OK) {
1239              var latitude = results[0].geometry.location.lat();
1240              var longitude = results[0].geometry.location.lng();
1241              callback({ lat:latitude, lng: longitude});
1242          } else {
1243              callback(null);
1244          }
1245      });
1246    }
1247}
1248</script>
vendor: 1 bytes, line 1248
1248
1249<script>
1250
1251var viewAllLocations = false;
1252
1253$("#view-all-button").click(function(){
1254  viewAllLocations = !viewAllLocations;
1255  if (viewAllLocations) {
1256    $("#view-all-button").text("View Nearest Stores");
1257  } else {
1258    $("#view-all-button").text("View All Stores");
1259  }
1260  loadStoreLocations();
1261});
1262
1263$("#zip-search-button").click(function(){
1264	var value = $(".zip-search").val();
1265  if (value.length == 5) {
1266    getLatLngByZipcode(value, function(result){
1267      if (result != null) {
1268        userCoords = {lat: result.lat, lng: result.lng};
1269        $.each(stores, function(i,store) {
1270          store.distance = getDistance(store.lat, store.lng, result.lat, result.lng);
1271        })
1272        loadStoreLocations();
1273      }
1274    })
1275  }
1276});
1277
1278$('#zip-search-form').on("submit",function(e){
1279	e.preventDefault();
1280	$(".zip-search").blur();
1281	var value = $(".zip-search").val();
1282  if (value.length == 5) {
1283    getLatLngByZipcode(value, function(result){
1284      if (result != null) {
1285        userCoords = {lat: result.lat, lng: result.lng};
1286        $.each(stores, function(i,store) {
1287          store.distance = getDistance(store.lat, store.lng, result.lat, result.lng);
1288        })
1289        loadStoreLocations();
1290      }
1291    })
1292  }
1293});
1294
1295$("#map-button").click(function(){
1296	$("#map").addClass("mobile-visible");
1297	$("#select-location").show();
1298	$("#map-button").hide();
1299	loadStoreLocations();
1300});
1301
1302$(window).resize(function(){
1303  /*
1304	if ($(window).width() <= 768) {
1305		if(!$("#map").hasClass("mobile-visible")) {
1306			$("#map-button").show();
1307		}
1308	} else {
1309		$("#select-location").hide();
1310		$("#map").removeClass("mobile-visible");
1311	}
1312  */
1313});
1314
1315function getDistance(lat1, lon1, lat2, lon2) {
1316  var p = 0.017453292519943295;    // Math.PI / 180
1317  var c = Math.cos;
1318  var a = 0.5 - c((lat2 - lat1) * p)/2 + 
1319          c(lat1 * p) * c(lat2 * p) * 
1320          (1 - c((lon2 - lon1) * p))/2;
1321
1322  return (12742 * Math.asin(Math.sqrt(a))) * 0.621371; // 2 * R; R = 6371 km
1323}
1324
1325var userCoords = null;
1326
1327function loadStoreLocations() {
1328	stores.sort((a, b) => (a.distance > b.distance) ? 1 : -1 );
1329
1330	$('#location-results-container').empty();
1331	//map.clearOverlays();
1332	//var nearestStores = stores.slice(0,3);
1333  var nearestStores = stores;
1334	var foundStores = false;
1335	$.each(nearestStores,function(i,store){
1336		if (store.distance < 50 || viewAllLocations || true) {
1337			foundStores = true;
1338			var hoursString = "";
1339
1340			$.each(store.hours,function(h,hour){
1341				hoursString += "<li>"+hour[0]+"</li>";
1342				hoursString += "<li>"+hour[1]+"</li>";
1343			});
1344			var zipString = "";
1345			var zipValue = $(".zip-search").val();
1346			if (zipValue.length > 0) {
1347				zipString = " from "+zipValue;
1348			}
1349
1350      var entityString = "Locally owned & operated";
1351
1352      if (store.legalEntity && store.legalEntity.length > 0) {
1353        entityString += String(" by " + store.legalEntity);
1354      }
1355      var orderString = "";
1356      if (store.orderLink.length > 0) {
1357        orderString = '<div class="location-result-button" data-link="'+store.orderLink+'">Order Online</div>';
1358      }
1359      var caterString = "";
1360      if (store.ezcater && store.ezcater.length > 0) {
1361        caterString = '<div class="location-result-button" data-link="'+store.ezcater+'">Catering</div>';
1362      }
1363      var menuString = "";
1364      if (store.menu && store.menu.length > 0) {
1365        menuString = '<a class="location-menu-button" href="https://dpdough.com/menus/'+store.menu+'" rel="noreferrer" target="_blank">View Menu</a>';
1366      }
1367			var row = '<div class="location-result"><h2 class="location-result-name">'+store.name+' <a href="'+store.map+'" class="ti-location-pin" target="_blank" rel="noreferrer"></a></h2><h5>'+store.city+', '+store.state.toUpperCase()+'</h5><p class="location-result-distance">'+store.distance.toFixed(2)+' mi'+zipString+'</p><p class="location-result-address">'+store.address+'</p><p class="location-result-phone"><b>Phone:</b> <a href="tel:'+store.phone+'">'+store.phone+'</a></p><p><b>Hours:</b></p><ul class="location-result-hours">'+hoursString+'</ul><div class="location-result-button-container">'+orderString+menuString+caterString+'</div><p class="store-entity">'+entityString+'</p></div>';
1368
1369			$('#location-results-container').append(row);
1370
1371      /*
1372			var mapIcon = {
1373			    url: "https://dpdough.com/img/dp-head.png", // url
1374			    scaledSize: new google.maps.Size(50, 45), // scaled size
1375			    origin: new google.maps.Point(0,0), // origin
1376			    anchor: new google.maps.Point(0, 0) // anchor
1377			}
1378			var marker = new google.maps.Marker({
1379	          position: {lat: store.lat, lng: store.lng},
1380	          map: map,
1381	          icon: mapIcon
1382	        });
1383			markersArray.push(marker);
1384			google.maps.event.addListener(marker,"click",function(){
1385				$(".zip-search").val(store.zip);
1386				$.each(stores, function(i,st) {
1387					st.distance = getDistance(store.lat, store.lng, st.lat, st.lng);
1388				})
1389				loadStoreLocations();
1390				$("#map").removeClass("mobile-visible");
1391				$("#select-location").hide();
1392				if ($(window).width() <= 768) {
1393					$("#map-button").show();
1394				}
1395			});
1396      */
1397		}
1398	});
1399
1400  $(document).on("click",".location-result-button", function(e){
1401      var link = $(this).attr("data-link");
1402      window.location.href = link;
1403  })
1404
1405	if (!foundStores) {
1406		$("#location-results-container").append('<div class="no-store-results"><span class="no-store-results-image"></span><b>Bummer!</b>Dough Shortage Affecting Your Area<i>There are no D.P. Dough&reg; locations near you</i></div>');
1407
1408    /*
1409		if (userCoords != null) {
1410			var latlng = new google.maps.LatLng(userCoords.lat, userCoords.lng);
1411    		map.setCenter(latlng);
1412		}
1413		map.clearOverlays();
1414		$.each(stores,function(i,store){
1415	    	var mapIcon = {
1416			    url: "https://dpdough.com/img/dp-head.png", // url
1417			    scaledSize: new google.maps.Size(50, 45), // scaled size
1418			    origin: new google.maps.Point(0,0), // origin
1419			    anchor: new google.maps.Point(0, 0) // anchor
1420			}
1421			var marker = new google.maps.Marker({
1422	          position: {lat: store.lat, lng: store.lng},
1423	          map: map,
1424	          icon: mapIcon
1425	        });
1426			markersArray.push(marker);
1427			google.maps.event.addListener(marker,"click",function(){
1428				$(".zip-search").val(store.zip);
1429				$.each(stores, function(i,st) {
1430					st.distance = getDistance(store.lat, store.lng, st.lat, st.lng);
1431				})
1432				loadStoreLocations();
1433				$("#map").removeClass("mobile-visible");
1434				$("#select-location").hide();
1435				if ($(window).width() <= 768) {
1436					$("#map-button").show();
1437				}
1438			});
1439	   })
1440     */
1441	} else {
1442		setCenter(nearestStores);
1443	}
1444}
1445
1446var map = null;
1447var markersArray = [];
1448// Initialize and add the map
1449
1450function initMap() {
1451  /*
1452	google.maps.Map.prototype.clearOverlays = function() {
1453	  for (var i = 0; i < markersArray.length; i++ ) {
1454	    markersArray[i].setMap(null);
1455	  }
1456	  markersArray.length = 0;
1457	}
1458  */
1459	
1460
1461  /*
1462	var ipInfo = getCookie("ip_info");
1463	if (ipInfo != null && typeof ipInfo === "string") {
1464		var json = JSON.parse(JSON.parse(decodeURIComponent(ipInfo))["ip"]);
1465		if (json["latitude"] && json["longitude"] && json["zip"]) {
1466			lat = json["latitude"];
1467			lng = json["longitude"];
1468			userCoords = {lat: lat, lng: lng};
1469			$(".zip-search").val(json["zip"]);
1470			$.each(stores, function(i,store) {
1471				store.distance = getDistance(store.lat, store.lng, userCoords.lat, userCoords.lng);
1472			})
1473		}
1474	}
1475  */
1476  //loadStoreLocations();
1477  //$("#loading-location-container").removeClass("loaded");
1478  $("#splash-spinner").removeClass("loaded");
1479  navigator.geolocation.getCurrentPosition((position) => {
1480    userCoords = {lat: position.coords.latitude, lng: position.coords.longitude};
1481    $.each(stores, function(i,store) {
1482        store.distance = getDistance(store.lat, store.lng, userCoords.lat, userCoords.lng);
1483    });
1484    
1485    loadStoreLocations();
1486    $("#loading-location-container").addClass("loaded");
1487    $("#splash-spinner").addClass("loaded");
1488  }, (err) => {
1489    if(userCoords) {
1490      $.each(stores, function(i,store) {
1491        store.distance = getDistance(store.lat, store.lng, userCoords.lat, userCoords.lng);
1492      })
1493    }
1494    //loadStoreLocations();
1495    $("#loading-location-container").addClass("loaded");
1496    $("#splash-spinner").addClass("loaded");
1497  }, {
1498        enableHighAccuracy: false,
1499        timeout: 5000,
1500        maximumAge: 86400000
1501  })
1502  /*
1503	// The location of Uluru
1504	var uluru = {lat: lat, lng: lng};
1505	// The map, centered at Uluru
1506	map = new google.maps.Map(
1507  		document.getElementById('map'), {
1508  			zoom: 10, 
1509  			center: uluru,
1510  			styles: [
1511  {
1512    "elementType": "geometry",
1513    "stylers": [
1514      {
1515        "color": "#242f3e"
1516      }
1517    ]
1518  },
1519  {
1520    "elementType": "labels.text.fill",
1521    "stylers": [
1522      {
1523        "color": "#746855"
1524      }
1525    ]
1526  },
1527  {
1528    "elementType": "labels.text.stroke",
1529    "stylers": [
1530      {
1531        "color": "#242f3e"
1532      }
1533    ]
1534  },
1535  {
1536    "featureType": "administrative.locality",
1537    "elementType": "labels.text.fill",
1538    "stylers": [
1539      {
1540        "color": "#d59563"
1541      }
1542    ]
1543  },
1544  {
1545    "featureType": "administrative.neighborhood",
1546    "stylers": [
1547      {
1548        "visibility": "off"
1549      }
1550    ]
1551  },
1552  {
1553    "featureType": "poi",
1554    "elementType": "labels.text",
1555    "stylers": [
1556      {
1557        "visibility": "off"
1558      }
1559    ]
1560  },
1561  {
1562    "featureType": "poi",
1563    "elementType": "labels.text.fill",
1564    "stylers": [
1565      {
1566        "color": "#d59563"
1567      }
1568    ]
1569  },
1570  {
1571    "featureType": "poi.business",
1572    "stylers": [
1573      {
1574        "visibility": "off"
1575      }
1576    ]
1577  },
1578  {
1579    "featureType": "poi.park",
1580    "elementType": "geometry",
1581    "stylers": [
1582      {
1583        "color": "#263c3f"
1584      }
1585    ]
1586  },
1587  {
1588    "featureType": "poi.park",
1589    "elementType": "labels.text.fill",
1590    "stylers": [
1591      {
1592        "color": "#6b9a76"
1593      }
1594    ]
1595  },
1596  {
1597    "featureType": "road",
1598    "elementType": "geometry",
1599    "stylers": [
1600      {
1601        "color": "#38414e"
1602      }
1603    ]
1604  },
1605  {
1606    "featureType": "road",
1607    "elementType": "geometry.stroke",
1608    "stylers": [
1609      {
1610        "color": "#212a37"
1611      }
1612    ]
1613  },
1614  {
1615    "featureType": "road",
1616    "elementType": "labels",
1617    "stylers": [
1618      {
1619        "visibility": "off"
1620      }
1621    ]
1622  },
1623  {
1624    "featureType": "road",
1625    "elementType": "labels.icon",
1626    "stylers": [
1627      {
1628        "visibility": "off"
1629      }
1630    ]
1631  },
1632  {
1633    "featureType": "road",
1634    "elementType": "labels.text.fill",
1635    "stylers": [
1636      {
1637        "color": "#9ca5b3"
1638      }
1639    ]
1640  },
1641  {
1642    "featureType": "road.arterial",
1643    "stylers": [
1644      {
1645        "visibility": "off"
1646      }
1647    ]
1648  },
1649  {
1650    "featureType": "road.highway",
1651    "elementType": "geometry",
1652    "stylers": [
1653      {
1654        "color": "#746855"
1655      }
1656    ]
1657  },
1658  {
1659    "featureType": "road.highway",
1660    "elementType": "geometry.stroke",
1661    "stylers": [
1662      {
1663        "color": "#1f2835"
1664      }
1665    ]
1666  },
1667  {
1668    "featureType": "road.highway",
1669    "elementType": "labels",
1670    "stylers": [
1671      {
1672        "visibility": "off"
1673      }
1674    ]
1675  },
1676  {
1677    "featureType": "road.highway",
1678    "elementType": "labels.text.fill",
1679    "stylers": [
1680      {
1681        "color": "#f3d19c"
1682      }
1683    ]
1684  },
1685  {
1686    "featureType": "road.local",
1687    "stylers": [
1688      {
1689        "visibility": "off"
1690      }
1691    ]
1692  },
1693  {
1694    "featureType": "transit",
1695    "stylers": [
1696      {
1697        "visibility": "off"
1698      }
1699    ]
1700  },
1701  {
1702    "featureType": "transit",
1703    "elementType": "geometry",
1704    "stylers": [
1705      {
1706        "color": "#2f3948"
1707      }
1708    ]
1709  },
1710  {
1711    "featureType": "transit.station",
1712    "elementType": "labels.text.fill",
1713    "stylers": [
1714      {
1715        "color": "#d59563"
1716      }
1717    ]
1718  },
1719  {
1720    "featureType": "water",
1721    "elementType": "geometry",
1722    "stylers": [
1723      {
1724        "color": "#17263c"
1725      }
1726    ]
1727  },
1728  {
1729    "featureType": "water",
1730    "elementType": "labels.text",
1731    "stylers": [
1732      {
1733        "visibility": "off"
1734      }
1735    ]
1736  },
1737  {
1738    "featureType": "water",
1739    "elementType": "labels.text.fill",
1740    "stylers": [
1741      {
1742        "color": "#515c6d"
1743      }
1744    ]
1745  },
1746  {
1747    "featureType": "water",
1748    "elementType": "labels.text.stroke",
1749    "stylers": [
1750      {
1751        "color": "#17263c"
1752      }
1753    ]
1754  }
1755]
1756  		}
1757  	);
1758    */
1759	//loadStoreLocations();
1760}
1761
1762function setCenter(stores) {
1763    /*
1764    var X = 0.0;
1765    var Y = 0.0;
1766    var Z = 0.0;
1767    var places = stores.slice(0,5);
1768    var placesLength = places.length;
1769    $.each(places,function(i,place){
1770    	var lat = place.lat * Math.PI / 180;
1771        var lon = place.lng * Math.PI / 180;
1772        var a = Math.cos(lat) * Math.cos(lon);
1773        var b = Math.cos(lat) * Math.sin(lon);
1774        var c = Math.sin(lat);
1775        X += a;
1776        Y += b;
1777        Z += c;
1778    })
1779    X /= placesLength;
1780    Y /= placesLength;
1781    Z /= placesLength;
1782    var lon = Math.atan2(Y, X);
1783    var hyp = Math.sqrt(X * X + Y * Y);
1784    var lat = Math.atan2(Z, hyp);
1785
1786    var latitude = lat * 180 / Math.PI;
1787    var longitude = lon * 180 / Math.PI;
1788
1789    var latlng = new google.maps.LatLng(latitude, longitude);
1790    map.setCenter(latlng);
1791    var bounds = new google.maps.LatLngBounds();
1792    if (markersArray.length > 1) {
1793    	$.each(markersArray,function(i,marker){
1794	    	bounds.extend(marker.getPosition());
1795	    });
1796	    map.fitBounds(bounds);
1797    }
1798    
1799    $.each(stores,function(i,store){
1800    	if ($.grep(places, function(obj) { return obj.name == store.name && obj.distance < 50; }).length == 0) {
1801    		var mapIcon = {
1802			    url: "https://dpdough.com/img/dp-head.png", // url
1803			    scaledSize: new google.maps.Size(50, 45), // scaled size
1804			    origin: new google.maps.Point(0,0), // origin
1805			    anchor: new google.maps.Point(0, 0) // anchor
1806			}
1807			var marker = new google.maps.Marker({
1808	          position: {lat: store.lat, lng: store.lng},
1809	          map: map,
1810	          icon: mapIcon
1811	        });
1812			markersArray.push(marker);
1813			google.maps.event.addListener(marker,"click",function(){
1814				$(".zip-search").val(store.zip);
1815				$.each(stores, function(i,st) {
1816					st.distance = getDistance(store.lat, store.lng, st.lat, st.lng);
1817				})
1818				loadStoreLocations();
1819				$("#map").removeClass("mobile-visible");
1820				$("#select-location").hide();
1821				if ($(window).width() <= 768) {
1822					$("#map-button").show();
1823				}
1824			});
1825    	}
1826    })
1827    */
1828}
1829
1830</script>
1830
1831<!--Load the API from the specified URL
1832* The async attribute allows the browser to render the page while the API loads
1833* The key parameter will contain your own API key (which is not needed for this tutorial)
1834* The callback parameter executes the initMap() function
1835-->
1836
1837<script async defer
1838src="https://maps.googleapis.com/maps/api/js?key=AIzaSyDzrNVVXzU3qNgpXbhnDufykbJmI_yN7zI&callback=initMap">
1839</script>
1839
1840<style>
1841	.flip {
1842	     animation:rotate 1.5s  infinite;
1843		 animation-timing-function: cubic-bezier(0,.5,1);
1844	}
1845	@-webkit-keyframes rotate {
1846	    from { -webkit-transform: rotate(0deg) } 
1847	    to { -webkit-transform: rotate(360deg) } 
1848	}
1849	#footer {
1850    color: #fff;
1851    text-align: center;
1852    padding: 20px;
1853    background: #0e0e0e;
1854    position: relative;
1855}
1856	#footer img.default {
1857	    width: 150px;
1858	}
1859	#social-footer {
1860	    display: inline-block;
1861	    line-height: 53px;
1862	}
1863	#social-footer a {
1864	    color: #D30000;
1865	    font-size: 24px;
1866	    margin-left: 20px;
1867	    text-decoration: none;
1868	    transition: all 0.2s ease-in-out;
1869	}
1870	#social-footer a:hover {
1871	    color: #fff;
1872	}
1873	#iframe-overlay {
1874	    display: none;
1875	    position: fixed;
1876	    top: 0;
1877	    bottom: 0;
1878	    left: 0;
1879	    right: 0;
1880	    background: rgba(0,0,0,0.7);
1881	    z-index: 999999;
1882	}
1883	#iframe-overlay.active {
1884		display: block;
1885	}
1886	#iframe-overlay .container {
1887	    width: calc(100% - 50px);
1888	    max-width: 1024px;
1889	    margin: 0 auto;
1890	    height: 100vh;
1891	    overflow-y: scroll;
1892	    padding: 5px;
1893	    background: #fff;
1894	    box-sizing: border-box;
1895	}
1896	#iframe-overlay iframe {
1897	    width: 100%;
1898	    height: 100vh;
1899	}
1900	#close-iframe-overlay-button {
1901	    position: fixed;
1902	    bottom: 20px;
1903	    right: 20px;
1904	    color: #fff;
1905	    font-size: 30px;
1906	    background: #D30000;
1907	    width: 50px;
1908	    height: 50px;
1909	    text-align: center;
1910	    line-height: 50px;
1911	    cursor: pointer;
1912	}
1913	sup {
1914    font-size: calc(12px + .2vw);
1915    vertical-align: super;
1916    margin-left: 0;
1917    font-weight: normal !important;
1918    font-family: sans-serif !important;
1919}
1920	/*
1921	#loading-wrapper {
1922	    position: fixed;
1923	    top: 0;
1924	    bottom: 0;
1925	    left: 0;
1926	    right: 0;
1927	    background: #000;
1928	    z-index: 99999;
1929	    display: block;
1930	    background: #111;
1931	    background-image: url(https://dpdough.com/img/ingr-bg-light.png);
1932	    background-size: 400px;
1933	    color: #fff; 
1934	    text-align: center;
1935	}
1936	#loading-wrapper.loaded {
1937	    display: none;
1938	}
1939	#loading-image {
1940	    background: url(https://dpdough.com/img/dpdough-box.png);
1941	    width: 200px;
1942	    height: 200px;
1943	    background-size: contain;
1944	    background-position: center;
1945	    background-repeat: no-repeat;
1946	    margin: 0 auto;
1947	    margin-top: calc(50vh - 100px);
1948	    opacity: 1;
1949	}
1950	*/
1951	@media screen and (min-width: 769px) {
1952		#iframe-overlay .container {
1953		    width: calc(100% - 200px);
1954		}
1955		#footer {
1956		    text-align: left;
1957		}
1958		#social-footer {
1959			float: right;
1960		}
1961	}
1962</style>
1963<!--
1964<div id="iframe-overlay">
1965	<div class="container">
1966		<iframe src="" allowtransparency="true" frameborder="0" style="border: none; overflow: hidden; width: 100%;"></iframe>
1967		<div id="close-iframe-overlay-button"><span class="ti-close"></span></div>
1968	</div>
1969</div>-->
1970<div id="footer">
1971	<div class="container">
1972		<img alt="D.P. Dough Logo" class="default" src="https://dpdough.com/img/dpdoughtext.png">
1973		<span>&copy; <i id="footer-year"></i></span>
1974		<div id="social-footer">
1975			<a href="https://dpdough.com/legal">Privacy Policy</a>
1976			<a href="https://twitter.com/dpdough" rel="noreferrer" target="_blank"><span class="ti-twitter"></span></a>
1977			<a href="https://www.instagram.com/dpdough/" rel="noreferrer" target="_blank"><span class="ti-instagram"></span></a>
1978			<a href="https://www.facebook.com/dpdoughcalzones/" rel="noreferrer" target="_blank"><span class="ti-facebook"></span></a>
1979			<a href="https://www.youtube.com/channel/UC8EgLtr6-1JsNi24lihc0zA" rel="noreferrer" target="_blank"><span class="ti-youtube"></span></a>
1980		</div>
1981	</div>
1982</div>
1983<!--<div id="loading-wrapper"><div id="loading-image" class="flip"></div></div>-->
1984<script type="text/javascript">
1985	/*
1986	$('#close-iframe-overlay-button').click(function(){
1987		$('#iframe-overlay').removeClass('active');
1988		$('#iframe-overlay ifram').prop('src','');
1989	})
1990	$('#iframe-overlay').click(function(e){
1991		if ($(e.target).is('#iframe-overlay')) {
1992			$('#iframe-overlay').removeClass('active');
1993			$('#iframe-overlay iframe').prop('src','');
1994		}
1995	})
1996
1997	if (window.self !== window.top) {
1998		document.addEventListener("DOMContentLoaded", function() {
1999			document.querySelector('#iframe-overlay').remove();
2000			document.querySelector('#footer').remove();
2001		});
2002	}
2003	*/
2004	$(document).ready(function(){
2005		var date = new Date();
2006		$('#footer-year').text(date.getFullYear());
2007		var isIOS = !!navigator.platform && /iPad|iPhone|iPod/.test(navigator.platform);
2008		var ua = navigator.userAgent.toLowerCase();
2009		var isAndroid = ua.indexOf("android") > -1;
2010		if (isIOS) {
2011			$('body').addClass("ios");
2012		} else if (isAndroid) {
2013			$('body').addClass("android");
2014		}
2015		/*
2016		setTimeout(function(){
2017			$("#loading-wrapper").fadeOut(function(){
2018				$("#loading-wrapper").addClass("loaded");
2019			})
2020		},2000)
2021		*/
2022
2023		setTimeout(() => {
2024			for (const mark of trademarks){
2025			    updateTrademarks($("body")[0], mark);
2026			}
2027			$('h1,p,a,span,li,dl,td').each(function(i, elem) {
2028	            $(elem).html(function(i, html) {
2029	                return html.replace(/\u00ae/g, "<sup>&reg;</sup>");
2030	            });
2031	            $(elem).html(function(i, html) {
2032	                return html.replace(/\u00a9/g, "<sup>&copy;</sup>");
2033	            });
2034	        });
2035		}, 1500);
2036	})
2037
2038	var trademarks = [
2039		"Zone",
2040		"Get In The Zone"
2041	];
2042
2043	var pendingTrademarks = [
2044		"Blue Zone",
2045		"Border Zone",
2046		"Comfort Zone",
2047		"Sports Zone",
2048		"Work Zone",
2049		"Safety Zone",
2050		"Roni Zoni"
2051	];
2052
2053	function updateTrademarks(sel, text) {
2054		var el = $(sel);
2055	  	var matcher = new RegExp(" "+text+"('s|s)?(™|<sup>™<\/sup>|®|<sup>®<\/sup>)?|^"+text+"('s|s)?(™|<sup>™<\/sup>|®|<sup>®<\/sup>)?", 'gi');
2056  		if (el.children() && el.children().length > 0) {
2057  			el.children().each((i,obj) => {
2058  				updateTrademarks(obj,text);
2059  			});
2060  		} else if(sel.nodeName && sel.nodeName.toUpperCase() !== "STYLE" && sel.nodeName.toUpperCase() !== "SCRIPT" && sel.nodeName.toUpperCase() !== "IFRAME" && !el.children().length) {
2061  			var matchFound = false;
2062  			var currentText = el.text().toString();
2063  			var newText = currentText.replace(matcher, (match) => {
2064  				matchFound = true;
2065  				if(match.includes("®") || match.includes("™")) {
2066  					return match;
2067  				} else {
2068  					return match+"\u00ae";
2069  				}
2070  				
2071   			});
2072   			if (matchFound) {
2073   				el.text(newText);
2074   			}
2075  		}
2076	}
2077</script>
2077
2078</body>
2079</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.