1<!DOCTYPE html> 2 <html lang="en-US" class="loading"> 3 <head> 4 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 5 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 6
6<script rel="preload" src="/_templates/_system/_js/privacy-banner.js"></script>
6 7 <style> 8 html {-webkit-tap-highlight-color: rgba(0,0,0,0); -webkit-tap-highlight-color: transparent;} 9 body {padding: 0px; margin: 0px; font-size: 16px; font-family: arial; overflow-x: hidden;} 10 img {max-width: 100%;} 11 section {display: inline-block; clear: both; width: 100%; box-sizing: border-box;} 12 a {text-decoration: none;} 13 .defer-css {display: none;} 14 .skip-menu {position: absolute; left: -500px;} 15 .content-section .alerts-panel {width: 100%;} 16 .to-top {position: fixed; right: 10px; bottom: 10px; width: 43px; height: 43px; border-radius: 50%; background-color: white; display: block; z-index: 999; box-sizing: border-box; box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1); text-align: center; line-height: 43px; cursor: pointer; display: none;} 17 .content-section {position: relative; display: block;} 18 .content-section .alerts-panel p {width: 100%; text-align: center; padding: 20px; margin: 0px; box-sizing: border-box; display: none;} 19 .content-section.system-splash {width: 100vw; height: 100vh; padding: 40px; box-sizing: border-box; flex-direction: column; justify-content: center; align-items: center; display: none; z-index: 999999;} 20 .content-section.system-splash .system-splash-close {padding: 10px 20px; margin-top: 40px; border: 1px solid black;} 21 [data-system="services-faqs-container"] .services-qa-container {display: flex; flex-direction: column;} 22 [data-system="services-faqs-container"] .services-qa-container > div {display: none;} 23 [data-system="services-faqs-container"] .services-qa-container .services-qa-title {user-select: none; margin: 0px; margin-bottom: 0.5rem; cursor: pointer; border-bottom: 1px dotted #e6e6e6; padding-bottom: 0.5rem; box-sizing: border-box; display: block;} 24 [data-system="services-faqs-container"] .services-qa-container .services-qa-title .qa-toggle {float: right; margin-left: 40px;} 25 #ad-tracking-source, #ad-tracking-campaign {display: none !important;} 26 27 @media (max-width: 360px) { 28 .content-section.system-splash {display: flex;} 29 } 30 </style> 31 <style> 32 .preload * { 33 -webkit-transition: none !important; 34 -moz-transition: none !important; 35 -ms-transition: none !important; 36 -o-transition: none !important; 37 } 38 </style> 39
39<script>var javascript; javascript.load = []; function javascript() {}</script>
39 40
40<script> 41 function gtag(arguments) { 42 dataLayer.push(arguments); 43 } 44 45 google_tracking = { 46 gtag: function() { 47 dataLayer.push(arguments); 48 } 49 }; 50 </script>
50 51
51<script> 52 javascript.load.push('system_gtm'); 53 javascript.prototype.system_gtm = function() { 54 var script_loaded = false; 55 function load_script() { 56 script_loaded = true; 57 $.getScript('https://www.googletagmanager.com/gtag/js?id=G-E6CXL8VLPP'); 58 window.dataLayer = window.dataLayer || []; 59 google_tracking.gtag('js', new Date()); 60google_tracking.gtag('config', 'G-E6CXL8VLPP'); 61 62 } 63 $(document).one('scroll', function() { 64 if (script_loaded == false) { 65 load_script(); 66 } 67 }); 68 $(document).one('mousemove', function() { 69 if (script_loaded == false) { 70 load_script(); 71 } 72 }); 73 $('body').one('click', function() { 74 if (script_loaded == false) { 75 load_script(); 76 } 77 }); 78 } 79 </script>
79 80 81 <meta HTTP-EQUIV="Expires" CONTENT="Never"> 82 <meta HTTP-EQUIV="CACHE-CONTROL" CONTENT="PUBLIC"> 83 <meta name="language" content="English" /><meta name="description" content="If you are interested in learning about Vision & Eye Wellness Exams, call the North Dallas office of Kenneth I Uzick & Associates at (214) 361-1010." /><meta name="keywords" content="Eye Wellness in North Dallas, North Dallas Vision Examination, Eye Wellness North Dallas, Vision Examination North Dallas, Vision Examination 75225" /><meta name="robots" content="index, follow" /><meta property="og:title" content="Eye Wellness in North Dallas | North Dallas Vision Examination | Eye Wellness North Dallas" /><meta property="og:url" content="https://druzick.com/services/vision-eye-wellness-exams/" /><meta property="og:type" content="website" /><meta property="og:description" content="If you are interested in learning about Vision & Eye Wellness Exams, call the North Dallas office of Kenneth I Uzick & Associates at (214) 361-1010." /><meta property="og:image" content="https://druzick.com/custom/images/logo.png" /><title>Eye Wellness in North Dallas | North Dallas Vision Examination | Eye Wellness North Dallas</title><link rel="stylesheet preload" as="font" href="https://fonts.googleapis.com/css?family=Roboto" media="none" onload="if(media!='all')media='all'"><link rel="stylesheet preload" as="font" href="https://fonts.googleapis.com/css?family=Lato" media="none" onload="if(media!='all')media='all'"><link rel="stylesheet preload" as="font" href="https://fonts.googleapis.com/css?family=Great+Vibes" media="none" onload="if(media!='all')media='all'"></head> 84 <body class="preload" data-tracking-id=""> 85 86 <a tabindex="0" class="skip-menu" href="#skip-menu">Skip Menu</a> 87 88 <section class="content-section system-splash" style="background-color: #ffffff"> 89 <img src="/custom/images/logo.png" /> 90 91 <div class="system-splash-close" style="border-color: #000000; color: #000000;">Continue</div> 92 </section> 93 94 <section class="content-section"> 95 <div class="alerts-panel"></div> 96 </section> 97 <section class="content-section"> 98 <div class="to-top"><i class="fas fa-angle-up"></i></div> 99 <section id="apollo-home-header"> 100 <div class="apollo-contact-bar"> 101 <div class="contact-bar-location"> 102 <i class="fas fa-map-marker-alt"></i>8335 Westchester Dr., Suite 120, Dallas, TX 75225 103 </div> 104 105 <div class="contact-bar-stacked"> 106 <div class="contact-bar-phone"> 107 <i class="fas fa-phone"></i><a aria-label="(214) 361-1010" href="tel:+1 (214) 361-1010">(214) 361-1010</a> 108 </div> 109 <div class="contact-bar-social"> 110 <a aria-label="Social Media Icon" class="social-icon" href="https://www.facebook.com/Vision-City-of-North-Dallas-140329216045520/" target="_blank" rel="noopener"> 111 <i class="fab fa-facebook-f"></i> 112 </a> 113 114 <a aria-label="Social Media Icon" class="social-icon" href="https://www.google.com/maps/place/Kenneth+I+Uzick+%26+Associates/@32.8643603,-96.806747,15z/data=!3m1!5s0x864e9e44125f35a7:0x5591dc3d32d94e94!4m7!3m6!1s0x0:0xf42398a8d74ba467!8m2!3d32.8643603!4d-96.806747!9m1!1b1" target="_blank" rel="noopener"> 115 <i class="fab fa-google"></i> 116 </a> 117 118 <a aria-label="Social Media Icon" class="social-icon" href="/blog/" target="_blank" rel="noopener"> 119 <i class="fas fa-rss"></i> 120 </a> 121 </div></div><a href="https://book2.getweave.com/890f28e4-e519-413c-8aea-c53bb93540b7/request-appointment" target="_blank" rel="noopener" class="appt-button">Book Now</a><div id="google_translate_element"></div></div> <div class="clear"></div> 122</section><style>#apollo-home-header { 123 font-family: 'Lato', san-serif; 124 font-size: 1.3rem; 125} 126#apollo-home-header .apollo-contact-bar { 127 display: flex; 128 align-items: center; 129 background: #15799e; 130 padding: 10px 0; 131 justify-content: center; 132 color: #fff; 133} 134#apollo-home-header .apollo-contact-bar .mobile-multi { 135 display: none; 136} 137#apollo-home-header .apollo-contact-bar .mobile-multi .number-bubble { 138 display: inline-block; 139 background-color: #fff; 140 color: #0a87be; 141 text-align: center; 142 padding: 2px 12px; 143 font-size: 20px; 144 height: 32px; 145 line-height: 30px; 146 font-weight: 400; 147} 148#apollo-home-header .apollo-contact-bar .two-locations { 149 margin: 0 30px; 150 display: flex; 151} 152#apollo-home-header .apollo-contact-bar .two-locations > div { 153 margin-right: 5px; 154} 155#apollo-home-header .apollo-contact-bar .two-locations p { 156 margin: 0; 157 font-size: 16px; 158} 159#apollo-home-header .apollo-contact-bar .two-locations p a { 160 color: #fff; 161} 162#apollo-home-header .apollo-contact-bar .two-locations p a[href^="tel:"] { 163 margin-right: 10px; 164} 165#apollo-home-header .apollo-contact-bar i { 166 margin-right: 5px; 167} 168#apollo-home-header .apollo-contact-bar .contact-bar-location,
169#apollo-home-header .apollo-contact-bar .contact-bar-phone, 170#apollo-home-header .apollo-contact-bar .contact-bar-social { 171 margin: 0 20px; 172} 173#apollo-home-header .apollo-contact-bar .contact-bar-phone a, 174#apollo-home-header .apollo-contact-bar .contact-bar-social a { 175 color: #fff; 176} 177#apollo-home-header .apollo-contact-bar .contact-bar-social i { 178 margin: 0 8px; 179} 180#apollo-home-header .apollo-contact-bar .contact-bar-stacked { 181 display: flex; 182} 183#apollo-home-header .apollo-contact-bar #header-multiple-numbers { 184 margin-right: 40px; 185 font-size: 1.1rem; 186} 187#apollo-home-header .apollo-contact-bar #header-multiple-numbers a { 188 color: #fff; 189} 190@media (max-width: 1250px) { 191 #apollo-home-header { 192 font-size: 1rem; 193 } 194} 195@media (max-width: 1024px) { 196 #apollo-home-header .apollo-contact-bar { 197 justify-content: space-between; 198 align-items: center; 199 } 200 #apollo-home-header .apollo-contact-bar .contact-bar-stacked { 201 flex-direction: column; 202 } 203 #apollo-home-header .apollo-contact-bar .contact-bar-location { 204 flex: 1; 205 } 206 #apollo-home-header .apollo-contact-bar .contact-bar-social { 207 display: flex; 208 justify-content: space-around; 209 } 210 #apollo-home-header .apollo-contact-bar .contact-bar-location, 211 #apollo-home-header .apollo-contact-bar .contact-bar-phone, 212 #apollo-home-header .apollo-contact-bar .contact-bar-social { 213 margin: 0 8px; 214 } 215 #apollo-home-header .apollo-contact-bar .contact-bar-phone { 216 margin-bottom: 5px; 217 } 218} 219@media (max-width: 768px) { 220 #apollo-home-header { 221 font-size: .85rem; 222 } 223 #apollo-home-header .apollo-contact-bar { 224 flex-direction: column; 225 padding: 10px; 226 text-align: center; 227 } 228 #apollo-home-header .apollo-contact-bar .mobile-multi { 229 display: block; 230 } 231 #apollo-home-header .apollo-contact-bar .two-locations { 232 display: none; 233 } 234} 235</style><section id="apollo-top-menu"> 236 <div id="top-menu-mobile"> 237 <div class='logo-container-mobile'> 238 <a aria-label="Home" href="/"><img id="guile-header-logo" src="/custom/images/logo-dark.png" /></a> 239 </div> 240 <i class="fas fa-bars"></i> 241 </div> 242 <div class="top-menu-nav"> 243 <div class='logo-container'> 244 <a aria-label="Home" href="/"><img id="guile-header-logo" src="/custom/images/logo.png" /></a> 245 </div> 246 <div class='top-menu-main-menu-container'><ul id="top-menu-main-menu"> 247 <li tabindex="0" role="button" class="top-menu-item" data-url="/">Home</li><li tabindex="0" role="button" class="top-menu-item" data-url="/about-us/">About Us<ul class="top-menu-sub-menu"><li tabindex="0" role="button" class="top-menu-sub-menu-item" data-url="/about-us/our-office/">Our Office</li><li tabindex="0" role="button" class="top-menu-sub-menu-item" data-url="/about-us/new-patients/">New Patients</li><li tabindex="0" role="button" class="top-menu-sub-menu-item" data-url="/about-us/office-tour/">Office Tour</li><li tabindex="0" role="button" class="top-menu-sub-menu-item" data-url="/about-us/educational-videos/">Educational Videos</li><li tabindex="0" role="button" class="top-menu-sub-menu-item" data-url="/about-us/testimonials/">Testimonials</li></ul></li><li tabindex="0" role="button" class="top-menu-item" data-url="/our-staff/">Our Doctor</li><li tabindex="0" role="button" class="top-menu-item" data-url="/#/">Eye Health<ul class="top-menu-sub-menu"><li tabindex="0" role="button" class="top-menu-sub-menu-item" data-url="/eye-health/eye-anatomy/">Eye Anatomy</li><li tabindex="0" role="button" class="top-menu-sub-menu-item" data-url="/eye-health/aging-eyes/">Our Aging Eyes</li><li tabindex="0" role="button" class="top-menu-sub-menu-item" data-url="/eye-health/childrens-vision/">Children's Vision</li><li tabindex="0" role="button" class="top-menu-sub-menu-item" data-url="/eye-health/faq/">FAQ</li></ul></li><li tabindex="0" role="button" class="top-menu-item" data-url="/insurance/">Insurance</li><li tabindex="0" role="button" class="top-menu-item" data-url="/">Eye Gallery<ul class="top-menu-sub-menu"><li tabindex="0" role="button" class="top-menu-sub-menu-item" data-url="/eye-gallery/contact-lenses/">Contact Lenses</li><li tabindex="0" role="button" class="top-menu-sub-menu-item" data-url="/eye-gallery/designers/">Designers</li><li tabindex="0" role="button" class="top-menu-sub-menu-item" data-url="/eye-gallery/sunwear/">Sunwear</li><li tabindex="0" role="button" class="top-menu-sub-menu-item" data-url="/eye-gallery/function/">Function</li><li tabindex="0" role="button" class="top-menu-sub-menu-item" data-url="/eye-gallery/fashion/">Fashion</li><li tabindex="0" role="button" class="top-menu-sub-menu-item" data-url="/eye-gallery/lens-extras/">
247Lens Extras</li><li tabindex="0" role="button" class="top-menu-sub-menu-item" data-url="/eye-gallery/accessories/">Accessories</li><li tabindex="0" role="button" class="top-menu-sub-menu-item" data-url="/eye-gallery/kids/">Kids</li></ul></li><li tabindex="0" role="button" class="top-menu-item" data-url="/services/">Services<ul class="top-menu-sub-menu mega-menu"><ul class="mega-menu-column not-grouped"><li tabindex="0" role="button" class="top-menu-sub-menu-item" data-url="/services/oct/">OCT (Optical Coherence Tomography)</li><li tabindex="0" role="button" class="top-menu-sub-menu-item" data-url="/services/optomap/">Optomap®</li><li tabindex="0" role="button" class="top-menu-sub-menu-item" data-url="/services/ocular-health-exams/">Ocular Health (Medical) Examinations</li><li tabindex="0" role="button" class="top-menu-sub-menu-item" data-url="/services/contact-lens-fittings/">Contact Lens Fittings</li><li tabindex="0" role="button" class="top-menu-sub-menu-item" data-url="/services/vision-eye-wellness-exams/">Vision & Eye Wellness Exams</li></ul><li tabindex="0" role="button" class="view-all view-all-mega" data-url="/services/">View All</li></ul></li><li tabindex="0" role="button" class="top-menu-item" data-url="/contact/">Contact<ul class="top-menu-sub-menu"><li tabindex="0" role="button" class="top-menu-sub-menu-item" data-url="/contact/contact-form/">Contact Us</li><li tabindex="0" role="button" class="top-menu-sub-menu-item" data-url="https://book2.getweave.com/890f28e4-e519-413c-8aea-c53bb93540b7/request-appointment">Request Appointment</li></ul></li> </ul> 248 </div> 249 </div> 250 <div class="clear"></div> 251</section><style>#apollo-top-menu { 252 box-shadow: 0 10px 16px -16px #444; 253 position: relative; 254 z-index: 9999; 255 display: block; 256 font-family: 'Lato', san-serif; 257} 258#apollo-top-menu .top-menu-nav { 259 display: flex; 260 justify-content: center; 261 position: absolute; 262 width: 100%; 263} 264#apollo-top-menu .top-menu-nav:after { 265 background-image: linear-gradient(#349ad8,#dbe6eb 150%); 266 content: ""; 267 left: 0; 268 top: 0; 269 height: 85px; 270 width: 100%; 271 position: absolute; 272} 273#apollo-top-menu .top-menu-sub-menu, 274#apollo-top-menu #top-menu-mobile { 275 display: none; 276} 277#apollo-top-menu #top-menu-main-menu { 278 display: flex; 279 list-style: none; 280 height: 100%; 281 margin: 0; 282 padding: 0; 283 font-family: 'Lato', san-serif; 284 font-size: 1rem; 285 min-width: 700px; 286} 287#apollo-top-menu .top-menu-item { 288 align-items: center; 289 flex: auto; 290 justify-content: center; 291 text-align: center; 292 display: flex; 293 transition: color 0.2s, box-shadow 0.2s; 294 position: relative; 295 margin: 0 10px; 296 text-transform: uppercase; 297 color: #fff; 298 outline: 0; 299} 300#apollo-top-menu :focus { 301 outline: none; 302} 303#apollo-top-menu .top-menu-item:hover {
304 color: #353535; 305 cursor: pointer; 306 box-shadow: inset 0px -3px 0px #15799e; 307} 308#apollo-top-menu .top-menu-sub-menu { 309 list-style: none; 310 padding: 0; 311 position: absolute; 312 background: #349ad8; 313 min-width: 250px; 314 text-align: left; 315 top: 100%; 316 left: 0; 317} 318#apollo-top-menu .top-menu-sub-menu li { 319 padding: 10px; 320 color: #fff; 321} 322#apollo-top-menu .top-menu-sub-menu li:hover { 323 color: #353535; 324} 325#apollo-top-menu .submenu-third-level { 326 background: rgba(219,230,235,0.25); 327} 328#apollo-top-menu .logo-container { 329 padding: 10px 10px; 330 z-index: 999999; 331} 332#apollo-top-menu .top-menu-main-menu-container { 333 display: flex; 334 align-items: center; 335 max-width: 1000px; 336 padding: 0 0 0 10px; 337 position: relative; 338 z-index: 999; 339} 340#apollo-top-menu img { 341 max-height: 110px; 342 vertical-align: bottom; 343} 344#apollo-top-menu .logo-container-mobile { 345 display: none; 346} 347#apollo-top-menu .fa-bars { 348 display: flex; 349 align-items: center; 350 padding: 10px 10px 10px 20px; 351} 352#apollo-top-menu .fa-bars::before { 353 font-size: 25px; 354 color: #fff; 355} 356#apollo-top-menu .top-menu-sub-menu.mega-menu, 357#apollo-top-menu #apollo-top-menu .mega-menu-column { 358 list-style: none; 359 width: 100%; 360 box-sizing: border-box; 361} 362#apollo-top-menu .mega-menu-column.levels { 363 width: 100%; 364} 365#apollo-top-menu .mega-menu-column.levels ul { 366 list-style: none; 367 padding: 0px; 368 display: none; 369} 370#apollo-top-menu .not-grouped { 371 width: 100%; 372 display: flex; 373 flex-wrap: wrap; 374 align-items: center; 375} 376#apollo-top-menu .not-grouped .top-menu-sub-menu-item { 377 display: inline-block; 378 width: 25%; 379 box-sizing: border-box; 380} 381#apollo-top-menu .top-menu-item-emphasis { 382 color: #fff; 383 padding: 31px 20px; 384 font-weight: 600; 385 transition: all 0.3s; 386 background: #dbe6eb; 387} 388#apollo-top-menu .top-menu-item-emphasis::after { 389 display: none; 390} 391#apollo-top-menu .top-menu-item-emphasis:hover { 392 color: #fff; 393 background: #15799e; 394} 395#apollo-top-menu .mega-menu-column { 396 list-style: none; 397 padding: 0; 398 text-align: center; 399 width: 25%; 400 float: left; 401} 402#apollo-top-menu .not-grouped { 403 width: 100%; 404} 405#apollo-top-menu .view-all-mega { 406 flex-basis: 100%; 407 text-align: center; 408 clear: both; 409} 410#apollo-top-menu .top-menu-item[data-url="/services/"] { 411 position: initial; 412} 413@media (max-width: 1024px) { 414 #apollo-top-menu img { 415 width: 250px; 416 max-height: initial; 417 } 418 #apollo-top-menu .top-menu-nav::after { 419 background: none; 420 } 421 #apollo-top-menu .top-menu-main-menu-container { 422 padding: 0; 423 width: 100%; 424 } 425 #apollo-top-menu .top-menu-nav { 426 height: initial; 427 background: #349ad8; 428 z-index: 100; 429 } 430 #apollo-top-menu #top-menu-mobile { 431 display: flex; 432 justify-content: space-between; 433 height: 100%; 434 background: linear-gradient(#349ad8,#dbe6eb 120%); 435 } 436 #apollo-top-menu .logo-container { 437 display: none; 438 } 439 #apollo-top-menu .logo-container-mobile { 440 display: block; 441 } 442 #apollo-top-menu #top-menu-main-menu { 443 display: none; 444 padding: 0; 445 border-bottom: 3px solid #fff; 446 width: 100%; 447 min-width: initial; 448 } 449 #apollo-top-menu .top-menu-item { 450 padding: 12px 0; 451 text-align: left; 452 margin-left: 20px; 453 display: block; 454 color: #fff; 455 } 456 #apollo-top-menu .not-grouped .top-menu-sub-menu-item { 457 display: block; 458 width: 100%; 459 text-align: left; 460 } 461 #apollo-top-menu .top-menu-sub-menu.mega-menu { 462 width: initial; 463 } 464 #apollo-top-menu .top-menu-sub-menu { 465 position: relative; 466 transform: none; 467 border: none; 468 border-bottom: 1px solid lightgrey; 469 border-top: 3px solid #fff; 470 margin-left: -20px; 471 margin-top: 10px; 472 } 473 #apollo-top-menu .top-menu-item::after { 474 display: none; 475 } 476 #apollo-top-menu .top-menu-sub-menu li { 477 padding: 12px 0 12px 40px; 478 } 479 #apollo-top-menu .logo-container-mobile { 480 padding: 10px; 481 } 482 #apollo-top-menu .top-menu-item-emphasis { 483 text-align: center; 484 justify-content: center; 485 margin-left: 0; 486 } 487 #apollo-top-menu .top-menu-item:hover { 488 box-shadow: none; 489 } 490 #apollo-top-menu .view-all-mega { 491 text-align: left; 492 } 493 #apollo-top-menu .mega-menu-column { 494 float: none; 495 text-align: left; 496 } 497} 498</style>
498<script>javascript.load.push('system_main_menu_actions'); 499 500javascript.prototype.system_change_menu_behavior = function() { 501 if (viewportSize.width > 1024) { 502 $('#top-menu-main-menu').css('display', 'flex'); 503 $('.top-menu-sub-menu').css('display', 'none'); 504 } 505 else { 506 $('#top-menu-main-menu').css('display', 'none'); 507 $('.top-menu-sub-menu').css('display', 'none'); 508 } 509} 510 511javascript.prototype.system_main_menu_actions = function() { 512 var menuLock = false; 513 514 $('.top-menu-item').each(function() { 515 if ($(this).find('.top-menu-sub-menu-item').length == 1) { 516 var swapData = $(this).find('.top-menu-sub-menu-item:first').attr('data-url'); 517 $(this).attr('data-url', swapData); 518 $(this).find('.top-menu-sub-menu').remove(); 519 } 520 }); 521 522 $('.top-menu-item').mouseover(function() { 523 if (viewportSize.width > 1024) { 524 if ($(this).find('.top-menu-sub-menu').length > 0) { 525 $(this).find('.top-menu-sub-menu').stop().slideDown(200, function() { 526 $(this).css('height', 'auto'); 527 }); 528 } 529 } 530 }); 531 532 $('.view-all').click(function() { 533 $(location).attr('href', $(this).attr('data-url')); 534 }); 535 536 $('.top-menu-item').click(function() { 537 if (viewportSize.width <= 1024) { 538 if ($(this).find('.top-menu-sub-menu').length > 0) { 539 $(this).find('.top-menu-sub-menu').animate({ 540 height: "toggle", 541 opacity: "toggle" 542 }, 200); 543 } 544 } 545 }); 546 547 $('.top-menu-item').mouseleave(function() { 548 if (viewportSize.width > 1024) { 549 if ($(this).find('.top-menu-sub-menu').length > 0) { 550 $(this).find('.top-menu-sub-menu').stop().slideUp(200, function() {}); 551 } 552 } 553 }); 554 555 $('.top-menu-item').click(function() { 556 if ($(this).find('.top-menu-sub-menu').length == 0) { 557 if ($(this).attr('data-url').indexOf('https://') > -1 || $(this).attr('data-url').indexOf('http://') > -1) { 558 var external_link = $(this).attr('data-url'); 559 window.open(external_link); 560 } 561 else { 562 $(location).attr('href', $(this).attr('data-url')); 563 } 564 } 565 }); 566 567 $('.top-menu-sub-menu-item').click(function(e) { 568 e.stopPropagation(); 569 if ($(this).attr('data-url').indexOf('https://') > -1 || $(this).attr('data-url').indexOf('http://') > -1) { 570 var external_link = $(this).attr('data-url'); 571 window.open(external_link); 572 } 573 else { 574 $(location).attr('href', $(this).attr('data-url')); 575 } 576 }); 577 578 579 $('#top-menu-mobile').click(function() { 580 $('#top-menu-main-menu').animate({ 581 height: "toggle", 582 opacity: "toggle" 583 }, 200); 584 }); 585} 586</script>
586 587 <section id="thor-interior-banner" data-images="/custom/images/banners/glasses-1.jpg::/custom/images/banners/glasses-3.jpg::/custom/images/banners/glasses-4.jpg::/custom/images/banners/sunglasses-1.jpg::/custom/images/banners/sunglasses-2.jpg::/custom/images/banners/sunglasses-3.jpg::/custom/images/banners/sunglasses-4.jpg"> 588 <div class="thor-banner-background"></div> 589 <div id="skip-menu" name="skip-menu" tabindex="0" style="height: 0px; width: 0px; display: block; position: absolute;"></div> 590 591 <section class="system-page-title-default"> 592 <h1>Vision & Eye Wellness Exams</h1> 593 </section> 594 595 596 </section> 597 <style>#thor-interior-banner { 598 box-sizing: border-box; 599 width: 100%; 600 display: block; 601 position: relative; 602 border: 0px; 603 border-bottom: 3px solid #27699b; 604 border-image: linear-gradient(to right,#1f7ab0,#52bdd2) 1; 605 z-index: 100; 606} 607#thor-interior-banner .thor-banner-background { 608 position: relative; 609 width: 100%; 610 padding: 50px 0px; 611 background-size: cover; 612 background-repeat: no-repeat; 613 background-position: 50% 100%; 614 box-shadow: 0px 15px 20px 3px rgba(0,0,0,0.2); 615 height: 520px; 616} 617#thor-interior-banner .system-page-title-default { 618 position: absolute; 619 bottom: 0px; 620 padding-left: 250px; 621 color: white; 622 text-shadow: 1px 1px 1px black; 623 transform: translate(-75px,45px); 624} 625#thor-interior-banner .system-page-title-default h1 { 626 font-size: 96px; 627 padding: 0px; 628 margin: 0px; 629 font-weight: 100; 630 filter: drop-shadow(0px 0px 40px #15799e); 631 font-family: 'Great Vibes', cursive; 632} 633@media (max-width: 1600px) { 634 #thor-interior-banner .system-page-title-default { 635 padding-left: 150px; 636 } 637} 638@media (max-width: 1366px) { 639 #thor-interior-banner .system-page-title-default { 640 padding-left: 100px; 641 } 642} 643@media (max-width: 1280px) { 644 #thor-interior-banner .thor-banner-background { 645 height: 360px; 646 } 647} 648@media (max-width: 1024px) { 649 #thor-interior-banner .thor-banner-background { 650 height: 300px; 651 background-position: center center; 652 } 653} 654@media (max-width: 768px) { 655 #thor-interior-banner .system-page-title-default { 656 padding: 0px 20px; 657 transform: translate(0px,35px); 658 } 659 #thor-interior-banner .system-page-title-default h1 { 660 font-size: 64px; 661 text-align: center; 662 filter: drop-shadow(0px 0px 15px #27699b); 663 } 664} 665@media (max-width: 640px) { 666 #thor-interior-banner .thor-banner-background { 667 height: 120px; 668 } 669 #thor-interior-banner .system-page-title-default h1 { 670 font-size: 54px; 671 } 672} 673</style>
673<script>javascript.load.push('thor_interior_banner'); 674javascript.load.push('system_random_image'); 675 676javascript.prototype.system_random_image = function() { 677 var banner_images = $('#thor-interior-banner').attr('data-images').split('::'); 678 var banner_image = (banner_images[Math.floor(Math.random() * (banner_images.length))]); 679 680 $('#thor-interior-banner .thor-banner-background').css('background-image', 'url('+banner_image+')'); 681} 682 683javascript.prototype.thor_interior_banner = function() { 684 $(document).scroll(function() { 685 if (viewportSize.width > 1024) { 686 var elementHeight = $('#thor-interior-banner .thor-banner-background').outerHeight(); 687 //var startEffect = $('#thor-interior-banner .thor-banner-background').offset().top; 688 var startEffect = 0; 689 var endEffect = $('#thor-interior-banner .thor-banner-background').offset().top + elementHeight; 690 691 var pageHeight = $(document).height(); 692 693 var scrollDistance = endEffect - startEffect; 694 var scrollPosition = $(document).scrollTop(); 695 696 if (scrollPosition > startEffect && scrollPosition < endEffect) { 697 scrollPercent = ((scrollPosition - startEffect) / scrollDistance * 100).toFixed(2); 698 $('#thor-interior-banner .thor-banner-background').css('background-position', 'center '+(100 - scrollPercent)+'%'); 699 } 700 } 701 }); 702} 703</script>
703<section id="interior-services-container"> 704 <div class="content-container"> 705 <div id="left-side-bar"> 706 <p> 707 Eye examinations are intended to prevent blindness or serious vision loss by using the most advanced equipment and 708 technology as well as giving you the clearest most comfortable vision. Clear, comfortable vision may be obtained 709 with the use of eyeglasses, contact lenses or possibly surgical correction. The Vision Wellness examination consists 710 of two or more parts: 711</p> 712<h3> 713 Eye Wellness 714</h3> 715<p> 716 The Eye Wellness portion is to evaluate and screen for eye diseases internally and externally, including but not 717 limited to the possible detection of: 718</p> 719<ul> 720 <li> 721 Glaucoma (most common optic nerve disease leading to vision loss and blindness) 722 </li> 723 <li> 724 Cataract (clouding of the lens in the eye) 725 </li> 726 <li> 727 Macular Degeneration (leading cause of blindness in older adults) 728 </li> 729 <li> 730 Diabetes (may cause prescription fluctuations and retinal changes) 731 </li> 732 <li> 733 Retinal Holes/Tears/Detachments (physical damage to the retina) 734 </li> 735 <li> 736 High blood pressure (can cause narrowing of blood vessels, bleeding, or vascular changes) 737 </li> 738 <li> 739 Allergies (Allergic conjunctivitis) 740 </li> 741 <li> 742 Dry eyes 743 </li> 744 <li> 745 Eye infections as in conjunctivitis (pink eye) 746 </li> 747 <li> 748 Chronic lid disease 749 </li> 750 <li> 751 Neurological eye signs (such as Multiple Sclerosis) 752 </li> 753 <li> 754 Strokes or Tumors (may cause visual field defects or partial loss of vision) 755 </li> 756</ul> 757 758<p> 759 If it is determined that you may have some type of medical disease, you may be scheduled for a medical evaluation 760 (more extensive testing and further medical evaluation) and/or appropriate referral (See Medical Examinations.) 761</p> 762 763<h3> 764 The Vision Examination 765</h3> 766<p> 767 During the Vision Examination, the Doctors evaluate: 768</p> 769 770<ul> 771 <li> 772 Visual acuity (measurement of clarity of your vision) 773 </li> 774 <li> 775 Refractive error (need for prescription or changes in prescription) 776 </li> 777 <li> 778 Preliminary evaluation for surgical vision correction 779 </li> 780 <li> 781 Preliminary evaluation for contact lenses 782 </li> 783</ul> 784 785<p> 786 If needed, this portion of the examination may require additional testing: 787</p> 788 789<ul> 790 <li> 791 Color vision testing 792 </li> 793 <li> 794 Depth perception testing 795 </li> 796 <li> 797 Ocular muscle coordination and motility 798 </li> 799 <li> 800 Additional specific testing for vision changes (e.g. Topography/corneal mapping) 801 </li> 802</ul> 803 804<p> 805 Depending on the findings of the examination, if needed the Doctor will discuss with you the need for further 806 medical evaluation. 807</p> 808 809<h3> 810 The Vision Examination 811</h3> 812<p> 813 Contact lens fittings are separate from Vision Wellness Examinations. For more information, see <a 814 href="/eye-gallery/contact-lenses/">Contact Lenses</a>. 815</p> 816 </div> 817 818 <section id="context-bar" class="context-bar"> 819 <div class="context-bar-above"> 820 <div data-for-page="/about-us/new-patients/" class="context-bar-content"> 821 <a href="https://book2.getweave.com/890f28e4-e519-413c-8aea-c53bb93540b7/request-appointment" target="_blank">Book an Appointment</a> 822</div> 823 </div> 824 <img class="portrait" src="/custom/images/services/wellness-exams.jpg" /> 825 <div id="context-bar-locations"> 826 <h2>Our Location</h2> 827 <div class="context-location-block"> 828 <span>8335 Westchester Dr.<br/> 829 Suite 120<br/> 830 </span> 831 <span>Dallas</span><span>,</span> <span>TX</span> <span>75225</span><br/> 832 <span><a aria-label="Click to Call" href="tel:+1 (214) 361-1010">(214) 361-1010</a></span><br/> 833 </div> 834 </div> 835 <div class="context-bar-content"> 836 <h2>Follow Us</h2> 837 <div id="social-icon-container"> 838 839 <a href="https://www.facebook.com/Vision-City-of-North-Dallas-140329216045520/" target="_blank" aria-label="Social Media Links" rel="noopener"><i class="social-icon fab fa-facebook-f" style="background-color: #3b5998; color: #3b5998;"></i></a> 840 841 <a href="https://www.google.com/maps/place/Kenneth+I+Uzick+%26+Associates/@32.8643603,-96.806747,15z/data=!3m1!5s0x864e9e44125f35a7:0x5591dc3d32d94e94!4m7!3m6!1s0x0:0xf42398a8d74ba467!8m2!3d32.8643603!4d-96.806747!9m1!1b1" target="_blank" aria-label="Social Media Links" rel="noopener"><i class="social-icon fab fa-google" style="background-color: #ff3e30; color: #ff3e30;"></i></a> 842 843 <a href="/blog/" target="_blank" aria-label="Social Media Links" rel="noopener"><i class="social-icon fas fa-rss" style="background-color: #fbc336; color: #fbc336;"></i></a> 844 845 </div> 846 </div> 847 848 <div class="context-bar-below"> 849 <!--<div data-for-page="/contact/contact-form/" class="context-bar-content"> 850 <h2>Refer A Friend</h2> 851 <div class="content-container"> 852 <a href="https://www.websystem3.com/dradmin/refer_a_friend_enter_info.asp?uid=00070524-1D18-4E2D-946C-E1701B9ABA00" target="_blank" class="button">Tell a friend about us</a> 853 </div> 854</div>--> 855 856<div data-for-page="/about-us/our-office/" class="context-bar-content"> 857 <h2>Our Awards</h2> 858 <div class="content-container"> 859 <div class="img"> 860 <img src="/custom/images/best-of.jpg" alt="Best Of Dallas"> 861 </div> 862 <div class="img"> 863 <img src="/custom/images/yelp-awards.png" alt="Yelp Award"> 864 </div> 865 </div> 866</div> 867 868<div data-for-page="/about-us/new-patients/" class="context-bar-content"> 869 <h2>Our Awards</h2> 870 <div class="content-container"> 871 <div class="img"> 872 <img data-src="/custom/images/best-of.jpg" alt="Best Of Dallas" /> 873 </div> 874 <div class="img"> 875 <img data-src="/custom/images/yelp-awards-2.png" alt="Yelp Award" /> 876 </div> 877 </div> 878</div> 879 </div> 880 </section> 881 882 </div> 883 </div> 884 <div class="clear"></div> 885</section><style>#interior-services-container { 886 box-sizing: border-box; 887 width: 100%; 888 background: white; 889 padding: 40px 0px 20px; 890 position: relative; 891 text-align: left; 892 border: 0px; 893 background-image: linear-gradient(rgba(255,255,255,0.45),rgba(255,255,255,0.45)), url(
893/_templates/_interior_1/_images/bg-texture.png); 894 border-bottom: 3px solid #15799e; 895 border-image: linear-gradient(to right,#1f7ab0,#52bdd2 100%) 1; 896} 897#interior-services-container h1 { 898 font-family: 'Lato', san-serif; 899 font-weight: initial; 900 padding: 40px 0px 40px; 901 margin: 0px; 902 font-size: 2.2rem; 903 color: #15799e; 904 line-height: initial; 905} 906#interior-services-container h2 { 907 font-family: 'Lato', san-serif; 908 font-weight: initial; 909 font-size: 1.75rem; 910 color: #15799e; 911 line-height: initial; 912 padding: 10px 0px; 913 margin: 10px 0px; 914} 915#interior-services-container p { 916 width: 100%; 917 font-family: 'Lato', san-serif; 918 font-size: 1rem; 919 color: #3c3c3c; 920 letter-spacing: initial; 921 word-spacing: initial; 922 line-height: 1.5em; 923} 924#interior-services-container p:first-of-type { 925 margin-top: 0px; 926} 927#interior-services-container li { 928 color: #3c3c3c; 929 font-family: 'Lato', san-serif; 930 letter-spacing: initial; 931 word-spacing: initial; 932 line-height: initial; 933} 934#interior-services-container .content-container { 935 width: 100%; 936 margin: 0px auto; 937 text-align: left; 938 font-family: 'Lato', san-serif; 939 font-size: 16px; 940 padding: 0px 250px 40px; 941 box-sizing: border-box; 942 display: inline-block; 943} 944#interior-services-container .content-container p:first-of-type { 945 margin-top: 0px; 946} 947#interior-services-container a:hover { 948 color: #32a4ea; 949} 950#interior-services-container a { 951 color: #15799e; 952 transition: color 0.2s; 953} 954#interior-services-container #left-side-bar { 955 float: left; 956 width: calc(100% - 300px); 957 padding-right: 60px; 958 box-sizing: border-box; 959} 960#interior-services-container [data-system="services-faqs-container"] { 961 margin-top: 40px; 962} 963#interior-services-container [data-system="services-faqs-container"] h2 { 964 margin: 1rem 0px; 965 border-bottom: 1px solid #dbe6eb; 966 font-family: 'Lato', san-serif; 967 font-weight: initial; 968 font-size: 1.75rem; 969 color: #15799e; 970} 971#interior-services-container [data-system="services-faqs-container"] h2:hover {
972 color: #15799e; 973} 974#interior-services-container [data-system="services-faqs-container"] h3 { 975 font-family: 'Lato', san-serif; 976 font-weight: normal; 977 color: #15799e; 978 transition: color 0.4s; 979} 980#interior-services-container [data-system="services-faqs-container"] h3:hover { 981 color: #32a4ea; 982} 983#interior-services-container [data-system="services-faqs-container"] p { 984 font-family: 'Lato', san-serif; 985 color: #3c3c3c; 986} 987#interior-services-container [data-system="services-faqs-container"] div[itemprop="text"] p:first-of-type { 988 margin-top: 0px; 989} 990@media (max-width: 1600px) { 991 #interior-services-container .content-container { 992 padding: 0px 150px 20px; 993 } 994} 995@media (max-width: 1366px) { 996 #interior-services-container .content-container { 997 padding: 0px 50px 20px; 998 } 999 #interior-services-container #left-side-bar { 1000 padding-right: 50px; 1001 } 1002} 1003@media (max-width: 1024px) { 1004 #interior-services-container #left-side-bar { 1005 width: 100%; 1006 padding-right: 0px; 1007 } 1008 #interior-services-container #right-side-bar { 1009 margin-top: 20px; 1010 width: 100%; 1011 } 1012 #interior-services-container .content-container { 1013 padding: 0px 40px 20px; 1014 } 1015} 1016</style><style>section#context-bar.context-bar { 1017 float: right; 1018 width: 300px; 1019 font-family: 'Lato', san-serif; 1020 font-weight: 100; 1021 font-size: 16px; 1022 clear: none; 1023 color: #3c3c3c; 1024} 1025section#context-bar.context-bar li:hover a { 1026 color: #32a4ea; 1027} 1028section#context-bar.context-bar li a { 1029 color: #15799e; 1030 transition: color 0.2s; 1031 width: 100%; 1032 height: 100%; 1033 padding: 10px 20px; 1034 display: inline-block; 1035 box-sizing: border-box; 1036} 1037section#context-bar.context-bar .portrait { 1038 width: 100%; 1039 max-width: 400px; 1040 height: auto; 1041 background-size: cover; 1042 border-radius: 10px; 1043 border-left: 2px solid #eaeaea; 1044 border-right: 2px solid #eaeaea; 1045 box-sizing: border-box; 1046 position: relative; 1047 left: 50%; 1048 transform: translate(-50%); 1049 margin-bottom: 20px; 1050} 1051section#context-bar.context-bar h2 { 1052 font-size: 16px; 1053 font-family: 'Lato', san-serif; 1054 color: #3c3c3c; 1055 letter-spacing: initial; 1056 word-spacing: initial; 1057 margin: 20px 0px 0px; 1058 background-color: #f9f9f9; 1059 line-height: 24px; 1060 padding: 10px 0px; 1061 text-align: center; 1062 font-weight: 100; 1063 border-left: 2px solid #eaeaea; 1064 border-right: 2px solid #eaeaea; 1065 border-top-left-radius: 10px; 1066 border-top-right-radius: 10px; 1067 border-bottom: 1px solid rgba(21,121,158,0.05); 1068 margin-top: 0px; 1069} 1070section#context-bar.context-bar .context-location-block { 1071 display: inline-block; 1072 text-align: left; 1073 vertical-align: top; 1074 font-family: 'Lato', san-serif; 1075 font-size: 20px; 1076 line-height: 26px; 1077} 1078section#context-bar.context-bar .context-bar-menu { 1079 list-style: none; 1080 padding: 0px; 1081 margin: 0px; 1082 margin-bottom: 0px; 1083 background-color: #f9f9f9; 1084 margin-bottom: 20px; 1085 border-left: 2px solid #eaeaea; 1086 border-right: 2px solid #eaeaea; 1087 border-bottom-left-radius: 10px; 1088 border-bottom-right-radius: 10px; 1089} 1090section#context-bar.context-bar .context-bar-menu .selected { 1091 background-color: rgba(21,121,158,0.05); 1092} 1093section#context-bar.context-bar .context-bar-menu li { 1094 cursor: pointer; 1095 transition: background-color 0.2s; 1096} 1097section#context-bar.context-bar .context-bar-menu a:last-of-type li { 1098 border-bottom-left-radius: 10px; 1099 border-bottom-right-radius: 10px; 1100} 1101section#context-bar.context-bar .context-bar-menu li:hover { 1102 background-color: rgba(21,121,158,0.05); 1103} 1104section#context-bar.context-bar .context-hour-row { 1105 padding: 5px 20px; 1106} 1107section#context-bar.context-bar #context-bar-hours { 1108 background-color: #f9f9f9; 1109 border-left: 2px solid #eaeaea; 1110 border-right: 2px solid #eaeaea; 1111 border-bottom-left-radius: 10px; 1112 border-bottom-right-radius: 10px; 1113 font-family: 'Lato', san-serif; 1114 font-weight: 100; 1115 font-size: 16px; 1116 padding: 10px 20px; 1117} 1118section#context-bar.context-bar #context-bar-hours .context-hour-row { 1119 padding: 5px 0px; 1120} 1121section#context-bar.context-bar #context-bar-locations { 1122 font-family: 'Lato', san-serif; 1123 font-weight: 100; 1124 font-size: 16px; 1125} 1126section#context-bar.context-bar #context-bar-locations .context-location-block { 1127 border-left: 2px solid #eaeaea; 1128 border-right: 2px solid #eaeaea; 1129 width: 100%; 1130 padding: 10px 20px; 1131 box-sizing: border-box; 1132 border-bottom-left-radius: 10px; 1133 border-bottom-right-radius: 10px; 1134 background-color: #f9f9f9; 1135} 1136section#context-bar.context-bar #context-bar-single-location { 1137 background-color: #f9f9f9; 1138 padding: 10px 20px; 1139 border-left: 2px solid #eaeaea; 1140 border-right: 2px solid #eaeaea; 1141 border-bottom-left-radius: 10px; 1142 border-bottom-right-radius: 10px; 1143 font-family: 'Lato', san-serif; 1144 font-weight: 100; 1145 font-size: 16px; 1146} 1147section#context-bar.context-bar #social-icon-container { 1148 border-left: 2px solid #eaeaea; 1149 border-right: 2px solid #eaeaea; 1150 background-color: #f9f9f9; 1151 padding: 10px 0px; 1152 border-bottom-left-radius: 10px; 1153 border-bottom-right-radius: 10px; 1154 text-align: center; 1155 font-size: 20px; 1156} 1157section#context-bar.context-bar #social-icon-container a { 1158 margin: 5px; 1159 display: inline-block; 1160} 1161section#context-bar.context-bar #social-icon-container .social-icon { 1162 color: white !important; 1163 width: 40px; 1164 height: 40px; 1165 line-height: 40px; 1166 text-align: center; 1167 border-radius: 50%; 1168 display: inline-block; 1169 transition: transform 0.2s; 1170 cursor: pointer; 1171} 1172section#context-bar.context-bar #social-icon-container .social-icon:hover { 1173 transform: scale(1.2); 1174} 1175section#context-bar.context-bar #social-icon-container .social-icon:first-of-type { 1176 margin-left: 0px; 1177} 1178section#context-bar.context-bar #social-icon-container .social-icon:last-of-type { 1179 margin-right: 0px; 1180} 1181section#context-bar.context-bar .context-bar-content { 1182 margin-top: 20px; 1183} 1184section#context-bar.context-bar .clear { 1185 clear: both; 1186} 1187section#context-bar.context-bar .hours { 1188 line-height: 24px; 1189} 1190section#context-bar.context-bar .hours.day { 1191 text-transform: capitalize; 1192 display: inline-block; 1193 width: 100px; 1194 vertical-align: top; 1195} 1196section#context-bar.context-bar .hours.time { 1197 display: inline-block; 1198 width: calc(100% - 100px); 1199 text-align: right; 1200 vertical-align: top; 1201} 1202@media (max-width: 1024px) { 1203 section#context-bar.context-bar { 1204 width: 100%; 1205 } 1206} 1207</style><style>#falcon-home-footer {background-image: linear-gradient(#00192b,#477ab7), url(/_templates/_falcon/_images/footer-bg.jpg);}</style> 1208<section id="falcon-home-footer"> 1209 <a aria-label="Home" href="/"><img id="falcon-footer-logo" alt="Logo" data-src="/custom/images/logo-light.png" /></a> 1210 <div id="falcon-footer-contact-bar"> 1211 <a aria-label="Click to Call" href="tel:+1 (214) 361-1010">(214) 361-1010</a><span class="divider"><i class="fas fa-circle"></i></span> 1212 <a rel="noopener" aria-label="Social Media Icon" class="social-icon" href="https://www.facebook.com/Vision-City-of-North-Dallas-140329216045520/" target="_blank"> 1213 <i class="fab fa-facebook-f"></i> 1214 </a> 1215 1216 <a rel="noopener" aria-label="Social Media Icon" class="social-icon" href="https://www.google.com/maps/place/Kenneth+I+Uzick+%26+Associates/@32.8643603,-96.806747,15z/data=!3m1!5s0x864e9e44125f35a7:0x5591dc3d32d94e94!4m7!3m6!1s0x0:0xf42398a8d74ba467!8m2!3d32.8643603!4d-96.806747!9m1!1b1" target="_blank"> 1217 <i class="fab fa-google"></i> 1218 </a> 1219 1220 <a rel="noopener" aria-label="Social Media Icon" class="social-icon" href="/blog/" target="_blank"> 1221 <i class="fas fa-rss"></i> 1222 </a> 1223 </div> 1224 <p class="di-footer-link">© <span class="system-copyright-date"></span> Vision City of North Dallas. All Rights Reserved. | <a href="/accessibility/">Accessibility Policy</a> | <a href="/privacy/">Privacy Policy</a></p> 1225 <p class="di-footer-link"><a aria-label="Link" rel="noopener" target="_blank" href="https://optical.doctorsinternet.com/">Optometrist Website Design</a></p> 1226 <p class="di-footer-link">Last Updated: October 1st, 2026 11:38 AM</p> 1227</section><style>#falcon-home-footer { 1228 box-sizing: border-box; 1229 width: 100%; 1230 display: block; 1231 padding: 0px 0px 60px; 1232 position: relative; 1233 text-align: center; 1234} 1235#falcon-home-footer #falcon-footer-logo { 1236 margin-top: 40px; 1237 padding-top: 40px; 1238 max-width: 200px; 1239} 1240#falcon-home-footer #falcon-footer-contact-bar { 1241 margin: 10px 0px; 1242 font-size: 20px; 1243} 1244#falcon-home-footer #falcon-footer-contact-bar .social-icon { 1245 margin: 0px 5px; 1246 display: inline-block; 1247 color: #bebebe; 1248 transition: color 0.2s; 1249 cursor: pointer; 1250} 1251#falcon-home-footer #falcon-footer-contact-bar .footer-number {
1252 color: #bebebe; 1253 margin: 5px 0px; 1254} 1255#falcon-home-footer #falcon-footer-contact-bar .footer-number .footer-number-label { 1256 font-size: 1rem; 1257 font-family: 'Lato', san-serif; 1258} 1259#falcon-home-footer #falcon-footer-contact-bar .footer-number:last-of-type { 1260 margin: 5px 0px 25px; 1261} 1262#falcon-home-footer #falcon-footer-contact-bar .social-icon:hover { 1263 color: #32a4ea; 1264} 1265#falcon-home-footer #falcon-footer-contact-bar .social-icon:first-of-type { 1266 margin-left: 0px; 1267} 1268#falcon-home-footer #falcon-footer-contact-bar .social-icon:last-of-type { 1269 margin-right: 0px; 1270} 1271#falcon-home-footer #falcon-footer-contact-bar a { 1272 color: #bebebe; 1273 font-family: 'Lato', san-serif; 1274 transition: color 0.2s; 1275 text-decoration: none; 1276} 1277#falcon-home-footer #falcon-footer-contact-bar a:hover { 1278 color: #32a4ea; 1279} 1280#falcon-home-footer .address-wrap { 1281 display: inline-block; 1282} 1283#falcon-home-footer .divider { 1284 color: #bebebe; 1285 margin: 0px 5px 0px 10px; 1286 display: inline-block; 1287 transform: scale(0.33); 1288} 1289#falcon-home-footer .di-footer-link { 1290 color: #bebebe; 1291 font-family: 'Lato', san-serif; 1292 text-decoration: none; 1293 font-size: 12px; 1294} 1295#falcon-home-footer .di-footer-link a { 1296 color: #bebebe; 1297 transition: color 0.2s; 1298} 1299#falcon-home-footer .di-footer-link a:hover { 1300 color: #15799e; 1301} 1302#falcon-home-footer .home-footer-address { 1303 display: inline-block; 1304 color: #bebebe; 1305 font-family: 'Lato', san-serif; 1306 font-size: 16px; 1307 text-align: left; 1308 padding: 50px; 1309 margin: 0px; 1310 list-style: none; 1311 line-height: 26px; 1312 box-sizing: border-box; 1313 vertical-align: top; 1314} 1315@media (max-width: 1600px) { 1316 #falcon-home-footer .home-footer-address { 1317 padding: 30px; 1318 } 1319} 1320@media (max-width: 1366px) { 1321 #falcon-home-footer .home-footer-address { 1322 padding: 0px 20px; 1323 margin: 15px 0px; 1324 border-right: 1px solid #bebebe; 1325 border-image: linear-gradient(transparent,#bebebe,transparent 100%) 1; 1326 text-align: center; 1327 } 1328 #falcon-home-footer .home-footer-address:last-of-type { 1329 border: 0px; 1330 } 1331 #falcon-home-footer .address-wrap { 1332 display: block; 1333 } 1334} 1335@media (max-width: 640px) { 1336 #falcon-home-footer #falcon-footer-contact-bar { 1337 padding: 0px 40px; 1338 } 1339 #falcon-home-footer .home-footer-address { 1340 display: block; 1341 text-align: center; 1342 border-bottom: 1px solid #bebebe; 1343 border-image: linear-gradient(to right,transparent,#bebebe,transparent 100%) 1; 1344 width: 100%; 1345 box-sizing: border-box; 1346 padding: 0px 0px 20px; 1347 } 1348 #falcon-home-footer .home-footer-address:last-of-type { 1349 border-bottom: 1px solid #bebebe; 1350 border-image: linear-gradient(to right,transparent,#bebebe,transparent 100%) 1; 1351 } 1352} 1353</style>
1353<script>var viewportSize = 0; 1354var imagesLoaded = false; 1355var _userway_config = {position: 5, color: "#053e67", language: "en", account: "72Ve6c8l9z"}; 1356 1357var source = null; 1358var campaign = null; 1359 1360const api = 'https://referrals.di-api.com/'; 1361var newSession = false; 1362var newVisitor = false; 1363let socket = null 1364const pageID = uuid(); 1365 1366[].forEach.call(document.querySelectorAll('img[data-srcx]'), function(script) { 1367 script.setAttribute('src', script.getAttribute('data-srcx')); 1368 script.onload = function() { 1369 script.removeAttribute('data-srcx'); 1370 }; 1371}); 1372 1373function Socket(visitorId, sessionId, pageId) { 1374 const ws = "wss://socket.di-api.com/analytics" 1375 this.promise = new Promise((resolve, reject) => { 1376 this.visitorId = visitorId; 1377 this.sessionId = sessionId; 1378 this.pageId = pageId; 1379 this.connection = null; 1380 1381 this.attempts = 0; 1382 this.interval = 1000; 1383 this.has_reconnect = false; 1384 var multiplier = 1.25; 1385 1386 var connect = () => { 1387 this.connection = new WebSocket(`${ws}?visitor_id=${visitorId}&session_id=${sessionId}&page_id=${pageId}`); 1388 this.attempts++; 1389 1390 this.connection.onopen = (e) => { 1391 {/* console.log(this.connection); 1392 console.log(e); */} 1393 this.attempts = 0; 1394 this.interval = 1000; 1395 console.log('Connection established'); 1396 1397 resolve(1) 1398 } 1399 1400 this.connection.onclose = (e) => { 1401 console.log('Connection closed'); 1402 this.connection = null; 1403 1404 if (this.has_reconnect) { 1405 this.interval *= multiplier; 1406 setTimeout(function () { 1407 reconnect(); 1408 }, this.interval); 1409 } 1410 } 1411 1412 this.connection.onerror = (e) => { 1413 console.log('%cConnection error ', 'color: red; display: block; width: 100%;', e); 1414 this.connection.close(); 1415 resolve(-1) 1416 } 1417 1418 this.connection.onmessage = (e) => { 1419 if (e.data) { 1420 1421 } 1422 } 1423 } 1424 1425 var reconnect = () => { 1426 if (this.connection === null && this.id !== null) { 1427 console.log('Reconnecting...') 1428 connect(ws); 1429 return 1; 1430 } else { 1431 console.log('Needs to Reconnect...') 1432 return -1; 1433 } 1434 } 1435 1436 1437 if (this.id !== null) { 1438 connect() 1439 } 1440 }) 1441 1442} 1443 1444Socket.prototype.kill = function() { 1445 if (this.connection !== null) { 1446 if(this.connection.readyState) { 1447 this.has_reconnect = false; 1448 this.connection.close(); 1449 return 1; 1450 } else { 1451 return -1; 1452 } 1453 } else { 1454 return -1; 1455 } 1456} 1457 1458Socket.prototype.get_state = function() { 1459 if(this.connection !== null) { 1460 return this.connection.readyState; 1461 } else { 1462 return null; 1463 } 1464} 1465 1466function get_visitor_id() { 1467 let visitorID = localStorage.getItem('visitorID'); 1468 if (!visitorID) { 1469 newVisitor = true; 1470 visitorID = uuid(); 1471 localStorage.setItem('visitorID', visitorID); 1472 } 1473 return visitorID; 1474} 1475 1476function get_session_id() { 1477 let sessionID = sessionStorage.getItem('sessionID'); 1478 if (!sessionID) { 1479 newSession = true; 1480 sessionID = uuid(); 1481 sessionStorage.setItem('sessionID', sessionID); 1482 } 1483 return sessionID; 1484} 1485 1486function is_valid_interaction_type(type) { 1487 // Array of patterns (including static strings as patterns) 1488 const patterns = [ 1489 /^call$/, // Exact match of 'call' 1490 /^click$/, // Exact match of 'click' 1491 /^form_submission$/, // Exact match of 'form_submission' 1492 /^landing$/, // Exact match of 'landing' 1493 /^page$/, // Exact match of 'page' 1494 /^question_\d+$/, // Matches 'question_' followed by one or more digits 1495 /^tracking_permitted$/, // Exact match of 'tracking_permitted' 1496 ]; 1497 1498 // Iterate over the patterns and check if the type matches any of them 1499 for (let pattern of patterns) { 1500 if (pattern.test(type)) { 1501 return true; 1502 } 1503 } 1504 1505 return false; 1506} 1507 1508function get_tracking_permitted() { 1509 const consent = window.DiPrivacy.consent ?? null; 1510 if (consent === 'granted') { 1511 return 1; 1512 } else if (consent === 'denied') { 1513 return 0; 1514 } else { 1515 return null; 1516 } 1517} 1518 1519function track_submit(elem) { 1520 return new Promise((resolve, reject) => { 1521 1522 const visitorID = get_visitor_id(); 1523 const sessionID = get_session_id() 1524 1525 let aios_module = elem.closest('[data-mid]'); 1526 let aios_content = elem.closest('[data-cid]') 1527 1528 if (aios_module instanceof jQuery){ 1529 if (aios_module.length) { 1530 aios_module = aios_module[0] 1531 } else { 1532 aios_module = null; 1533 } 1534 } 1535 1536 if (aios_content instanceof jQuery) { 1537 if (aios_content.length) { 1538 aios_content = aios_content[0]; 1539 } else { 1540 aios_content = null; 1541 } 1542 } 1543 1544 1545 let request = {}; 1546 request.action = 'page_interaction'; 1547 request.type = 'form_submission'; 1548 request.visitor_id = visitorID; 1549 request.session_id = sessionID; 1550 request.page_id = pageID; 1551 request.mid = (aios_module !== null)? aios_module.getAttribute('data-mid') : null; 1552 request.cid = (aios_content !== null)? aios_content.getAttribute('data-cid') : null; 1553 request.domain = window.location.hostname; 1554 request.page = window.location.pathname; 1555 request.href = null; 1556 request.source = (get_cookie('source') ? get_cookie('source') : null); 1557 request.campaign = (get_cookie('campaign') ? get_cookie('campaign') : null); 1558 request.location = (get_cookie('location') ? get_cookie('location') : null); 1559 request.category = (aios_content !== null)? aios_content.getAttribute('data-category') : null; 1560 request.subcategory = (aios_content !== null)? aios_content.getAttribute('data-subcategory') : null; 1561 request.referrer = document.referrer; 1562 request.tracking_permitted = get_tracking_permitted(); 1563 1564 if (get_tracking_permitted() === 1) { } 1565 else { 1566 request.visitor_id = null; 1567 if (document.referrer) { 1568 request.referrer = (new URL(document.referrer)).hostname || null; 1569 } 1570 } 1571 1572 // console.log(request); 1573 1574 let xhr = new XMLHttpRequest(); 1575 xhr.open('POST', api); 1576 xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); 1577 xhr.onreadystatechange = function () { 1578 // console.log(xhr.readyState) 1579 if (xhr.readyState == 2) { 1580 resolve(true); 1581 } 1582 if (xhr.readyState == 4) { 1583 if (xhr.status == 200) { 1584 } else { 1585 } 1586 } 1587 } 1588 xhr.onerror = function () { 1589 reject(xhr.status); 1590 } 1591 xhr.send(encodeURI('action=' + JSON.stringify(request))); 1592 }); 1593} 1594 1595function track_click(elem) { 1596 return new Promise((resolve, reject) => { 1597 1598 const visitorID = get_visitor_id(); 1599 const sessionID = get_session_id() 1600 1601 let click_type = 'click'; 1602 let aios_module = elem.closest('[data-mid]'); 1603 let aios_content = elem.closest('[data-cid]') 1604 1605 if (aios_module instanceof jQuery) { 1606 if (aios_module.length) { 1607 aios_module = aios_module[0] 1608 } else { 1609 aios_module = null; 1610 } 1611 } 1612 1613 if (aios_content instanceof jQuery) { 1614 if (aios_content.length) { 1615 aios_content = aios_content[0]; 1616 } else { 1617 aios_content = null; 1618 } 1619 } 1620 1621 if (elem.hasAttribute('href')) { 1622 if (elem.getAttribute('href').indexOf('tel:') > -1) { 1623 click_type = 'call' 1624 } 1625 } 1626 1627 if (elem.tagName === 'BUTTON') { 1628 if (elem.hasAttribute('data-click-tracking-type') || elem.hasAttribute('data-event')) { 1629 const elem_type = elem.getAttribute('data-click-tracking-type') || elem.getAttribute('data-event'); 1630 if (elem_type === 'consent_accept' || elem_type === 'consent_reject') { 1631 click_type = 'tracking_permitted'; 1632 } else if (is_valid_interaction_type(elem_type)) { 1633 click_type = elem_type; 1634 } 1635 } 1636 } 1637 1638 if (elem.hasAttribute('data-click-tracking')) { 1639 if (elem.hasAttribute('data-click-tracking-type') || elem.hasAttribute('data-event')) { 1640 const elem_type = elem.getAttribute('data-click-tracking-type') || elem.getAttribute('data-event'); 1641 if (is_valid_interaction_type(elem_type)) { 1642 click_type = elem_type; 1643 } 1644 } 1645 } 1646 1647 let request = {}; 1648 request.action = 'page_interaction'; 1649 request.type = click_type; 1650 request.visitor_id = visitorID; 1651 request.session_id = sessionID; 1652 request.page_id = pageID; 1653 request.mid = (aios_module !== null)? aios_module.getAttribute('data-mid') : null; 1654 request.cid = (aios_content !== null)? aios_content.getAttribute('data-cid') : null; 1655 request.domain = window.location.hostname; 1656 request.page = window.location.pathname; 1657 request.href = elem.getAttribute('href'); 1658 request.source = (get_cookie('source') ? get_cookie('source') : null); 1659 request.campaign = (get_cookie('campaign') ? get_cookie('campaign') : null); 1660 request.location = (get_cookie('location') ? get_cookie('location') : null); 1661 request.category = (aios_content !== null)? aios_content.getAttribute('data-category') : null; 1662 request.subcategory = (aios_content !== null)? aios_content.getAttribute('data-subcategory') : null; 1663 request.referrer = document.referrer; 1664 request.tracking_permitted = get_tracking_permitted(); 1665 1666 if (get_tracking_permitted() === 1) { } 1667 else { 1668 request.visitor_id = null; 1669 if (document.referrer) { 1670 request.referrer = (new URL(document.referrer)).hostname || null; 1671 } 1672 } 1673 1674 // console.log(request); 1675 1676 let xhr = new XMLHttpRequest(); 1677 xhr.open('POST', api); 1678 xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); 1679 xhr.onreadystatechange = function () { 1680 // console.log(xhr.readyState) 1681 if (xhr.readyState == 2) { 1682 resolve(true); 1683 } 1684 if (xhr.readyState == 4) { 1685 if (xhr.status == 200) { 1686 } else { 1687 } 1688 } 1689 } 1690 xhr.onerror = function () { 1691 reject(xhr.status); 1692 } 1693 xhr.send(encodeURI('action=' + JSON.stringify(request))); 1694 }); 1695} 1696 1697function track_load() { 1698 return new Promise((resolve, reject) => { 1699 1700 const visitorID = get_visitor_id(); 1701 const sessionID = get_session_id() 1702 {/* pageID = uuid(); */} 1703 1704 let request = {}; 1705 request.action = 'page_interaction'; 1706 request.type = (newSession)? 'landing' : 'page'; 1707 request.visitor_id = visitorID; 1708 request.session_id = sessionID; 1709 request.page_id = pageID; 1710 request.domain = window.location.hostname; 1711 request.page = window.location.pathname; 1712 request.source = (get_cookie('source') ? get_cookie('source') : null); 1713 request.campaign = (get_cookie('campaign') ? get_cookie('campaign') : null); 1714 request.location = (get_cookie('location') ? get_cookie('location') : null); 1715 request.referrer = document.referrer; 1716 request.tracking_permitted = get_tracking_permitted(); 1717 1718 if (get_tracking_permitted() === 1) { } 1719 else { 1720 request.visitor_id = null; 1721 if (document.referrer) { 1722 request.referrer = (new URL(document.referrer)).hostname || null; 1723 } 1724 } 1725 1726 // console.log(request); 1727 1728 let xhr = new XMLHttpRequest(); 1729 xhr.open('POST', api); 1730 xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); 1731 xhr.onreadystatechange = function () { 1732 if (xhr.readyState == 2) { 1733 resolve(true); 1734 } 1735 if (xhr.readyState == 4) { 1736 if (xhr.status == 200) { 1737 } else { 1738 } 1739 } 1740 } 1741 xhr.onerror = function () { 1742 reject(xhr.status); 1743 } 1744 xhr.send(encodeURI('action=' + JSON.stringify(request))); 1745 }); 1746} 1747 1748function deferred_websocket() { 1749 return new Promise((resolve, reject) => { 1750 var visitorID = get_visitor_id(); 1751 const sessionID = get_session_id(); 1752 1753 if (get_tracking_permitted() !== 1) { 1754 visitorID = null; 1755 } 1756 1757 window.addEventListener('scroll', function () { 1758 if (socket === null) { 1759 socket = new Socket(visitorID, sessionID, pageID); 1760 resolve(true); 1761 } 1762 }); 1763 1764 window.addEventListener('mousemove', function () { 1765 if (socket === null) { 1766 socket = new Socket(visitorID, sessionID, pageID); 1767 resolve(true); 1768 } 1769 }); 1770 1771 window.addEventListener('click', function () { 1772 if (socket === null) { 1773 socket = new Socket(visitorID, sessionID, pageID); 1774 resolve(true); 1775 } 1776 }); 1777 }); 1778} 1779 1780function set_cookie(name, value, days, domain) { 1781 var expires = ''; 1782 if (domain == null) { 1783 var domain = window.location.hostname; 1784 domain = domain.split('.'); 1785 1786 if (domain.length == 2) { 1787 domain = domain.join('.'); 1788 } 1789 1790 if (domain.length == 3) { 1791 domain = domain.slice(Math.max(domain.length - 2, 1)); 1792 domain = domain.join('.'); 1793 } 1794 } 1795 if (days) { 1796 var date = new Date(); 1797 date.setTime(date.getTime() + (days*24*60*60*1000)); 1798 expires = '; expires=' + date.toUTCString(); 1799 } 1800 document.cookie = name + '=' + (value || '') + expires + '; domain=' + domain + '; path=/'; 1801} 1802 1803function get_cookie(name) { 1804 var name_eq = name + '='; 1805 var ca = document.cookie.split(';'); 1806 for(var i = 0; i < ca.length; i++) { 1807 var c = ca[i]; 1808 while (c.charAt(0) == ' ') c = c.substring(1, c.length); 1809 if (c.indexOf(name_eq) == 0) return c.substring(name_eq.length, c.length); 1810 } 1811 return null; 1812} 1813 1814// var tracking = new TestTracking(); 1815// console.log(tracking); 1816 1817function uuid(verbose = false) { 1818 let id = ([1e7] + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, c => 1819 (c ^ crypto.getRandomValues(new Uint8Array(1))[0] & 15 >> c / 4).toString(16) 1820 ) 1821 if (verbose) { 1822 console.log(id); 1823 } 1824 return id 1825} 1826 1827function TestTracking() { 1828 var api = ''; 1829 var selection = document.querySelectorAll('section > section'); 1830 1831 this.scroll = new PageScroll(); 1832 this.page = new PageDetails(); 1833 this.device = new DeviceDetails(); 1834 1835 console.log(selection); 1836 1837 selection.forEach(element => { 1838 element.removeAttribute('data-aios-hidden'); 1839 }); 1840 1841 function pageInteraction(elem) { 1842 return new Promise((resolve, reject) => { 1843 var request = {}; 1844 1845 1846 // xhr = new XMLHttpRequest(); 1847 // xhr.open('POST', api); 1848 // xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); 1849 // xhr.onreadystatechange = function () { 1850 // console.log(xhr.readyState) 1851 // // Header Received : does this mean sent? 1852 // if (xhr.readyState == 2) { 1853 // // resolve(true); 1854 // } 1855 // // Done 1856 // if (xhr.readyState == 4) { 1857 // if (xhr.status == 200) { 1858 // // resolve(true); 1859 // } else { 1860 // } 1861 // } 1862 // } 1863 // xhr.onerror = function () { 1864 // reject(xhr.status); 1865 // } 1866 // xhr.send(encodeURI('action=' + JSON.stringify(request))); 1867 1868
1869 // Mimicking request 1870 setTimeout(() => { 1871 resolve(true); 1872 }, 400); 1873 }); 1874 } 1875 1876 function stalling(ms) { 1877 return setTimeout(() => { 1878 }, ms); 1879 } 1880 1881 for (var i = 0; i < selection.length; i++) { 1882 var found_buttons = selection[i].querySelectorAll("a[href]"); 1883 found_buttons.forEach(element => { 1884 element.addEventListener('click', function (e) { 1885 // e.preventDefault(); 1886 1887 var stall = false; 1888 if (this.getAttribute('href') !== '#') { 1889 stall = stalling(500); 1890 } 1891 1892 pageInteraction(this).then(() => { 1893 console.log('Sent'); 1894 if (stall !== false) { 1895 clearTimeout(stall); 1896 } 1897 }); 1898 1899 }); 1900 }); 1901 } 1902 1903 function PageScroll() { 1904 var h = document.documentElement, 1905 b = document.body, 1906 scrollTop = 'scrollTop', 1907 scrollHeight = 'scrollHeight'; 1908 1909 this.viewedModules = 0; 1910 this.percentScroll = 0; 1911 this.percentViewPort = window.innerHeight / ((h[scrollHeight] || b[scrollHeight]) - h.clientHeight) * 100; 1912 1913 var lastScrollTop = 0; 1914 var scrolled = false; 1915 1916 console.log(window.pageYOffset || document.documentElement.scrollTop); 1917 const trackMaxScroll = () => { 1918 if (this.percentScroll < 100) { 1919 var st = window.pageYOffset || document.documentElement.scrollTop; 1920 if (st > lastScrollTop) { 1921 var percent = (h[scrollTop] || b[scrollTop]) / ((h[scrollHeight] || b[scrollHeight]) - h.clientHeight) * 100; 1922 if (percent > this.percentScroll) { 1923 this.percentScroll = percent; 1924 } 1925 } else { 1926 // upscroll code 1927 } // For Mobile or negative scrolling 1928 lastScrollTop = st <= 0 ? 0 : st; 1929 } else { 1930 window.removeEventListener("scroll", trackMaxScroll); 1931 } 1932 }; 1933 1934 window.addEventListener("scroll", trackMaxScroll, false); 1935 window.addEventListener('scroll', () => { 1936 scrolled = true; 1937 }, { once: true }); 1938 1939 1940 function createObserver(el) { 1941 let observer; 1942 1943 let options = { 1944 root: null, 1945 rootMargin: "0px", 1946 threshold: 0 1947 }; 1948 1949 observer = new window.IntersectionObserver(handleIntersect, options); 1950 observer.observe(el); 1951 } 1952 1953 const incrementViewed = () => { 1954 this.viewedModules++; 1955 } 1956 1957 function handleIntersect(entries, observer) { 1958 entries.forEach((entry) => { 1959 if (entry.isIntersecting) { 1960 if (!scrolled) { 1961 entry.target.setAttribute('data-scroll', 'onload'); 1962 incrementViewed(); 1963 } else if (entry.target.getAttribute('data-scroll') !== 'onload') { 1964 if (entry.target.getAttribute('data-scroll') === 'scrolled') { 1965 // Do nothing? 1966 } else { 1967 incrementViewed(); 1968 console.log('%cScroll Request', 'color: #007acc;', entry.target); 1969 entry.target.setAttribute('data-scroll', 'scrolled'); 1970 } 1971 } 1972 } 1973 else { 1974 } 1975 }); 1976 } 1977 1978 selection.forEach(function (el) { 1979 createObserver(el); 1980 }); 1981 } 1982 1983 function ModuleDetails () { 1984 1985 } 1986 1987 function PageDetails () { 1988 1989 let page = getDimensions(); 1990 let windowLocation = getURL(); 1991 this.width = page.width; 1992 this.height = page.height; 1993 this.origin = windowLocation.origin; 1994 this.pathname = windowLocation.pathname; 1995 this.referrer = document.referrer || false; 1996 this.totalModules = selection.length; 1997 1998 function getURL() { 1999 return { 2000 "pathname": window.location.pathname, 2001 "origin": window.location.origin, 2002 }; 2003 } 2004 2005 function getDimensions() { 2006 return { 2007 "width": Math.max(document.body.scrollWidth, document.documentElement.scrollWidth, document.body.offsetWidth, document.documentElement.offsetWidth, document.documentElement.clientWidth), 2008 "height": Math.max(document.body.scrollHeight, document.documentElement.scrollHeight, document.body.offsetHeight, document.documentElement.offsetHeight, document.documentElement.clientHeight), 2009 }; 2010 } 2011 } 2012 2013 function DeviceDetails () { 2014 let browser = getBrowser(); 2015 let viewport = getDimensions(); 2016 2017 this.browser = browser.name; 2018 this.version = browser.version; 2019 this.majorVersion = browser.majorVersion; 2020 2021 this.width = viewport.width; 2022 this.height = viewport.height; 2023 2024 function getBrowser() { 2025 var nAgt = navigator.userAgent; 2026 var browserName = 'Unknown'; 2027 var fullVersion = '' + parseFloat(navigator.appVersion); 2028 var majorVersion = parseInt(navigator.appVersion, 10); 2029 var nameOffset, verOffset, ix; 2030 2031 // In Opera, the true version is after "Opera" or after "Version" 2032 if ((verOffset = nAgt.indexOf("Opera")) != -1) { 2033 browserName = "Opera"; 2034 fullVersion = nAgt.substring(verOffset + 6); 2035 if ((verOffset = nAgt.indexOf("Version")) != -1) 2036 fullVersion = nAgt.substring(verOffset + 8); 2037 } 2038 // In MSIE, the true version is after "MSIE" in userAgent 2039 else if ((verOffset = nAgt.indexOf("MSIE")) != -1) { 2040 browserName = "Microsoft Internet Explorer"; 2041 fullVersion = nAgt.substring(verOffset + 5); 2042 } 2043 // In Chrome, the true version is after "Chrome" 2044 else if ((verOffset = nAgt.indexOf("Chrome")) != -1) { 2045 browserName = "Chrome"; 2046 fullVersion = nAgt.substring(verOffset + 7); 2047 } 2048 // In Safari, the true version is after "Safari" or after "Version" 2049 else if ((verOffset = nAgt.indexOf("Safari")) != -1) { 2050 browserName = "Safari"; 2051 fullVersion = nAgt.substring(verOffset + 7); 2052 if ((verOffset = nAgt.indexOf("Version")) != -1) 2053 fullVersion = nAgt.substring(verOffset + 8); 2054 } 2055 // In Firefox, the true version is after "Firefox" 2056 else if ((verOffset = nAgt.indexOf("Firefox")) != -1) { 2057 browserName = "Firefox"; 2058 fullVersion = nAgt.substring(verOffset + 8); 2059 } 2060 // In most other browsers, "name/version" is at the end of userAgent
2061 else if ((nameOffset = nAgt.lastIndexOf(' ') + 1) < (verOffset = nAgt.lastIndexOf('/'))) { 2062 browserName = nAgt.substring(nameOffset, verOffset); 2063 fullVersion = nAgt.substring(verOffset + 1); 2064 if (browserName.toLowerCase() == browserName.toUpperCase()) { 2065 browserName = navigator.appName; 2066 } 2067 } 2068 // trim the fullVersion string at semicolon/space if present 2069 if ((ix = fullVersion.indexOf(";")) != -1) 2070 fullVersion = fullVersion.substring(0, ix); 2071 if ((ix = fullVersion.indexOf(" ")) != -1) 2072 fullVersion = fullVersion.substring(0, ix); 2073 2074 majorVersion = parseInt('' + fullVersion, 10); 2075 if (isNaN(majorVersion)) { 2076 fullVersion = '' + parseFloat(navigator.appVersion); 2077 majorVersion = parseInt(navigator.appVersion, 10); 2078 } 2079 2080 return { 2081 "name": browserName, 2082 "version": fullVersion, 2083 "majorVersion": majorVersion, 2084 }; 2085 } 2086 2087 function getDimensions() { 2088 return { 2089 "width": Math.max(document.documentElement.clientWidth || 0, window.innerWidth || 0), 2090 "height": Math.max(document.documentElement.clientHeight || 0, window.innerHeight || 0), 2091 }; 2092 } 2093 } 2094 2095 // Session Handling 2096 var visitorID = localStorage.getItem('visitorID'); 2097 var sessionID = sessionStorage.getItem('sessionID'); 2098 2099 if (!visitorID) { 2100 console.log('New Visitor'); 2101 visitorID = uuid(); 2102 localStorage.setItem('visitorID', visitorID); 2103 } 2104 2105 if (!sessionID) { 2106 console.log('New Session'); 2107 sessionID = uuid(); 2108 sessionStorage.setItem('sessionID', sessionID); 2109 } 2110 2111 2112 console.log(visitorID); 2113 console.log(sessionID); 2114 2115 // Sessions 2116} 2117 2118function ActivityMap() { 2119 this.activity = []; 2120} 2121 2122ActivityMap.prototype.add = function(obj) { 2123 this.activity.push(obj); 2124}; 2125 2126function uuid() { 2127 return ([1e7] + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, c => 2128 (c ^ crypto.getRandomValues(new Uint8Array(1))[0] & 15 >> c / 4).toString(16) 2129 ); 2130} 2131 2132function setCookie(name, value, days, domain) { 2133 var expires = ""; 2134 if (domain == null) { 2135 domain = window.location.hostname; 2136 domain = domain.split('.'); 2137 2138 if (domain.length == 2) { 2139 domain = domain.join('.'); 2140 } 2141 2142 if (domain.length == 3) { 2143 domain = domain.slice(Math.max(domain.length - 2, 1)); 2144 domain = domain.join('.'); 2145 } 2146 } 2147 if (days) { 2148 var date = new Date(); 2149 date.setTime(date.getTime() + (days*24*60*60*1000)); 2150 expires = "; expires=" + date.toUTCString(); 2151 } 2152 document.cookie = name + "=" + (value || "") + expires + "; domain=" + domain + "; path=/"; 2153 2154 var find_replace_phone = getCookie('find_replace_phone'); 2155 if (find_replace_phone) { 2156 tracking_phone(find_replace_phone); 2157 } 2158} 2159 2160function getCookie(name) { 2161 var nameEQ = name + "="; 2162 var ca = document.cookie.split(';'); 2163 for(var i=0;i < ca.length;i++) { 2164 var c = ca[i]; 2165 while (c.charAt(0)==' ') c = c.substring(1,c.length); 2166 if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length); 2167 } 2168 return null; 2169} 2170 2171function eraseCookie(name) { 2172 document.cookie = name+'=; Max-Age=-99999999;'; 2173} 2174 2175function anchorLink() { 2176 var anchorPoint = window.location.hash.replace('#', ''); 2177 2178 var scrollTo = $('*').filter(function() { 2179 return $(this).attr('data-anchor') == anchorPoint; 2180 }).first(); 2181 2182 if (scrollTo.length > 0) { 2183 $('html,body').animate({ 2184 scrollTop: Math.floor(scrollTo.offset().top) 2185 }, 1000); 2186 } 2187} 2188 2189function viewport() { 2190 var e = window, a = 'inner'; 2191 if (!('innerWidth' in window )) { 2192 a = 'client'; 2193 e = document.documentElement || document.body; 2194 } 2195 return {width:e[a+'Width'],height:e[a+'Height']}; 2196} 2197 2198function addMarks() { 2199 var rFilter = [ 2200 'All-on-4' 2201 ]; 2202 var instanceLimit = 1; 2203 2204 for (var i = 0; i < rFilter.length; i++) { 2205 var instanceCounter = 0; 2206 $('p').contents().filter(function() { 2207 return this.nodeType === 3; 2208 }).replaceWith(function() { 2209 var toReplace = new RegExp(rFilter[i]); 2210 if ((this.nodeValue.indexOf(rFilter[i]) >= 0) && (instanceCounter < instanceLimit)) { 2211 instanceCounter++; 2212 return this.nodeValue.replace(toReplace, rFilter[i]+'<sup>®</sup>'); 2213 } 2214 else { 2215 return this.nodeValue; 2216 } 2217 }); 2218 } 2219} 2220 2221function filter_phone_numbers(find, replace) { 2222 var rFilter = [ 2223 find 2224 ]; 2225 2226 var instanceLimit = 20; 2227 2228 for (var i = 0; i < rFilter.length; i++) { 2229 var instanceCounter = 0; 2230 $('*').contents().filter(function() { 2231 return this.nodeType === 3; 2232 }).replaceWith(function() { 2233 var toReplace = new RegExp(rFilter[i]); 2234 if ((this.nodeValue.indexOf(rFilter[i]) >= 0) && (instanceCounter < instanceLimit)) { 2235 instanceCounter++; 2236 return this.nodeValue.replace(toReplace, replace); 2237 } 2238 else { 2239 return this.nodeValue; 2240 } 2241 }); 2242 } 2243} 2244 2245function close_splash(duration) { 2246 if (!duration) { 2247 $('.content-section.system-splash').css('display', 'none'); 2248 } 2249 else {
2250 $('.content-section.system-splash').slideUp(duration); 2251 } 2252 2253 setCookie('return_visit', true, 365, null); 2254} 2255 2256function loadExtras() { 2257 imagesLoaded = true; 2258 2259 $.getScript('https://cdn.userway.org/widget.js'); 2260 2261 close_splash(400); 2262 2263 [].forEach.call(document.querySelectorAll('script[data-src]'), function(script) { 2264 script.setAttribute('src', script.getAttribute('data-src')); 2265 script.onload = function() { 2266 script.removeAttribute('data-src'); 2267 }; 2268 }); 2269 2270 [].forEach.call(document.querySelectorAll('img[data-src]'), function(img) { 2271 img.setAttribute('src', img.getAttribute('data-src')); 2272 img.onload = function() { 2273 img.removeAttribute('data-src'); 2274 }; 2275 }); 2276 2277 [].forEach.call(document.querySelectorAll('iframe[data-src]'), function(iframe) { 2278 iframe.setAttribute('src', iframe.getAttribute('data-src')); 2279 iframe.onload = function() { 2280 iframe.removeAttribute('data-src'); 2281 }; 2282 }); 2283 2284 [].forEach.call(document.querySelectorAll('*[data-background]'), function(bg) { 2285 bg.setAttribute('style', 'background-image: '+bg.getAttribute('data-background')); 2286 bg.onload = function() { 2287 bg.removeAttribute('data-background'); 2288 }; 2289 }); 2290 2291 $('.defer-css').each(function() { 2292 var replacement_css = this.innerHTML; 2293 $(this).closest('section').prepend('<style>'+replacement_css+'</style>'); 2294 $(this).remove(); 2295 }); 2296} 2297 2298function gtag_report_conversion(url, event_type, trackingIds) { 2299 console.log(trackingIds); 2300 var callback = function () { 2301 if (typeof(url) != 'undefined') { 2302 window.location = url; 2303 } 2304 }; 2305 2306 google_tracking.gtag('event', event_type, { 2307 'send_to': trackingIds, 2308 'event_callback': callback 2309 }); 2310 2311 return false; 2312} 2313 2314function alt(json) { 2315 $('img').each(function(){ 2316 str = $(this).prop('src'); 2317 str = str.split("/").pop(); 2318 $(this).attr("alt", json['alt'][str]); 2319 }); 2320} 2321 2322function alerts(json) { 2323 var currentDate = new Date(); 2324 $.each(json.alerts, function(index, key) { 2325 var startDate = new Date(key['start-date']); 2326 var endDate = new Date(key['end-date']); 2327 var useHtml = (key['use-html'] !== undefined ? key['use-html'] : false); 2328 2329 if(currentDate > startDate && currentDate < endDate) { 2330 if (useHtml) { 2331 $('<div/>').html(key['text']).css({'color': 'rgb('+key['text-color']+')', 'background-color': 'rgb('+key['background-color']+')'}).appendTo($('.content-section .alerts-panel')); 2332 } 2333 else { 2334 $('<p/>').text(key['text']).css({'color': 'rgb('+key['text-color']+')', 'background-color': 'rgb('+key['background-color']+')'}).appendTo($('.content-section .alerts-panel')); 2335 } 2336 } 2337 }); 2338 $('.content-section .alerts-panel p').slideDown(); 2339} 2340 2341function pauseVideos() { 2342 $('video.stop-on-resize').each(function() { 2343 $(this).get(0).pause(); 2344 }); 2345 2346 $('.system-video-controls.play-button').fadeIn(200); 2347} 2348 2349function changeViewportSize() { 2350 viewportSize = viewport(); 2351 javascript.prototype.system_change_menu_behavior(); 2352 pauseVideos(); 2353} 2354 2355function tracking_phone(find_replace_phone) { 2356 var obj = JSON.parse(find_replace_phone); 2357 2358 $.each(obj, function(index, element) { 2359 $('*[href^="tel:+1 '+element['find']+'"]').each(function() { 2360 $(this).attr('href', 'tel:+1 '+element['replace']); 2361 if ($(this).children().length > 0) { 2362 $(this).children().each(function () { 2363 if ($(this).text() == element['find']) { 2364 $(this).text(element['replace']); 2365 } 2366 }); 2367 } 2368 else { 2369 $(this).text(element['replace']); 2370 } 2371 2372// Commented out until we can confirm everything works - Flagged for removal 2373/* if (element.hasOwnProperty('tracking-code')){ 2374 $(this).unbind(); 2375 $(this).click(function(e) { 2376 //e.preventDefault(); 2377 gtag_report_conversion(void 0, 'conversion', element['tracking-code']); 2378 }); 2379 } */ 2380 }); 2381 }); 2382} 2383 2384function initialize() { 2385 function set_tracking() { 2386 const url_parameters = new URLSearchParams(window.location.search); 2387 const source = url_parameters.get('source'); 2388 const campaign = url_parameters.get('campaign'); 2389 2390 if (source) { 2391 setCookie('source', source, 90, null); 2392 } 2393 2394 if (campaign) { 2395 setCookie('campaign', campaign, 90, null); 2396 } 2397 } 2398 2399 function apply_tracking() { 2400 if (getCookie('source')) { 2401 source = getCookie('source'); 2402 $('#ad-tracking-source option[data-option="'+source+'"]').attr('selected', true); 2403 } 2404 else { 2405 $('#ad-tracking-source option[data-option=""]').attr('selected', true); 2406 } 2407 2408 if (getCookie('campaign')) { 2409 campaign = getCookie('campaign'); 2410 $('#ad-tracking-campaign option[data-option="'+campaign+'"]').attr('selected', true); 2411 } 2412 else { 2413 $('#ad-tracking-campaign option[data-option=""]').attr('selected', true); 2414 } 2415 } 2416 2417 if (getCookie('return_visit')) { 2418 close_splash(0); 2419 } 2420 2421 set_tracking(); 2422 apply_tracking(); 2423 2424 var blank_image = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mP8Xw8AAoMBgDTD2qgAAAAASUVORK5CYII='; 2425 2426 var windowWidth = $(window).width(); 2427 var timeout = false;
2428 2429 var find_replace_phone = getCookie('find_replace_phone'); 2430 if (find_replace_phone) { 2431 tracking_phone(find_replace_phone); 2432 } 2433 2434 $('video').each(function() { 2435 var found_video = $(this); 2436 2437 if ($(this).find('source').length) { 2438 var video_source = $(this).find('source').attr('src').split('/').pop(); 2439 } 2440 else { 2441 var video_source = $(this).attr('src').split('/').pop(); 2442 } 2443 2444 $.get('/custom/content/subs/'+video_source+'.vtt', function(data) { 2445 if (data === 'Page not found.') { 2446 $('<track/>') 2447 .attr('label', 'English') 2448 .attr('kind', 'subtitles') 2449 .attr('srclang', 'en') 2450 .attr('src', '/_content/_subs/no_audio.vtt') 2451 .appendTo(found_video); 2452 } 2453 else { 2454 $('<track/>') 2455 .attr('label', 'English') 2456 .attr('kind', 'subtitles') 2457 .attr('srclang', 'en') 2458 .attr('src', '/custom/content/subs/'+video_source+'.vtt') 2459 .appendTo(found_video); 2460 } 2461 }) 2462 .fail(function(data) { 2463 $('<track/>') 2464 .attr('label', 'English') 2465 .attr('kind', 'subtitles') 2466 .attr('srclang', 'en') 2467 .attr('src', '/_content/_subs/no_audio.vtt') 2468 .appendTo(found_video); 2469 }); 2470 }); 2471 2472 $('.content-section.system-splash .system-splash-close').click(function() { 2473 close_splash(400); 2474 }); 2475 2476 $('.system-copyright-date').html(new Date().getFullYear()); 2477 2478 viewportSize = viewport(); 2479 2480 $.getJSON('/custom/json/alt.json', function(data) { 2481 alt(data); 2482 }); 2483 2484 window.addEventListener('resize', function() { 2485 if ($(window).width() == windowWidth) { 2486 return; 2487 } 2488 else { 2489 clearTimeout(timeout); 2490 timeout = setTimeout(changeViewportSize, 50); 2491 } 2492 windowWidth = $(window).width(); 2493 }); 2494 2495 $('body[data-opt] div[data-mobile-image]').each(function() { 2496 var is_mobile = false; 2497 2498 if (viewportSize.width <= 480) { 2499 is_mobile = true; 2500 2501 var mobile_image = $(this).attr('data-mobile-image'); 2502 var intermediate_style = $(this).attr('style'); 2503 2504 var final_style = intermediate_style.replace(blank_image, mobile_image); 2505 var final_style = final_style.replace('background-image:', ''); 2506 var final_style = final_style.replace(';', ''); 2507 2508 $(this).attr('style', ''); 2509 $(this).css('background-image', final_style); 2510 } 2511 else { 2512 $(this).attr('style', $(this).attr('data-desktop-style')); 2513 } 2514 2515 window.addEventListener('resize', function() { 2516 if (window.innerWidth > 480 && is_mobile) { 2517 is_mobile = false; 2518 $('body[data-opt] div[data-mobile-image]').each(function() { 2519 $(this).attr('style', $(this).attr('data-desktop-style')); 2520 }); 2521 } 2522 }); 2523 }); 2524 2525 $(document).one('scroll', function() { 2526 if (imagesLoaded == false) { 2527 loadExtras(); 2528 } 2529 }); 2530 2531 $(document).one('mousemove', function() { 2532 if (imagesLoaded == false) { 2533 loadExtras(); 2534 } 2535 }); 2536 2537 $('section.content-section').one('click', function() { 2538 if (imagesLoaded == false) { 2539 loadExtras(); 2540 } 2541 }); 2542 2543 anchorLink(); 2544 2545 $('.to-top').click(function() { 2546 $('html, body').animate({ scrollTop: 0 }, 'slow'); 2547 return false; 2548 }); 2549 2550 $(document).scroll(function() { 2551 var y = $(this).scrollTop(); 2552 if (y > 50) { 2553 $('.to-top').fadeIn(); 2554 } else { 2555 $('.to-top').fadeOut(); 2556 } 2557 }); 2558 2559 $.getJSON('/custom/json/alerts.json', function(data) { 2560 alerts(data); 2561 }); 2562 2563 window.addEventListener('hashchange', anchorLink, false); 2564 2565 $('#system-confirmation').each(function() { 2566 $('body').append($(this).detach()); 2567 }); 2568 2569 $('[data-action="services-qa-toggle"]').click(function() { 2570 $(this).find('.qa-toggle').toggleClass('qa-open'); 2571 2572 if ($(this).find('.qa-toggle').hasClass('qa-open')) { 2573 $(this).find('.qa-toggle').html('−'); 2574 } 2575 else { 2576 $(this).find('.qa-toggle').html('+'); 2577 } 2578 2579 $(this).siblings('div').animate({ 2580 height: "toggle", 2581 opacity: "toggle" 2582 }, 200); 2583 }); 2584 2585 2586 // tracking 2587 2588 track_load(); 2589 deferred_websocket(); 2590 2591 // Add Tracking to each button 2592 const selection = document.querySelectorAll('section[class^="section_"], #di-consent-banner, #di-cookie-pref-dialog'); 2593 for (var i = 0; i < selection.length; i++) { 2594 var found_buttons = selection[i].querySelectorAll("a[href], [data-click-tracking]:not(a[href]), button:not(a[href])"); 2595 found_buttons = Array.from(new Set(found_buttons)); 2596 found_buttons.forEach(element => { 2597 element.addEventListener('click', function (e) { 2598 var stall = false;
2599 if (this.tagName === 'A' && this.getAttribute('href') !== '#') { 2600 stall = stalling(500); 2601 } 2602 2603 track_click(this).then(() => { 2604 if (stall !== false) { 2605 clearTimeout(stall); 2606 } 2607 }) 2608 }) 2609 }); 2610 } 2611} 2612 2613function removeDuplicates(v){ 2614 let updatedArray = v.filter(function(elem, index, self) { 2615 return index == self.indexOf(elem); 2616 }); 2617 return updatedArray; 2618} 2619 2620function loadScript() { 2621 $('body').removeClass('preload'); 2622 2623 javascript.load = removeDuplicates(javascript.load); 2624 2625 javascript.load.forEach(function(v) { 2626 if (typeof javascript.prototype[v] === "function") { 2627 javascript.prototype[v](); 2628 } 2629 }); 2630}</script>
2630<style>body, 2631#interior-location-container, 2632#interior-services-list-container, 2633#interior-generic-container, 2634#interior-contact-container, 2635#interior-video-container, 2636#interior-services-container, 2637#interior-library-list-container, 2638section#context-bar.context-bar #context-bar-single-location, 2639section#context-bar.context-bar #context-bar-hours { 2640 background: #fbfbfb; 2641} 2642 2643#interior-generic-container .content-container .open_video{ 2644 color: rgba(21, 121, 158, 1); 2645 cursor: pointer; 2646} 2647#interior-generic-container .content-container .video_overlay{ 2648 position: fixed; 2649 z-index: 12000; 2650 opacity: 0; 2651 pointer-events: none; 2652 width: 100%; 2653 height: 100%; 2654 background-color: rgba(0, 0, 0, .5); 2655 left: 0px; 2656 top: 0px; 2657 transition: opacity 500ms; 2658} 2659#interior-generic-container .content-container .video_overlay .video_container{ 2660 position: relative; 2661 transform: translate(-50%, -50%); 2662 top: 50%; 2663 left: 50%; 2664 width: 80%; 2665 max-width: 800px; 2666} 2667#interior-generic-container .content-container .video_overlay .video_container .video_close{ 2668 color: white; 2669 cursor: pointer; 2670 right: 0px; 2671 position: absolute; 2672 top: -32px; 2673 z-index: 100; 2674 font-size: 2rem; 2675} 2676 2677#interior-generic-container .content-container .video_overlay .video_container .video_content{ 2678 position: relative; 2679 padding-bottom: 56.25%; /* 16:9, for an aspect ratio of 1:1 change to this value to 100% */ 2680} 2681#interior-generic-container .content-container .video_overlay .video_container .video_content iframe{ 2682 position: absolute; 2683 top: 0; 2684 left: 0; 2685 width: 100%; 2686 height: 100%; 2687} 2688
2689#interior-generic-container .content-container .video_overlay.open{ 2690 opacity: 1; 2691 pointer-events: all; 2692} 2693 2694section#context-bar.context-bar .content-container { 2695 border-left: 2px solid #eaeaea; 2696 border-right: 2px solid #eaeaea; 2697 background-color: #f9f9f9; 2698 padding: 10px 0px; 2699 border-bottom-left-radius: 10px; 2700 border-bottom-right-radius: 10px; 2701 text-align: center; 2702 font-size: 20px; 2703 margin: 0; 2704} 2705section#context-bar.context-bar .content-container .img{ 2706 padding: 10px 15px; 2707} 2708 2709#apollo-home-header { 2710 font-size: 20px 2711} 2712 2713#thor-interior-banner .thor-banner-background{ 2714 background-position: top !important; 2715 /* background-attachment: fixed; */ 2716 height: 600px; 2717 filter: brightness(.85); 2718} 2719 2720 2721#thor-home-services .extension { 2722 height: 600px; 2723 border-radius: 0px; 2724 margin: 0px; 2725 width: 100%; 2726 border: none; 2727 background-size: cover; 2728} 2729 2730#thor-home-testimonials .extension .content { 2731 left: 20% 2732} 2733 2734#thor-home-services .content-container, 2735#thor-home-testimonials .content-container { 2736 display: none 2737} 2738 2739#thor-home-services .extension h1 { 2740 font-family: 'Playfair Display', serif; 2741 text-transform: uppercase; 2742 font-size: 54px 2743} 2744 2745#falcon-home-footer #falcon-footer-logo { 2746 max-width: 300px 2747} 2748#falcon-home-footer #falcon-footer-contact-bar .social-icon, 2749#falcon-home-footer .divider, 2750#falcon-home-footer #falcon-footer-contact-bar a, 2751#falcon-home-footer .di-footer-link, 2752#falcon-home-footer .di-footer-link a{ 2753 color: whitesmoke; 2754} 2755 2756.split { 2757 width: 49%; 2758 box-sizing: border-box; 2759 padding: 12px; 2760 display: inline-block; 2761 vertical-align: top 2762} 2763 2764#apollo-home-header .apollo-contact-bar { 2765 background-color: #22699f; 2766} 2767#apollo-home-header .apollo-contact-bar .two-locations p a.social-icon { 2768 display: none; 2769} 2770 2771@media(max-width:480px) { 2772 .split { 2773 width: 100%; 2774 display: block 2775 } 2776} 2777 2778#interior-generic-container, 2779section#context-bar.context-bar h2, 2780section#context-bar.context-bar #social-icon-container, 2781section#context-bar.context-bar #context-bar-locations .context-location-block, 2782#interior-contact-container, 2783section#context-bar.context-bar .context-bar-menu { 2784 /* background: #000 */ 2785} 2786section#interior-generic-container h3{ 2787 color: rgba({{PRIMARY-COLOR}}, 1); 2788} 2789 2790 2791#interior-generic-container p, 2792section#context-bar.context-bar, 2793#interior-generic-container li, 2794#interior-contact-container p { 2795} 2796 2797#interior-generic-container img.padding { 2798 padding: 10px; 2799 vertical-align: middle 2800} 2801 2802#guile-home-welcome .content-container> h2{ 2803 2804 color: #15799e; 2805 font-family: 'Playfair Display', serif; 2806 font-size: 40px; 2807 line-height: 30px; 2808 margin: 40px 5px; 2809 font-weight: 300; 2810 text-transform: uppercase; 2811 text-align: center; 2812} 2813 2814@media(max-width:1024px) { 2815 #guile-home-welcome .content-container> h2{ 2816 font-size: 2rem; 2817 line-height: normal; 2818 } 2819 2820 #thor-interior-banner .thor-banner-background{ 2821 background-position: top !important; 2822 background-attachment: initial; 2823 height: 300px; 2824 } 2825} 2826@media(max-width:700px) { 2827 #thor-interior-banner .thor-banner-background{ 2828 height: 250px; 2829 } 2830 2831 #guile-home-welcome .content-container> h2{ 2832 font-size: 1.6rem; 2833 line-height: normal; 2834 } 2835 #apollo-home-header { 2836 font-size: 15px 2837 } 2838 2839 #thor-home-services .extension { 2840 height: 300px 2841 } 2842 2843 #thor-home-services .extension h1 { 2844 font-size: 35px 2845 } 2846} 2847 2848a[href^="tel"] { 2849 color: #00adc2; 2850} 2851 2852.contacts { 2853 text-align: center; 2854 margin: 16px auto; 2855} 2856 2857.contacts img { 2858 padding: 8px; 2859 box-sizing: border-box; 2860 display: inline-block; 2861 vertical-align: middle 2862} 2863 2864.finance { 2865 margin: 16px 0; 2866 text-align: left; 2867} 2868 2869.finance a img {
2870 display: inline-block; 2871 padding: 5px 12px; 2872 box-sizing: border-box 2873} 2874 2875#apollo-home-header .apollo-contact-bar #google_translate_element { 2876 margin: 3px 20px 2877} 2878 2879section#context-bar.context-bar #context-bar-hours { 2880 background: none 2881} 2882 2883#apollo-home-header .apollo-contact-bar .mobile-multi .line-1 { 2884 color: #fff 2885} 2886 2887.manhattan-slider { 2888 max-width: 520px; 2889 width: 100% 2890} 2891 2892.manhattan-slider div img { 2893 margin: 0 auto; 2894 display: block 2895} 2896 2897.slick-dots li button:before { 2898 color: #818181; 2899} 2900 2901.slick-dots li.slick-active button:before { 2902 color: #a7a7a7 !important; 2903} 2904#apollo-home-header .appt-button { 2905 display:inline-block; 2906 transition:all ease .3s !important; 2907 background: #000; 2908 color:#fff; 2909 padding:12px 16px; 2910 box-sizing:border-box; 2911 text-transform:uppercase; 2912 font-size:16px; 2913 font-family:'Lato', san-serif 2914} 2915#apollo-home-header .appt-button:hover { 2916 background:#fff; 2917 color: #000; 2918} 2919@media(max-width:767px) { 2920 #apollo-home-header .appt-button { 2921 margin:10px 0 2922 } 2923} 2924.frames { 2925 text-align:center; 2926 display:block; 2927 width:100%; 2928} 2929.frames img { 2930 padding:5px; 2931 box-sizing:border-box; 2932 display:inline-block; 2933 vertical-align:middle; 2934 margin:12px; 2935 width:225px; 2936 max-width:100%; 2937} 2938#interior-contact-container #contact-form .testimonial-block .date { 2939 display:none 2940} 2941.context-bar-above div a{ 2942 display: block; 2943 padding: 8px 12px; 2944 background: #22699f; 2945 color: #fff !important; 2946 text-align: center; 2947 margin: 0 auto 20px; 2948 font-size: 1.2em; 2949 border: 2px solid #22699f; 2950 border-top-left-radius: 10px; 2951 border-top-right-radius: 10px; 2952} 2953.context-bar-above div a:hover{ 2954 background: none; 2955 color: #22699f !important; 2956} 2957.img-right { 2958 float:right; 2959 margin:0 0 12px 12px; 2960} 2961.img-left { 2962 float:left; 2963 margin:0 12px 12px 0; 2964} 2965.img-center { 2966 display: block; 2967 margin:12px auto; 2968} 2969@media(max-width:480px) { 2970 .img-left, .img-right { 2971 float:none; 2972 display: block; 2973 margin:12px auto; 2974 } 2975}</style> 2976
2976<script 2977 src="https://code.jquery.com/jquery-3.5.1.min.js" 2978 integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0=" 2979 crossorigin="anonymous"></script>
2979 2980
2980<script src="/custom/js/custom.js"></script>
2980 2981
2981<script>$(document).ready(initialize);</script>
2981 2982
2982<script>$(document).ready(loadScript);</script>
2982 2983 2984 </section> 2985
2985<script type="text/javascript"> (function() { var css = document.createElement("link"); css.href = "/_templates/_system/_fa/css/all.min.css"; css.rel = "stylesheet"; css.type = "text/css"; document.getElementsByTagName("head")[0].appendChild(css); })();</script>
2985 2986 <object style="display:none;" data="/_settings/fb-conversion.php"></object> 2987
2987<script src="https://api.aleso.ai/aleso.js"></script>
2987 2988 </body> 2989 </html> 2990 2991
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.