PageSourceSearch

https://www.smithconstr.com/photo-gallery?album_id=2

html smithconstr.com collected 2026-10-04 01:14:33 UTC 27,147 bytes, 890 lines download raw bytes

1<!DOCTYPE html>
2<html lang="en">
3	<head>
4<link rel="stylesheet" href="/assets/fonts/google-fonts/fonts.css">
5<script>
6(function(){
7function isAllowedRecaptchaScript(el){
8  if((el.getAttribute("type")||"").toLowerCase()==="text/plain"){return true;}
9  if(el.getAttribute("data-cookie-recaptcha-loader")){return true;}
10  return false;
11}
12function shouldBlockRecaptchaSrc(src){
13  return !!src && /recaptcha\/(api|enterprise)\.js/i.test(src);
14}
15function guardScript(el){
16  if(!el || el.__ccRecaptchaGuarded){return;}
17  el.__ccRecaptchaGuarded = true;
18  var desc = Object.getOwnPropertyDescriptor(HTMLScriptElement.prototype, "src");
19  if(!desc || !desc.set){return;}
20  Object.defineProperty(el, "src", {
21    configurable: true,
22    enumerable: true,
23    get: function(){ return el.getAttribute("src") || ""; },
24    set: function(v){
25      if(shouldBlockRecaptchaSrc(v) && !isAllowedRecaptchaScript(el)){
26        el.setAttribute("data-cc-blocked-recaptcha-src", v);
27        return;
28      }
29      desc.set.call(el, v);
30    }
31  });
32}
33function releaseBlockedSrc(el){
34  if(!el || !isAllowedRecaptchaScript(el)){return;}
35  var blocked = el.getAttribute("data-cc-blocked-recaptcha-src");
36  if(!blocked){return;}
37  el.removeAttribute("data-cc-blocked-recaptcha-src");
38  var desc = Object.getOwnPropertyDescriptor(HTMLScriptElement.prototype, "src");
39  if(desc && desc.set){desc.set.call(el, blocked);}
40}
41var origSetAttribute = Element.prototype.setAttribute;
42Element.prototype.setAttribute = function(name, value){
43  origSetAttribute.call(this, name, value);
44  if(name === "data-cookie-recaptcha-loader" && this.nodeName === "SCRIPT"){
45    releaseBlockedSrc(this);
46  }
47};
48var origCreate = document.createElement.bind(document);
49document.createElement = function(tag){
50  var el = origCreate(tag);
51  if(String(tag).toLowerCase() === "script"){guardScript(el);}
52  return el;
53};
54function stripRecaptchaLoaders(){
55  document.querySelectorAll('script[src*="recaptcha/api.js"],script[src*="recaptcha/enterprise.js"]').forEach(function(el){
56    if(!isAllowedRecaptchaScript(el)){
57      var src = el.getAttribute("src");
58      if(src){el.setAttribute("data-cc-blocked-recaptcha-src", src);}
59      el.removeAttribute("src");
60      el.setAttribute("type", "text/plain");
61    }
62  });
63}
64document.querySelectorAll("script").forEach(guardScript);
65stripRecaptchaLoaders();
66new MutationObserver(function(muts){
67  muts.forEach(function(m){
68    m.addedNodes.forEach(function(n){
69      if(n.nodeName === "SCRIPT"){guardScript(n);}
70    });
71  });
72  stripRecaptchaLoaders();
73}).observe(document.documentElement,{childList:true,subtree:true});
74})();
75</script>
vendor: 1 bytes, line 75
75
76<script>
77(function(){
78/**
79 * Shared embed runtime helpers for IframeManager placeholder conversion.
80 * Included by the consent config module and the head embed guard.
81 */
82function getYoutubeVideoId(url) {
83  if (!url) {
84    return null;
85  }
86
87  try {
88    const parsed = new URL(url, window.location.origin);
89    const host = parsed.hostname.replace(/^www\./, "");
90
91    if (host === "youtu.be") {
92      return parsed.pathname.slice(1).split("/")[0] || null;
93    }
94
95    if (host.includes("youtube.com") || host.includes("youtube-nocookie.com")) {
96      if (parsed.pathname.startsWith("/embed/")) {
97        return parsed.pathname.split("/")[2] || null;
98      }
99
100      return parsed.searchParams.get("v");
101    }
102  } catch (error) {
103    return null;
104  }
105
106  return null;
107}
108
109function getVimeoVideoId(url) {
110  if (!url) {
111    return null;
112  }
113
114  try {
115    const parsed = new URL(url, window.location.origin);
116    const host = parsed.hostname.replace(/^www\./, "");
117
118    if (host === "player.vimeo.com" && parsed.pathname.startsWith("/video/")) {
119      return parsed.pathname.split("/")[2] || null;
120    }
121
122    if (host === "vimeo.com") {
123      return parsed.pathname.split("/").filter(Boolean)[0] || null;
124    }
125  } catch (error) {
126    return null;
127  }
128
129  return null;
130}
131
132function getGoogleMapsEmbedId(url) {
133  if (!url) {
134    return null;
135  }
136
137  try {
138    const parsed = new URL(url, window.location.origin);
139    const host = parsed.hostname.replace(/^www\./, "");
140    if (host === "google.com" && parsed.pathname.startsWith("/maps/")) {
141      const suffix = `${parsed.pathname.slice("/maps/".length)}${parsed.search}`.replace(/^\//, "");
142      return suffix || null;
143    }
144    if (host === "maps.google.com") {
145      const suffix = `${parsed.pathname.replace(/^\//, "")}${parsed.search}`;
146      return suffix || null;
147    }
148  } catch (error) {
149    return null;
150  }
151
152  return null;
153}
154
155function getSpotifyEmbedId(url) {
156  if (!url) {
157    return null;
158  }
159
160  try {
161    const parsed = new URL(url, window.location.origin);
162    const host = parsed.hostname.replace(/^www\./, "");
163
164    if (!host.includes("spotify.com") || !parsed.pathname.includes("/embed/")) {
165      return null;
166    }
167
168    const suffix = `${parsed.pathname.split("/embed/")[1] || ""}${parsed.search}`.replace(/^\//, "");
169    return suffix || null;
170  } catch (error) {
171    return null;
172  }
173}
174
175function getSoundCloudEmbedId(url) {
176  if (!url) {
177    return null;
178  }
179
180  try {
181    const parsed = new URL(url, window.location.origin);
182    const host = parsed.hostname.replace(/^www\./, "");
183
184    if (!host.includes("soundcloud.com") || !parsed.pathname.includes("/player")) {
185      return null;
186    }
187
188    return parsed.search ? parsed.search.slice(1) : null;
189  } catch (error) {
190    return null;
191  }
192}
193
194function getInvestingWidgetEmbedId(url) {
195  if (!url) {
196    return null;
197  }
198
199  try {
200    const parsed = new URL(url, window.location.origin);
201    const host = parsed.hostname.replace(/^www\./, "");
202
203    if (!/(?:^|\.)forexprostools\.com$|(?:^|\.)investing\.com$/i.test(host)) {
204      return null;
205    }
206
207    return parsed.href;
208  } catch (error) {
209    return null;
210  }
211}
212
213function getFacebookEmbedId(url) {
214  if (!url) {
215    return null;
216  }
217
218  try {
219    const parsed = new URL(url, window.location.origin);
220    const host = parsed.hostname.replace(/^www\./, "");
221
222    if (!host.includes("facebook.com") || !parsed.pathname.includes("/plugins/")) {
223      return null;
224    }
225
226    const suffix = `${parsed.pathname.split("/plugins/")[1] || ""}${parsed.search}`.replace(/^\//, "");
227    return suffix || null;
228  } catch (error) {
229    return null;
230  }
231}
232
233function normalizeGoogleMapsPlaceholders() {
234  document.querySelectorAll('[data-service="googlemaps"]').forEach((el) => {
235    const id = el.getAttribute("data-id");
236    if (id && !id.includes("?") && !id.includes("/")) {
237      el.setAttribute("data-id", `embed?pb=${id}`);
238    }
239  });
240}
241
242const KNOWN_EMBED_RATIOS = new Set([
243  "1:1",
244  "2:1",
245  "3:2",
246  "5:2",
247  "4:3",
248  "16:9",
249  "16:10",
250  "20:9",
251  "21:9",
252  "9:16",
253  "9:20",
254]);
255
256function gcd(a, b) {
257  return b ? gcd(b, a % b) : a;
258}
259
260function normalizeCssSize(value) {
261  if (!value) {
262    return value;
263  }
264  return /^\d+$/.test(value) ? `${value}px` : value;
265}
266
267function parsePixelSize(value) {
268  if (!value) {
269    return null;
270  }
271  if (/^\d+$/.test(value)) {
272    return parseInt(value, 10);
273  }
274  const match = /^(\d+(?:\.\d+)?)px$/i.exec(value.trim());
275  return match ? Math.round(parseFloat(match[1])) : null;
276}
277
278function ratioForPixels(widthPx, heightPx) {
279  const divisor = gcd(widthPx, heightPx);
280  const key = `${widthPx / divisor}:${heightPx / divisor}`;
281  return KNOWN_EMBED_RATIOS.has(key) ? key : null;
282}
283
284function extractIframeDimensions(iframe) {
285  let width = iframe.getAttribute("width");
286  let height = iframe.getAttribute("height");
287  const style = iframe.getAttribute("style") || "";
288
289  style.split(";").forEach((chunk) => {
290    if (!chunk.includes(":")) {
291      return;
292    }
293    const [rawKey, rawValue] = chunk.split(":");
294    const key = rawKey.trim().toLowerCase();
295    const value = rawValue.trim();
296    if (key === "width" && !width) {
297      width = value;
298    }
299    if (key === "height" && !height) {
300      height = value;
301    }
302  });
303
304  return { width, height };
305}
306
307function applyDimensionsToPlaceholder(placeholder, { width, height }) {
308  if (!width && !height) {
309    placeholder.setAttribute("data-autoscale", "");
310    return;
311  }
312
313  const styleParts = [];
314  if (width) {
315    styleParts.push(`width:${normalizeCssSize(width)}`);
316  }
317  if (height) {
318    styleParts.push(`height:${normalizeCssSize(height)}`);
319  }
320  styleParts.push("margin:0 auto");
321  placeholder.setAttribute("style", styleParts.join(";"));
322
323  const widthPx = parsePixelSize(width);
324  const heightPx = parsePixelSize(height);
325  if (widthPx && heightPx) {
326    const ratio = ratioForPixels(widthPx, heightPx);
327    if (ratio) {
328      placeholder.setAttribute("data-ratio", ratio);
329      return;
330    }
331    placeholder.classList.add("im-fixed-size");
332    return;
333  }
334
335  if (height || (width && !String(width).includes("%"))) {
336    placeholder.classList.add("im-fixed-size");
337    return;
338  }
339
340  placeholder.setAttribute("data-autoscale", "");
341}
342
343function getEmbedQueryParams(url) {
344  if (!url) {
345    return "";
346  }
347
348  try {
349    return new URL(url, window.location.origin).searchParams.toString();
350  } catch (error) {
351    return "";
352  }
353}
354
355function getLegacyEmbedTarget(iframe) {
356  const src = iframe.getAttribute("src")
357    || iframe.getAttribute("data-src")
358    || iframe.getAttribute("data-cc-blocked-embed-src")
359    || "";
360
361  if (!src) {
362    return null;
363  }
364
365  const youtubeId = getYoutubeVideoId(src);
366
367  if (youtubeId) {
368    return {
369      service: "youtube",
370      id: youtubeId,
371      params: getEmbedQueryParams(src),
372    };
373  }
374
375  const vimeoVideoId = getVimeoVideoId(src);
376
377  if (vimeoVideoId) {
378    return {
379      service: "vimeo",
380      id: vimeoVideoId,
381      params: getEmbedQueryParams(src),
382    };
383  }
384
385  const mapsId = src.includes("google.com/maps") || src.includes("maps.google")
386    ? getGoogleMapsEmbedId(src)
387    : null;
388
389  if (mapsId) {
390    return {
391      service: "googlemaps",
392      id: mapsId,
393      params: "",
394    };
395  }
396
397  if (/spotify\.com\/embed/i.test(src)) {
398    const spotifyId = getSpotifyEmbedId(src);
399    if (spotifyId) {
400      return {
401        service: "spotify",
402        id: spotifyId,
403        params: "",
404      };
405    }
406  }
407
408  if (/soundcloud\.com\/player/i.test(src)) {
409    const soundcloudId = getSoundCloudEmbedId(src);
410    if (soundcloudId) {
411      return {
412        service: "soundcloud",
413        id: soundcloudId,
414        params: "",
415      };
416    }
417  }
418
419  if (/facebook\.com\/plugins/i.test(src)) {
420    const facebookId = getFacebookEmbedId(src);
421    if (facebookId) {
422      return {
423        service: "facebook_social",
424        id: facebookId,
425        params: "",
426      };
427    }
428  }
429
430  if (/forexprostools\.com|investing\.com/i.test(src)) {
431    const investingId = getInvestingWidgetEmbedId(src);
432    if (investingId) {
433      return {
434        service: "investing_widget",
435        id: investingId,
436        params: "",
437      };
438    }
439  }
440
441  return null;
442}
443
444function copyIframeAttributesToPlaceholder(iframe, placeholder) {
445  const passthroughAttributes = ["title", "loading", "referrerpolicy"];
446
447  passthroughAttributes.forEach((attribute) => {
448    const value = iframe.getAttribute(attribute);
449
450    if (!value) {
451      return;
452    }
453
454    if (attribute === "title") {
455      placeholder.setAttribute("data-title", value);
456      return;
457    }
458
459    placeholder.setAttribute(`data-iframe-${attribute}`, value);
460  });
461
462  iframe.getAttributeNames().forEach((attribute) => {
463    if (!attribute.startsWith("data-iframe-")) {
464      return;
465    }
466
467    placeholder.setAttribute(attribute, iframe.getAttribute(attribute));
468  });
469}
470function neutralize(iframe){
471  if(!iframe||iframe.closest("[data-service]")){return;}
472  var target=getLegacyEmbedTarget(iframe);
473  if(!target){return;}
474  var placeholder=document.createElement("div");
475  placeholder.setAttribute("data-service",target.service);
476  placeholder.setAttribute("data-id",target.id);
477  applyDimensionsToPlaceholder(placeholder,extractIframeDimensions(iframe));
478  copyIframeAttributesToPlaceholder(iframe,placeholder);
479  iframe.replaceWith(placeholder);
480}
481function isTrackableEmbedSrc(src) {
482  if (!src) {
483    return false;
484  }
485  return /google\.com\/maps|maps\.google/i.test(src)
486    || /youtube\.com|youtu\.be|youtube-nocookie\.com/i.test(src)
487    || /vimeo\.com/i.test(src)
488    || /spotify\.com\/embed/i.test(src)
489    || /soundcloud\.com\/player/i.test(src)
490    || /facebook\.com\/plugins/i.test(src)
491    || /forexprostools\.com|investing\.com/i.test(src);
492}
493
494function isConsentManagedEmbed(iframe) {
495  return Boolean(iframe?.closest("[data-service]"));
496}
497
498function releaseBlockedEmbedSrc(iframe) {
499  if (!iframe || iframe.tagName !== "IFRAME" || !isConsentManagedEmbed(iframe)) {
500    return false;
501  }
502  const blocked = iframe.getAttribute("data-cc-blocked-embed-src");
503  if (!blocked) {
504    return false;
505  }
506  iframe.removeAttribute("data-cc-blocked-embed-src");
507  const desc = Object.getOwnPropertyDescriptor(HTMLIFrameElement.prototype, "src");
508  if (desc && desc.set) {
509    desc.set.call(iframe, blocked);
510  } else {
511    iframe.setAttribute("src", blocked);
512  }
513  return true;
514}
515
516function blockIframeLoad(iframe, src) {
517  if (!src || !isTrackableEmbedSrc(src) || isConsentManagedEmbed(iframe)) {
518    return false;
519  }
520  iframe.setAttribute("data-cc-blocked-embed-src", src);
521  iframe.removeAttribute("src");
522  iframe.removeAttribute("data-src");
523  return true;
524}
525
526function guardIframe(iframe) {
527  if (!iframe || iframe.__ccEmbedGuarded || iframe.tagName !== "IFRAME") {
528    return;
529  }
530  iframe.__ccEmbedGuarded = true;
531  const desc = Object.getOwnPropertyDescriptor(HTMLIFrameElement.prototype, "src");
532  if (desc && desc.set) {
533    Object.defineProperty(iframe, "src", {
534      configurable: true,
535      enumerable: true,
536      get() {
537        return iframe.getAttribute("src") || "";
538      },
539      set(value) {
540        if (isConsentManagedEmbed(iframe)) {
541          desc.set.call(iframe, value);
542          return;
543        }
544        if (blockIframeLoad(iframe, value)) {
545          return;
546        }
547        desc.set.call(iframe, value);
548      },
549    });
550  }
551  const pending = iframe.getAttribute("src") || iframe.getAttribute("data-src");
552  if (pending && !isConsentManagedEmbed(iframe)) {
553    if (blockIframeLoad(iframe, pending) && typeof neutralize === "function") {
554      neutralize(iframe);
555    }
556  }
557}
558
559const origSetAttribute = Element.prototype.setAttribute;
560Element.prototype.setAttribute = function setAttribute(name, value) {
561  origSetAttribute.call(this, name, value);
562  if (this.tagName !== "IFRAME") {
563    return;
564  }
565  if (name === "src" || name === "data-src") {
566    guardIframe(this);
567    if (!isConsentManagedEmbed(this)) {
568      if (blockIframeLoad(this, value) && typeof neutralize === "function") {
569        neutralize(this);
570      }
571    }
572  }
573};
574
575const origCreateElement = document.createElement.bind(document);
576document.createElement = function createElement(tag, options) {
577  const el = origCreateElement(tag, options);
578  if (String(tag).toLowerCase() === "iframe") {
579    guardIframe(el);
580  }
581  return el;
582};
583
584function releaseManagedEmbedIframes(root) {
585  if (!root || !root.querySelectorAll) {
586    return;
587  }
588  root.querySelectorAll("iframe[data-cc-blocked-embed-src]").forEach(releaseBlockedEmbedSrc);
589}
590
591document.querySelectorAll("iframe").forEach(guardIframe);
592
593new MutationObserver(function observeEmbedIframes(mutations) {
594  mutations.forEach(function(mutation) {
595    mutation.addedNodes.forEach(function(node) {
596      if (node.nodeType !== 1) {
597        return;
598      }
599      if (node.tagName === "IFRAME") {
600        guardIframe(node);
601        releaseBlockedEmbedSrc(node);
602        return;
603      }
604      releaseManagedEmbedIframes(node);
605    });
606  });
607}).observe(document.documentElement, { childList: true, subtree: true });
608function scan(root){
609  if(!root||!root.querySelectorAll){return;}
610  root.querySelectorAll("iframe[src],iframe[data-src],iframe[data-cc-blocked-embed-src]").forEach(function(iframe){
611    guardIframe(iframe);
612    if(iframe.closest("[data-service]")){releaseBlockedEmbedSrc(iframe);}
613    else{neutralize(iframe);}
614  });
615}
616scan(document.documentElement);
617new MutationObserver(function(mutations){
618  mutations.forEach(function(m){
619    m.addedNodes.forEach(function(node){
620      if(node.nodeType!==1){return;}
621      if(node.tagName==="IFRAME"){guardIframe(node);if(node.closest("[data-service]")){releaseBlockedEmbedSrc(node);}else{neutralize(node);}}
622      else{scan(node);}
623    });
624  });
625}).observe(document.documentElement,{childList:true,subtree:true});
626})();
627</script>
vendor: 1 bytes, line 627
627
628<script>
629  window.dataLayer = window.dataLayer || [];
630  function gtag(){dataLayer.push(arguments);}
631  gtag('consent', 'default', {
632    'analytics_storage': 'denied',
633    'ad_storage': 'denied',
634    'ad_user_data': 'denied',
635    'ad_personalization': 'denied',
636    'functionality_storage': 'denied',
637    'personalization_storage': 'denied',
638    'security_storage': 'denied',
639    'wait_for_update': 500
640  });
641</script>
641
642
643		<title>Photo Gallery | Smith Builders &amp; Developers</title>
644		<meta name="viewport" content="width=device-width, initial-scale=1">
645		<link rel="stylesheet" type="text/css" href="/assets/css/styles.min.css">
646		<link rel="stylesheet" href="/assets/css/animate.css">
647		
648		
649		
650		<link rel="stylesheet" href="/assets/fonts/font-awesome/css/all.css" crossorigin="anonymous">
651		
651<script src="https://kit.fontawesome.com/0e0232b87b.js" crossorigin="anonymous"></script>
651		
652		<link rel="stylesheet" href="/assets/fonts/font-awesome/css/font-awesome.min.css">
653		
653<script src="/assets/vendor/cdnjs.cloudflare.com/ajax/libs/modernizr/2.8.3/modernizr.min.js" type="text/javascript"></script>
653
654		
654<script src="/assets/vendor/ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
654
655		<!-- Google tag (gtag.js) -->
vendor: 145 bytes, lines 655-656
655
656		<script async  type="text/plain" data-category="analytics" data-service="google_tag_manager" src="https://www.googletagmanager.com/gtag/js?id=
656G-JDGBD24Z00
vendor: 14 bytes, lines 656-657
656"></script>
657		
657<script type="text/plain" data-category="analytics" data-service="google_analytics">
658		  
vendor: 140 bytes, lines 658-662
658window.dataLayer = window.dataLayer || [];
659		  function gtag(){dataLayer.push(arguments);}
660		  gtag('js', new Date());
661
662		  gtag('config', '
662G-JDGBD24Z00
vendor: 6 bytes, lines 662-663
662');
663		
663</script>
663
664	<link rel="stylesheet" type="text/css" href="/assets/css/cookieconsent.css">
665<link rel="stylesheet" type="text/css" href="/assets/css/iframemanager.css">
666<script src="/assets/js/iframemanager.js"></script>
vendor: 1 bytes, line 666
666
667<script type="module" src="/assets/js/cookieconsent-config.js?v=42.ab9ed733a3"></script>
667
668
669<link rel="stylesheet" type="text/css" href="//cdn.jsdelivr.net/jquery.slick/1.5.0/slick.css"/></head>
670	<body>
671	
672		<div class="tippytop">
673			<div class="row">
674				<div class="columns small-only-text-center text-right">
675					<a href="tel:9038502992"><i class="fa-sharp fa-solid fa-square-phone"></i> (903) 850-2992</a>&nbsp;&nbsp;
676					<a href="/contact/" class="button"><i class="fa-solid fa-helmet-safety"></i> Request Quote</a>
677				</div>
678			</div>
679		</div>
680
681		<div class="contain-to-grid">
682			<nav class="top-bar" data-topbar data-options="mobile_show_parent_link: false">
683				<ul class="title-area">
684					<li class="name title">
685						<img class="logo" src="/images/header-logo.png">
686					</li>
687					<li class="toggle-topbar menu-icon"><a href="#"><span>Menu</span></a></li>
688				</ul>
689
690				<section class="top-bar-section">
691					<ul class="right">
692						<li><a href="/">Home</a></li><li><a href="/about/">About</a></li><li><a href="/services/">Services</a></li><li><a  href="/photo-gallery?album_id=2">Projects</a></li><li><a href="/contact/">Contact</a></li>
693					</ul>
694				</section>
695			</nav>
696		</div>
697			
698<div class="pageHeader">
699	<div class="row">
700		<div class="small-12 columns text-center">
701                <h1></h1>
702          </div>
703  </div>
704</div>
705
706<!--Start contentMain-->
707		<div class="contentMain">
708
709
710<div class="contentMain">
711  <div class="row">
712    <div class="small-12 columns">
713    	                <h1>Photo Gallery</h1>
714                                <ul class="clearing-thumbs small-block-grid-2 medium-block-grid-3 large-block-grid-4" data-clearing>
715                                            <li>
716                            <a class="th" href="/glide/uploads/gallery/65a097b70a989/?w=1920&h=1200">
717                                <img data-caption="" alt="" longdesc="" src="/glide/uploads/gallery/65a097b70a989/?h=400&w=400&fit=crop" >
718                            </a>
719                        </li>
720                                            <li>
721                            <a class="th" href="/glide/uploads/gallery/65a097b7c18e2/?w=1920&h=1200">
722                                <img data-caption="" alt="" longdesc="" src="/glide/uploads/gallery/65a097b7c18e2/?h=400&w=400&fit=crop" >
723                            </a>
724                        </li>
725                                            <li>
726                            <a class="th" href="/glide/uploads/gallery/65a097b8c21ad/?w=1920&h=1200">
727                                <img data-caption="" alt="" longdesc="" src="/glide/uploads/gallery/65a097b8c21ad/?h=400&w=400&fit=crop" >
728                            </a>
729                        </li>
730                                            <li>
731                            <a class="th" href="/glide/uploads/gallery/65a097b9e929f/?w=1920&h=1200">
732                                <img data-caption="" alt="" longdesc="" src="/glide/uploads/gallery/65a097b9e929f/?h=400&w=400&fit=crop" >
733                            </a>
734                        </li>
735                                            <li>
736                            <a class="th" href="/glide/uploads/gallery/65a097bc3078f/?w=1920&h=1200">
737                                <img data-caption="" alt="" longdesc="" src="/glide/uploads/gallery/65a097bc3078f/?h=400&w=400&fit=crop" >
738                            </a>
739                        </li>
740                                            <li>
741                            <a class="th" href="/glide/uploads/gallery/65a097bd1d402/?w=1920&h=1200">
742                                <img data-caption="" alt="" longdesc="" src="/glide/uploads/gallery/65a097bd1d402/?h=400&w=400&fit=crop" >
743                            </a>
744                        </li>
745                                            <li>
746                            <a class="th" href="/glide/uploads/gallery/65a097be65f10/?w=1920&h=1200">
747                                <img data-caption="" alt="" longdesc="" src="/glide/uploads/gallery/65a097be65f10/?h=400&w=400&fit=crop" >
748                            </a>
749                        </li>
750                                            <li>
751                            <a class="th" href="/glide/uploads/gallery/65a097c01d618/?w=1920&h=1200">
752                                <img data-caption="" alt="" longdesc="" src="/glide/uploads/gallery/65a097c01d618/?h=400&w=400&fit=crop" >
753                            </a>
754                        </li>
755                                            <li>
756                            <a class="th" href="/glide/uploads/gallery/65a097c13ffa5/?w=1920&h=1200">
757                                <img data-caption="" alt="" longdesc="" src="/glide/uploads/gallery/65a097c13ffa5/?h=4
75700&w=400&fit=crop" >
758                            </a>
759                        </li>
760                                            <li>
761                            <a class="th" href="/glide/uploads/gallery/65a097c295903/?w=1920&h=1200">
762                                <img data-caption="" alt="" longdesc="" src="/glide/uploads/gallery/65a097c295903/?h=400&w=400&fit=crop" >
763                            </a>
764                        </li>
765                                    </ul>
766            
767    </div>
768  </div>
769</div>
770
771</div>
772
773<div class="footer">
774	<div class="row valign-middle">
775
776			<div class="columns medium-4 text-center">
777				<h4>site map</h4>
778				<p>
779					<a href="/services/">Commercial Construction</a><br>
780					<a href="/about/">About Our Company</a><br>
781					<a href="/photo-gallery?album_id=2">View Our Work</a><br>
782					<a href="/contact/">Contact Us</a><br>
783					<a href="/privacy-policy">Privacy Policy</a><br>
784					<a href="#" data-cc="show-preferencesModal">Cookie Settings</a>
785				</p>
786			</div>
787
788			<div class="columns medium-4 small-12 text-center">
789				<a href="/"><img src="/images/footer.png"></a>
790				<img src="/images/bbb.png">				
791			</div>
792
793			<div class="columns medium-4 small-12 text-center">
794				<a href="tel:9038502992" class="button large"><i class="fa-sharp fa-solid fa-square-phone"></i> (903) 850-2992</a>
795				<p>
796				&copy; 
796<script language="JavaScript" type="text/javascript">
797					now = new Date
798					theYear=now.getYear()
799					if (theYear < 1900)
800					theYear=theYear+1900
801					document.write(theYear)
802				</script>
802 Smith Builders &amp; Developers<br>Website by <a href="https://groupm7.com" target="_blank">GroupM7 Design&trade;</a>
803				</p>
804			</div>
805
806	</div>
807</div>
808
809	
809<script src="/assets/vendor/cdnjs.cloudflare.com/ajax/libs/foundation/5.5.1/js/foundation.min.js"></script>
809
810	
810<script>$(document).foundation()</script>
810
811	
811<script src="/assets/js/wow.js"></script>
811
812	
812<script>
813	$(function() {
814		$(document).foundation();
815		new WOW().init();
816	});
817	</script>
817
818	
818<script>
819		$(document).foundation({
820  equalizer : {
821    // Specify if Equalizer should make elements equal height once they become stacked.
822    equalize_on_stack: true
823  }
824});
825	</script>
825
826
827<script src="/owlcarousel/owl.carousel.min.js"></script>
vendor: 1 bytes, line 827
827
828<script>
829				$('.owl-carousel').owlCarousel({
830						loop:true,
831						margin:30,
832						nav:true,
833						navText : ["<i class='fa fa-chevron-left'></i>","<i class='fa fa-chevron-right'></i>"],
834						autoplay:true,
835						autoplayTimeout:4000,
836						autoplaySpeed: 1500,
837						autoplayHoverPause:false,
838						responsiveClass:true,
839						responsive:{
840								0:{
841										items:1,
842								},
843								642:{
844										items:2,
845								},
846								1026:{
847										items:3,
848								}
849						}
850				})
851			</script>
851
852
853
854	
854<script data-cookie-recaptcha-footer-shim="1">
855(function(){
856function patchButtonClick(){
857  if(typeof window.ensureConsentGatedButtonClick==="function"){
858    window.ensureConsentGatedButtonClick();
859    return;
860  }
861  if(typeof window.buttonClick!=="function"||!/grecaptcha/.test(window.buttonClick.toString())){
862    return;
863  }
864  if(/enableRecaptcha|activateRecaptcha|submitContactFormWithRecaptcha/.test(window.buttonClick.toString())){
865    return;
866  }
867  window.buttonClick=async function(){
868    var formEl=document.getElementById("ContactForm")||document.querySelector("form");
869    if(typeof checkRequired==="function"&&formEl){
870      var missing=checkRequired(formEl);
871      if(missing&&missing.length){return false;}
872    }
873    for(var i=0;i<100;i++){
874      if(typeof window.submitContactFormWithRecaptcha==="function"){break;}
875      await new Promise(function(r){setTimeout(r,50);});
876    }
877    if(typeof window.submitContactFormWithRecaptcha==="function"){
878      await window.submitContactFormWithRecaptcha();
879      return;
880    }
881    alert("Security verification is loading. Please try again in a moment.");
882  };
883}
884patchButtonClick();
885document.addEventListener("DOMContentLoaded",patchButtonClick);
886window.addEventListener("load",patchButtonClick);
887})();
888</script>
vendor: 1 bytes, line 888
888
889<script type="text/javascript" src="//cdn.jsdelivr.net/jquery.slick/1.5.0/slick.min.js"></script>
889</body>
890</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.