PageSourceSearch

https://capitalconstructionsd.com/home/

html capitalconstructionsd.com collected 2026-09-29 20:32:02 UTC 60,554 bytes, 1,104 lines download raw bytes

1<!DOCTYPE html>
2<!--[if IE 6]>
3<html id="ie6" lang="en-CA">
4<![endif]-->
5<!--[if IE 7]>
6<html id="ie7" lang="en-CA">
7<![endif]-->
8<!--[if IE 8]>
9<html id="ie8" lang="en-CA">
10<![endif]-->
11<!--[if !(IE 6) | !(IE 7) | !(IE 8)  ]><!-->
12<html lang="en-CA">
13<!--<![endif]-->
14<head>
15<meta charset="UTF-8" />
16<meta name="viewport" content="width=device-width" />
17<meta name="lnm.location" content="linknowmedia.today" /> 
18<title>Capital Construction LLC | General Concrete Services</title>
19<link rel="profile" href="http://gmpg.org/xfn/11" />
20<link rel="pingback" href="https://capitalconstructionsd.com/xmlrpc.php" />
21<!--[if lt IE 9]>
22<script src="https://capitalconstructionsd.com/wp-content/themes/ccon2/scripts/html5.js" type="text/javascript"></script>
22
23<![endif]-->
24	<link rel="shortcut icon" type="image/png" href="https://capitalconstructionsd.com/wp-content/uploads/sites/1302/2025/08/logo.png" />
25<link rel="preconnect" href="https://fonts.googleapis.com">
26<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
27<link href="https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400..900;1,400..900&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap" rel="stylesheet">
28<meta name='robots' content='max-image-preview:large' />
29<meta name="description" content="Capital Construction LLC prides themselves on offering top of the line general concrete services. Visit our site today!" /><meta name="keywords" content="Bryant Concrete Contractor, Bryant Concrete Company, Bryant General Contractor, Watertown Concrete Contractor, Watertown Concrete Company, Watertown General Contractor, De Smet Concrete Contractor, De Smet Concrete Company, De Smet General Contractor" /><meta name="lnm.themename" content="ccon2" /><link rel='dns-prefetch' href='//www.google.com' />
30<link rel='dns-prefetch' href='//maps.googleapis.com' />
31<link rel='dns-prefetch' href='//kit.fontawesome.com' />
32<link rel="alternate" type="application/rss+xml" title="Capital Construction LLC &raquo; Home Comments Feed" href="https://capitalconstructionsd.com/home/feed/" />
33<style id='wp-img-auto-sizes-contain-inline-css' type='text/css'>
34img:is([sizes=auto i],[sizes^="auto," i]){contain-intrinsic-size:3000px 1500px}
35/*# sourceURL=wp-img-auto-sizes-contain-inline-css */
36</style>
37<link rel='stylesheet' id='wp-block-library-css' href='https://capitalconstructionsd.com/wp-includes/css/dist/block-library/style.min.css' media='all' />
38
39<style id='global-styles-inline-css' type='text/css'>
40:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgb(6,147,227) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgb(252,185,0) 0%,rgb(255,105,0) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgb(255,105,0) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);
40--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgb(255, 255, 255), 6px 6px rgb(0, 0, 0);--wp--preset--shadow--crisp: 6px 6px 0px rgb(0, 0, 0);}:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}:where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;}:where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}
40.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;}
41/*# sourceURL=global-styles-inline-css */
42</style>
43
44<link rel='stylesheet' id='normalize-css' href='https://capitalconstructionsd.com/wp-content/themes/ccon2/normalize.min.css' media='all' />
45<link rel='stylesheet' id='foundation-css' href='https://capitalconstructionsd.com/wp-content/themes/ccon2/foundation.css' media='all' />
46<link rel='stylesheet' id='style-css' href='https://capitalconstructionsd.com/wp-content/themes/ccon2/style.css' media='all' />
47<link rel='stylesheet' id='slick-css' href='https://capitalconstructionsd.com/wp-content/themes/ccon2/slick/slick.css' media='all' />
48<link rel='stylesheet' id='pagestylephp-css' href='https://capitalconstructionsd.com/wp-content/themes/ccon2/page-css.php' media='all' />
49<script src="https://capitalconstructionsd.com/wp-content/themes/ccon2/scripts/jquery.min.js" id="jquery-js"></script>
vendor: 1 bytes, line 49
49
50<script src="https://capitalconstructionsd.com/wp-content/themes/ccon2/js/foundation/foundation.js" id="foundationjs-js"></script>
vendor: 1 bytes, line 50
50
51<script src="https://capitalconstructionsd.com/wp-content/themes/ccon2/js/foundation/foundation.topbar.js" id="topbar-js"></script>
vendor: 1 bytes, line 51
51
52<script src="https://kit.fontawesome.com/f9c8f97a41.js" id="fontawesome-js"></script>
vendor: 1 bytes, line 52
52
53<script src="https://capitalconstructionsd.com/wp-content/themes/ccon2/scripts/vendor/modernizr.js" id="modernizr-js"></script>
53
54<link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://capitalconstructionsd.com/xmlrpc.php?rsd" />
55<meta name="generator" content="WordPress 6.9.9" />
56<link rel="canonical" href="https://capitalconstructionsd.com" />
57<link rel='shortlink' href='https://capitalconstructionsd.com/?p=14' />
58<script src='https://capitalconstructionsd.com/?dm=6976c141da8fbb78fea876d5f6dfc5a6&amp;action=load&amp;blogid=1302&amp;siteid=1&amp;t=2131746618&amp;back=https%3A%2F%2Fcapitalconstructionsd.com%2Fhome%2F' type='text/javascript'></script>
58    
58<script type="text/javascript"> 
59    	var lnmcrAjaxUrl = "https://capitalconstructionsd.com/wp-admin/admin-ajax.php";
60		var lnmcrNonce   = "b83eb653df";
61
62    	// ultimate url regex
63    	function urlRegex(string){
64			var regex = "((?:(http|https|Http|Https|rtsp|Rtsp):\\/\\/(?:(?:[a-zA-Z0-9\\$\\-\\_\\.\\+\\!\\*\\'\\(\\)"
65			+ "\\,\\;\\?\\&\\=]|(?:\\%[a-fA-F0-9]{2})){1,64}(?:\\:(?:[a-zA-Z0-9\\$\\-\\_"
66			+ "\\.\\+\\!\\*\\'\\(\\)\\,\\;\\?\\&\\=]|(?:\\%[a-fA-F0-9]{2})){1,25})?\\@)?)?"
67			+ "((?:(?:[a-zA-Z0-9][a-zA-Z0-9\\-]{0,64}\\.)+"   // named host
68			+ "(?:"   // plus top level domain
69			+ "(?:aero|arpa|asia|a[cdefgilmnoqrstuwxz])"
70			+ "|(?:biz|b[abdefghijmnorstvwyz])"
71			+ "|(?:cat|com|coop|c[acdfghiklmnoruvxyz])"
72			+ "|d[ejkmoz]"
73			+ "|(?:edu|e[cegrstu])"
74			+ "|f[ijkmor]"
75			+ "|(?:gov|g[abdefghilmnpqrstuwy])"
76			+ "|h[kmnrtu]"
77			+ "|(?:info|int|i[delmnoqrst])"
78			+ "|(?:jobs|j[emop])"
79			+ "|k[eghimnrwyz]"
80			+ "|l[abcikrstuvy]"
81			+ "|(?:mil|mobi|museum|m[acdghklmnopqrstuvwxyz])"
82			+ "|(?:name|net|n[acefgilopruz])"
83			+ "|(?:org|om)"
84			+ "|(?:pro|p[aefghklmnrstwy])"
85			+ "|qa"
86			+ "|r[eouw]"
87			+ "|s[abcdeghijklmnortuvyz]"
88			+ "|(?:tel|travel|t[cdfghjklmnoprtvwz])"
89			+ "|u[agkmsyz]"
90			+ "|v[aceginu]"
91			+ "|w[fs]"
92			+ "|y[etu]"
93			+ "|z[amw]))"
94			+ "|(?:(?:25[0-5]|2[0-4]" // or ip address
95			+ "[0-9]|[0-1][0-9]{2}|[1-9][0-9]|[1-9])\\.(?:25[0-5]|2[0-4][0-9]"
96			+ "|[0-1][0-9]{2}|[1-9][0-9]|[1-9]|0)\\.(?:25[0-5]|2[0-4][0-9]|[0-1]"
97			+ "[0-9]{2}|[1-9][0-9]|[1-9]|0)\\.(?:25[0-5]|2[0-4][0-9]|[0-1][0-9]{2}"
98			+ "|[1-9][0-9]|[0-9])))"
99			+ "(?:\\:\\d{1,5})?)" // plus option port number
100			+ "(\\/(?:(?:[a-zA-Z0-9\\;\\/\\?\\:\\@\\&\\=\\#\\~"  // plus option query params
101			+ "\\-\\.\\+\\!\\*\\'\\(\\)\\,\\_])|(?:\\%[a-fA-F0-9]{2}))*)?"
102			+ "(?:\\b|$)";
103       		if (regex.match(string)) {
104				return 'Error: Urls are not allowed.';
105    		} else {
106				return true; // invalid email.
107			}
108    	}
109
110    	// detect urls in strings
111		function detectUrl(string) {
112    		if (string.match(/(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/)) {
113				return true;
114    		} else {
115				return false;
116			}
117		}
118
119    	function validateTextareaValue(textarea){
120			if (textarea.length<8 || textarea.length>1000) {
121				return 'Error: Your review text must be between 8 and 1000 characters in length.';
122			} else {
123				if (detectUrl(textarea) == true) {
124					// Url detected in textarea body. 
125					return 'Error: Your review text must NOT contain any urls.';
126	    		} else {
127					return true;
128				}
129			}
130    	}
131
132    	// for text
133    	function reviewTextValidation(){
134			var erriddiv  = '#lnmreviewtext-error';
135			var validate = urlRegex($('#lnmreviewtext').val());
136			var validated = validateTextareaValue($('#lnmreviewtext').val());
137			if (validated !== true || validate !== true) {
138				$('#lnmreviewtext').addClass('review-error');
139				$(erriddiv).html(validated).slideDown(0);
140				return false;
141			} else {
142				return true;
143			};
144    	}
145
146
147
148		
149		
150		// for input name
151		function validateNameValue(name){
152			var regex = /^[a-zA-Z\s]+$/;
153			if (name.length<3 || name.length>32) {
154				return 'Error: Your review name must be between 3 and 32 characters in length.';
155			} else {
156				if (regex.test(name)) {
157					return true;
158				} else {
159					return 'Error: Please use only letters and spaces.';
160				}
161			}
162		}
163		// for name
164		function reviewNameValidation(){
165			var erriddiv  = '#lnmreviewname-error';
166			var validated = validateNameValue($('#lnmreviewname').val());
167			if (validated !== true) {
168				$('#lnmreviewname').addClass('review-error');
169				$(erriddiv).html(validated).slideDown(0);
170				return false;
171			} else {
172				return true;
173			};
174		}
175
176		
177		
178
179		// for input email
180		function validateEmailValue(email){
181			var regex = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
182				if (regex.test(email)) {
183				return true;
184			} else {
185				// invalid email.
186				return 'Error: The email provided is invalid.';
187			}
188		}
189
190		// for email
191		function reviewEmailValidation(){
192			var erriddiv  = '#lnmreviewemail-error';
193			var validated = validateEmailValue($('#lnmreviewemail').val());
194			if (validated !== true) {
195				$('#lnmreviewemail').addClass('review-error');
196				$(erriddiv).html(validated).slideDown(0);
197				return false;
198			} else {
199				return true;
200			};
201		}
202
203		
204
205    	// for terms
206    	function reviewTermsValidation(){
207			var erriddiv  = '#lnmreviewterms-error';
208			if (!$('#lnmreviewterms').is(':checked')) {
209				$('#lnmreviewterms').addClass('review-error');
210				$(erriddiv).html('You must agree to terms.').slideDown(0);
211				return false;
212			} else {
213				return true;
214			};
215    	}
216
217    	function reviewAllValidation(){
218    		var isvalid = true;
219			
220			// Validate Terms
221			var terms	= reviewTermsValidation();
222			if (terms === false) {
223				isvalid = false;
224			};
225
226			// Validate Text
227			var text	= reviewTextValidation();
228			if (text === false) {
229				isvalid = false;
230			};
231									// Validate Author
232			var name	= reviewNameValidation();
233			if (name === false) {
234				isvalid = false;
235			};
236									// Validate Email
237			var email	= reviewEmailValidation();
238			if (email === false) {
239				isvalid = false;
240			};
241						return isvalid;
242    	}
243
244
245    	$(function(){
246    		$('.review-error-container').slideUp(0);
247    		$('.lnmcr-submit').addClass('disabled');
248
249
250			$( '#lnmreviewform input, #lnmreviewform textarea' ).on("change", function(){
251				var erriddiv  = '#'+$(this).attr('id')+'-error';
252				$(this).removeClass('review-error');
253				$(erriddiv).empty().slideUp(0);
254			});
255			$( '#lnmreviewform input, #lnmreviewform textarea' ).on("blur", function(){
256				if ($(this).attr('type') !== 'radio') {
257
258																// lnmreviewname
259						if ($(this).attr('id') === 'lnmreviewname') {
260							reviewNameValidation();
261						};
262																// lnmreviewemail
263						if ($(this).attr('id') === 'lnmreviewemail') {
264							reviewEmailValidation();
265						};
266											// lnmreviewtext
267						if ($(this).attr('id') === 'lnmreviewtext') {
268							reviewTextValidation();
269						};
270						// lnmreviewterms
271						if ($(this).attr('id') === 'lnmreviewterms') {
272							reviewTermsValidation();
273						};
274				};
275			});
276
277			$('#lnmreviewterms').change(function(){
278				if (this.checked) {
279					var isvalidreview = reviewAllValidation();
280					if (isvalidreview === false) {
281						$(this).prop('checked', false);
282						$('.lnmcr-submit').addClass('disabled');
283					} else {
284						$('.lnmcr-submit').removeClass('disabled');
285					};
286				};
287			});
288
289			$( '.lnmcr-submit' ).on( 'click', function(e) {
290				e.preventDefault();
291				var isvalidreview = reviewAllValidation();
292				if (isvalidreview === true) {
293		    		var serializedata = $("#lnmreviewform").serialize();
294		    		serializedata = serializedata.split('&');
295		    		for (var i = serializedata.length - 1; i >= 0; i--) {
296		    			if (!serializedata[i].startsWith('lnmcr')) {
297		    				delete serializedata[i];
298		    			}
299		    		};
300		    		serializedata = serializedata.flat().join("&");
301
302					$.ajax({
303					  url:         lnmcrAjaxUrl,                   // no “?action” here
304					  method:      'POST',
305					  dataType:    'json',                         // expect JSON back
306					  crossDomain: true,
307					  xhrFields:   { withCredentials: true },      // send cookies/session
308					  data: {
309					    action: 'lnmcr_ajax_post',
310					    security: lnmcrNonce,    
311					    lnmreviewterms:    $('#lnmreviewterms').val(),
312					    lnmreviewserialized: serializedata,
313					  },
314					  beforeSend() {
315					    $('#lnmreviewform').slideUp(250);
316					    $('#review-response-container')
317					      .html('<i class="fa-solid fa-spinner fa-spin-pulse"></i>');
318					  },
319					  success(response) {
320					  	console.log(response);
321					    setTimeout(() => {
322					   	 $('#review-response-container').html('<span style="background:white;padding:10px;border-radius:4px;display:block">'+response.data+'<span>');
323					    }, 3500);
324					  },
325					  error(xhr) {
326					    console.error('AJAX error', xhr.status, xhr.responseText);
327					    $('#review-response-container')
328					      .html('<span style="background:white;padding:10px;border-radius:4px;display:block" class="error-message">Unexpected error occurred.</span>');
329					  }
330					});
331
332				}
333			});
334    	});
335    </script>
335
336<!-- pulled from default Schema Settings & Modified by LinkNow Media Customer Reviews -->
336<script type="application/ld+json">{"@context":"http:\/\/schema.org\/","@type":"LocalBusiness","name":"Capital Construction LLC","description":"Concrete Contractor, Concrete Company and General Contractor","image":"https:\/\/capitalconstructionsd.com\/wp-content\/themes\/ccon2\/images\/rich-card.png","url":"https:\/\/capitalconstructionsd.com","logo":"https:\/\/capitalconstructionsd.com\/wp-content\/uploads\/sites\/1302\/2025\/08\/logo.png","faxNumber":"","email":"[email protected]","areaServed":"Bryant, Watertown and De Smet","paymentAccepted":"","address":{"@type":"PostalAddress","streetAddress":"","addressLocality":"Lake Norden","addressRegion":"SD","postalCode":"57248","postOfficeBoxNumber":""},"sameAs":[],"contactPoint":[{"@type":"ContactPoint","telephone":"+1-605-860-9102","contactType":"customer service"}],"telephone":"+1-605-860-9102","openingHoursSpecification":[{"@type":"OpeningHoursSpecification","dayOfWeek":"http:\/\/schema.org\/Monday","opens":"07:00","closes":"17:00"},{"@type":"OpeningHoursSpecification","dayOfWeek":"http:\/\/schema.org\/Tuesday","opens":"07:00","closes":"17:00"},{"@type":"OpeningHoursSpecification","dayOfWeek":"http:\/\/schema.org\/Wednesday","opens":"07:00","closes":"17:00"},{"@type":"OpeningHoursSpecification","dayOfWeek":"http:\/\/schema.org\/Thursday","opens":"07:00","closes":"17:00"},{"@type":"OpeningHoursSpecification","dayOfWeek":"http:\/\/schema.org\/Friday","opens":"07:00","closes":"17:00"}],"review":[]}</script>
336 
337        <!-- Google tag (gtag.js) (GA4) -->
vendor: 73 bytes, lines 337-338
337 
338        <script async src="https://www.googletagmanager.com/gtag/js?id=
338G-2DTY907RWG
vendor: 21 bytes, lines 338-339
338"></script> 
339        
339<script>
340            
vendor: 164 bytes, lines 340-343
340window.dataLayer = window.dataLayer || [];
341            function gtag(){dataLayer.push(arguments);} 
342            gtag('js', new Date());
343            gtag('config', '
343G-2DTY907RWG
vendor: 13 bytes, lines 343-344
343'); 
344        
344</script>
344
345        	
346	<meta name="townorder" id="townorder" content="Bryant, Watertown and De Smet">
347<meta name="marketspecialties" id="marketspecialties" content="Concrete Contractor, Concrete Company and General Contractor">
348<meta name="city" id="city" content="Lake Norden">
349<link rel='stylesheet' id='datetimecss-css' href='https://capitalconstructionsd.com/wp-content/plugins/linknowmedia-email/styles/jquery.datetimepicker.css' media='all' />
350
351</head>
352<body class="wp-singular page-template-default page page-id-14 wp-theme-ccon2">
353
354<header class="header-wrapper header-home">
355    <div class="mobile-menu hide-for-large-up">
356        <span class="mobile-navigation navigation-toggle"><i class="toggle-bars"></i></span>
357        <div class="navigation-wrapper fullwidth-navigation">
358            <nav  class="top-bar fading"  data-options=" custom_back_text: true; back_text: Back;" data-topbar itemscope itemtype="http://www.schema.org/SiteNavigationElement">
359	<ul class="title-area">
360		<li class="name"></li>
361		<li class="toggle-topbar menu-icon"><a href="#"><span>Menu</span></a></li>
362	</ul>
363	  <div class="top-bar-section section">
364	<div class="menu"><ul>
365<li class="page_item page-item-14 current_page_item active"><a href="https://capitalconstructionsd.com/home/" aria-current="page">Home</a></li>
366<li class="page_item page-item-15 page_item_has_children has-dropdown not-click"><a href="https://capitalconstructionsd.com/about-us/">About</a>
367<ul class='dropdown'>
368	<li class="page_item page-item-51"><a href="https://capitalconstructionsd.com/about-us/blog/">Blog</a></li>
369	<li class="page_item page-item-47"><a href="https://capitalconstructionsd.com/about-us/reviews/">Reviews</a></li>
370</ul>
371</li>
372<li class="page_item page-item-16 page_item_has_children has-dropdown not-click"><a href="https://capitalconstructionsd.com/services/">Services</a>
373<ul class='dropdown'>
374	<li class="page_item page-item-18"><a href="https://capitalconstructionsd.com/services/concrete-contractor/">Concrete Contractor</a></li>
375	<li class="page_item page-item-20"><a href="https://capitalconstructionsd.com/services/concrete-driveways/">Concrete Driveways</a></li>
376	<li class="page_item page-item-21"><a href="https://capitalconstructionsd.com/services/concrete-flooring/">Concrete Flooring</a></li>
377	<li class="page_item page-item-22"><a href="https://capitalconstructionsd.com/services/concrete-foundations/">Concrete Foundations</a></li>
378	<li class="page_item page-item-23"><a href="https://capitalconstructionsd.com/services/concrete-installation/">Concrete Installation</a></li>
379	<li class="page_item page-item-26"><a href="https://capitalconstructionsd.com/services/concrete-patios/">Concrete Patios</a></li>
380	<li class="page_item page-item-27"><a href="https://capitalconstructionsd.com/services/concrete-removal/">Concrete Removal</a></li>
381	<li class="page_item page-item-28"><a href="https://capitalconstructionsd.com/services/concrete-repair/">Concrete Repair</a></li>
382	<li class="page_item page-item-29"><a href="https://capitalconstructionsd.com/services/concrete-resurfacing/">Concrete Resurfacing</a></li>
383	<li class="page_item page-item-30"><a href="https://capitalconstructionsd.com/services/concrete-staining/">Concrete Staining</a></li>
384	<li class="page_item page-item-31"><a href="https://capitalconstructionsd.com/services/concrete-stairs/">Concrete Stairs</a></li>
385	<li class="page_item page-item-32"><a href="https://capitalconstructionsd.com/services/concrete-walkways/">Concrete Walkways</a></li>
386	<li class="page_item page-item-154"><a href="https://capitalconstructionsd.com/services/construction-contractor/">Construction Contractor</a></li>
387	<li class="page_item page-item-33"><a href="https://capitalconstructionsd.com/services/decorative-concrete/">Decorative Concrete</a></li>
388	<li class="page_item page-item-34"><a href="https://capitalconstructionsd.com/services/foundation-repair/">Foundation Repair</a></li>
389	<li class="page_item page-item-157"><a href="https://capitalconstructionsd.com/services/framing-services/">Framing Services</a></li>
390	<li class="page_item page-item-35"><a href="https://capitalconstructionsd.com/services/garage-concrete/">Garage Concrete</a></li>
391	<li class="page_item page-item-148"><a href="https://capitalconstructionsd.com/services/general-contractor/">General Contractor</a></li>
392	<li class="page_item page-item-159"><a href="https://capitalconstructionsd.com/services/patio-construction/">Patio Construction</a></li>
393	<li class="page_item page-item-37"><a href="https://capitalconstructionsd.com/services/stamped-concrete/">Stamped Concrete</a></li>
394	<li class="page_item page-item-120"><a href="https://capitalconstructionsd.com/services/service-areas/">Service Areas</a></li>
395</ul>
396</li>
397<li class="page_item page-item-38"><a href="https://capitalconstructionsd.com/faq/">FAQ</a></li>
398<li class="page_item page-item-39"><a href="https://capitalconstructionsd.com/gallery/">Gallery</a></li>
399<li class="page_item page-item-40"><a href="https://capitalconstructionsd.com/contact-us/">Contact</a></li>
400</ul></div>
401</div></nav>
402         </div>
403     </div>
404    <div class="row full header-bar animated onload-50">
405        <div class="large-4 columns strip-padding">
406            <div class="company-details text-center">
407                <a href="/" title="Home"><img src="https://capitalconstructionsd.com/wp-content/uploads/sites/1302/2025/08/logo.png" width="200" height="199" alt="Capital Construction LLC Logo" class="hide-for-large-up">
408                <p class="title">Concrete Contractor and General Contractor</p>
409             </div>
410         </div>
411        <div class="large-6 columns navigation-wrapper strip-padding hide-for-medium-down">
412            <nav  class="top-bar fading"  data-options=" custom_back_text: true; back_text: Back;" data-topbar itemscope itemtype="http://www.schema.org/SiteNavigationElement">
413	<ul class="title-area">
414		<li class="name"></li>
415		<li class="toggle-topbar menu-icon"><a href="#"><span>Menu</span></a></li>
416	</ul>
417	  <div class="top-bar-section section">
418	<div class="menu"><ul>
419<li class="page_item page-item-14 current_page_item active"><a href="https://capitalconstructionsd.com/home/" aria-current="page">Home</a></li>
420<li class="page_item page-item-15 page_item_has_children has-dropdown not-click"><a href="https://capitalconstructionsd.com/about-us/">About</a>
421<ul class='dropdown'>
422	<li class="page_item page-item-51"><a href="https://capitalconstructionsd.com/about-us/blog/">Blog</a></li>
423	<li class="page_item page-item-47"><a href="https://capitalconstructionsd.com/about-us/reviews/">Reviews</a></li>
424</ul>
425</li>
426<li class="page_item page-item-16 page_item_has_children has-dropdown not-click"><a href="https://capitalconstructionsd.com/services/">Services</a>
427<ul class='dropdown'>
428	<li class="page_item page-item-18"><a href="https://capitalconstructionsd.com/services/concrete-contractor/">Concrete Contractor</a></li>
429	<li class="page_item page-item-20"><a href="https://capitalconstructionsd.com/services/concrete-driveways/">Concrete Driveways</a></li>
430	<li class="page_item page-item-21"><a href="https://capitalconstructionsd.com/services/concrete-flooring/">Concrete Flooring</a></li>
431	<li class="page_item page-item-22"><a href="https://capitalconstructionsd.com/services/concrete-foundations/">Concrete Foundations</a></li>
432	<li class="page_item page-item-23"><a href="https://capitalconstructionsd.com/services/concrete-installation/">Concrete Installation</a></li>
433	<li class="page_item page-item-26"><a href="https://capitalconstructionsd.com/services/concrete-patios/">Concrete Patios</a></li>
434	<li class="page_item page-item-27"><a href="https://capitalconstructionsd.com/services/concrete-removal/">Concrete Removal</a></li>
435	<li class="page_item page-item-28"><a href="https://capitalconstructionsd.com/services/concrete-repair/">Concrete Repair</a></li>
436	<li class="page_item page-item-29"><a href="https://capitalconstructionsd.com/services/concrete-resurfacing/">Concrete Resurfacing</a></li>
437	<li class="page_item page-item-30"><a href="https://capitalconstructionsd.com/services/concrete-staining/">Concrete Staining</a></li>
438	<li class="page_item page-item-31"><a href="https://capitalconstructionsd.com/services/concrete-stairs/">Concrete Stairs</a></li>
439	<li class="page_item page-item-32"><a href="https://capitalconstructionsd.com/services/concrete-walkways/">Concrete Walkways</a></li>
440	<li class="page_item page-item-154"><a href="https://capitalconstructionsd.com/services/construction-contractor/">Construction Contractor</a></li>
441	<li class="page_item page-item-33"><a href="https://capitalconstructionsd.com/services/decorative-concrete/">Decorative Concrete</a></li>
442	<li class="page_item page-item-34"><a href="https://capitalconstructionsd.com/services/foundation-repair/">Foundation Repair</a></li>
443	<li class="page_item page-item-157"><a href="https://capitalconstructionsd.com/services/framing-services/">Framing Services</a></li>
444	<li class="page_item page-item-35"><a href="https://capitalconstructionsd.com/services/garage-concrete/">Garage Concrete</a></li>
445	<li class="page_item page-item-148"><a href="https://capitalconstructionsd.com/services/general-contractor/">General Contractor</a></li>
446	<li class="page_item page-item-159"><a href="https://capitalconstructionsd.com/services/patio-construction/">Patio Construction</a></li>
447	<li class="page_item page-item-37"><a href="https://capitalconstructionsd.com/services/stamped-concrete/">Stamped Concrete</a></li>
448	<li class="page_item page-item-120"><a href="https://capitalconstructionsd.com/services/service-areas/">Service Areas</a></li>
449</ul>
450</li>
451<li class="page_item page-item-38"><a href="https://capitalconstructionsd.com/faq/">FAQ</a></li>
452<li class="page_item page-item-39"><a href="https://capitalconstructionsd.com/gallery/">Gallery</a></li>
453<li class="page_item page-item-40"><a href="https://capitalconstructionsd.com/contact-us/">Contact</a></li>
454</ul></div>
455</div></nav>
456         </div>
457        <div class="large-2 columns header-cta">
458            <a class="header-cta-btn" href="tel:+16058609102">(605) 860-9102 </a>
459         </div>
460     </div>
461</header>
462<div class="row full hero-section hide-for-medium-down" data-equalizer >
463    <div class="large-4 columns concrete-bg animated onload-50 mobile-bg-removal" data-equalizer-watch >
464        <div class="hero-caption">
465            <img src="https://capitalconstructionsd.com/wp-content/uploads/sites/1302/2025/08/logo.png" width="200" height="199" alt="Capital Construction LLC Logo">
466            <p class="title">Concrete Contractor and General Contractor</p>
467         </div>
468     </div>
469    <div class="large-8 columns slider-wrapper hide-for-medium-down strip-padding animated onload-50" data-equalizer-watch >
470        <div class="slick-header-slider">
471
472			<div>
473				<img src='https://capitalconstructionsd.com/wp-content/uploads/sites/1302/2025/08/slider-1.jpg' alt='Bryant Concrete Contractor, Concrete Company and General Contractor' />
474			</div>
475			<div>
476				<img src='https://capitalconstructionsd.com/wp-content/uploads/sites/1302/2025/08/slider-2.jpg' alt='Bryant Concrete Contractor, Concrete Company and General Contractor' />
477			</div>
478			<div>
479				<img src='https://capitalconstructionsd.com/wp-content/uploads/sites/1302/2025/08/slider-3.jpg' alt='Bryant Concrete Contractor, Concrete Company and General Contractor' />
480			</div></div>
481<div class="slick-button-container"></div>	
481<script>
482	jQuery(function($){
483		// Prefer the specific instance by ID, fall back to class if needed
484		var $slider = $("#slick-0");
485		if (!$slider.length) $slider = $(".slick-header-slider").first();
486		if (!$slider.length) return;
487
488		var hasMobileImage = true;
489		var useStatic = hasMobileImage && window.matchMedia("(max-width: 1024px)").matches;
490
491		if (useStatic) {
492			// Replace the slider container with the static image
493			var $img = $("<img>", {
494				src: "https://capitalconstructionsd.com/wp-content/themes/ccon2/images/slider/x.png",
495				alt: "Bryant, Watertown and De Smet Concrete Contractor, Concrete Company and General Contractor"
496			});
497			$slider.replaceWith($img);
498			return; // do NOT initialize slick
499		}
500
501		// Initialize slick as usual
502		$slider.slick({
503			slide: 'div',
504			centerMode: false,
505			focusOnSelect: false,
506
507			accessibility: true,
508			pauseOnHover: false,
509			draggable: true,
510			touchMove: true,
511			infinite: true,
512			arrows: false,
513			useCSS: true,
514			swipe: true,
515
516			pauseOnDotsHover: false,
517			adaptiveHeight: false,
518			variableWidth: false,
519			swipeToSlide: false,
520			vertical: false,
521			autoplay: true,
522			dots: false,
523			fade: true,
524			rtl: false,
525
526			appendArrows: '.slick-button-container',
527
528			autoplaySpeed: 5000,
529			easing: 'swing',
530			speed: 1000,
531			slidesToShow: 1,
532			centerPadding: '0',
533			asNavFor: ''
534					});
535	});
536	</script>
536
537	
538     </div>
539 </div>
540<div class="row full tagline-row hide-for-medium-down animated onload-50 from-top">
541    <div class="large-6 columns text-right right strip-padding">
542        <span class="scroll-arrow"></span>
543        <p>Located in Lake Norden servicing Bryant, Watertown, De Smet and surrounding areas</p>
544     </div>
545 </div>
546<div class="mobile-sticky-cta">
547  <a class="sticky-btn" href="tel:+16058609102">Call Us Now </a>
548  <a href="/contact-us/" class="sticky-btn alt" title="Send Us A Message">Send Us A Message</a>
549 </div><div class="clearfix"></div><main >
550<article class="section-article" >	
551    <div class="content-wrapper side-buffer animated onload-50 from-top">
552        <div class="row full home-bg1 mobile-bg-removal">
553            <div class="large-6 columns end blue-overlay white-text vertical-padding-x-large strip-padding">
554                <div class="horizontal-padding-medium">
555                    <h1>Concrete Contractor</h1>
556                    <p>Capital Construction LLC is a recognized leader in the concrete construction industry. Our expertise in concrete is unparalleled. For many years, we have been providing customized and comprehensive concrete services.</p>
557                    <p>If you need professional advice for your next project or would like to speak to one of our specialists, feel free to contact us at (605) 860-9102 now.</p>
558                 </div>
559                <div class="top-padding-xs">
560                    <a class="cta-btn" href="tel:+16058609102">CALL NOW </a>
561                 </div>
562             </div>            
563         </div>
564            <div class="home-mobile-bg-1"> </div>
565     </div>
566    <div class="content-wrapper side-buffer grey-bg top-space">
567        <div class="row vertical-padding-large scrollfade from-top" data-equalizer >
568            <div class="large-4 columns home-bg2 hide-for-medium-down mobile-bg-removal" data-equalizer-watch >
569             </div>
570            <div class="large-8 columns vertical-padding-xs mobile-vpad-none" data-equalizer-watch >
571                <h2>Capital Construction LLC: The Concrete Contractor You Can Trust</h2>
572                <p>We don’t believe in a “one-size fits all” approach. Every project we complete is unique, and so are our solutions. Our specialists are very attentive to each of our client’s needs, and our staff makes every effort to complete all projects within the agreed-upon expectations on timing, delivery, type of service, and budget. As a trusted partner for all concreting needs, we strive to integrate sustainability into all of our practices and products. Our products are non-toxic, environmentally friendly, and sustainable. We ensure that the highest quality and safety standards are met throughout the entire duration of your project, so you have the best possible experience as a customer.
573                <h2>Customized Concrete Solutions for Any Property</h2>
574                <p>When time is of the essence and you need affordable and attractive concrete floors for your outdoor or indoor surfaces, our friendly and professional team is here to assist you. We provide all-inclusive concrete solutions and services from start to finish. We are known for our record of success in planning, executing, and finishing concrete projects of all sizes and complexities. Our concrete installation, repair, resurfacing, removal, and flooring services will enhance the look and feel of any property as well as increase the value and appeal. No matter what type of property you have, or how complex your project is, we can find solutions for every concrete challenge.</p>
575             </div>
576         </div>
577     </div>
578    <div class="content-wrapper side-buffer top-space">
579        <div class="row full scrollfade from-top" data-equalizer >
580            <div class="large-6 columns home-bg3 hide-for-medium-down mobile-bg-removal" data-equalizer-watch >
581             </div>
582            <div class="large-6 columns grey-bg vertical-padding-medium horizontal-padding-medium" data-equalizer-watch >
583                <h2>A Wide Range of Concrete Construction Services</h2>
584                <p>Our concrete contractors will take the time to assess your specific needs, understand your requirements, and offer unique services and solutions that cater to your project. Thanks to our wide range of products, materials, and methods, we can easily adapt our services to fit your demands, budget, and schedule.</p>
585                <p>Our wide range of concrete solutions and services include but are not limited to:</p>
586                <ul class="square">
587                    <li>Installation, removal, and repair</li>
588                    <li>Staining</li>
589                    <li>Decorative concrete</li>
590                    <li>Walkways, patios, and driveways</li>
591                    <li>Stamped concrete</li>
592                    <li>And more</li>
593                </ul>
594             </div>
595         </div>
596     </div>
597    <div class="content-wrapper side-buffer top-space">
598        <div class="row scrollfade from-top text-center" data-equalizer >
599            <div class="large-6 medium-6 columns">
600                <img src="https://capitalconstructionsd.com/wp-content/uploads/sites/1302/2025/08/B1.png" width="300" height="300" loading="lazy" alt="Free Estimates">
601             </div>
602            <div class="large-6 medium-6 columns">
603                <img src="https://capitalconstructionsd.com/wp-content/uploads/sites/1302/2025/08/B2.png" width="300" height="300" loading="lazy" alt="Licensed and Insured">
604             </div>
605         </div>
606     </div>
607    <div class="content-wrapper side-buffer texture-bg top-space">
608        <div class="row vertical-padding-large scrollfade from-top" data-equalizer >            
609            <div class="large-8 columns black-text vertical-padding-xs mobile-vpad-none" data-equalizer-watch >
610                <h2>Trained Concrete Contractors</h2>
611                <p>Our highly trained workforce is our major asset. In addition to being certified and insured, our concrete specialists are continually trained in acquiring the most innovative techniques and use high-quality products. We can solve various concrete problems, offer unique solutions, suggest stunning designs, and create long-lasting concrete surfaces.</p>
612                <h2>Superior and Customized Concrete Results</h2>
613                <p>Our reputation has been built on integrity and transparency. This is why we take pride in offering a detailed consultation to all our clients. Don’t waste any more time looking for the best local concrete contractor in your area. Get in touch with our qualified and trusted team of concrete experts now at (605) 860-9102.</p>
614                <p><a href="/contact-us/" class="cta-link" title="Contact Us">Let’s get started on your project!</a></p>
615             </div>
616            <div class="large-4 columns home-bg4 hide-for-medium-down mobile-bg-removal" data-equalizer-watch >
617             </div>
618         </div>
619     </div>
620 </article>
621</main><div class="clearfix"></div>
622<footer class="footer-wrapper">
623    <div class="content-wrapper side-buffer footer-bg">
624        <div class="row wide footer-inner vertical-padding-x-large">
625            <div class="large-4 columns footer-address">
626                <h2>Contact Info</h2>
627                <p>Lake Norden, SD 57248</p>
628                <p>Phone: (605) 860-9102</p>
629                <p>Email: [email protected]</p>
630             </div>
631            <div class="large-4 columns footer-hours text-center">
632                <h2>Opening Hours</h2>
633                <p>Mon - Fri: 7:00AM - 5:00PM</p>
634                <p>Sat: By Appointment Only</p>
635                <p>Sun: Closed</p>
636             </div>
637            <!-- [content class="large-4 columns footer-payment text-center"]
638                <h2>Payment Methods</h2>
639                <img src='https://capitalconstructionsd.com/wp-content/themes/ccon2/images/creditcards/Visa.png' title='Visa' alt='Visa payment icon'> <img src='https://capitalconstructionsd.com/wp-content/themes/ccon2/images/creditcards/Mastercard.png' title='Mastercard' alt='Mastercard payment icon'> <img src='https://capitalconstructionsd.com/wp-content/themes/ccon2/images/creditcards/American-Express.png' title='American Express' alt='American Express payment icon'> <img src='https://capitalconstructionsd.com/wp-content/themes/ccon2/images/creditcards/Discover.png' title='Discover' alt='Discover payment icon'> <img src='https://capitalconstructionsd.com/wp-content/themes/ccon2/images/creditcards/Cash.png' title='Cash' alt='Cash payment icon'> <img src='https://capitalconstructionsd.com/wp-content/themes/ccon2/images/creditcards/Check.png' title='Check' alt='Check payment icon'>
640            [/content] -->
641            <!-- [content class="large-2 columns text-center strip-padding footer-social hide-if-no-social"]
642                <h2>Follow Us</h2>
643                [icon link="" icon="fa fa-instagram" title="Instagram" target="blank" class=""] 
644                [icon link="" icon="fa fa-facebook" title="Facebook" target="blank" class=""] 
645                [icon link="" icon="fa fa-map-marker" title="Google Maps" target="blank" class=""]
646            [/content] -->
647            <div class="large-4 columns lnm-logo text-right">
648                <img src="https://linknow.com/linknow_images/linknow-logo-grey.png" alt="Website Hosted By LinkNow™ Media" width="200" height="75" loading="lazy" />
649             </div>
650         </div>
651     </div>
652</footer><div class="lnm-policies text-center lnm-policy-footer-links"><ul class="lnm-policy-useful-links"><li class="lnm-policy-list-item"><a href="https://capitalconstructionsd.com/policy/privacy-policy/" class="lnm-policy-list-link">Privacy Policy</a></li></ul></div><style>.lnm-policies {background: white;}.lnm-policies li, .lnm-policies li.lnm-policy-list-item{display: inline-block;padding: 5px;}.lnm-policies a, .lnm-policies a.lnm-policy-list-link {color:#333333;}.lnm-policies ul.useful-links, .lnm-policies ul.lnm-policy-useful-links {color:#333333;}cmp-toolbar {display: inline-block !important;}@media (width <= 767px) {.lnm-policies { padding-bottom:100px;}}</style>
653
654<div class="slide-out-wrapper hide-for-medium-down" id="slide-out">
655    <span class="form-toggle"><i class="toggle-left"></i></span>
656    <div class="slide-out-content">
657        <div class="slide-out-form">
658            <h3>Contact us now to get a free estimate</h3>
659            <form id="contactForm" class="contactForm" method="POST">
660                <input type="hidden" name="submitContact">
661                <div class="groupWrapper">
662                    <input class="slideOutInput validate[required] shortField" type="text" name="fullName" id="fullName" title="Full Name" placeholder="Enter your full name...">
663                </div>
664                <div class="groupWrapper">
665                    <input class="slideOutInput validate[required,custom[phone]]" type="text" name="phoneNumber" id="phoneNumber" title="Phone Number" placeholder="Enter your phone number...">
666                </div>
667                <div class="groupWrapper">
668                    <input class="slideOutInput validate[required,custom[emailAddress]]" type="text" name="emailAddress" id="emailAddress" title="Email Address" placeholder="Enter your email address...">
669                </div>
670                <div class="groupWrapper">
671                    <textarea class="validate[required]" type="text" name="emailMessage" id="emailMessage" title="Your Message" placeholder="Enter your message..."></textarea>
672                </div>
673                
674                <div class="submitWrapper slideOut">            
675                    <button type="submit" class="submit right" name="submitContact" id="submitContact">SEND</button>
676                </div>
677            <input type="hidden" name="akismet_check" value="1"><input type="hidden" name="lnm_recaptcha" value="1"><input type="hidden" name="g-recaptcha-response" value=""></form>
678         </div>
679      
680     </div>
681
682 </div>
683<script type="speculationrules">
684{"prefetch":[{"source":"document","where":{"and":[{"href_matches":"/*"},{"not":{"href_matches":["/wp-*.php","/wp-admin/*","/wp-content/uploads/sites/1302/*","/wp-content/*","/wp-content/plugins/*","/wp-content/themes/ccon2/*","/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]}
685</script>
vendor: 1 bytes, line 685
685
686<script type="text/javascript">!function(){ var b=function(){ window.__AudioEyeSiteHash = "548b7c2dcc7a2fb25820d2cc6e545cca"; var a=document.createElement("script"); a.src="https://wsmcdn.audioeye.com/aem.js"; a.type="text/javascript"; a.setAttribute("async",""); document.getElementsByTagName("body")[0].appendChild(a)}; "complete"!==document.readyState?window.addEventListener?window.addEventListener("load",b):window.attachEvent&&window.attachEvent("onload",b):b()}(); </script>
686
687<style>
688.lnmreviewform {
689	width: 750px;
690	max-width: 100%;
691	margin: 0 auto;
692}
693.lnmreviewform #lnmreviewtext {
694	min-height: 150px;
695}
696.lnmcr-review-card {
697	margin: 45px auto;
698	padding: 45px 45px 65px 45px;
699	border: 1px solid #CCCCCC;
700	width: 100%;
701	max-width: 750px;
702}
703.lnmcr-review-card-title h3 {
704	margin: 0 auto;
705
706	padding: 0 0 10px 0;
707}
708.lnmcr-review-card-rating {
709	color:#ffcc00;
710	width: 100%;
711	max-width: 165px;
712	font-size: 28px;
713	display: inline-block;
714	float: left;
715}
716.lnmcr-review-card-author {
717	display: inline-block;
718	float: right;
719	padding: 0 25px 0 0;
720
721}
722.lnmcr-review-card-text {
723	margin: 20px 0;
724}
725.lnmcr-review-card-author span {
726	text-transform: capitalize;
727	display: block;
728	position: relative;
729	font-style: italic;
730	font-weight: bold;
731}
732
733
734.lnmcr-review-card-author span::before {
735	content: "";
736	display: block;
737	width: 15px;
738	height: 1px;
739	background: #CCCCCC;
740	position: absolute;
741	top: 14px;
742	left: -25px;
743}
744
745.lnmcr-row {
746	padding-top: 45px;
747	padding-bottom: 45px;
748}
749.star-rating {
750  font-size: 40px;
751  padding: 0.25em 0.375em;
752  display: inline-flex;
753  flex-flow: row-reverse;
754
755  overflow: hidden;
756  border-radius: 0.75em;
757  background-color: white;
758}
759.star-rating input {
760	appearance:initial; 
761  cursor: pointer;
762  position: relative;
763  padding: 0;
764  width: 1em;
765  height: 1em;
766  float: left;
767  text-align: center;
768  line-height: 1em;
769}
770.star-rating input::before,
771.star-rating input::after {
772  display: block;
773  top: 0;
774  bottom: 0;
775  left: 0;
776  right: 0;
777  position: absolute;
778}
779.star-rating input::before {
780  content: "";
781  background-color: white;
782}
783.star-rating input::after {
784  content: "\2605";
785  color: #CCCCCC;
786-webkit-transition: color 0.2s ease;
787-moz-transition: color 0.2s ease;
788-ms-transition: color 0.2s ease;
789-o-transition: color 0.2s ease;
790transition: color 0.2s ease;
791}
792.star-rating input:checked::after,
793.star-rating input:checked ~ input::after {
794  color: #ffcc00;
795}
796input.hasError,
797textarea.hasError {
798	border-color: red;
799}
800input.lnmcr-input-error {
801	border: 1px solid red !important;
802}
803input.errorType-charlength {
804	box-shadow: 10px 5px 5px red;
805}
806
807input.error {
808	border: 1px solid red !important;	
809	/*box-shadow: 10px 5px 5px red;*/
810}
811
812.hasError.errorType-charlength::after {
813	/*content: "x";*/
814}
815.lnmreviewtextformError	{
816	display: none !important;
817}
818
819#lnmreviewform .review-error {
820	border: 1px solid red;
821}
822span.success-message {
823    background: #4BB543;
824    color: white;
825    padding: 15px;
826}
827span.error-message {
828    background: #D32F2F;
829    color: white;
830    padding: 15px;
831}
832
833
834
835
836#review-response-container i.fa-solid.fa-spinner.fa-spin-pulse {
837    font-size: 28px;
838}
839
840.lnmcr-review-pagination a,
841.lnmcr-review-pagination span.current {
842	/* padding: 5px 10px; */
843	background: none;
844	width: 30px;
845	height: 30px;
846	line-height: 26px;
847	margin: 0 2px 0 0;
848	border: 1px solid #CCCCCC;
849	display: inline-block;
850	font-size: 16px;
851}
852.lnmcr-review-pagination span.current {
853	background: #333;
854	color: white;
855}
856.lnmcr-review-pagination a:hover {
857	background: #333;
858	color: white;	
859}
860input.review-error, textarea.review-error {
861	margin-bottom: 0;
862}
863.review-error-container {
864	display: none;
865	padding: 10px;
866	border-left: 1px solid red;
867	border-bottom: ;
868	border-bottom: 1px solid red;
869	border-right: 1px solid red;
870	margin-bottom: 25px;
871	color: white;
872	font-weight: bold;
873	background: red;
874}
875
876@media only screen and (max-width: 650px) {.lnmcr-review-card {max-width: 100%;}}
877</style>
vendor: 71 bytes, lines 877-879
877
878
879<script src="https://www.google.com/recaptcha/enterprise.js?render=
8796LflbUQsAAAAADQa-oHKDxYnfKpy0TfaniKv449Y
vendor: 45 bytes, line 879
879" id="lnm-recaptcha-enterprise-js"></script>
880<script id="lnm-recaptcha-enterprise-js-after">
881/* <![CDATA[ */
882console.log('[LNM] recaptcha inline loaded');
883
884(function(){
885  function ensureHidden(form){
886    var el = form.querySelector('input[name="g-recaptcha-response"]');
887    if(!el){
888      el = document.createElement('input');
889      el.type = 'hidden';
890      el.name = 'g-recaptcha-response';
891      form.appendChild(el);
892    }
893    return el;
894  }
895
896document.addEventListener('click', function(e){
897  var el = e.target.closest('#contactForm #submitContact, #contactForm .submit, #requestForm #submitContact');
898  if(!el) return;
899
900  var form = el.closest('form');
901  if(!form) return;
902
903  // trigger a real submit event path (lets other listeners run)
904  e.preventDefault();
905
906  if (form.requestSubmit) {
907    form.requestSubmit(); // preferred: dispatches submit event
908  } else {
909    // fallback for older browsers
910    var evt = document.createEvent('Event');
911    evt.initEvent('submit', true, true);
912    if (form.dispatchEvent(evt)) {
913      form.submit();
914    }
915  }
916}, true);
917
918
919
920  document.addEventListener('submit', function(e){
921    var form = e.target;
922    if(!form || form.nodeName !== 'FORM') return;
923
924console.log('[LNM] submit captured', form);
925
926    // Only forms you explicitly mark in the HTML.
927    if(!form.querySelector('input[name="lnm_recaptcha"][value="1"]')) return;
928
929    // Prevent infinite loop: after we inject a token once, allow the submit.
930    if(form.dataset && form.dataset.lnmRecaptchaDone === '1') return;
931
932    var hidden = ensureHidden(form);
933
934    // If we already have a token, let it submit.
935    if(hidden && hidden.value) {
936      if(form.dataset) form.dataset.lnmRecaptchaDone = '1';
937      return;
938    }
939
940    // If grecaptcha isn't available, DO NOT block submission.
941    // (Server-side enforce may still reject; but UX won't "freeze".)
942    if(!window.grecaptcha || !grecaptcha.enterprise || !grecaptcha.enterprise.execute) {
943      return;
944    }
945
946    // From this point on, we are taking over submission.
947    e.preventDefault();
948
949    var done = false;
950
951    function finishSubmit(){
952      if(done) return;
953      done = true;
954      if(form.dataset) form.dataset.lnmRecaptchaDone = '1';
955      form.submit();
956    }
957
958    // Hard safety: never allow recaptcha to stall the UX.
959    var timer = setTimeout(function(){
960      finishSubmit(); // fallback: submit even if token never arrives
961    }, 6000);
962
963    try {
964      grecaptcha.enterprise.ready(function(){
965        try {
966          var p = grecaptcha.enterprise.execute('6LflbUQsAAAAADQa-oHKDxYnfKpy0TfaniKv449Y', {action: 'lnm_email_122006453'});
967          if(p && typeof p.then === 'function'){
968            p.then(function(token){
969              clearTimeout(timer);
970              hidden.value = token || '';
971              finishSubmit();
972            }).catch(function(){
973              clearTimeout(timer);
974              finishSubmit();
975            });
976          } else {
977            clearTimeout(timer);
978            finishSubmit();
979          }
980        } catch(err){
981          clearTimeout(timer);
982          finishSubmit();
983        }
984      });
985    } catch(err){
986      clearTimeout(timer);
987      finishSubmit();
988    }
989  }, true);
990})();
991//# sourceURL=lnm-recaptcha-enterprise-js-after
992/* ]]> */
993</script>
vendor: 1 bytes, line 993
993
994<script src="https://capitalconstructionsd.com/wp-content/themes/ccon2/scripts/cookie-js.min.js" id="cookiejs-js"></script>
vendor: 1 bytes, line 994
994
995<script src="https://capitalconstructionsd.com/wp-content/themes/ccon2/scripts/lnm-scripts.min.js" id="lnmscripts-js"></script>
vendor: 1 bytes, line 995
995
996<script src="https://capitalconstructionsd.com/wp-content/themes/ccon2/js/foundation/foundation.equalizer.js" id="equalizer-js"></script>
vendor: 1 bytes, line 996
996
997<script src="https://capitalconstructionsd.com/wp-content/themes/ccon2/slick/slick.js" id="slickjs-js"></script>
vendor: 1 bytes, line 997
997
998<script src="https://capitalconstructionsd.com/wp-content/plugins/linknowmedia-email/scripts/compiled.js" id="formjs-js"></script>
vendor: 1 bytes, line 998
998
999<script id="formjs-js-after">
1000/* <![CDATA[ */
1001(function () {
1002  function getForms() {
1003    return Array.prototype.slice.call(document.querySelectorAll('form.contactForm, form#contactForm'));
1004  }
1005
1006  function getKey(form) {
1007    var host = window.location.host || '';
1008    var path = window.location.pathname || '';
1009    var formId = form ? (form.id || 'contactForm') : 'contactForm';
1010    return 'lnm_form_retention:' + host + ':' + path + ':' + formId;
1011  }
1012
1013  function trackedNames() {
1014    return ['fullName', 'phoneNumber', 'emailAddress', 'emailMessage'];
1015  }
1016
1017  function saveForm(form) {
1018    if (!form || !window.sessionStorage) return;
1019
1020    var data = {};
1021    trackedNames().forEach(function (name) {
1022      var field = form.querySelector('[name="' + name + '"]');
1023      if (field) {
1024        data[name] = field.value || '';
1025      }
1026    });
1027
1028    try {
1029      sessionStorage.setItem(getKey(form), JSON.stringify(data));
1030    } catch (e) {}
1031  }
1032
1033  function restoreForm(form) {
1034    if (!form || !window.sessionStorage) return;
1035
1036    try {
1037      var raw = sessionStorage.getItem(getKey(form));
1038      if (!raw) return;
1039
1040      var data = JSON.parse(raw);
1041      if (!data || typeof data !== 'object') return;
1042
1043      trackedNames().forEach(function (name) {
1044        var field = form.querySelector('[name="' + name + '"]');
1045        if (!field) return;
1046
1047        if ((field.value || '') === '' && typeof data[name] !== 'undefined') {
1048          field.value = data[name];
1049        }
1050      });
1051    } catch (e) {}
1052  }
1053
1054  function clearForCurrentPage() {
1055    if (!window.sessionStorage) return;
1056
1057    getForms().forEach(function (form) {
1058      try {
1059        sessionStorage.removeItem(getKey(form));
1060      } catch (e) {}
1061    });
1062
1063    if (!getForms().length) {
1064      var host = window.location.host || '';
1065      var path = window.location.pathname || '';
1066      try {
1067        sessionStorage.removeItem('lnm_form_retention:' + host + ':' + path + ':contactForm');
1068      } catch (e) {}
1069    }
1070  }
1071
1072  document.addEventListener('DOMContentLoaded', function () {
1073    var retentionMeta = document.getElementById('lnm-form-retention-meta');
1074    var shouldRetain = retentionMeta && retentionMeta.getAttribute('data-retain-form') === '1';
1075
1076    if (!shouldRetain && retentionMeta) {
1077      clearForCurrentPage();
1078    }
1079
1080    getForms().forEach(function (form) {
1081      restoreForm(form);
1082
1083      trackedNames().forEach(function (name) {
1084        var field = form.querySelector('[name="' + name + '"]');
1085        if (!field) return;
1086
1087        field.addEventListener('input', function () {
1088          saveForm(form);
1089        });
1090
1091        field.addEventListener('change', function () {
1092          saveForm(form);
1093        });
1094      });
1095
1096      form.addEventListener('submit', function () {
1097        saveForm(form);
1098      }, true);
1099    });
1100  });
1101})();
1102//# sourceURL=formjs-js-after
1103/* ]]> */
1104</script>
vendor: 1 bytes, line 1104
1104

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.