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">✕</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> 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> 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> 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> <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 <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">©2026 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.