PageSourceSearch

https://greinerelectric.com/blog/18059/Greiner-Earns-2-ABC-Awards-…he-Year-and-Safety-Professional-of-the-Year

html greinerelectric.com collected 2026-09-30 18:48:04 UTC 47,094 bytes, 1,150 lines download raw bytes

1
2<!DOCTYPE html>
3<html lang="en">
4<head>
5<meta charset="utf-8">
6<meta http-equiv="X-UA-Compatible" content="IE=edge">
7<meta name="viewport" content="width=device-width, initial-scale=1.0">
8<meta name="robots" content="noindex, noimageindex">
9<link rel="preconnect" href="https://code.jquery.com" crossorigin>
10<link rel="preconnect" href="https://ajax.googleapis.com" crossorigin>
11<link rel="preconnect" href="https://stackpath.bootstrapcdn.com" crossorigin>
12<link rel="preconnect" href="https://cdnjs.cloudflare.com" crossorigin>
13<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
14<title>Greiner Earns 2 ABC Awards: Project of the Year and Safety Professional of the Year</title>
15<link rel="canonical" href="https://greinerelectric.com/blog/18059/Greiner-Earns-2-ABC-Awards-Project-of-the-Year-and-Safety-Professional-of-the-Year">
16<meta name="description" content="Greiner Electric - ">
17<meta property="og:title" content="Greiner Earns 2 ABC Awards: Project of the Year and Safety Professional of the Year">
18<meta property="og:description" content="Greiner Electric - ">
19<meta property="og:url" content="https://greinerelectric.com/blog/18059/Greiner-Earns-2-ABC-Awards-Project-of-the-Year-and-Safety-Professional-of-the-Year">
20<meta property="og:type" content="website">
21<meta property="og:site_name" content="greinerelectric.com">
22<meta property="og:image" content="https://greinerelectric.com/userfiles/2482/images/ABC_BrentDugan_Safetydirector.jpeg?t=20260806100843">
23<meta name="twitter:card" content="summary_large_image">
24<meta name="twitter:title" content="Greiner Earns 2 ABC Awards: Project of the Year and Safety Professional of the Year">
25<meta name="twitter:description" content="Greiner Electric - ">
26<meta name="twitter:image" content="https://greinerelectric.com/userfiles/2482/images/ABC_BrentDugan_Safetydirector.jpeg?t=20260806100843">
27<meta name="author" content="Omnia Business Systems">
28<link rel="shortcut icon" href="/userfiles/2482/greiner.PNG">
29<!-- omsPerf lite=1 eagerMaps=0 deferBs=0 hover=1 hamb=1 par=1 mas=1 | edit=0 page=1 tpl=_blank.cfm plain=1 incl=0 detail=0 jqui=0 fpjs=0 maps=0 forced=0 -->
30<!-- Modified Bootstrap CSS -->
31<link href="/sass/src/css/2482.css?t=1690321307" rel="stylesheet">
32<!-- Google Fonts CSS -->
33<link href="//fonts.googleapis.com/css?family=Source+Sans+Pro:400,700&display=swap" rel="stylesheet" type="text/css">
34<link href="//fonts.googleapis.com/css?family=Montserrat:400,700&display=swap" rel="stylesheet" type="text/css">
35<link href="/css/omnia.css?v=1727825914" rel="stylesheet">
36<script src="https://code.jquery.com/jquery-2.2.4.min.js" integrity="sha256-BbhdlvQf/xTY9gja0Dq3HiwQF8LaCRTXxZKRutelT44=" crossorigin="anonymous"></script>
vendor: 1 bytes, line 36
36
37<script defer src="//ajax.googleapis.com/ajax/libs/jqueryui/1.12.0/jquery-ui.min.js"></script>
vendor: 1 bytes, line 37
37
38<script defer src="/js/omsBsRestore.js?v=1789679629"></script>
38
39<link href="//ajax.googleapis.com/ajax/libs/jqueryui/1.12.0/themes/base/jquery-ui.css" rel="stylesheet" media="print" onload="this.media='all'">
40<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.bundle.min.js"></script>
vendor: 1 bytes, line 40
40
41<script>window.omsBsPlugins={tooltip:jQuery.fn.tooltip,button:jQuery.fn.button};</script>
vendor: 1 bytes, line 41
41
42<script src="//cdnjs.cloudflare.com/ajax/libs/wow/1.1.2/wow.min.js"></script>
vendor: 1 bytes, line 42
42
43<script>window.omsMapsSrc="https://maps.googleapis.com/maps/api/js?key=AIzaSyApFqMwkWdCNgafvf2aWGop2NoJxYJORr8&libraries=places";</script>
43
44<style>
45.signedIn{display:none!important}
46.signedOut{display:block!important}
47</style>
48<style id="additionalStylesInline">
49/* GLOBAL */
50html {
51scroll-behavior: smooth;
52}
53@media(min-width: 992px) {
54h1.mega, .h1.mega {
55font-size: 4rem;
56}
57}
58@media(max-width: 767px) {
59h1, .h1 {
60font-size: 2rem;
61}
62h2,
63.h2 {
64font-size: 1.75rem;
65}
66h3,
67.h3 {
68font-size: 1.6rem;
69}
70h4,
71.h4 {
72font-size: 1.45rem;
73}
74h5,
75.h5 {
76font-size: 1.3rem;
77}
78h6,
79.h6 {
80font-size: 1.15rem;
81}
82}
83.btn {
84white-space: normal;
85}
86a:hover img,
87a.bg-img:hover a.bg-image:hover {
88opacity: .85;
89}
90#savecontent img {
91max-width: 100% !important;
92height: auto !important;
93}
94.rightfloat {
95float: right;
96margin: 0 0 .5rem 1rem;
97width: 40%;
98}
99@media (max-width: 767px) {
100.rightfloat {
101float: none;
102margin: 0 0 1rem 0;
103width: 100%;
104}
105}
106.btn-primary {
107color: white !important;
108}
109@media(min-width: 1600px) {
110.container {
111max-width: 1300px;
112}
113}
114.property-search #filterForm,
115.oms-property-manager-details .btn.btn-primary, .job-wrapper .fancygallery {
116display: none;
117}
118#dPropDesc {
119display: block !important;
120}
121.job-image a {
122background-size: contain !important;
123}
124#dPropAddress, #dPropMap {
125display: none;
126}
127/* PAGE SPECIFIC */
128/* FOOTER */
129</style>
130<!-- Global site tag (gtag.js) - Google Analytics -->
vendor: 64 bytes, lines 130-131
130
131<script async src="https://www.googletagmanager.com/gtag/js?id=
131UA-132218497-1
vendor: 12 bytes, line 131
131"></script>
132<script>
vendor: 127 bytes, lines 133-136
133window.dataLayer = window.dataLayer || [];
134function gtag(){dataLayer.push(arguments);}
135gtag('js', new Date());
136gtag('config', '
136UA-132218497-1
vendor: 4 bytes, line 136
136');
137</script>
137
138<!-- /site header code -->
139<script type="application/ld+json">
140{
141  "@context": "https://schema.org",
142  "@type": "LocalBusiness",
143  "name": "Greiner Electric",
144  "url": "https://greinerelectric.com"
145  ,"logo": "https://greinerelectric.com/userfiles/2482/images/logo-- Copy_11280211.png"
146  ,"image": "https://greinerelectric.com/userfiles/2482/images/logo-- Copy_11280211.png"
147  ,"contactPoint": {
148    "@type": "ContactPoint",
149    "contactType": "customer service"
150    ,"telephone": "303-470-9702"
151    ,"faxNumber": "303-470-9810"
152    ,"email": "[email protected]"
153  }
154  ,"telephone": "303-470-9702"
155  ,"address": {
156    "@type": "PostalAddress",
157    "addressLocality": "Littleton",
158    "addressRegion": "CO",
159    "postalCode": "80125",
160    "streetAddress": "12456 North Dumont Way"
161    
162  }
163  
164  ,"openingHours": "7:00AM - 5:00PM"
165  
166  ,"sameAs": [
167    "https://www.facebook.com/greinerelectric/","https://www.linkedin.com/company/greiner-electric/","https://www.instagram.com/greinerelectric/?hl=en"
168  ]
169  
170}
171</script>
171
172
173
174<script type="application/ld+json">
175{
176  "@context": "https://schema.org",
177  "@type": "WebSite",
178  "name": "Greiner Electric",
179  "url": "https://greinerelectric.com"
180}
181</script>
181
182
183
184
185
186
187
188
189
190
191<script type="application/ld+json">
192{
193  "@context": "https://schema.org",
194  "@type": "BreadcrumbList",
195  "itemListElement": [
196    
197    {
198      "@type": "ListItem",
199      "position": 1,
200      "name": "Home",
201      "item": "https://greinerelectric.com/"
202    }
203    
204  ]
205}
206</script>
206<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/jstz.min.js"></script>
206
207	<link href="https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500;600&family=DM+Mono:wght@400;500&display=swap" rel="stylesheet">
208	<style>
209		#omniaMgmtLoginModal {
210			font-family: 'DM Sans', sans-serif;
211		}
212		#omniaMgmtLoginModal .modal-dialog {
213			max-width: 420px;
214		}
215		#omniaMgmtLoginModal .modal-content {
216			background: #16161e;
217			border: 1px solid rgba(255,255,255,0.07);
218			border-radius: 20px;
219			box-shadow: 0 32px 80px rgba(0,0,0,0.6), 0 0 0 1px rgba(91,94,244,0.1);
220			overflow: hidden;
221			position: relative;
222		}
223		#omniaMgmtLoginModal .modal-header {
224			border: none;
225			padding: 32px 32px 0 32px;
226			display: flex;
227			align-items: center;
228			justify-content: center;
229		}
230		#omniaMgmtLoginModal .modal-header .header-inner {
231			display: flex;
232			flex-direction: column;
233			align-items: center;
234			text-align: center;
235			width: 100%;
236		}
237		#omniaMgmtLoginModal .modal-icon {
238			width: 48px;
239			height: 48px;
240			background: linear-gradient(135deg, #5b5ef4, #8b5cf6);
241			border-radius: 14px;
242			display: flex;
243			align-items: center;
244			justify-content: center;
245			margin-bottom: 16px;
246		}
247		#omniaMgmtLoginModal .modal-icon svg {
248			width: 22px; height: 22px;
249			stroke: #fff; fill: none;
250			stroke-width: 2; stroke-linecap: round; stroke-linejoin: round;
251		}
252		#omniaMgmtLoginModal .modal-title {
253			font-size: 20px;
254			font-weight: 600;
255			color: #f0f0f8;
256			letter-spacing: -0.02em;
257			margin-bottom: 4px;
258		}
259		#omniaMgmtLoginModal .modal-subtitle {
260			font-size: 14px;
261			color: #666;
262			line-height: 1.5;
263		}
264
265		/* Close button */
266		#omniaMgmtLoginModal .btn-close-modal {
267			position: absolute;
268			top: 16px;
269			right: 16px;
270			background: rgba(255,255,255,0.06);
271			border: none;
272			color: #888;
273			width: 30px;
274			height: 30px;
275			border-radius: 8px;
276			cursor: pointer;
277			display: flex;
278			align-items: center;
279			justify-content: center;
280			font-size: 16px;
281			line-height: 1;
282			transition: background 0.15s, color 0.15s;
283			z-index: 10;
284		}
285		#omniaMgmtLoginModal .btn-close-modal:hover { background: rgba(255,255,255,0.12); color: #e8e8f0; }
286		#omniaMgmtLoginModal .btn-close-modal:focus { outline: none; box-shadow: none; }
287
288		/* Fields */
289		#omniaMgmtLoginModal .login-field {
290			margin-bottom: 16px;
291		}
292		#omniaMgmtLoginModal .login-field label {
293			display: block;
294			font-size: 11px;
295			font-weight: 500;
296			color: #888;
297			letter-spacing: 0.07em;
298			text-transform: uppercase;
299			margin-bottom: 8px;
300		}
301		#omniaMgmtLoginModal .login-input-wrap {
302			position: relative;
303			display: flex;
304			align-items: center;
305		}
306		#omniaMgmtLoginModal .login-input-wrap input {
307			width: 100%;
308			background: #0f0f13;
309			border: 1.5px solid #2a2a35;
310			border-radius: 10px;
311			padding: 12px 44px 12px 14px;
312			color: #e8e8f0;
313			font-family: 'DM Sans', sans-serif;
314			font-size: 14px;
315			outline: none;
316			transition: border-color 0.2s, box-shadow 0.2s;
317		}
318		#omniaMgmtLoginModal .login-input-wrap input::placeholder {
319			color: #3a3a4a;
320			font-size: 14px;
321		}
322		#omniaMgmtLoginModal .login-input-wrap input:focus {
323			border-color: #5b5ef4;
324			box-shadow: 0 0 0 3px rgba(91,94,244,0.15);
325		}
326		#omniaMgmtLoginModal .login-toggle-pw {
327			position: absolute;
328			right: 12px;
329			background: none;
330			border: none;
331			color: #444;
332			cursor: pointer;
333			padding: 4px;
334			display: flex;
335			align-items: center;
336			transition: color 0.15s;
337		}
338		#omniaMgmtLoginModal .login-toggle-pw:hover { color: #888; }
339		#omniaMgmtLoginModal .login-toggle-pw svg {
340			width: 16px; height: 16px;
341			stroke: currentColor; fill: none;
342			stroke-width: 2; stroke-linecap: round; stroke-linejoin: round;
343		}
344
345		/* Auth code field (shown dynamically) */
346		#omniaMgmtLoginModal .auth-field { margin-bottom: 16px; }
347		#omniaMgmtLoginModal #verification {
348			width: 100%;
349			background: #0f0f13;
350			border: 1.5px solid #fbbf24;
351			border-radius: 10px;
352			padding: 12px 14px;
353			color: #e8e8f0;
354			font-family: 'DM Mono', monospace;
355			font-size: 18px;
356			letter-spacing: 0.25em;
357			text-align: center;
358			outline: none;
359			transition: border-color 0.2s, box-shadow 0.2s;
360		}
361		#omniaMgmtLoginModal #verification:focus {
362			border-color: #fbbf24;
363			box-shadow: 0 0 0 3px rgba(251,191,36,0.15);
364		}
365		#omniaMgmtLoginModal #verification::placeholder {
366			letter-spacing: 0.05em;
367			font-size: 14px;
368			color: #3a3a4a;
369			font-family: 'DM Sans', sans-serif;
370		}
371
372		/* Case sensitive note */
373		#omniaMgmtLoginModal .login-note {
374			font-size: 12px;
375			color: #fff;
376			text-align: center;
377			margin-bottom: 4px;
378		}
379
380		/* Error / response area */
381		#omniaMgmtLoginModal .alert {
382			font-size: 13px;
383			min-height: 18px;
384			margin-bottom: 8px;
385			color: #f87171;
386			transition: opacity 0.2s;
387			line-height: 1.5;
388		}
389		#omniaMgmtLoginModal .login-alert:empty { margin-bottom: 0; }
390		#omniaMgmtLoginModal .alert {
391			background: rgba(255,255,255,0.04);
392			border: 1px solid rgba(255,255,255,0.08);
393			border-radius: 8px;
394			color: #a0a0b8;
395			font-size: 13px;
396			padding: 10px 12px;
397			margin-top: 6px;
398		}
399		/*#omniaMgmtLoginModal .alert a { color: #8b5cf6; }*/
400
401		/* SMS button */
402		#omniaMgmtLoginModal .btn-sms {
403			width: 100%;
404			background: rgba(251,191,36,0.12);
405			border: 1px solid rgba(251,191,36,0.3);
406			color: #fbbf24;
407			border-radius: 10px;
408			padding: 11px;
409			font-family: 'DM Sans', sans-serif;
410			font-size: 14px;
411			font-weight: 500;
412			cursor: pointer;
413			transition: background 0.2s;
414			margin-bottom: 12px;
415		}
416		#omniaMgmtLoginModal .btn-sms:hover { background: rgba(251,191,36,0.2); }
417
418		/* Modal body / footer */
419		#omniaMgmtLoginModal .modal-body {
420			padding: 24px 32px 16px 32px;
421		}
422		#omniaMgmtLoginModal .modal-footer {
423			border: none;
424			padding: 8px 32px 32px 32px;
425			display: flex;
426			flex-direction: column;
427			gap: 10px;
428		}
429
430		/* Primary login button */
431		#omniaMgmtLoginModal .btn-login {
432			width: 100%;
433			background: linear-gradient(135deg, #5b5ef4, #8b5cf6);
434			color: #fff;
435			border: none;
436			padding: 13px;
437			border-radius: 10px;
438			font-family: 'DM Sans', sans-serif;
439			font-size: 15px;
440			font-weight: 600;
441			cursor: pointer;
442			letter-spacing: 0.01em;
443			transition: opacity 0.2s, transform 0.15s, box-shadow 0.2s;
444			position: relative;
445			overflow: hidden;
446		}
447		#omniaMgmtLoginModal .btn-login:hover {
448			transform: translateY(-1px);
449			box-shadow: 0 8px 24px rgba(91,94,244,0.4);
450		}
451		#omniaMgmtLoginModal .btn-login:active { transform: translateY(0); }
452
453		/* Forgot password link-style button */
454		#omniaMgmtLoginModal .btn-forgot {
455			width: 100%;
456			background: rgba(255,255,255,0.04);
457			border: 1px solid rgba(255,255,255,0.07);
458			color: #666;
459			border-radius: 10px;
460			padding: 11px;
461			font-family: 'DM Sans', sans-serif;
462			font-size: 14px;
463			font-weight: 500;
464			cursor: pointer;
465			transition: background 0.2s, color 0.2s;
466		}
467		#omniaMgmtLoginModal .btn-forgot:hover { background: rgba(255,255,255,0.08); color: #a0a0b8; }
468
469		/* Back button on forgot screen */
470		#omniaMgmtLoginModal .btn-back-login {
471			background: none;
472			border: none;
473			color: #5b5ef4;
474			font-family: 'DM Sans', sans-serif;
475			font-size: 13px;
476			font-weight: 500;
477			cursor: pointer;
478			padding: 0;
479			display: inline-flex;
480			align-items: center;
481			gap: 5px;
482			margin-bottom: 16px;
483			transition: color 0.15s;
484			outline: none;
485			box-shadow: none;
486		}
487		#omniaMgmtLoginModal .btn-back-login:hover { color: #8b5cf6; }
488		#omniaMgmtLoginModal .btn-back-login:focus { outline: none; box-shadow: none; }
489		#omniaMgmtLoginModal .btn-back-login svg {
490			width: 14px; height: 14px;
491			stroke: currentColor; fill: none;
492			stroke-width: 2; stroke-linecap: round; stroke-linejoin: round;
493		}
494
495		/* Ripple */
496		#omniaMgmtLoginModal .btn-login .ripple {
497			position: absolute;
498			border-radius: 50%;
499			background: rgba(255,255,255,0.25);
500			transform: scale(0);
501			animation: loginRipple 0.5s linear;
502			pointer-events: none;
503		}
504		@keyframes loginRipple { to { transform: scale(4); opacity: 0; } }
505
506		.modal-backdrop { background: rgba(5,5,10,0.75); }
507		.modal-backdrop.show { opacity: 1; }
508	</style>
509
510	
510<script>
511		$(function(){
512      
513			/* auth spinner: PBKDF2 verify adds ~1-2s to each login step (incident 2026-09-10) */
514			$('head').append('<style>.omnia-spin{display:inline-block;width:1rem;height:1rem;margin-right:.5rem;vertical-align:-2px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:omniaSpin .6s linear infinite;}@keyframes omniaSpin{to{transform:rotate(360deg)}}</style>');
515			function omniaLoginLoading(on){
516				var $b = $('#loginSubmitted');
517				if(!$b.length) return;
518				if(on){ if($b.data('omniaOrig')===undefined){ $b.data('omniaOrig', $b.html()); } $b.prop('disabled', true).css('cursor','wait').html('<span class="omnia-spin"></span>Signing in...'); }
519				else { if($b.data('omniaOrig')!==undefined){ $b.html($b.data('omniaOrig')); } $b.prop('disabled', false).css('cursor',''); }
520			}
521			$(document).ajaxSend(function(e, xhr, opts){ var d = opts.data || ''; if(/func=checkPWSecurity/.test(d) || /method=loginCheck_a/.test(opts.url||'')) omniaLoginLoading(true); });
522			$(document).ajaxComplete(function(e, xhr, opts){ var d = opts.data || ''; var cp = /func=checkPWSecurity/.test(d); var lc = /method=loginCheck_a/.test(opts.url||''); if(cp && $.trim(xhr.responseText) === 'success') return; if(cp || lc) omniaLoginLoading(false); });
523			// ── Login submit (button + Enter key) ──────────────────────────────
524			var loginPending = false;
525			function doLogin(){
526				if(loginPending) return;
527				loginPending = true;
528				var data = $('#loginForm').serialize() + "&func=checkPWSecurity";
529				$.post("/ajax/generic_functions.cfm", data, function(response){
530					loginPending = false;
531					if($.trim(response) == 'success'){
532						var data = $("#loginForm").serialize();
533						$.post("/com/security.cfc?method=loginCheck_a", data, function(response){
534							if($.trim(response) == "success"){
535								parent.window.location.href = "/secure/";
536							} else if($.trim(response).substr(0,8) == "redirect"){
537								parent.window.location.href = $.trim(response).substring(9, response.length);
538							} else {
539								if(~response.indexOf("credentials")){ $('#forceLogin').val('1'); }
540								$('#loginAlert').html('<p class="mb-2 text-white">' + response + '</p>');
541							}
542						}, "html");
543					} else if(~$.trim(response).indexOf("checkauth")){
544						$('.auth-item').remove();
545						$('#loginAlert').html('<p class="mb-2 text-white">A 6-digit code has been sent to your email.</p><div class="alert">Please add <strong style="color:#f87171;">[email protected]</strong> to your safe sender list if you are still not receiving the code.</div>');
546						$('.login-username-field, .login-pw-field').hide();
547						// Auth code input
548						$('#omniaMgmtLoginModal .modal-body').append('<div class="auth-field auth-item"><label style="display:block;font-size:11px;font-weight:500;color:#888;letter-spacing:0.07em;text-transform:uppercase;margin-bottom:8px;">Verification Code</label><input type="text" name="verification" id="verification" maxlength="6" placeholder="Enter 6-digit code" autocomplete="off" form="loginForm"></div>');
549						if($.trim(response) == "checkauthwithphone"){
550							$('#omniaMgmtLoginModal .modal-body').append('<div class="auth-item" style="margin-bottom:8px;font-size:12px;color:#666;text-align:center;">Not receiving the email?</div><button type="button" id="sendSMS" class="btn-sms auth-item">Send Code Via Text</button>');
551						} else {
552							$('#omniaMgmtLoginModal .modal-body').append('<div class="auth-item" style="margin-bottom:4px;"><div class="alert text-center">Not receiving the email? Contact us at <strong style="color:#f87171;"><a href="mailto:[email protected]">[email protected]</a></strong> to add a phone number for text verification.</div></div>');
553						}
554					} else if($.trim(response) == 'not verified'){
555						$('#loginAlert').html('<p class="mb-2 text-white">The authorization code is incorrect. If you continue to have issues, refresh and try again.</p>');
556						setTimeout(function(){ $('#omniaMgmtLoginModal').modal('hide'); }, 2000);
557					} else if($.trim(response) == 'no match'){
558						$('#loginAlert').html('<p class="mb-2 text-white">No user matches these credentials.</p>');
559					} else {
560						$.post("/ajax/generic_functions.cfm", { func: "getEmailForPasswordReset", username: $('#userName').val() }, function(response){
561							$.post("/ajax/generic_functions.cfm", { func: "createResetPasswordEmail", username: $('#userName').val() }, function(){}, "html");
562							$('#loginAlert').html('<p class="mb-2 text-white">Your password is not secure. You will receive an email at <strong>' + response + '</strong> momentarily to reset it.</p>');
563						}, "html");
564					}
565				}, "html");
566			}
567
568			$('#loginSubmitted').on('click', function(e){
569				// Ripple effect
570				var btn = this, circle = document.createElement('span');
571				var d = Math.max(btn.clientWidth, btn.clientHeight), r = d/2;
572				var rect = btn.getBoundingClientRect();
573				circle.style.cssText = 'width:'+d+'px;height:'+d+'px;left:'+(e.clientX-rect.left-r)+'px;top:'+(e.clientY-rect.top-r)+'px';
574				circle.className = 'ripple';
575				$(btn).find('.ripple').remove();
576				btn.appendChild(circle);
577				doLogin();
578			});
579
580			$(document).keydown(function(e){
581          setTimezoneCookie();
582          if(e.keyCode === 13 && $('#loginscreen').is(':visible')){
583              // If the verification field exists and is visible, still call doLogin
584              // (it will serialize the verification value too since it has form="loginForm")
585              doLogin();
586          }
587          if(e.keyCode === 13 && $('#forgotpassscreen').is(':visible')){ doForgot(); }
588      });
589
590			// ── SMS ──────────────────────────────────────────────────────────────
591			$(document).on('click', '#sendSMS', function(){
592          var $btn = $(this);
593          $btn.prop('disabled', true);
594          $.post("/ajax/generic_functions.cfm", { func: "sendSMSAuth", username: $('#userName').val(), password: $('#password').val() }, function(){
595              $btn.html('<i class="fas fa-check" style="margin-right:6px;"></i>Code Sent!');
596              $btn.css({
597                  'background': 'rgba(34,197,94,0.15)',
598                  'border-color': 'rgba(34,197,94,0.4)',
599                  'color': '#22c55e'
600              });
601          }, "html");
602      });
603
604			// ── Forgot password ──────────────────────────────────────────────────
605			$('.forgotUorP').on('click', function(){
606				$('#loginscreen').hide();
607				$('#forgotpassscreen').show();
608				$('#loginAlert').html('');
609			});
610
611			$('.btn-back-login').on('click', function(){
612				$('#forgotpassscreen').hide();
613				$('#loginscreen').show();
614			});
615      
616      $('#omniaMgmtLoginModal').on('hidden.bs.modal', function(){
617            location.reload();
618        });
619
620			function doForgot(){
621				var data = $("#forgotPassForm").serialize();
622				$.post("/com/security.cfc?method=forgotPass", data, function(response){
623					$('#loginAlert').html(response);
624					$('#forgotpassscreen').hide();
625					$('#loginscreen').show();
626				}, "html");
627			}
628
629			$("#forgotPassForm").submit(function(e){ e.preventDefault(); doForgot(); });
630			$('#submitRetrievePassword').on('click', doForgot);
631		});
632
633		function setTimezoneCookie(){
634			var timezone = jstz.determine();
635			timezone = timezone.name();
636			$.post("/ajax/generic_functions.cfm", { func: "setTimeZoneCookie", timezone: timezone }, function(){}, "html");
637		}
638
639		function loginTogglePW(inputId, btn){
640			var input = document.getElementById(inputId);
641			var isPassword = input.type === 'password';
642			input.type = isPassword ? 'text' : 'password';
643			var svg = btn.querySelector('svg');
644			svg.innerHTML = isPassword
645				? '<path d="M17.94 17.94A10.07 10.07 0 0 1 12 20c-7 0-11-8-11-8a18.45 18.45 0 0 1 5.06-5.94M9.9 4.24A9.12 9.12 0 0 1 12 4c7 0 11 8 11 8a18.5 18.5 0 0 1-2.16 3.19m-6.72-1.07a3 3 0 1 1-4.24-4.24"/><line x1="1" y1="1" x2="23" y2="23"/>'
646				: '<path d="M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z"/><circle cx="12" cy="12" r="3"/>';
647		}
648	</script>
648<meta property="og:title" content="Greiner Earns 2 ABC Awards: Project of the Year and Safety Professional of the Year" />
649  <meta property="og:type" content="article" />
650  <meta property="og:url" content="https://greinerelectric.com/blog/18059/Greiner-Earns-2-ABC-Awards-Project-of-the-Year-and-Safety-Professional-of-the-Year" />
651  
652    <meta property="og:image" content="https://greinerelectric.com/userfiles/2482/images/ABC_BrentDugan_Safetydirector.jpeg?t=20260806100843" />
653  
654  <meta name="twitter:card" content="summary_large_image">
655  <meta name="twitter:site" content="@Greiner Electric">
656  
657    <meta name="twitter:creator" content="@Kelly Anton">
658  
659  
660    <meta name="twitter:title" content="Greiner Earns 2 ABC Awards: Project of the Year and Safety Professional of the Year">
661  
662  
663    <meta name="twitter:description" content="In 2025, the Associated Builders and Contractors Rocky Mountain chapter honored Greiner with two prestigious awards:
664
665	Excellence In Construction Awards Safety Professional of the Year for Brent Dugan
666	Excellence in Construction Specialty Contractor Project of the Year Award for the Charter Technology Engineering Center
667
668Thank you to all our employees and partners who help us succeed! 
669
670 
671">
672  
673  
674    <meta name="twitter:image" content="https://greinerelectric.com/userfiles/2482/images/ABC_BrentDugan_Safetydirector.jpeg?t=20260806100843"></head>
675<body class="blog-detail-page">
676<div class="oms-wrapper">
677<div class="modal fade" id="omniaMgmtLoginModal" tabindex="-1" aria-labelledby="omniaMgmtLoginModalLabel" aria-hidden="true" data-keyboard="false">
678<div class="modal-dialog modal-dialog-centered mx-auto">
679<div class="modal-content">
680<button type="button" class="btn-close-modal" data-dismiss="modal" aria-label="Close">&#x2715;</button>
681<div class="modal-header">
682<div class="header-inner">
683<div class="modal-icon">
684<!-- Person / user icon -->
685<svg viewBox="0 0 24 24"><path d="M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"/><circle cx="12" cy="7" r="4"/></svg>
686</div>
687<div class="modal-title" id="omniaMgmtLoginModalLabel">Management Login</div>
688<div class="modal-subtitle">Sign in to access your dashboard.</div>
689</div>
690</div>
691<div class="modal-body">
692<form id="loginForm">
693<input type="hidden" name="s" id="s" value="2482">
694<input type="hidden" name="forceLogin" id="forceLogin" value="0">
695</form>
696<!-- ── Login Screen ───────────────────────────────────────── -->
697<div id="loginscreen">
698<div class="login-field login-username-field">
699<label for="userName">Username</label>
700<div class="login-input-wrap">
701<input type="text" name="userName" id="userName" maxlength="50" placeholder="Enter your username" autocomplete="off" form="loginForm">
702</div>
703</div>
704<div class="login-field login-pw-field">
705<label for="password">Password</label>
706<div class="login-input-wrap">
707<input type="password" name="password" id="password" maxlength="20" placeholder="Enter your password" autocomplete="off" form="loginForm">
708<button type="button" class="login-toggle-pw" onclick="loginTogglePW('password', this)" aria-label="Show password">
709<svg viewBox="0 0 24 24"><path d="M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z"/><circle cx="12" cy="12" r="3"/></svg>
710</button>
711</div>
712</div>
713<p class="login-note">Passwords are case sensitive</p>
714</div>
715<!-- ── Forgot Password Screen ────────────────────────────── -->
716<div id="forgotpassscreen" style="display:none;">
717<button type="button" class="btn-back-login">
718<svg viewBox="0 0 24 24"><polyline points="15 18 9 12 15 6"/></svg>
719Back to login
720</button>
721<form id="forgotPassForm">
722<input type="hidden" name="s" id="s2" value="2482">
723<div class="login-field">
724<label for="emailField">Email Address</label>
725<div class="login-input-wrap">
726<input type="text" name="emailField" id="emailField" placeholder="Enter your email address" autocomplete="off">
727</div>
728</div>
729</form>
730</div>
731<!-- ── Shared alert area ─────────────────────────────────── -->
732<div id="loginAlert" class="login-alert text-center"></div>
733</div>
734<div class="modal-footer">
735<!-- Login screen buttons -->
736<div id="loginFooterBtns" style="width:100%;display:flex;flex-direction:column;gap:10px;">
737<button type="button" id="loginSubmitted" class="btn-login">
738<i class="fas fa-sign-in-alt" style="margin-right:7px;"></i>Login
739</button>
740<button type="button" class="btn-forgot forgotUorP">Forgot Password?</button>
741</div>
742<!-- Forgot screen button -->
743<div id="forgotFooterBtns" style="width:100%;display:none;">
744<button type="button" id="submitRetrievePassword" class="btn-login">Send Reset Email</button>
745</div>
746</div>
747</div>
748</div>
749</div>
750<script>
751// Toggle footer buttons when switching screens
752$(document).ready(function(){
753$('.forgotUorP').on('click', function(){
754$('#loginFooterBtns').hide();
755$('#forgotFooterBtns').show();
756});
757$('.btn-back-login').on('click', function(){
758$('#loginFooterBtns').show();
759$('#forgotFooterBtns').hide();
760});
761});
762</script>
762
763<header class="header_blog-detail-page omsHeader">
764</header>
765<style>
766@media (max-width: 991px) {
767.omsNav .navbar-nav,
768.omsNav .dropdown-menu {
769text-align: center;
770font-size: 1.2rem;
771}
772.navbar-collapse {
773text-align: center;
774}
775}
776@media (min-width: 992px) {
777.navbar-expand-lg .navbar-nav .nav-link {
778padding-right: .75rem;
779padding-left: .75rem;
780}
781}
782.omsLogo img {
783width: 120px;
784height: auto !important;
785}
786@media (min-width: 1200px) {
787.omsLogo img {
788width: 150px;
789}
790.navbar-expand-lg .navbar-nav .nav-link {
791padding-right: 1.5rem;
792padding-left: 1.5rem;
793font-size: 1.1rem;
794}
795}
796.omsNav .navbar-wrapper a:not(.btn):hover {
797color: var(--primary) !important;
798}
799</style>
800<div class="omsNav fixed-top navbar-light bg-white shadow" style="" data-id="5" data-original-title="" title="">
801<div class="pre-nav bg-dark text-light py-2 small" data-original-title="" title="">
802<div class="container d-flex justify-content-between align-items-center" data-original-title="" title="">
803<div class="left" data-original-title="" title="">
804<a class="mr-3 text-light" href="tel:303-470-9702" data-original-title="" title=""><i class="fas fa-phone text-secondary fa-fw mr-1"></i>Call<span class="d-none d-sm-inline-block" data-original-title="" title="">: 303-470-9702</span></a>
805<a class="mr-3 text-light" href="/contact" data-original-title="" title=""><i class="fas fa-envelope text-secondary fa-fw mr-1"></i><span class="d-none d-lg-inline-block" data-original-title="" title="">Send Us an</span> Email</a>
806</div>
807<div class="right" data-original-title="" title="">
808<div class="socials ml-2 pl-2" data-original-title="" title="">
809<a class="ml-1 social-facebook" href="https://www.facebook.com/greinerelectric/ " target="_blank" data-original-title="" title=""><i class="fab fa-facebook-square fa-fw text-light"></i></a>
810<a class="ml-1 social-instagram" href="https://www.instagram.com/greinerelectric/?hl=en " target="_blank" data-original-title="" title=""><i class="fab fa-instagram fa-fw text-light"></i></a>
811<a class="ml-1 social-yelp" href="" target="_blank" data-original-title="" title=""><i class="fab fa-yelp fa-fw text-light"></i></a>
812<a class="ml-1 social-tripadvisor" href="" target="_blank" data-original-title="" title=""><i class="fab fa-tripadvisor fa-fw text-light"></i></a>
813<a class="ml-1 social-twitter" href="" target="_blank" data-original-title="" title=""><i class="fab fa-twitter fa-fw text-light"></i></a>
814<a class="ml-1 social-linkedin" href="https://www.linkedin.com/company/greiner-electric/ " target="_blank" data-original-title="" title=""><i class="fab fa-linkedin fa-fw text-light"></i></a>
815<a class="ml-1 social-pinterest" href="" target="_blank" data-original-title="" title=""><i class="fab fa-pinterest fa-fw text-light"></i></a>
816<a class="ml-1 social-youtube" href="" target="_blank" data-original-title="" title=""><i class="fab fa-youtube-square fa-fw text-light"></i></a>
817</div>
818</div>
819</div>
820</div>
821<nav class="navbar navbar-expand-lg px-0">
822<div class="container navbar-wrapper px-3" data-original-title="" title="">
823<div class="d-flex align-items-center" data-original-title="" title="">
824<a class="navbar-brand omsLogo" href="/Home" style="position: relative;" data-original-title="" title=""><img alt='Greiner Electric logo' class='img-fluid' src='/userfiles/2482/images/logo-- Copy_11280211.png'></a>
825</div>
826<button aria-controls="omsDefaultNav" aria-expanded="false" aria-label="Toggle navigation" class="navbar-toggler collapsed p-2 ml-3" data-target="#omsDefaultNav" data-toggle="collapse" type="button">
827<i class="fas fa-bars fa-2x fa-fw d-flex align-items-center justify-content-center text-primary" style="font-size: 1.75rem; width: 30px; height: 30px;"></i>
828</button>
829<div class="collapse navbar-collapse ml-md-4" data-original-title="" id="omsDefaultNav" style="justify-content: flex-end; min-height: auto;" title=""><ul class="nav navbar-nav">
830<li class="nav-item"><!--nav-item dropdown class to li---->
831<a class="nav-link" href="//greinerelectric.com/People" data-level="1">Our People</a>
832</li>
833<li class="nav-item"><!--nav-item dropdown class to li---->
834<a class="nav-link" href="//greinerelectric.com/Our-Experience" data-level="1">Our Experience</a>
835</li>
836<li class="nav-item dropdown"><!--nav-item dropdown class to li---->
837<a class="nav-link dropdown-toggle" href="javascript: void(0)" aria-haspopup="true" aria-expanded="false" data-toggle="dropdown" data-level="1">About</a>
838<div class="dropdown-menu">
839<a class="dropdown-item" href="//greinerelectric.com/Construction" data-level="2">Construction</a>
840<a class="dropdown-item" href="//greinerelectric.com/Oil-Gas" data-level="2">Oil & Gas</a>
841<a class="dropdown-item" href="//greinerelectric.com/Service" data-level="2">Service Department</a>
842</div>
843</li>
844<li class="nav-item"><!--nav-item dropdown class to li---->
845<a class="nav-link" href="//greinerelectric.com/Your-Opportunity" data-level="1">Your Opportunity</a>
846</li>
847<li class="nav-item"><!--nav-item dropdown class to li---->
848<a class="nav-link" href="//greinerelectric.com/Locations" data-level="1">Locations</a>
849</li>
850<li class="nav-item"><!--nav-item dropdown class to li---->
851<a class="nav-link" href="//greinerelectric.com/Recent-News" data-level="1">Recent News</a>
852</li>
853<li class="nav-item"><!--nav-item dropdown class to li---->
854<a class="nav-link" href="//greinerelectric.com/Contact" data-level="1">Contact Us</a>
855</li>
856</ul>
857</div>
858</div>
859</nav>
860</div>
861<!-- Wrapper -->
862<div class="wrapper wrapper-home wrapper-">
863<div id="savecontent" class="">
864<section class="oms-blog-detail py-5">
865<div class="container container-narrow ">
866<div class="row">
867<div class="col-12 ">
868<div class="blog">
869<div class="blog-desc">
870<h1 class="h2 blog-title-heading">
871Greiner Earns 2 ABC Awards: Project of the Year and Safety Professional of the Year</h1>
872<hr>
873<p class="blog-byline-heading">By Kelly Anton - August 6, 2026</p>
874<div class="w-100"> <a href="/userfiles/2482/images/ABC_BrentDugan_Safetydirector.jpeg?t=20260806100843" class="fancygallery" rel="gallery1"> <img class="blog-detail-image img-fluid w-100 mb-4" src="/userfiles/2482/images/ABC_BrentDugan_Safetydirector.jpeg?t=20260806100843" style="cursor:zoom-in;" alt="
875Greiner Earns 2 ABC Awards: Project of the Year and Safety Professional of the Year"> </a> </div>
876<div>
877In 2025, the Associated Builders and Contractors Rocky Mountain chapter honored Greiner with two prestigious awards:
878<ul>
879<li>Excellence In Construction Awards Safety Professional of the Year for Brent Dugan</li>
880<li>Excellence in Construction Specialty Contractor Project of the Year Award for the Charter Technology Engineering Center</li>
881</ul>
882Thank you to all our employees and partners who help us succeed! 
883<h1 title="Associated Builders and Contractors Rocky Mountain"> </h1>
884</div>
885<a class="btn btn-primary mt-3" href="//greinerelectric.com/Recent-News"><i class="fas fa-chevron-left mr-2 small"></i> Go Back</a> </div>
886<!-- close blog desc -->
887</div>
888<!-- close blog -->
889</div>
890<!-- close col -->
891</div>
892<!-- / .row -->
893</div>
894<!-- / .container -->
895</section>
896<script type="application/ld+json">
897{
898"@context": "http://schema.org",
899"@type": "BlogPosting",
900"mainEntityOfPage": {
901"@type": "WebPage",
902"@id": "http://greinerelectric.com/blog/18059/Greiner-Earns-2-ABC-Awards-Project-of-the-Year-and-Safety-Professional-of-the-Year"
903},
904"headline": "Greiner Earns 2 ABC Awards: Project of the Year and Safety Professional of the Year",
905"description": "",
906"image": [
907"http://greinerelectric.com/userfiles/2482/images/ABC_BrentDugan_Safetydirector.jpeg?t=20260806100843"
908],
909"datePublished": "2026-08-06T00:00:00+07:00",
910"dateModified": "2026-08-06T16:17:00+07:00",
911"author": {
912"@type": "Person",
913"name": "Kelly Anton"
914},
915"publisher": {
916"@type": "Organization",
917"name": "Greiner Electric",
918"logo": {
919"@type": "ImageObject",
920"url": "https://greinerelectric.com/userfiles/2482/images/logo-- Copy_11280211.png"
921}
922}
923}
924</script>
924
925</div>
926</div> <!-- / .wrapper -->
927<!-- daldals -->
928<!--Footer-->
929<footer class="omsFooter footer_blog-detail-page">
930<div class="container-fluid bg-dark py-5 py-lg-6 omsfooter" data-original-title="" title=""><div class="container" data-original-title="" title=""><style data-styleurl_id="styletag_28" type="text/css">
931footer {
932background: #50575e;
933font-size: 0.85rem!important;
934}
935footer a {
936color: #fff;
937}
938footer .brand img {
939width: 100%;
940height: auto;
941max-width: 130px;
942}
943footer .copyright {
944padding-top: 1rem;
945}
946@media(min-width:992px) {
947footer .copyright {
948padding-top: 0rem;
949display: flex;
950flex-wrap: wrap;
951flex-direction: row;
952justify-content: space-between;
953}
954.footerLinks,
955.footerCopy,
956.footerDWD {
957display: inline;
958padding: 0 3px;
959margin: 1rem 0 0 0;
960color: #fff;
961}
962.footerLinks {
963order: 3;
964width: 33%;
965color: #fff;
966text-align: right;
967}
968.footerCopy {
969order: 2;
970width: 33%;
971text-align: center;
972}
973.footerDWD {
974order: 1;
975width: 33%;
976text-align: left;
977}
978}
979/* Footer Blog Widget */
980footer .blog-image-col {
981padding-right: 0px;
982width: auto!important;
983max-width: none!important;
984flex: initial;
985margin: 0;
986}
987footer .blog-image-col img {
988width: 60px!important;
989height: 40px!important;
990border-radius: .15rem;
991}
992footer .blog-panel-header {
993margin-bottom: 0;
994padding: 0!important;
995}
996footer .oms-footer-blog-column .row:nth-child(even) {
997align-items: center!important;
998margin-bottom: 1rem;
999}
1000footer a.blog-header-title {
1001color: #fff!important;
1002}
1003.media.blog-item .blog-title:hover, .omsfooter a:hover {
1004color: var(--secondary);
1005text-decoration: none;
1006}
1007.badge.blog-posted {
1008color: var(--light);
1009opacity: .7;
1010}</style><div class="row" data-original-title="" title=""><div class="col-12 col-lg-4" data-original-title="" title=""><a class="brand d-inline-block text-white mb-3" data-cke-saved-href="/home" href="/home" data-link="" target="_blank" data-target="" data-toggle="" data-original-title="" title=""><img alt='Greiner Electric logo' class='img-fluid' src='/userfiles/2482/images/original-logo_11280211.png'></a> <a class="text-white d-block py-1 mt-2" data-cke-saved-href="/contact-us" href="/contact-us" data-link="" data-original-title="" title=""> <i class="fas fa-map-marker fa-fw small mr-1"></i> Main Office:<br>12456 North Dumont Way, Littleton, CO 80125</a> <a class="text-white d-block py-1" data-cke-saved-href="tel:303-470-9702" href="tel:303-470-9702" data-original-title="" title=""> <i class="fas fa-phone fa-fw small mr-1"></i>&nbsp;303-470-9702</a> <span class="text-white d-block py-1" data-original-title="" title=""> <i class="fas fa-print fa-fw small mr-1"></i>&nbsp;303-470-9810</span> <span class="text-white d-block py-1 mb-3" data-original-title="" title=""> <i class="fas fa-clock fa-fw small mr-1"></i>&nbsp;7:00AM - 5:00PM</span> <a class="mt-2 mr-1 d-inline-block" data-cke-saved-href="https://www.facebook.com/greinerelectric/ " href="https://www.facebook.com/greinerelectric/ " target="_blank" data-original-title="" title=""> <span class="fa-stack" data-original-title="" title=""> <i class="fas fa-circle fa-stack-2x" style="color: #50575e;"></i> <i class="fab fa-facebook fa-stack-1x fa-inverse"></i> </span> </a>&nbsp; <a class="mt-2 mr-1 d-inline-block" data-cke-saved-href="https://www.instagram.com/greinerelectric/?hl=en " href="https://www.instagram.com/greinerelectric/?hl=en " target="_blank" data-original-title="" title=""> <span class="fa-stack" data-original-title="" title=""> <i class="fas fa-circle fa-stack-2x" style="color: #50575e;"></i> <i class="fab fa-instagram fa-stack-1x fa-inverse"></i> </span> </a> <a class="mt-2 mr-1 d-inline-block" data-cke-saved-href="https://www.linkedin.com/company/greiner-electric/ " href="https://www.linkedin.com/company/greiner-electric/ " target="_blank" data-original-title="" title=""> <span class="fa-stack" data-original-title="" title=""> <i class="fas fa-circle fa-stack-2x" style="color: #50575e;"></i> <i class="fab fa-linkedin fa-stack-1x fa-inverse"></i> </span> </a> </div><div class="col-12 d-md-none" data-original-title="" title=""><hr class="my-5 border-secondary"></div><div class="col-12 col-lg-4 oms-footer-blog-column" data-original-title="" title=""><h5 class="text-white my-3">Recent Blogs</h5><div class="row" data-original-title="" title=""><!-- THIS IS THE NEW VERSION -->
1011<style>
1012.square-image::before {
1013padding-top: 100%;
1014}
1015</style>
1016<div class="col-12 col-blog">
1017<div class="media blog-item align-items-stretch my-2">
1018<div class="media-body blog-content d-flex flex-column align-items-start">
1019<a href="/blog/18059/Greiner-Earns-2-ABC-Awards-Project-of-the-Year-and-Safety-Professional-of-the-Year" class="blog-title">Greiner Earns 2 ABC Awards: Project of the Year and Safety Professional of the Year</a>
1020<span class="badge blog-posted p-0 mt-1">Posted Aug 6, 2026</span>
1021</div>
1022</div>
1023</div>
1024<style>
1025.square-image::before {
1026padding-top: 100%;
1027}
1028</style>
1029<div class="col-12 col-blog">
1030<div class="media blog-item align-items-stretch my-2">
1031<div class="media-body blog-content d-flex flex-column align-items-start">
1032<a href="/blog/18057/Greiner-Earns-2-AGC-ACE-Awards-for-Best-Building-Project-in-2025" class="blog-title">Greiner Earns 2 AGC ACE Awards for Best Building Project in 2025</a>
1033<span class="badge blog-posted p-0 mt-1">Posted Aug 6, 2026</span>
1034</div>
1035</div>
1036</div></div><a data-original-title="" data-cke-saved-href="/recent-news" href="/recent-news" title="">All Blog Posts</a></div><div class="col-12 col-lg-4" data-original-title="" title=""><h5 class="text-white my-3">About Us</h5><p class="text-white">Serving Colorado and Wyoming’s commercial electrical needs statewide, we are a power-player in all building types. Greiner provides electrical services for commercial office, retail, mixed-use, high rise residential, hospitality, data-center, healthcare, and educational facilities.</p><a class="text-secondary" data-cke-saved-href="/Get-to-Know-Us" href="/Get-to-Know-Us" data-original-title="" title="">Learn More&nbsp;&nbsp;<i class="fas fa-chevron-right"></i></a></div><div class="col-12 d-md-none" data-original-title="" title=""><hr class="my-5 border-white"></div></div></div></div>
1037<a href="/Job-Openings" class="text-left pl-3 py-3 btn btn-lg btn-warning font-weight-bold" data-original-title="" style="transform: rotate(90deg); position: fixed; top: 300px; right: -43px; z-index: 10;" title="">Apply Now!
1038</a>
1039<div class="container-fluid small py-2 bg-black text-light copyrightWrapper">
1040<style>
1041.copyrightWrapper a {
1042color: var(--light);
1043}
1044.copyrightWrapper a:hover {
1045text-decoration: underline;
1046}
1047.
1048</style>
1049<div class="copyright row">
1050<div class="footerDWD col-12 col-lg-4 text-center text-lg-left py-1">
1051<a href="http://denverwebsitedesigns.com" target="_blank">Site Designed by Denver Website Designs</a>
1052</div>
1053<div class="footerCopy col-12 col-lg-4 text-center py-1">&copy;2026&nbsp;Greiner Electric</div>
1054<div class="footerLinks col-12 col-lg-4 text-center text-lg-right py-1">
1055<a class="sitemap-link" href="/sitemap.cfm">sitemap</a> | <a class="sitemap-xml-link" href="/greinerelectric-com-sitemap.xml">sitemap xml</a> | <a class="rss-link" href="/feed">rss feed</a>
1056|
1057<a data-toggle="modal" data-target="#omniaMgmtLoginModal">sign in</a>
1058</div>
1059</div>
1060</div>
1061</footer>
1062<script>
1063$(function() {
1064$("*[contenteditable]").prop("contenteditable",false);
1065$(".fancylogin").fancybox({
1066type: "iframe",
1067href: "//greinerelectric.com/includes/loginForm_a.cfm?s=2482",
1068margin: 0,
1069closeBtn: false,
1070wrapCSS: "loginBox",
1071width: 320,
1072height: 230,
1073afterShow: function() { $("#userName").focus(); } });
1074});
1075</script>
1075
1076<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css" crossorigin="anonymous">
1077<link rel="stylesheet" href="/css/hamburgers.min.css?v=1547685292">
1078<link rel="stylesheet" href="/css/hover.css?v=1547685293">
1079<script src="/js/jquery.paroller.min.js?v=1547685408"></script>
1079
1080<!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
1081<!--[if lt IE 9]>
1082<script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
vendor: 1 bytes, line 1082
1082
1083<script src="https://oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js"></script>
1083
1084<![endif]-->
1085<script src="/js/jquery.cookie.js?v=1547685408"></script>
vendor: 1 bytes, line 1085
1085
1086<script>
1087wow = new WOW({
1088boxClass: 'wow', // default
1089animateClass: 'animated', // default
1090offset: 30, // default
1091mobile: true, // default
1092live: true // default
1093})
1094wow.init();
1095</script>
1095
1096<style>
1097.wow {visibility: hidden;}
1098.social-twitter{display:none !important;}
1099.social-google{display:none !important;}
1100.social-zillow{display:none !important;}
1101.social-yelp{display:none !important;}
1102.social-youtube{display:none !important;}
1103.social-tripadvisor{display:none !important;}
1104.social-pinterest{display:none !important;}
1105.social-tiktok{display:none !important;}
1106</style>
1107<!-- Omnia JS -->
1108<script src="/js/omsBs4.js?v=1789679629"></script>
1108
1109<!-- ReCaptcha JS -->
1110<script>
1111(function(){
1112if (window.grecaptcha || window.omsRecaptchaLoad || document.querySelector('script[src*="recaptcha/api.js"]')) return;
1113var loaded = false, pendingExec = false;
1114function load(){
1115if (loaded) return; loaded = true;
1116var s = document.createElement('script');
1117s.src = 'https://www.google.com/recaptcha/api.js?hl=en&onload=omsRecaptchaOnload';
1118s.async = true; s.defer = true;
1119document.head.appendChild(s);
1120}
1121window.___grecaptcha_cfg = window.___grecaptcha_cfg || {};
1122window.___grecaptcha_cfg.fns = window.___grecaptcha_cfg.fns || [];
1123var stub = window.grecaptcha = {};
1124stub.ready = function(cb){ window.___grecaptcha_cfg.fns.push(cb); load(); };
1125stub.getResponse = function(){ load(); return ''; };
1126stub.execute = function(){ pendingExec = true; load(); };
1127stub.render = function(){ load(); };
1128stub.reset = function(){};
1129window.omsRecaptchaOnload = function(){
1130if (!pendingExec) return;
1131var tries = 0;
1132(function go(){
1133try { window.grecaptcha.execute(); pendingExec = false; }
1134catch (e) { if (++tries < 20) setTimeout(go, 250); }
1135})();
1136};
1137var evs = ['pointerdown', 'keydown', 'touchstart', 'mousemove', 'scroll', 'focusin'];
1138function once(){ evs.forEach(function(e){ window.removeEventListener(e, once, true); }); load(); }
1139evs.forEach(function(e){ window.addEventListener(e, once, { capture: true, passive: true }); });
1140window.omsRecaptchaLoad = load;
1141})();
1142</script>
1142
1143<!-- Site Custom JS -->
1144<script src="//greinerelectric.com/js/additionalJS.cfm?pageid=75156&siteid=2482&v=1&ref=inside&editPage=0" id="additionalJSLink"></script>
vendor: 1 bytes, line 1144
1144
1145<script src="https://cdnjs.cloudflare.com/ajax/libs/masonry/4.2.2/masonry.pkgd.min.js"></script>
1145
1146</div>
1147</div>
1148<div id="header_recaptcha" class="g-recaptcha" data-sitekey="6LdSEZEUAAAAAD355f5isunNsV8pIazt4c0UQzi9" data-size="invisible" data-callback="recaptcha_submit"></div>
1149</body>
1150</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.