1<!DOCTYPE html> 2<html lang="en"> 3 <head> 4 <title>Meet Our Oklahoma City Dental Team | Oklahoma City Dental Office | Dentist in Oklahoma City</title> 5 <meta charset="utf-8"> 6<meta name="viewport" content="width=device-width, initial-scale=1"> 7<meta name="robots" content="index, follow"> 8<meta property="og:title" content="Meet Our Oklahoma City Dental Team | Oklahoma City Dental Office | Dentist in Oklahoma City"> 9<meta property="og:url" content="https://iconicdentalarts.com/team/"> 10<meta property="og:type" content="website"> 11<meta property="og:description" content="Our team of experienced dentists and hygienists is dedicated to providing you with the best possible dental experience. Call (405) 943-8575 today!"> 12<meta property="og:image" content="https://iconicdentalarts.com/custom/images/logo.png"> 13<meta http-equiv="expires" content="never"> 14<meta http-equiv="cache-control" content="public"> 15<link rel="preload" as="script" href="https://api.aleso.ai/aleso.js"> 16<link rel="preload" as="script" href="/system/js/jquery-3.5.1.min.js">
17<script> 18 var javascript; 19 var javascript_deferred; 20 21 var js_id = 0; 22 var jsd_id = 0; 23 24 var viewport_size = 0; 25 26 javascript.load = []; 27 javascript_deferred.load = []; 28 29 30 function javascript() { }; 31 function javascript_deferred() { }; 32 33 function get_id() { 34 var uid = 'js_' + js_id; 35 javascript.load.push(uid); 36 js_id++; 37 return uid; 38 } 39 40 function get_deferred_id() { 41 var uid = 'jsd_' + jsd_id; 42 javascript_deferred.load.push(uid); 43 jsd_id++; 44 return uid; 45 } 46 47 // *** ADDED â Consent Mode v2 bootstrap *** 48 // Must run BEFORE the privacy IIFE installs its stubs. 49 // Uses the real gtag() function call (not raw array push) so that gtag.js 50 // registers consent state via its consent API â this is what makes hits 51 // report pscdl=granted/denied instead of pscdl=noapi. 52 53 var DI_CONSENT_MODE_V2 = (typeof window.DiConsentMode === 'boolean') ? window.DiConsentMode : true; 54 55 window.dataLayer = window.dataLayer || []; 56 window.gtag = function () { window.dataLayer.push(arguments); }; 57 58 window.google_tracking = window.google_tracking || {}; 59 window.google_tracking.gtag = window.gtag; 60 61 // Default: deny everything. Must be called before any Google tag loads. 62 window.gtag('consent', 'default', { 63 analytics_storage: 'denied', 64 ad_storage: 'denied', 65 ad_user_data: 'denied', 66 ad_personalization: 'denied', 67 wait_for_update: 500 68 }); 69 70 // Returning visitor with stored consent: update immediately so GTM/GA 71 // initialize already knowing consent is granted. 72 (function () { 73 try { 74 var name = 'di_privacy_consent'; 75 var match = document.cookie.match(new RegExp('(?:^|;\\s*)' + name + '=([^;]*)')); 76 if (match && decodeURIComponent(match[1]) === 'granted') { 77 window.gtag('consent', 'update', { 78 analytics_storage: 'granted', 79 ad_storage: 'granted', 80 ad_user_data: 'granted', 81 ad_personalization: 'granted' 82 }); 83 } 84 } catch (e) { } 85 })(); 86 // *** END ADDED â Consent Mode v2 bootstrap *** 87 88 89 (function (window, document) { 90 'use strict'; 91 92 /* 93 Privacy / Consent Tracking Controller 94 95 Purpose: 96 - Pending consent: hold known/curated tracking scripts and API calls. 97 - Accepted consent: release held tracking scripts/calls immediately. 98 - Rejected consent: discard held tracking scripts/calls. 99 - GPC / Do Not Track: always treat as denied. 100 - Unknown third-party scripts are not held client-side; they are controlled by the server-side CSP policy. 101 102 Important: 103 - This script intentionally distinguishes between: 104 1) Non-essential trackers / analytics / pixels / session replay tools. 105 2) Functional third-party services that are required for the site experience. 106 3) Unknown third-party resources, which should be blocked by server-side CSP while consent is pending/denied. 107 */ 108 109 var CONSENT_KEY = 'di_privacy_consent'; 110 var COOKIE_MAX_AGE = 60 * 60 * 24 * 180; 111 112 var heldScripts = []; 113 var heldCalls = []; 114 var heldSockets = []; 115 116 function _logBlocked() { 117 console.log.apply(console, arguments); 118 } 119 120 function detectGPC() { 121 try { 122 // Global Privacy Control, where supported. 123 if (navigator && typeof navigator.globalPrivacyControl !== 'undefined') { 124 if (navigator.globalPrivacyControl) return true; 125 } 126 127 if (window.matchMedia && window.matchMedia('(global-privacy-control: 1)').matches) { 128 return true; 129 } 130 131 // Legacy browser "Do Not Track" support. 132 var dnt = navigator.doNotTrack || window.doNotTrack || navigator.msDoNotTrack; 133 if (dnt === '1' || dnt === 'yes') { 134 return true; 135 } 136 } catch (e) { } 137 138 return false; 139 } 140 141 function getStoredConsent() { 142 try { 143 var name = CONSENT_KEY.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); 144 var match = document.cookie.match(new RegExp('(?:^|;\\s*)' + name + '=([^;]*)')); 145 146 if (!match) { 147 return null; 148 } 149 150 var v = decodeURIComponent(match[1]); 151 152 if (v === 'granted' || v === 'denied') { 153 return v; 154 } 155 } catch (e) { } 156 157 return null; 158 } 159 160 function setStoredConsent(v) { 161 if (v !== 'granted' && v !== 'denied') { 162 return; 163 } 164 165 /* 166 The consent cookie is the single source of truth. 167 168 It controls: 169 - Server-side CSP mode 170 - JavaScript consent state 171 - Whether the banner appears 172 173 When this cookie expires, consent returns to "pending" and the banner 174 will be shown again. 175 */ 176 try { 177 document.cookie = 178 CONSENT_KEY + '=' + encodeURIComponent(v) + 179 '; Path=/' + 180 '; Max-Age=' + COOKIE_MAX_AGE + 181 '; SameSite=Lax' + 182 (window.location.protocol === 'https:' ? '; Secure' : ''); 183 } catch (e) { } 184 } 185 186 function clearStoredConsent() { 187 try { 188 document.cookie = 189 CONSENT_KEY + '=; Path=/; Max-Age=0; SameSite=Lax' + 190 (window.location.protocol === 'https:' ? '; Secure' : ''); 191 } catch (e) { } 192 } 193 194 function clearLegacyStoredConsent() { 195 try { 196 localStorage.removeItem(CONSENT_KEY); 197 } catch (e) { } 198 } 199 200 clearLegacyStoredConsent(); 201 202 var gpcEnabled = detectGPC(); 203 var storedConsent = getStoredConsent(); 204 var consent = storedConsent || null; 205 206 function getConsentState() { 207 if (gpcEnabled) return 'denied'; 208 return consent || 'pending'; 209 } 210 211 function trackingAllowed() { 212 return !gpcEnabled && consent === 'granted'; 213 } 214 215 function shouldHold() { 216 return !gpcEnabled && getConsentState() === 'pending'; 217 } 218 219 function shouldDrop() { 220 return gpcEnabled || getConsentState() === 'denied'; 221 } 222 223 /* 224 Early static script guard. 225 226 This catches hard-coded parser-discovered
226<script src="..."> tags that appear 227 later in the HTML, before the browser has a chance to execute them. 228 229 This is especially important for trackers added as normal static HTML tags, 230 such as Cloudflare Web Analytics / Browser Insights. 231 232 Note: 233 - This is not meant to replace CSP. 234 - CSP is still the hard server-side fallback. 235 - This guard exists so known static tracker scripts can be held/released 236 on the same page after consent. 237 */ 238 var earlyStaticScriptPatterns = [ 239 /static\.cloudflareinsights\.com\/beacon\.min\.js/i, 240 /js\.zi-scripts\.com\/zi-tag\.js/i 241 ]; 242 243 function earlyMatchesStaticScript(src) { 244 if (!src) return false; 245 246 var s = String(src); 247 248 for (var i = 0; i < earlyStaticScriptPatterns.length; i++) { 249 if (earlyStaticScriptPatterns[i].test(s)) { 250 return true; 251 } 252 } 253 254 return false; 255 } 256 257 function earlyCloneScriptForRelease(original) { 258 var clone = document.createElement('script'); 259 260 for (var i = 0; i < original.attributes.length; i++) { 261 var attr = original.attributes[i]; 262 263 try { 264 clone.setAttribute(attr.name, attr.value); 265 } catch (e) { } 266 } 267 268 return clone; 269 } 270 271 function earlyHoldStaticScript(script) { 272 if (!script || !script.src) return false; 273 274 var src = script.src; 275 276 if (!earlyMatchesStaticScript(src)) { 277 return false; 278 } 279 280 for (var i = 0; i < heldScripts.length; i++) { 281 if (heldScripts[i].src === src) { 282 return true; 283 } 284 } 285 286 if (shouldHold()) { 287 heldScripts.push({ 288 src: src, 289 node: earlyCloneScriptForRelease(script), 290 parent: document.head || document.documentElement, 291 method: 'appendChild', 292 refNode: null 293 }); 294 295 try { 296 if (script.parentNode) { 297 script.parentNode.removeChild(script); 298 } 299 } catch (e) { } 300 301 _logBlocked('[Privacy] Early-held static tracker script until consent â', src); 302 return true; 303 } 304 305 if (shouldDrop()) { 306 try { 307 if (script.parentNode) { 308 script.parentNode.removeChild(script); 309 } 310 } catch (e) { } 311 312 _logBlocked('[Privacy] Early-removed static tracker script â', src); 313 return true; 314 } 315 316 return false; 317 } 318 319 function installEarlyStaticScriptGuard() { 320 function scanExistingScriptsEarly() { 321 var scripts = document.querySelectorAll('script[src]'); 322 323 for (var i = 0; i < scripts.length; i++) { 324 earlyHoldStaticScript(scripts[i]); 325 } 326 } 327 328 scanExistingScriptsEarly(); 329 330 if (window.MutationObserver && document.documentElement) { 331 try { 332 var earlyObserver = new MutationObserver(function (mutations) { 333 for (var i = 0; i < mutations.length; i++) { 334 var added = mutations[i].addedNodes; 335 336 for (var j = 0; j < added.length; j++) { 337 var node = added[j]; 338 339 if (node && node.tagName === 'SCRIPT') { 340 earlyHoldStaticScript(node); 341 } 342 343 if (node && node.querySelectorAll) { 344 var scripts = node.querySelectorAll('script[src]'); 345 346 for (var k = 0; k < scripts.length; k++) { 347 earlyHoldStaticScript(scripts[k]); 348 } 349 } 350 } 351 } 352 }); 353 354 earlyObserver.observe(document.documentElement, { 355 childList: true, 356 subtree: true 357 }); 358 } catch (e) { } 359 } 360 } 361 362 installEarlyStaticScriptGuard(); 363 364 /* 365 Beacon/network endpoints. 366 367 These are non-essential analytics, ads, attribution, session replay, 368 heatmap, call tracking, fingerprinting, and marketing automation endpoints. 369 370 While consent is pending or denied, requests matching these patterns are 371 blocked client-side. This prevents known trackers from sending data even if 372 a script tries to fire a fetch/XHR/sendBeacon/image beacon. 373 */ 374 var beaconPatterns = [ 375 376 // Google Ads / AdSense / remarketing / conversion endpoints 377 /:\/\/ssl\.google-analytics\.com\//i, 378 /:\/\/stats\.g\.doubleclick\.net\//i, 379 /:\/\/www\.google\.com\/pagead\/1p-user-list/i, 380 /:\/\/www\.google\.com\/pagead\/conversion/i, 381 /:\/\/googleads\.g\.doubleclick\.net\//i, 382 /:\/\/pagead2\.googlesyndication\.com\//i, 383 /:\/\/www\.googlesyndication\.com\/pagead\//i, 384 /:\/\/www\.googleadservices\.com\/pagead\//i, 385 /:\/\/www\.google\.com\/pagead\//i, 386 387 // Meta / Facebook 388 /:\/\/www\.facebook\.com\/tr\?/i, 389 /:\/\/graph\.facebook\.com\/v\d+\.\d+\/events/i, 390 391 // TikTok 392 /:\/\/business\.tiktok\.com\/bt\//i, 393 /:\/\/s\.tiktok\.com\//i, 394 395 // Pinterest 396 /:\/\/log\.pinterest\.com\//i, 397 /:\/\/analytics\.pinterest\.com\//i, 398 399 // LinkedIn 400 /:\/\/px\.ads\.linkedin\.com/i, 401 402 // Snapchat 403 /:\/\/tr\.snapchat\.com\//i, 404 405 // Twitter / X 406 /:\/\/analytics\.twitter\.com\//i, 407 /:\/\/t\.co\/i\/collect/i, 408 409 // Reddit Ads 410 /:\/\/events\.redditmedia\.com\//i, 411 /:\/\/www\.redditstatic\.com\/ads\/pixel\.js/i, 412 /:\/\/alb\.reddit\.com\//i, 413 414 // Heatmaps / session replay / behavior tracking 415 /:\/\/static\.hotjar\.com\/c\/hotjar-/i, 416 /:\/\/track\.hotjar\.com\//i, 417 /:\/\/script\.crazyegg\.com\/pages\//i, 418 /:\/\/rs\.fullstory\.com/i, 419 /:\/\/api\.mouseflow\.com\//i, 420 /:\/\/www\.clarity\.ms\/collect/i, 421 /:\/\/tools\.luckyorange\.com\//i, 422 423 // Marketing automation / CRM / attribution 424 /:\/\/track\.hubspot\.com\//i, 425 /:\/\/api\.hsforms\.com\/submissions/i, 426 /:\/\/piwik\.pardot\.com\//i, 427 /:\/\/go\.pardot\.com\//i, 428 /:\/\/cdn\.segment\.com\/v1\/p\//i, 429 /:\/\/api\.mixpanel\.com\//i, 430 /:\/\/api\.amplitude\.com/i, 431 /:\/\/plausible\.io\/api\/event/i, 432 /:\/\/matomo\.cloud\/matomo\.php/i, 433 /:\/\/.*\/matomo\.php/i, 434 /:\/\/analytics\.liine\.com\//i, 435 /:\/\/instantleadcapture\.com\//i, 436 /:\/\/px\.premion\.com\//i, 437 /:\/\/js\.adsrvr\.org\//i, 438 /:\/\/cdn\.raek\.net\//i, 439 /:\/\/s1\.revenuewell\.com\//i, 440 /:\/\/diffuser-cdn\.app-us1\.com\//i, 441 /:\/\/chimpstatic\.com\//i, 442 443 // Fingerprinting-style endpoints or libraries. 444 /fingerprint/i, 445 /\.fpjs\.io/i, 446 447 // AdRoll 448 /:\/\/s\.adroll\.com\//i, 449 /:\/\/d\.adroll\.com\//i, 450 /:\/\/pixel\.adroll\.com\//i, 451 452 // ZoomInfo 453 /:\/\/ws\.zoominfo\.com\/pixel\//i, 454 /:\/\/ws\.zoominfo\.com\//i, 455 456 // VigLink / affiliate tracking 457 /:\/\/vigl\.us\//i, 458 459 // Trovo tag 460 /:\/\/tag\.trovo-tag\.com\//i, 461
462 // Programmatic adtech / cookie-sync / audience matching 463 /:\/\/x\.bidswitch\.net\/sync/i, 464 /:\/\/pixel\.tapad\.com\/idsync/i, 465 /:\/\/ml314\.com\/utsync\.ashx/i, 466 /:\/\/ps\.eyeota\.net\/match/i, 467 /:\/\/cm\.g\.doubleclick\.net\/pixel/i, 468 /:\/\/dsum-sec\.casalemedia\.com\/rum/i, 469 /:\/\/image2\.pubmatic\.com\/AdServer\/Pug/i, 470 /:\/\/pixel\.rubiconproject\.com\/tap\.php/i, 471 /:\/\/us-u\.openx\.net\/w\/1\.0\/sd/i, 472 /:\/\/sync\.outbrain\.com\/cookie-sync/i, 473 /:\/\/sync\.taboola\.com\//i, 474 /:\/\/eb2\.3lift\.com\/xuid/i, 475 /:\/\/ib\.adnxs\.com\/setuid/i, 476 477 // Patient Prism / call intelligence 478 /:\/\/next-api\.patientprism\.com\/v1\/snippet\//i, 479 480 // First-party legacy referral / page interaction tracking 481 // /:\/\/referrals\.di-api\.com\//i, 482 483 // Identity / ad targeting / profiling 484 /:\/\/pro\.ip-api\.com\/json\//i, 485 /:\/\/alocdn\.com\/.*\/xtarget\/p\.json/i, 486 /:\/\/tag\.link-url\.io\//i, 487 /:\/\/idx\.liadm\.com\//i, 488 489 // Cloudflare Web Analytics / Browser Insights 490 /:\/\/static\.cloudflareinsights\.com\/beacon/i, 491 /:\/\/cloudflareinsights\.com\//i, 492 493 // Additional tracker / analytics / adtech beacon endpoints 494 /:\/\/dni\.logmycalls\.com\//i, 495 /:\/\/insight\.adsrvr\.org\//i, 496 /:\/\/bat\.bing\.com\//i, 497 /:\/\/settings\.luckyorange\.com\//i, 498 /:\/\/app\.operadds\.com\//i, 499 /:\/\/js\.zi-scripts\.com\//i, 500 /:\/\/analytics-[0-9]+\.kxcdn\.com\//i, 501 /:\/\/alice\.liine\.com\//i, 502 /:\/\/data\.hockeystack\.com\/send/i,
503 /:\/\/jelly\.mdhv\.io\//i, 504 /:\/\/tag\.simpli\.fi\//i, 505 /:\/\/i\.simpli\.fi\/p/i, 506 /:\/\/um\.simpli\.fi\//i, 507 /:\/\/www\.redditstatic\.com\/ads\/pixel\.js/i, 508 /:\/\/dni\.logmycalls\.com\//i, 509 /:\/\/a\.usbrowserspeed\.com\/cs/i, 510 /:\/\/.*\.usbrowserspeed\.com\/cs/i, 511 512 // Pendo product analytics 513 /:\/\/cdn\.pendo\.io\//i, 514 /:\/\/data\.pendo\.io\//i, 515 /:\/\/app\.pendo\.io\//i, 516 517 // Piwik PRO analytics / tag manager 518 /:\/\/.*\.piwik\.pro\//i, 519 520 // Leadpages analytics 521 /:\/\/api\.leadpages\.io\/analytics\//i, 522 523 // BrandCDN / conversion pixel 524 /:\/\/adservices\.brandcdn\.com\/pixel\//i, 525 526 // LiveRamp / identity sync 527 /:\/\/idsync\.rlcdn\.com\//i, 528 529 // Kissmetrics analytics 530 /:\/\/i\.kissmetrics\.io\//i, 531 /:\/\/scripts\.kissmetrics\.io\//i, 532 /:\/\/trk\.kissmetrics\.io\//i, 533 /:\/\/et\.kissmetrics\.io\//i, 534 535 // RLETS / call tracking / attribution storage iframe 536 /:\/\/[^\/]+\.rlets\.com\/static\/storage\.html/i, 537 538 // ReachLocal / LocaliQ capture, attribution, geolocation enrichment 539 /:\/\/capture-api\.reachlocalservices\.com\//i, 540 541 // EXTENDED LIST --- 542 // Scheduling / booking widgets 543 /:\/\/[^\/]*calendly\.com\//i, 544 /:\/\/assets\.calendly\.com\//i, 545 /:\/\/[^\/]*localmed\.com\//i, 546 /:\/\/frontend\.assets\.nexhealth\.com\//i, 547 /:\/\/schedule\.jarvisanalytics\.com\//i, 548 /:\/\/embed\.acuityscheduling\.com\//i, 549 /:\/\/cdn\.timetrade\.com\//i, 550 /:\/\/book\.getweave\.com\//i, 551 /:\/\/book2\.getweave\.com\//i, 552 /:\/\/book\.gke1-west3\.wsf-prod-1\.wstack\.net\//i, 553 /:\/\/nextgen\.clixondental\.com\//i, 554 /:\/\/olb\.saloniris\.com\//i, 555 /:\/\/plugin\.mysalononline\.com\//i, 556 557 // Zocdoc 558 /:\/\/api\.zocdoc\.com\//i, 559 /:\/\/api2\.zocdoc\.com\//i, 560 /:\/\/bob\.zocdoc\.com\//i, 561 /:\/\/static\.zocdoc\.com\//i, 562 /:\/\/www\.zocdoc\.com\//i, 563 /:\/\/book\.zocdoc\.com\//i, 564 /:\/\/offsiteschedule\.zocdoc\.com\//i, 565 /:\/\/[^\/]+\.zocdoc\.com\//i, 566 567 // Chat / chatbot / AI assistant widgets 568 /:\/\/connect\.podium\.com\//i, 569 /:\/\/platform\.swellcx\.com\//i, 570 /:\/\/cdn\.apigateway\.co\//i, 571 /:\/\/chat\.gocloudgain\.com\//i, 572 /:\/\/chat\.dentina\.ai\//i, 573 /:\/\/static\.ai\.getdeardoc\.com\//i, 574 /:\/\/chat\.getdeardoc\.com\//i, 575 /:\/\/api\.chat\.getdeardoc\.com\//i, 576 /:\/\/app\.dasconsultantsusa\.com\//i, 577 /:\/\/server\.dasconsultantsusa\.com\//i, 578 /:\/\/app\.purechat\.com\//i, 579 /:\/\/widgetapi\.purechat\.com\//i, 580 /:\/\/[^\/]*botsrv\.com\//i, 581 /:\/\/botsrv2\.com\//i, 582 /:\/\/static\.botsrv2\.com\//i, 583 /:\/\/app\.botsify\.com\//i, 584 /:\/\/widget\.botsify\.com\//i, 585 /:\/\/embed\.tawk\.to\//i, 586 /:\/\/static-v\.tawk\.to\//i, 587 /:\/\/va\.tawk\.to\//i, 588 /:\/\/[^\/]+\.tawk\.to\//i, 589 /:\/\/[^\/]*formilla\.com\//i, 590 /:\/\/widgets\.leadconnectorhq\.com\//i, 591 /:\/\/services\.leadconnectorhq\.com\//i, 592 /:\/\/services\.msgsndr\.com\//i, 593 /:\/\/app\.chatsupport\.co\//i, 594 /:\/\/[^\/]*truelark\.com\//i, 595 /:\/\/ops\.truelark\.com\//i, 596 /:\/\/[^\/]*247aireceptionist\.com\//i, 597 /:\/\/code\.jivosite\.com\//i, 598 /:\/\/[^\/]+\.jivosite\.com\//i, 599 /:\/\/api\.livechatinc\.com\//i, 600 /:\/\/cdn\.livechatinc\.com\//i, 601 /:\/\/[^\/]+\.livechatinc\.com\//i, 602 /:\/\/chat\.doctorsinternet\.com\/web-bot\//i, 603 604 // Forms / lead capture / embedded form systems 605 /:\/\/webform\.adit\.com\//i, 606 /:\/\/embed\.lpcontent\.net\//i, 607 /:\/\/api\.leadpages\.io\//i, 608 /:\/\/app-widgets\.jotform\.io\//i, 609 /:\/\/widgets\.jotform\.io\//i, 610 /:\/\/forms\.liine\.com\//i, 611 /:\/\/dim\.dentalimplantmachine\.co\//i, 612 /:\/\/[^\/]+\.kit\.com\//i, 613 /:\/\/[^\/]+\.ck\.page\//i, 614 /:\/\/[^\/]*convertkit\.com\//i, 615 /:\/\/app\.convertkit\.com\//i, 616 /:\/\/f\.convertkit\.com\//i, 617 /:\/\/api\.hsforms\.com\//i, 618 /:\/\/forms\.hsforms\.com\//i, 619 /:\/\/js\.hsforms\.net\//i, 620 621 // Reviews / reputation / social proof widgets 622 /:\/\/go\.doctorsinternet\.com\//i, 623 /:\/\/go\.pimm-usa\.com\//i, 624 /:\/\/widgets-v7\.birdeye\.com\//i, 625 /:\/\/webchat\.birdeye\.com\//i, 626 /:\/\/widget-v7-cdn\.birdeye\.com\//i, 627 /:\/\/[^\/]*birdeye\.com\//i, 628 /:\/\/widgets\.revue\.us\//i, 629 /:\/\/widgets\.thereviewsplace\.com\//i, 630 /:\/\/assets\.thereviewsplace\.com\//i, 631 /:\/\/api\.thereviewsplace\.com\//i, 632 /:\/\/providers\.doctor\.com\//i, 633 /:\/\/app\.operadds\.com\//i, 634 /:\/\/reviewsonmywebsite\.com\//i, 635 /:\/\/localimpact\.com\//i, 636 /:\/\/local\.demandforce\.com\//i, 637 /:\/\/www\.demandforced3\.com\//i, 638 /:\/\/[^\/]*elfsight\.com\//i, 639 /:\/\/[^\/]*elfsightcdn\.com\//i, 640 641 // Social widgets / embeds 642 /:\/\/www\.instagram\.com\//i, 643 /:\/\/www\.tiktok\.com\//i, 644 /:\/\/lf16-tiktok-web\.tiktokcdn-us\.com\//i, 645 /:\/\/www\.facebook\.com\/plugins\//i, 646 /:\/\/widgets\.pinterest\.com\//i, 647 /:\/\/www\.yelp\.com\//i, 648 649 // Financing / payment / membership widgets 650 /:\/\/files\.withcherry\.com\//i, 651 /:\/\/gql\.withcherry\.com\//i, 652 /:\/\/master-cherry-storage\.s3\.us-west-2\.amazonaws\.com\//i, 653 /:\/\/member\.kleer\.com\//i, 654 /:\/\/member\.clerri\.com\//i, 655 /:\/\/checkout\.staxpayments\.com\//i, 656 /:\/\/goblueswipe\.transactiongateway\.com\//i, 657 /:\/\/secure\.networkmerchants\.com\//i, 658 /:\/\/apply\.sunbit\.com\//i, 659 /:\/\/www\.paypal\.com\//i, 660 /:\/\/www\.paypalobjects\.com\//i, 661 /:\/\/www\.carecredit\.com\//i, 662 663 // Patient / health / practice widgets that may create sessions or lead context 664 /:\/\/patient\.phreesia\.com\//i, 665 /:\/\/patient\.klara\.com\//i, 666 /:\/\/widget\.klara\.com\//i, 667 /:\/\/patient-api\.speareducation\.com\//i, 668 /:\/\/api\.modento\.io\//i, 669 /:\/\/app\.neuralityhealth\.ai\//i, 670 /:\/\/www\.smilevirtual\.com\//i, 671 /:\/\/[^\/]*doctible\.com\//i, 672 /:\/\/[^\/]*yapiapp\.io\//i, 673 674 // Intake / scheduling / patient forms 675 /:\/\/[^\/]*intakeq\.com\//i, 676 /:\/\/app\.prod\.intelibly\.com\//i, 677 /:\/\/app\.intelibly\.com\//i, 678 /:\/\/sc-widget\.prod\.intelibly\.com\//i, 679 /:\/\/clients-cdn\.pplpractice\.com\//i, 680 /:\/\/webrefillplugin\.bestrxconnect\.com\//i, 681 /:\/\/view\.implantsmiles\.co\//i, 682 683 // Simplifeye / patient communication 684 /:\/\/embed\.simplifeye\.co\//i, 685 /:\/\/api\.simplifeye\.co\//i, 686 687 // AI chat / chatbot / web assistant widgets 688 /:\/\/aichatbotweb\.revenuewell\.com\//i, 689 /:\/\/[^\/]+\.web-assistant\.tensorlinks\.app\//i, 690 /:\/\/[^\/]*tensorlinks\.app\//i, 691 /:\/\/api\.heygent\.ai\//i, 692 /:\/\/lexicon-prod\.apigateway\.co\//i, 693 /:\/\/conversation-prod\.apigateway\.co\//i, 694 /:\/\/widget\.osam\.one\//i, 695 696 // Local marketing / lead widgets 697 /:\/\/www\.localmarketingmanager\.com\//i, 698 /:\/\/[^\/]*localmarketingmanager\.com\//i, 699 700 // Health / patient commerce / referral widgets 701 /:\/\/assets\.fullscript\.com\//i, 702 /:\/\/www\.opencare\.com\//i, 703 /:\/\/[^\/]*opencare\.com\//i 704 // END EXTENDED LIST --- 705 ]; 706 707 if (!DI_CONSENT_MODE_V2) { 708 beaconPatterns.push( 709 /:\/\/www\.google-analytics\.com\/collect/i, 710 /:\/\/www\.google-analytics\.com\/g\/collect/i, 711 /:\/\/www\.googletagmanager\.com\/collect/i, 712 /:\/\/region1\.google-analytics\.com\/g\/collect/i, 713 /:\/\/region2\.google-analytics\.com\/g\/collect/i, 714 /:\/\/analytics\.google\.com\/g\/collect/i 715 ); 716 } 717 /* 718 Script loader patterns. 719 720 These are known non-essential tracker scripts. While consent is pending, 721 the script is held instead of loaded. If consent is accepted, held scripts 722 are released on the same page. If consent is denied, held scripts are discarded. 723 */ 724 var blockUrls = [ 725 726 // Google Ads / AdSense / remarketing scripts 727 /google\.com\/pagead\/tag\/js/i, 728 /googleads\.g\.doubleclick\.net\//i, 729 /pagead2\.googlesyndication\.com\//i, 730 /pagead2\.googlesyndication\.com\/pagead\//i, 731 /www\.googlesyndication\.com\/pagead\//i, 732 /www\.googleadservices\.com\/pagead\//i, 733 734 // Meta / Facebook 735 /connect\.facebook\.net\/.*\/fbevents\.js/i, 736 /facebook\.com\/tr\/?/i, 737 738 // TikTok 739 /business\.tiktok\.com\/widget/i, 740 /s\.tiktok\.com\//i, 741 /analytics\.tiktok\.com\/i18n\/pixel\/events\.js/i, 742 743 // LinkedIn 744 /snap\.licdn\.com\/li\.js/i, 745 /snap\.licdn\.com\/li\.lms-analytics\/insight\.min\.js/i, 746 747 // Twitter / X 748 /static\.ads-twitter\.com\/uwt\.js/i, 749 750 // Pinterest 751 /assets\.pinterest\.com\/js\/pinit\.js/i, 752 753 // Snapchat 754 /sc-static\.net\/connect\.js/i, 755 756 // Heatmaps / session replay / user behavior analytics 757 /static\.hotjar\.com\/c\/hotjar-/i, 758 /tools\.luckyorange\.com\/core\/lo\.js/i, 759 /fullstory\.com\/s\/fs\.js/i, 760 /clarity\.ms\/tag/i, 761 /script\.crazyegg\.com\/pages\//i, 762 /mouseflow\.com\/projects\//i, 763 764 // Analytics / CDP / product analytics 765 /cdn\.mixpanel\.com\/lib/i, 766 /cdn\.amplitude\.com\/js/i, 767 /cdn\.segment\.com\/analytics/i, 768 /plausible\.io\/js\/script/i, 769 770 // Call tracking / DNI / lead capture / attribution 771 /tctm\.co\/t\.js/i, 772 /appcontent\.practicenumbers\.com\/phone_number_replace_/i, 773 /cdn\.callrail\.com\/companies\/.+\/swap\.js/i, 774 /cdn\.calltrk\.com\/companies\/.+\/swap\.js/i, 775 /cdn\.rlets\.com\/capture_configs\//i, 776 /analytics\.liine\.com\/v1\/bootstrapped/i, 777 /instantleadcapture\.com\/px\.min\.js/i, 778 /js\.adsrvr\.org\/up_loader/i, 779 /px\.premion\.com\/pixel\.js/i, 780 781 // Anti-fraud / visitor ID / attribution-style scripts 782 /www\.clickcease\.com\/monitor\/.+\.js/i, 783 /cdn\.raek\.net\/js\/raek\.min\.js/i, 784 /hockeystack(@latest)?\/hockeystack\.min\.js/i, 785 786 // Chat/CX scripts that include explicit tracking behavior. 787 /cdn\.livechatinc\.com\/tracking\.js/i, 788 /static\.mobilemonkey\.com\/js\/business_/i, 789 /static\.zdassets\.com\/ekr\/snippet\.js/i,
790 /platform\.swellcx\.com\/widget\/js\/chat\.js/i, 791 /cdn\.apigateway\.co\/webchat-client/i, 792 793 // Marketing automation / email / CRM 794 /js\.hubspot\.com\/analytics/i, 795 /js\.hs-scripts\.com\/\d+\.js/i, 796 /js\.hsforms\.net\/forms\/embed\/v2\.js/i, 797 /chimpstatic\.com\/mcjs-connected\/js\//i, 798 /diffuser-cdn\.app-us1\.com\/diffuser\/diffuser\.js/i, 799 /tag\.brandcdn\.com\/autoscript\//i, 800 /tag\.validate\.audio\/validate\.js/i, 801 /s1\.revenuewell\.com\/scripts\/js-api\.js/i, 802 803 // BrandCDN conversion pixel script 804 /adservices\.brandcdn\.com\/pixel\/cv_pixel\.js/i, 805 806 // AdRoll 807 /s\.adroll\.com\/j\/[^\/]+\/roundtrip\.js/i, 808 809 // ZoomInfo pixel 810 /ws\.zoominfo\.com\/pixel\//i, 811 812 // Trovo tag iframe/script 813 /tag\.trovo-tag\.com\//i, 814 815 // Patient Prism / call intelligence 816 /next-api\.patientprism\.com\/v1\/snippet\//i, 817 818 // Cloudflare Web Analytics / Browser Insights 819 /static\.cloudflareinsights\.com\/beacon\.min\.js/i, 820 821 // Additional tracker scripts 822 /dni\.logmycalls\.com\/dni\.js/i, 823 /insight\.adsrvr\.org\//i, 824 /bat\.bing\.com\/bat\.js/i, 825 /settings\.luckyorange\.com\//i, 826 /app\.operadds\.com\//i, 827 /js\.zi-scripts\.com\/zi-tag\.js/i, 828 /analytics-[0-9]+\.kxcdn\.com\/analytics\.js/i, 829 /tag\.simpli\.fi\//i, 830 /i\.simpli\.fi\/p/i, 831 /www\.redditstatic\.com\/ads\/pixel\.js/i, 832 /dni\.logmycalls\.com\/dni\.js/i, 833 834 // Pendo product analytics 835 /cdn\.pendo\.io\/agent\/static\/[^\/]+\/pendo\.js/i, 836 837 // Piwik PRO container / analytics 838 /containers\.piwik\.pro\/[^\/]+\.js/i, 839 840 // Kissmetrics analytics scripts 841 /i\.kissmetrics\.io\/i\.js/i, 842 /scripts\.kissmetrics\.io\/.*\.js/i, 843 844 // EXTENDED LIST --- 845 // Scheduling / booking widgets 846 /calendly\.com/i, 847 /assets\.calendly\.com/i, 848 /localmed\.com/i, 849 /frontend\.assets\.nexhealth\.com/i, 850 /schedule\.jarvisanalytics\.com/i, 851 /embed\.acuityscheduling\.com/i, 852 /cdn\.timetrade\.com/i, 853 /book\.getweave\.com/i, 854 /book2\.getweave\.com/i, 855 /book\.gke1-west3\.wsf-prod-1\.wstack\.net/i, 856 /nextgen\.clixondental\.com/i, 857 /olb\.saloniris\.com/i, 858 /plugin\.mysalononline\.com/i, 859 860 // Zocdoc 861 /zocdoc\.com/i, 862 /zocdocstatic\.com/i, 863 /static\.zocdoc\.com/i, 864 /offsiteschedule\.zocdoc\.com/i, 865 /book\.zocdoc\.com/i, 866 867 // Chat / chatbot / AI assistant widgets 868 /connect\.podium\.com/i, 869 /platform\.swellcx\.com/i, 870 /cdn\.apigateway\.co/i, 871 /chat\.gocloudgain\.com/i, 872 /chat\.dentina\.ai/i, 873 /static\.ai\.getdeardoc\.com/i, 874 /chat\.getdeardoc\.com/i, 875 /api\.chat\.getdeardoc\.com/i, 876 /app\.dasconsultantsusa\.com/i, 877 /server\.dasconsultantsusa\.com/i, 878 /app\.purechat\.com/i, 879 /widgetapi\.purechat\.com/i, 880 /botsrv\.com/i, 881 /botsrv2\.com/i, 882 /static\.botsrv2\.com/i, 883 /app\.botsify\.com/i, 884 /widget\.botsify\.com/i, 885 /embed\.tawk\.to/i, 886 /static-v\.tawk\.to/i, 887 /va\.tawk\.to/i, 888 /formilla\.com/i, 889 /widgets\.leadconnectorhq\.com/i, 890 /services\.leadconnectorhq\.com/i, 891 /services\.msgsndr\.com/i, 892 /app\.chatsupport\.co/i, 893 /truelark\.com/i, 894 /ops\.truelark\.com/i, 895 /247aireceptionist\.com/i, 896 /code\.jivosite\.com/i, 897 /jivosite\.com/i, 898 /api\.livechatinc\.com/i, 899 /cdn\.livechatinc\.com/i, 900 /chat\.doctorsinternet\.com/i, 901 902 // Forms / lead capture / embedded form systems 903 /webform\.adit\.com/i, 904 /embed\.lpcontent\.net/i, 905 /api\.leadpages\.io/i, 906 /app-widgets\.jotform\.io/i, 907 /widgets\.jotform\.io/i, 908 /forms\.liine\.com/i, 909 /dim\.dentalimplantmachine\.co/i, 910 /kit\.com/i, 911 /ck\.page/i, 912 /convertkit\.com/i, 913 /app\.convertkit\.com/i, 914 /f\.convertkit\.com/i, 915 /api\.hsforms\.com/i, 916 /forms\.hsforms\.com/i, 917 /js\.hsforms\.net/i, 918 919 // Reviews / reputation / social proof widgets 920 /go\.doctorsinternet\.com/i, 921 /go\.pimm-usa\.com/i, 922 /widgets-v7\.birdeye\.com/i, 923 /webchat\.birdeye\.com/i, 924 /widget-v7-cdn\.birdeye\.com/i, 925 /birdeye\.com/i, 926 /widgets\.revue\.us/i, 927 /widgets\.thereviewsplace\.com/i, 928 /assets\.thereviewsplace\.com/i, 929 /api\.thereviewsplace\.com/i, 930 /providers\.doctor\.com/i, 931 /app\.operadds\.com/i, 932 /reviewsonmywebsite\.com/i, 933 /localimpact\.com/i, 934 /local\.demandforce\.com/i, 935 /demandforced3\.com/i, 936 /elfsight\.com/i, 937 /elfsightcdn\.com/i, 938 939 // Social widgets / embeds 940 /instagram\.com/i, 941 /tiktok\.com/i, 942 /lf16-tiktok-web\.tiktokcdn-us\.com/i, 943 /facebook\.com\/plugins/i, 944 /widgets\.pinterest\.com/i, 945 /www\.yelp\.com/i, 946 947 // Financing / payment / membership widgets 948 /files\.withcherry\.com/i, 949 /gql\.withcherry\.com/i, 950 /master-cherry-storage\.s3\.us-west-2\.amazonaws\.com/i, 951 /member\.kleer\.com/i, 952 /member\.clerri\.com/i, 953 /checkout\.staxpayments\.com/i, 954 /goblueswipe\.transactiongateway\.com/i, 955 /secure\.networkmerchants\.com/i, 956 /apply\.sunbit\.com/i, 957 /www\.paypal\.com/i, 958 /www\.paypalobjects\.com/i, 959 /www\.carecredit\.com/i, 960 961 // Patient / health / practice widgets that may create sessions or lead context 962 /patient\.phreesia\.com/i, 963 /patient\.klara\.com/i, 964 /widget\.klara\.com/i, 965 /patient-api\.speareducation\.com/i, 966 /api\.modento\.io/i, 967 /app\.neuralityhealth\.ai/i, 968 /www\.smilevirtual\.com/i, 969 /doctible\.com/i, 970 /yapiapp\.io/i, 971 972 // Intake / scheduling / patient forms 973 /intakeq\.com/i, 974 /app\.prod\.intelibly\.com/i, 975 /app\.intelibly\.com/i, 976 /sc-widget\.prod\.intelibly\.com/i, 977 /clients-cdn\.pplpractice\.com/i, 978 /webrefillplugin\.bestrxconnect\.com/i, 979 /view\.implantsmiles\.co/i, 980 981 // Simplifeye / patient communication 982 /embed\.simplifeye\.co/i, 983 /api\.simplifeye\.co/i, 984 985 // AI chat / chatbot / web assistant widgets 986 /aichatbotweb\.revenuewell\.com/i, 987 /web-assistant\.tensorlinks\.app/i, 988 /tensorlinks\.app/i, 989 /api\.heygent\.ai/i, 990 /lexicon-prod\.apigateway\.co/i, 991 /conversation-prod\.apigateway\.co/i, 992 /widget\.osam\.one/i, 993 994 // Local marketing / lead widgets 995 /www\.localmarketingmanager\.com/i, 996 /localmarketingmanager\.com/i, 997 998 // Health / patient commerce / referral widgets 999 /assets\.fullscript\.com/i, 1000 /www\.opencare\.com/i, 1001 /opencare\.com/i 1002 // END EXTENDED LIST --- 1003 ]; 1004 1005 1006 if (!DI_CONSENT_MODE_V2) { 1007 blockUrls.push( 1008 /googletagmanager\.com\/gtag\/js/i, 1009 /googletagmanager\.com\/gtm\.js/i 1010 ); 1011 } 1012 1013 /* 1014 First-party analytics websocket. 1015 */ 1016 var socketPatterns = [ 1017 // /^wss:\/\/socket\.di-api\.com\/analytics/i 1018 ]; 1019 1020 function matchesPattern(url, patterns) { 1021 if (!url) return false;
1022 1023 var s = String(url); 1024 1025 return patterns.some(function (r) { 1026 return r.test(s); 1027 }); 1028 } 1029 1030 function shouldBlockUrl(url) { 1031 return matchesPattern(url, beaconPatterns); 1032 } 1033 1034 function shouldBlockScript(url) { 1035 return matchesPattern(url, blockUrls); 1036 } 1037 1038 function shouldHoldSocket(url) { 1039 return matchesPattern(url, socketPatterns); 1040 } 1041 1042 function holdScript(src, node, parent, method, refNode) { 1043 if (!src) return; 1044 1045 for (var i = 0; i < heldScripts.length; i++) { 1046 if (heldScripts[i].src === src) return; 1047 } 1048 1049 heldScripts.push({ 1050 src: src, 1051 node: node || null, 1052 parent: parent || null, 1053 method: method || 'appendChild', 1054 refNode: refNode || null 1055 }); 1056 1057 _logBlocked('[Privacy] Held tracker script until consent â', src); 1058 } 1059 1060 function holdCall(type, args) { 1061 heldCalls.push({ 1062 type: type, 1063 args: Array.prototype.slice.call(args) 1064 }); 1065 1066 _logBlocked('[Privacy] Held tracker call until consent â', type); 1067 } 1068 1069 function holdSocket(url, protocols) { 1070 for (var i = 0; i < heldSockets.length; i++) { 1071 if (heldSockets[i].url === url) return; 1072 } 1073 1074 heldSockets.push({ 1075 url: url, 1076 protocols: protocols 1077 }); 1078 1079 _logBlocked('[Privacy] Held analytics WebSocket until consent â', url); 1080 } 1081 1082 function blockOrHoldScript(src, node, parent, method, refNode) { 1083 if (!shouldBlockScript(src)) return false; 1084 1085 if (shouldHold()) { 1086 holdScript(src, node, parent, method, refNode); 1087 return true; 1088 } 1089 1090 if (shouldDrop()) { 1091 _logBlocked('[Privacy] Blocked tracker script â', src); 1092 return true; 1093 } 1094 1095 return false; 1096 } 1097 1098 function blockOrHoldCall(type, args) { 1099 if (trackingAllowed()) return false; 1100 1101 if (shouldHold()) { 1102 holdCall(type, args); 1103 return true; 1104 } 1105 1106 if (shouldDrop()) { 1107 _logBlocked('[Privacy] Blocked tracker call â', type); 1108 return true; 1109 } 1110 1111 return false; 1112 } 1113 1114 var origCreateElement = document.createElement; 1115 var proto = Element.prototype; 1116 var origAppend = proto.appendChild; 1117 var origInsert = proto.insertBefore; 1118 var origAppendMethod = proto.append; 1119 var origPrependMethod = proto.prepend; 1120 var OrigWebSocket = window.WebSocket || null; 1121 1122 function cloneScriptForRelease(original) { 1123 var clone = origCreateElement.call(document, 'script'); 1124 1125 for (var i = 0; i < original.attributes.length; i++) { 1126 var attr = original.attributes[i]; 1127 1128 if (attr.name === 'src') { 1129 continue; 1130 } 1131 1132 try { 1133 clone.setAttribute(attr.name, attr.value); 1134 } catch (e) { } 1135 } 1136 1137 clone.src = original.src; 1138 1139 return clone; 1140 } 1141 1142 function holdStaticScriptTag(script) { 1143 if (!script || !script.src) return false; 1144 1145 var src = script.src; 1146 1147 if (!shouldBlockScript(src)) { 1148 return false; 1149 } 1150 1151 for (var i = 0; i < heldScripts.length; i++) { 1152 if (heldScripts[i].src === src) { 1153 return true; 1154 } 1155 } 1156 1157 if (shouldHold()) { 1158 heldScripts.push({ 1159 src: src, 1160 node: cloneScriptForRelease(script), 1161 parent: document.head || document.documentElement, 1162 method: 'appendChild', 1163 refNode: null 1164 }); 1165 1166 try { 1167 if (script.parentNode) { 1168 script.parentNode.removeChild(script); 1169 } 1170 } catch (e) { } 1171 1172 _logBlocked('[Privacy] Held static tracker script until consent â', src); 1173 return true; 1174 } 1175 1176 if (shouldDrop()) { 1177 try { 1178 if (script.parentNode) { 1179 script.parentNode.removeChild(script); 1180 } 1181 } catch (e) { } 1182 1183 _logBlocked('[Privacy] Removed static tracker script â', src); 1184 return true; 1185 } 1186 1187 return false; 1188 } 1189 1190 function scanStaticTrackerScripts() { 1191 var scripts = document.querySelectorAll('script[src]'); 1192 1193 for (var i = 0; i < scripts.length; i++) { 1194 holdStaticScriptTag(scripts[i]); 1195 } 1196 } 1197 1198 function restoreDataLayerPush() { 1199 window.dataLayer = window.dataLayer || []; 1200 1201 try { 1202 window.dataLayer.push = Array.prototype.push; 1203 } catch (e) { } 1204 } 1205 1206 function releaseHeldScripts() { 1207 var scripts = heldScripts.slice(); 1208 heldScripts = []; 1209 1210 for (var i = 0; i < scripts.length; i++) { 1211 var item = scripts[i]; 1212 1213 try { 1214 var node = item.node;
1215 1216 if (!node) { 1217 node = origCreateElement.call(document, 'script'); 1218 node.src = item.src; 1219 node.async = true; 1220 } 1221 1222 if (item.method === 'insertBefore' && item.parent && item.refNode) { 1223 origInsert.call(item.parent, node, item.refNode); 1224 } else if (item.parent) { 1225 origAppend.call(item.parent, node); 1226 } else { 1227 origAppend.call(document.head || document.documentElement, node); 1228 } 1229 1230 _logBlocked('[Privacy] Released tracker script after consent â', item.src); 1231 } catch (e) { 1232 _logBlocked('[Privacy] Failed to release tracker script â', item.src, e); 1233 } 1234 } 1235 } 1236 1237 function releaseHeldSockets() { 1238 var sockets = heldSockets.slice(); 1239 heldSockets = []; 1240 1241 if (!OrigWebSocket) return; 1242 1243 for (var i = 0; i < sockets.length; i++) { 1244 try { 1245 if (sockets[i].protocols !== undefined) { 1246 new OrigWebSocket(sockets[i].url, sockets[i].protocols); 1247 } else { 1248 new OrigWebSocket(sockets[i].url); 1249 } 1250 1251 _logBlocked('[Privacy] Released analytics WebSocket after consent â', sockets[i].url); 1252 } catch (e) { 1253 _logBlocked('[Privacy] Failed to release analytics WebSocket â', sockets[i].url, e); 1254 } 1255 } 1256 } 1257 1258 function replayHeldCalls() { 1259 var calls = heldCalls.slice(); 1260 heldCalls = []; 1261 1262 restoreDataLayerPush(); 1263 1264 for (var i = 0; i < calls.length; i++) { 1265 var item = calls[i]; 1266 1267 try { 1268 if (item.type === 'dataLayer.push') { 1269 Array.prototype.push.apply(window.dataLayer, item.args); 1270 continue; 1271 } 1272 1273 if (item.type === 'gtag' || item.type === 'google_tracking.gtag') { 1274 window.dataLayer = window.dataLayer || []; 1275 Array.prototype.push.call(window.dataLayer, item.args); 1276 continue; 1277 } 1278 1279 if ((item.type === 'fbq' || item.type === 'facebook_tracking.fbq') && typeof window.fbq === 'function') { 1280 window.fbq.apply(window, item.args); 1281 continue; 1282 } 1283 1284 if (item.type === 'analytics.track' && window.analytics && typeof window.analytics.track === 'function') { 1285 window.analytics.track.apply(window.analytics, item.args); 1286 continue; 1287 } 1288 1289 if (item.type === 'analytics.identify' && window.analytics && typeof window.analytics.identify === 'function') { 1290 window.analytics.identify.apply(window.analytics, item.args); 1291 continue; 1292 } 1293 1294 if (item.type === 'analytics.page' && window.analytics && typeof window.analytics.page === 'function') { 1295 window.analytics.page.apply(window.analytics, item.args); 1296 continue; 1297 } 1298 1299 if (item.type === 'mixpanel.track' && window.mixpanel && typeof window.mixpanel.track === 'function') { 1300 window.mixpanel.track.apply(window.mixpanel, item.args); 1301 continue; 1302 } 1303 1304 if (item.type === 'amplitude.logEvent' && window.amplitude && typeof window.amplitude.logEvent === 'function') { 1305 window.amplitude.logEvent.apply(window.amplitude, item.args); 1306 continue; 1307 } 1308 1309 if (item.type === 'plausible' && typeof window.plausible === 'function') { 1310 window.plausible.apply(window, item.args); 1311 continue; 1312 } 1313 } catch (e) { 1314 _logBlocked('[Privacy] Failed to replay tracker call â', item.type, e); 1315 } 1316 } 1317 } 1318 1319 function acceptTracking() { 1320 if (gpcEnabled) { 1321 _logBlocked('[Privacy] Consent grant ignored because GPC/DNT is enabled.'); 1322 return; 1323 } 1324 1325 consent = 'granted'; 1326 setStoredConsent('granted'); 1327 1328 // *** ADDED â Consent Mode v2 update signal *** 1329 // Use the real gtag() function (defined before the IIFE) so gtag.js 1330 // registers consent via its API. Must fire before releaseHeldScripts 1331 // so GA loads already knowing consent is granted. 1332 try { 1333 if (typeof window.gtag === 'function') { 1334 console.log('[Privacy] Updating Consent Mode v2 signals for granted consent.'); 1335 window.gtag('consent', 'update', { 1336 analytics_storage: 'granted', 1337 ad_storage: 'granted', 1338 ad_user_data: 'granted', 1339 ad_personalization: 'granted' 1340 }); 1341 } 1342 } catch (e) { } 1343 // *** END ADDED â Consent Mode v2 update signal *** 1344 1345 restoreDataLayerPush(); 1346 releaseHeldScripts(); 1347 releaseHeldSockets(); 1348 1349 setTimeout(function () { 1350 replayHeldCalls(); 1351 }, 800); 1352 1353 _logBlocked('[Privacy] Tracking accepted. Held trackers released.'); 1354 } 1355 1356 function denyTracking() { 1357 consent = 'denied'; 1358 setStoredConsent('denied'); 1359 1360 heldScripts = []; 1361 heldCalls = []; 1362 heldSockets = []; 1363 1364 _logBlocked('[Privacy] Tracking denied. Held trackers discarded.'); 1365 } 1366 1367 var privacy = { 1368 gpcEnabled: gpcEnabled, 1369 1370 get consent() { 1371 return getConsentState(); 1372 }, 1373 1374 get trackingAllowed() { 1375 return trackingAllowed(); 1376 }, 1377 1378 get heldScripts() { 1379 return heldScripts.slice(); 1380 }, 1381 1382 get heldCalls() { 1383 return heldCalls.slice(); 1384 }, 1385 1386 get heldSockets() { 1387 return heldSockets.slice(); 1388 }, 1389 1390 setConsent: function (value) { 1391 if (value === 'granted') { 1392 acceptTracking(); 1393 return; 1394 } 1395 1396 if (value === 'denied') { 1397 denyTracking(); 1398 } 1399 }, 1400 1401 accept: acceptTracking, 1402 deny: denyTracking, 1403 release: acceptTracking, 1404 1405 reset: function () { 1406 clearStoredConsent(); 1407 consent = null; 1408 heldScripts = []; 1409 heldCalls = []; 1410 heldSockets = []; 1411 } 1412 }; 1413 1414 window.DiPrivacy = privacy; 1415 1416 // *** ADDED â Early return for granted users *** 1417 // If user has already granted consent, skip installing all the stubs and blockers. 1418 // The Consent Mode v2 default + update was already pushed via the real gtag() 1419 // before the IIFE started, so GTM/GA will read granted state on init. 1420 if (trackingAllowed()) { 1421 return; 1422 } 1423 // *** END ADDED â Early return for granted users *** 1424 1425 console.log('[Privacy] Tracking is held/blocked. Consent state â', getConsentState()); 1426 1427 // sendBeacon is commonly used for analytics hits and page-unload beacons. 1428 if (navigator.sendBeacon) { 1429 var origBeacon = navigator.sendBeacon; 1430 1431 navigator.sendBeacon = function (url, data) { 1432 if (!trackingAllowed() && shouldBlockUrl(url)) { 1433 _logBlocked('[Privacy] Blocked sendBeacon â', url); 1434 return true; 1435 } 1436 1437 return origBeacon.apply(this, arguments); 1438 }; 1439 } 1440
1441 // fetch() is commonly used by modern analytics, CDPs, pixels, and session replay tools. 1442 if (window.fetch) { 1443 var origFetch = window.fetch; 1444 1445 window.fetch = function (input, init) { 1446 var url = (typeof input === 'string') ? input : (input && input.url); 1447 1448 if (!trackingAllowed() && shouldBlockUrl(url)) { 1449 _logBlocked('[Privacy] Blocked fetch â', url); 1450 return Promise.resolve(new Response(null, { status: 204 })); 1451 } 1452 1453 return origFetch.apply(this, arguments).catch(function () { 1454 return new Response(null, { status: 204 }); 1455 }); 1456 }; 1457 } 1458 1459 // XHR is still used by older analytics and marketing scripts. 1460 if (window.XMLHttpRequest) { 1461 var OrigXHR = XMLHttpRequest; 1462 1463 function WrappedXHR() { 1464 var xhr = new OrigXHR(); 1465 var _open = xhr.open; 1466 var _send = xhr.send; 1467 1468 xhr.open = function (method, url) { 1469 xhr._blockedUrl = url; 1470 xhr._blockThis = !trackingAllowed() && shouldBlockUrl(url); 1471 return _open.apply(xhr, arguments); 1472 }; 1473 1474 xhr.send = function () { 1475 if (xhr._blockThis) { 1476 _logBlocked('[Privacy] Blocked XHR â', xhr._blockedUrl); 1477 1478 try { 1479 xhr.abort(); 1480 } catch (e) { } 1481 1482 return; 1483 } 1484 1485 return _send.apply(xhr, arguments); 1486 }; 1487 1488 return xhr; 1489 } 1490 1491 WrappedXHR.prototype = OrigXHR.prototype; 1492 window.XMLHttpRequest = WrappedXHR; 1493 } 1494 1495 // Some trackers still fire using image beacon URLs. 1496 if (window.HTMLImageElement) { 1497 var imgProto = HTMLImageElement.prototype; 1498 var desc = Object.getOwnPropertyDescriptor(imgProto, 'src'); 1499 1500 if (desc && desc.set) { 1501 Object.defineProperty(imgProto, 'src', { 1502 get: desc.get, 1503 set: function (url) { 1504 if (!trackingAllowed() && shouldBlockUrl(url)) { 1505 _logBlocked('[Privacy] Blocked Image â', url); 1506 return url; 1507 } 1508 1509 return desc.set.call(this, url); 1510 }, 1511 configurable: true, 1512 enumerable: true 1513 }); 1514 } 1515 } 1516 1517 // Consent-gated WebSockets. Only matching socketPatterns are held before consent. 1518 if (OrigWebSocket) { 1519 window.WebSocket = function (url, protocols) { 1520 if (!trackingAllowed() && shouldHoldSocket(url)) { 1521 if (shouldHold()) { 1522 holdSocket(url, protocols); 1523 } else { 1524 _logBlocked('[Privacy] Blocked analytics WebSocket â', url); 1525 } 1526 1527 return { 1528 close: function () { }, 1529 send: function () { }, 1530 addEventListener: function () { }, 1531 removeEventListener: function () { }, 1532 dispatchEvent: function () { return false; }, 1533 readyState: 3, 1534 bufferedAmount: 0, 1535 url: String(url || '') 1536 }; 1537 } 1538 1539 if (protocols !== undefined) { 1540 return new OrigWebSocket(url, protocols); 1541 } 1542 1543 return new OrigWebSocket(url); 1544 }; 1545 1546 window.WebSocket.prototype = OrigWebSocket.prototype; 1547 } 1548 1549 // jQuery.getScript() is used by many older site snippets to load trackers dynamically. 1550 if (window.jQuery && window.jQuery.getScript) { 1551 var $ = window.jQuery; 1552 var origGetScript = $.getScript; 1553 1554 $.getScript = function (url, cb) { 1555 if (blockOrHoldScript(url, null, null, 'jqueryGetScript', null)) { 1556 return; 1557 } 1558 1559 return origGetScript.apply(this, arguments); 1560 }; 1561 } 1562 1563 // Dynamically inserted
1563<script src> trackers are held or blocked. 1564 (function () { 1565 proto.appendChild = function (node) { 1566 if (node && node.tagName === 'SCRIPT') { 1567 var src = node.src || node.getAttribute('src'); 1568 1569 if (blockOrHoldScript(src, node, this, 'appendChild', null)) { 1570 return node; 1571 } 1572 } 1573 1574 return origAppend.call(this, node); 1575 }; 1576 1577 proto.insertBefore = function (node, ref) { 1578 if (node && node.tagName === 'SCRIPT') { 1579 var src = node.src || node.getAttribute('src'); 1580 1581 if (blockOrHoldScript(src, node, this, 'insertBefore', ref)) { 1582 return node; 1583 } 1584 } 1585 1586 return origInsert.call(this, node, ref); 1587 }; 1588 1589 if (origAppendMethod) { 1590 proto.append = function () { 1591 for (var i = 0; i < arguments.length; i++) { 1592 var node = arguments[i]; 1593 1594 if (node && node.tagName === 'SCRIPT') { 1595 var src = node.src || node.getAttribute('src'); 1596 1597 if (blockOrHoldScript(src, node, this, 'appendChild', null)) { 1598 return; 1599 } 1600 } 1601 } 1602 1603 return origAppendMethod.apply(this, arguments); 1604 }; 1605 } 1606 1607 if (origPrependMethod) { 1608 proto.prepend = function () { 1609 for (var i = 0; i < arguments.length; i++) { 1610 var node = arguments[i]; 1611 1612 if (node && node.tagName === 'SCRIPT') { 1613 var src = node.src || node.getAttribute('src'); 1614 1615 if (blockOrHoldScript(src, node, this, 'appendChild', null)) { 1616 return; 1617 } 1618 } 1619 } 1620 1621 return origPrependMethod.apply(this, arguments); 1622 }; 1623 } 1624 })(); 1625 1626 // Static/parser-inserted tracker scripts are scanned separately. 1627 // This helps catch hard-coded
1627<script src="..."> tags that are not loaded through appendChild/insertBefore. 1628 scanStaticTrackerScripts(); 1629 1630 if (document.readyState === 'loading') { 1631 document.addEventListener('DOMContentLoaded', scanStaticTrackerScripts); 1632 } 1633 1634 // Watch for tracker scripts added later by widgets or inline code. 1635 // This catches scripts that are inserted into the page after our initial scan. 1636 if (window.MutationObserver) { 1637 try { 1638 var trackerScriptObserver = new MutationObserver(function (mutations) { 1639 for (var i = 0; i < mutations.length; i++) { 1640 var added = mutations[i].addedNodes; 1641 1642 for (var j = 0; j < added.length; j++) { 1643 var node = added[j]; 1644 1645 if (node && node.tagName === 'SCRIPT') { 1646 holdStaticScriptTag(node); 1647 } 1648 1649 if (node && node.querySelectorAll) { 1650 var scripts = node.querySelectorAll('script[src]'); 1651 1652 for (var k = 0; k < scripts.length; k++) { 1653 holdStaticScriptTag(scripts[k]); 1654 } 1655 } 1656 } 1657 } 1658 }); 1659 1660 trackerScriptObserver.observe(document.documentElement, { 1661 childList: true, 1662 subtree: true 1663 }); 1664 } catch (e) { } 1665 } 1666 1667 function trackerStub(name) { 1668 return function () { 1669 blockOrHoldCall(name, arguments); 1670 }; 1671 } 1672 1673 /* 1674 Common tracker APIs. 1675 1676 These stubs prevent known trackers from firing before consent. 1677 When consent is pending, calls are held. When consent is denied or GPC/DNT 1678 is active, calls are discarded. When accepted, held calls are replayed. 1679 */ 1680 window.dataLayer = window.dataLayer || []; 1681 1682 window.dataLayer.push = function () { 1683 // *** ADDED â Consent Mode v2 / GTM / gtag bypass *** 1684 // Allow consent signals, GTM internals, and gtag config/js/set/get 1685 // through unconditionally. GTM needs unobstructed dataLayer.push 1686 // to initialize itself and read consent state. Consent signals 1687 // must never be held or dropped. 1688 var arg = arguments[0]; 1689 1690 // Always allow consent signals through â Consent Mode v2 must not be gated. 1691 // gtag('consent', 'default'|'update', {...}) arrives as arguments where arg[0] === 'consent'. 1692 var isConsentCommand = arg && ( 1693 arg[0] === 'consent' || 1694 arg['0'] === 'consent' 1695 ); 1696 1697 // Always allow GTM internal events through (gtm.start, gtm.js, gtm.dom, gtm.load, etc.) 1698 var isGtmInternal = arg && typeof arg === 'object' && !Array.isArray(arg) && ( 1699 'gtm.start' in arg || 1700 'gtm.uniqueEventId' in arg || 1701 (arg.event && typeof arg.event === 'string' && arg.event.indexOf('gtm.') === 0) 1702 ); 1703 1704 // Allow gtag config/js/set/get commands so gtag.js can initialize properly. 1705 // gtag('js', new Date()) and gtag('config', 'G-XXX') need to reach dataLayer. 1706 var isGtagInternal = arg && ( 1707 arg[0] === 'js' || 1708 arg[0] === 'config' || 1709 arg[0] === 'set' || 1710 arg[0] === 'get' || 1711 arg['0'] === 'js' || 1712 arg['0'] === 'config' || 1713 arg['0'] === 'set' || 1714 arg['0'] === 'get' 1715 ); 1716 1717 if (isConsentCommand || isGtmInternal || isGtagInternal) { 1718 return Array.prototype.push.apply(window.dataLayer, arguments); 1719 } 1720 // *** END ADDED â Consent Mode v2 / GTM / gtag bypass *** 1721 1722 if (blockOrHoldCall('dataLayer.push', arguments)) { 1723 return; 1724 } 1725 1726 return Array.prototype.push.apply(window.dataLayer, arguments); 1727 }; 1728 1729 // *** ADDED â gtag stubs intentionally not installed *** 1730 // NOTE: window.gtag and window.google_tracking.gtag were defined as real 1731 // functions BEFORE this IIFE ran (in the Consent Mode v2 bootstrap block). 1732 // We do NOT overwrite them with stubs here â they need to remain real so 1733 // that gtag.js can register consent via its API (which is what produces 1734 // pscdl=denied/granted on hits instead of pscdl=noapi). 1735 // 1736 // Tracking gating for gtag still happens via the wrapped dataLayer.push 1737 // above: consent/gtm/gtag-internal commands pass through, everything else 1738 // (e.g. gtag('event', 'conversion', {...})) goes through blockOrHoldCall. 1739 // *** END ADDED â gtag stubs intentionally not installed *** 1740 1741 window.fbq = trackerStub('fbq'); 1742 window.facebook_tracking = window.facebook_tracking || {}; 1743 window.facebook_tracking.fbq = trackerStub('facebook_tracking.fbq'); 1744 1745 window.FB = window.FB || { AppEvents: {} }; 1746 window.FB.AppEvents.logEvent = trackerStub('FB.AppEvents.logEvent'); 1747 window.FB.AppEvents.logPurchase = trackerStub('FB.AppEvents.logPurchase'); 1748 1749 window.twttr = window.twttr || {}; 1750 window.twttr.track = trackerStub('twttr.track'); 1751 window.twttr.load = trackerStub('twttr.load'); 1752 1753 window._linkedin_data_partner_ids = []; 1754 window.linkedinData = trackerStub('linkedinData'); 1755 1756 window.pintrk = trackerStub('pintrk'); 1757 window.ttq = trackerStub('ttq'); 1758 window.snaptr = trackerStub('snaptr'); 1759 window.hj = trackerStub('hj'); 1760 1761 window.mixpanel = window.mixpanel || {}; 1762 window.mixpanel.track = trackerStub('mixpanel.track'); 1763 window.mixpanel.identify = trackerStub('mixpanel.identify'); 1764 window.mixpanel.register = trackerStub('mixpanel.register'); 1765 1766 window.amplitude = window.amplitude || {}; 1767 window.amplitude.logEvent = trackerStub('amplitude.logEvent'); 1768 window.amplitude.setUserProperties = trackerStub('amplitude.setUserProperties'); 1769 1770 window.analytics = window.analytics || {}; 1771 window.analytics.track = trackerStub('analytics.track'); 1772 window.analytics.identify = trackerStub('analytics.identify'); 1773 window.analytics.page = trackerStub('analytics.page'); 1774 1775 window.plausible = trackerStub('plausible'); 1776 1777 })(window, document); 1778</script>
vendor: 1 bytes, line 1778
1778
1779<script> 1780 (function () { 1781 1782 // Set window.privacy_allow = { disabled: true } before this script to suppress the banner entirely 1783 var privacy_allow = Object.assign({ disabled: false }, window.privacy_allow || {}); 1784 window.privacy_allow = privacy_allow; 1785 1786 // Per-site override API â call before or after this script: 1787 // privacy_config.set('variant', 'manage'); 1788 if (!window.privacy_config || typeof window.privacy_config !== 'object') window.privacy_config = {}; 1789 Object.defineProperty(window.privacy_config, 'set', { 1790 enumerable: false, configurable: true, 1791 value: function (key, val) { window.privacy_config[key] = val; } 1792 }); 1793 1794 // variant: 'simple' â Decline / Accept All banner (no modal) 1795 // variant: 'manage' â Manage / Accept All banner + preferences modal 1796 var privacy_config_defaults = { 1797 primaryColor: '#1e3a5f', 1798 bgColor: '#ffffff', 1799 textColor: '#374151', 1800 // fontFamily: 'inherit', 1801 fontFamily: 'system-ui, -apple-system, "Segoe UI", Roboto, sans-serif', 1802 buttonRadius: '4px', 1803 privacyPolicyUrl: '/privacy/', 1804 variant: 'manage', 1805 bannerText: 'We use cookies and tracking technologies to improve your browsing experience on our website, to show you personalized content, and to analyze our website traffic. Read our [privacy policy] to learn more.', 1806 declineLabel: 'Decline', 1807 manageLabel: 'Manage', 1808 acceptLabel: 'Accept All', 1809 modalTitle: 'Your tracking preferences.', 1810 modalDesc: 'We use tracking technologies, including scripts that may not set cookies, to understand how you use our site and deliver relevant content. You can learn more in our', 1811 submitLabel: 'Submit Preferences', 1812 rejectLabel: 'Reject all', 1813 cancelLabel: 'Cancel', 1814 categories: [ 1815 { 1816 id: 'tracking', 1817 label: 'Tracking & Analytics', 1818 description: 'Scripts and technologies that help us understand how visitors interact with our site, measure performance, and serve relevant content and ads.', 1819 defaultOn: true, 1820 } 1821 ] 1822 }; 1823 var privacy_config; 1824 1825 // âââ helpers âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ 1826 1827 function privacy_cb_el(tag, props) { 1828 var node = document.createElement(tag); 1829 if (props) Object.keys(props).forEach(function (k) { node[k] = props[k]; }); 1830 return node; 1831 } 1832 1833 function privacy_cb_removeBanner() { 1834 var el = document.getElementById('di-consent-banner'); 1835 if (el) el.parentNode.removeChild(el); 1836 } 1837 1838 function privacy_cb_removeModal() { 1839 var el = document.getElementById('di-cookie-pref-dialog'); 1840 if (!el) return; 1841 try { el.close(); } catch (e) { } 1842 } 1843 1844 function privacy_cb_accept() { 1845 try { if (window.DiPrivacy && typeof window.DiPrivacy.accept === 'function') window.DiPrivacy.accept(); } catch (e) { } 1846 privacy_cb_removeModal(); privacy_cb_removeBanner(); 1847 } 1848 1849 function privacy_cb_reject() { 1850 try { if (window.DiPrivacy && typeof window.DiPrivacy.deny === 'function') window.DiPrivacy.deny(); } catch (e) { } 1851 privacy_cb_removeModal(); privacy_cb_removeBanner(); 1852 } 1853 1854 function privacy_cb_rejectAll() { 1855 privacy_config.categories.forEach(function (cat) { 1856 var t = document.getElementById('di-cm-' + cat.id + '-toggle'); 1857 if (t) t.checked = false; 1858 }); 1859 privacy_cb_reject(); 1860 } 1861 1862 function privacy_cb_savePreferences() { 1863 var anyOff = privacy_config.categories.some(function (cat) { 1864 var t = document.getElementById('di-cm-' + cat.id + '-toggle'); 1865 return t && !t.checked; 1866 }); 1867 anyOff ? privacy_cb_reject() : privacy_cb_accept(); 1868 } 1869 1870 // âââ styles ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ 1871 1872 function privacy_cb_injectStyles() { 1873 console.log('Injecting consent banner styles...'); 1874 var existing = document.getElementById('di-consent-banner-styles'); 1875 if (existing) existing.parentNode.removeChild(existing); 1876 var style = document.createElement('style'); 1877 style.id = 'di-consent-banner-styles'; 1878 var css = ''; 1879 1880 // css += '#di-consent-banner{position:fixed;bottom:0;left:0;right:0;z-index:9999999999;background:var(--di-cb-bg);box-shadow:0 -4px 16px rgba(0,0,0,.10);padding:20px 24px;font-family:var(--di-cb-font);box-sizing:border-box;}'; 1881 css += '#di-consent-banner{position:fixed;bottom:0;left:0;right:0;z-index:2147483647;background:var(--di-cb-bg);box-shadow:0 -4px 16px rgba(0,0,0,.10);padding:20px 24px;box-sizing:border-box;}'; 1882 css += '#di-consent-banner,#di-consent-banner *{font-family:var(--di-cb-font,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif)!important;letter-spacing:normal!important;}'; 1883 css += '#di-consent-banner .di-cb__text{font-size:14px!important;line-height:1.5!important;color:var(--di-cb-text);margin:0;}'; 1884 css += '@media(max-width:420px){#di-consent-banner{min-height:270px;}}'; 1885 css += '#di-consent-banner .di-cb__inner{display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:32px;max-width:1280px;margin:0 auto;}'; 1886 css += '@media(min-width:640px){#di-consent-banner .di-cb__inner{flex-direction:row;}}'; 1887 css += '#di-consent-banner .di-cb__text{font-size:14px;color:var(--di-cb-text);margin:0;}'; 1888 css += '#di-consent-banner .di-cb__learn{color:var(--di-cb-primary);text-decoration:underline;transition:opacity .2s ease;}'; 1889 css += '#di-consent-banner .di-cb__learn:hover{opacity:.8;}'; 1890 css += '#di-consent-banner .di-cb__actions{display:flex;gap:8px!important;flex-shrink:0;}'; 1891 css += '@media(max-width:639px){#di-consent-banner .di-cb__actions{width:100%;flex-direction:column-reverse;}}'; 1892 css += '#di-consent-banner .di-cb__btn{cursor:pointer;font-size:16px;font-weight:500;padding:12px 24px;border-radius:var(--di-cb-radius);border:1px solid transparent;line-height:1;white-space:nowrap;transition:background .2s ease,color .2s ease,opacity .2s ease;}'; 1893 css += '#di-consent-banner .di-cb__btn--secondary{background:transparent;border-color:var(--di-cb-primary);color:var(--di-cb-primary);}'; 1894 css += '#di-consent-banner .di-cb__btn--secondary:hover{background:var(--di-cb-primary);color:#fff;}'; 1895 css += '#di-consent-banner .di-cb__btn--primary{background:var(--di-cb-primary);border-color:var(--di-cb-primary);color:#fff;}'; 1896 css += '#di-consent-banner .di-cb__btn--primary:hover{opacity:.88;}'; 1897 1898 css += '@keyframes di-cm-fadein{from{opacity:0}
1898to{opacity:1}}'; 1899 css += '@keyframes di-cm-slidein{from{transform:translateY(10px);opacity:0}to{transform:translateY(0);opacity:1}}'; 1900 css += '#di-cookie-pref-dialog{border:none;padding:0;margin:auto;background:#fff;border-radius:10px;box-shadow:0 8px 40px rgba(0,0,0,.22);max-width:480px;width:calc(100vw - 32px);box-sizing:border-box;overflow:hidden;font-family:var(--di-cb-font);animation:di-cm-slidein .2s ease;}'; 1901 css += '#di-cookie-pref-dialog::backdrop{background:rgba(0,0,0,.45);animation:di-cm-fadein .18s ease;}'; 1902 css += '#di-cookie-pref-dialog .di-cm__header{padding:22px 24px 0;}'; 1903 css += '#di-cookie-pref-dialog .di-cm__title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;}'; 1904 css += '#di-cookie-pref-dialog .di-cm__title{font-size:19px;font-weight:700;color:#111827;margin:0 0 8px;line-height:1.3;}'; 1905 css += '#di-cookie-pref-dialog .di-cm__close{background:none;border:none;cursor:pointer;color:#9ca3af;font-size:22px;line-height:1;padding:0;flex-shrink:0;margin-top:2px;transition:color .15s ease;}'; 1906 css += '#di-cookie-pref-dialog .di-cm__close:hover{color:#374151;}'; 1907 css += '#di-cookie-pref-dialog .di-cm__desc{font-size:13px;color:#6b7280;margin:0;line-height:1.55;padding:0 24px;}'; 1908 css += '#di-cookie-pref-dialog .di-cm__desc a{color:var(--di-cb-primary);text-decoration:underline;}'; 1909 css += '#di-cookie-pref-dialog .di-cm__rows{margin-top:16px;border-top:1px solid #f3f4f6;}'; 1910 css += '#di-cookie-pref-dialog .di-cm__item{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px 24px;border-bottom:1px solid #f3f4f6;}'; 1911 css += '#di-cookie-pref-dialog .di-cm__item-info{flex:1;}'; 1912 css += '#di-cookie-pref-dialog .di-cm__item-label{font-size:14px;font-weight:600;color:#111827;margin:0 0 4px;}'; 1913 css += '#di-cookie-pref-dialog .di-cm__item-desc{font-size:12px;color:#6b7280;margin:0;line-height:1.5;}'; 1914 css += '#di-cookie-pref-dialog .di-cm__toggle-wrap{flex-shrink:0;position:relative;width:44px;height:24px;margin-top:2px;}'; 1915 css += '#di-cookie-pref-dialog .di-cm__toggle-wrap input{opacity:0;width:0;height:0;position:absolute;}'; 1916 css += '#di-cookie-pref-dialog .di-cm__toggle-track{position:absolute;inset:0;background:#d1d5db;border-radius:999px;cursor:pointer;transition:background .2s ease;}'; 1917 css += '#di-cookie-pref-dialog .di-cm__toggle-track::after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.2);transition:transform .2s ease;}'; 1918 css += '#di-cookie-pref-dialog .di-cm__toggle-wrap input:checked+.di-cm__toggle-track{background:var(--di-cb-primary);}'; 1919 css += '#di-cookie-pref-dialog .di-cm__toggle-wrap input:checked+.di-cm__toggle-track::after{transform:translateX(20px);}'; 1920 css += '#di-cookie-pref-dialog .di-cm__footer{display:flex;gap:8px;padding:16px 24px;flex-wrap:wrap;}'; 1921 css += '#di-cookie-pref-dialog .di-cm__btn{cursor:pointer;font-size:14px;font-weight:500;padding:10px 16px;border-radius:var(--di-cb-radius);border:1px solid transparent;line-height:1;white-space:nowrap;flex:1;transition:background .2s ease,color .2s ease,opacity .2s ease;}'; 1922 css += '#di-cookie-pref-dialog .di-cm__btn--cancel{background:transparent;border-color:#d1d5db;color:#374151;}'; 1923 css += '#di-cookie-pref-dialog .di-cm__btn--cancel:hover{background:#f9fafb;}'; 1924 css += '#di-cookie-pref-dialog .di-cm__btn--reject{background:transparent;border-color:var(--di-cb-primary);color:var(--di-cb-primary);}'; 1925 css += '#di-cookie-pref-dialog .di-cm__btn--reject:hover{background:var(--di-cb-primary);color:#fff;}'; 1926 css += '#di-cookie-pref-dialog .di-cm__btn--submit{background:var(--di-cb-primary);border-color:var(--di-cb-primary);color:#fff;}'; 1927 css += '#di-cookie-pref-dialog .di-cm__btn--submit:hover{opacity:.88;}'; 1928 css += '#di-cookie-pref-dialog .di-cm__policy{padding:0 24px 16px;font-size:11px;color:#9ca3af;}'; 1929 css += '#di-cookie-pref-dialog .di-cm__policy a{color:#9ca3af;text-decoration:underline;}'; 1930 css += '#di-cookie-pref-dialog .di-cm__policy a:hover{color:#6b7280;}'; 1931 1932 style.textContent = css; 1933 document.head.appendChild(style); 1934 } 1935 1936 // âââ modal âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ 1937 1938 function privacy_cb_createDialog() { 1939 1940 var dialog = privacy_cb_el('dialog', { id: 'di-cookie-pref-dialog' }); 1941 dialog.style.setProperty('--di-cb-primary', privacy_config.primaryColor); 1942 dialog.style.setProperty('--di-cb-radius', privacy_config.buttonRadius); 1943 dialog.style.setProperty('--di-cb-font', privacy_config.fontFamily); 1944 1945 dialog.addEventListener('click', function (e) { 1946 var r = dialog.getBoundingClientRect(); 1947 if (e.clientX < r.left || e.clientX > r.right || e.clientY < r.top || e.clientY > r.bottom) privacy_cb_removeModal(); 1948 }); 1949 dialog.addEventListener('cancel', function (e) { e.preventDefault(); privacy_cb_removeModal(); }); 1950 1951 var titleRow = privacy_cb_el('div', { className: 'di-cm__title-row' }); 1952 var titleEl = privacy_cb_el('p', { className: 'di-cm__title', textContent: privacy_config.modalTitle }); 1953 var closeBtn = privacy_cb_el('button', { className: 'di-cm__close', type: 'button', innerHTML: 'Ã' }); 1954 closeBtn.setAttribute('aria-label', 'Close'); 1955 closeBtn.addEventListener('click', privacy_cb_removeModal); 1956 titleRow.appendChild(titleEl); 1957 titleRow.appendChild(closeBtn); 1958 1959 var header = privacy_cb_el('div', { className: 'di-cm__header' }); 1960 header.appendChild(titleRow); 1961 1962 var desc = privacy_cb_el('p', { className: 'di-cm__desc' }); 1963 desc.appendChild(document.createTextNode(privacy_config.modalDesc + ' ')); 1964 desc.appendChild(privacy_cb_el('a', { href: privacy_config.privacyPolicyUrl, textContent: 'Privacy Policy' })); 1965 desc.appendChild(document.createTextNode('.')); 1966 1967 var rows = privacy_cb_el('div', { className: 'di-cm__rows' }); 1968 var toggleInputs = [];
1969 privacy_config.categories.forEach(function (cat) { 1970 var row = privacy_cb_el('div', { className: 'di-cm__item' }); 1971 var info = privacy_cb_el('div', { className: 'di-cm__item-info' }); 1972 var lbl = privacy_cb_el('p', { className: 'di-cm__item-label', textContent: cat.label }); 1973 var dsc = privacy_cb_el('p', { className: 'di-cm__item-desc', textContent: cat.description }); 1974 var wrap = privacy_cb_el('label', { className: 'di-cm__toggle-wrap' }); 1975 var input = privacy_cb_el('input', { type: 'checkbox', id: 'di-cm-' + cat.id + '-toggle', checked: cat.defaultOn !== false }); 1976 var track = privacy_cb_el('span', { className: 'di-cm__toggle-track' }); 1977 toggleInputs.push(input); 1978 info.appendChild(lbl); info.appendChild(dsc); 1979 wrap.appendChild(input); wrap.appendChild(track); 1980 row.appendChild(info); row.appendChild(wrap); 1981 rows.appendChild(row); 1982 }); 1983 1984 var footer = privacy_cb_el('div', { className: 'di-cm__footer' }); 1985 var cancelBtn = privacy_cb_el('button', { className: 'di-cm__btn di-cm__btn--cancel', type: 'button', textContent: privacy_config.cancelLabel }); 1986 var rejectBtn = privacy_cb_el('button', { className: 'di-cm__btn di-cm__btn--reject', type: 'button', textContent: privacy_config.rejectLabel }); 1987 rejectBtn.setAttribute('data-event', 'consent_reject'); 1988 var submitBtn = privacy_cb_el('button', { className: 'di-cm__btn di-cm__btn--submit', type: 'button', textContent: privacy_config.submitLabel }); 1989 function privacy_cb_updateSubmitEvent() { 1990 var anyOff = toggleInputs.some(function (t) { return !t.checked; }); 1991 submitBtn.setAttribute('data-event', anyOff ? 'consent_reject' : 'consent_accept'); 1992 } 1993 privacy_cb_updateSubmitEvent(); 1994 toggleInputs.forEach(function (t) { t.addEventListener('change', privacy_cb_updateSubmitEvent); }); 1995 cancelBtn.addEventListener('click', privacy_cb_removeModal); 1996 rejectBtn.addEventListener('click', privacy_cb_rejectAll); 1997 submitBtn.addEventListener('click', privacy_cb_savePreferences); 1998 footer.appendChild(cancelBtn); footer.appendChild(rejectBtn); footer.appendChild(submitBtn); 1999 2000 var policyFooter = privacy_cb_el('div', { className: 'di-cm__policy' }); 2001 policyFooter.appendChild(privacy_cb_el('a', { href: privacy_config.privacyPolicyUrl, textContent: 'Privacy Policy' })); 2002 2003 dialog.appendChild(header); 2004 dialog.appendChild(desc); 2005 dialog.appendChild(rows); 2006 dialog.appendChild(footer); 2007 dialog.appendChild(policyFooter); 2008 return dialog; 2009 } 2010 2011 function privacy_cb_openModal() { 2012 var dialog = document.getElementById('di-cookie-pref-dialog'); 2013 if (dialog) dialog.showModal(); 2014 } 2015 2016 // âââ banner ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ 2017 2018 function privacy_cb_createBanner() { 2019 2020 var wrap = privacy_cb_el('div', { id: 'di-consent-banner' }); 2021 var inner = privacy_cb_el('div', { className: 'di-cb__inner' }); 2022 var p = privacy_cb_el('p', { className: 'di-cb__text' }); 2023 2024 var match = privacy_config.bannerText.match(/^([\s\S]*?)\[([^\]]+)\]([\s\S]*)$/); 2025 if (match) { 2026 p.appendChild(document.createTextNode(match[1])); 2027 p.appendChild(privacy_cb_el('a', { className: 'di-cb__learn', href: privacy_config.privacyPolicyUrl, textContent: match[2] })); 2028 p.appendChild(document.createTextNode(match[3])); 2029 } else { 2030 p.textContent = privacy_config.bannerText; 2031 } 2032 2033 var actions = privacy_cb_el('div', { className: 'di-cb__actions' }); 2034 var secondary = privacy_config.variant === 'manage' 2035 ? privacy_cb_el('button', { className: 'di-cb__btn di-cb__btn--secondary', type: 'button', textContent: privacy_config.manageLabel }) 2036 : privacy_cb_el('button', { className: 'di-cb__btn di-cb__btn--secondary', type: 'button', textContent: privacy_config.declineLabel }); 2037 if (privacy_config.variant !== 'manage') secondary.setAttribute('data-event', 'consent_reject'); 2038 var acceptBtn = privacy_cb_el('button', { className: 'di-cb__btn di-cb__btn--primary', type: 'button', textContent: privacy_config.acceptLabel }); 2039 acceptBtn.setAttribute('data-event', 'consent_accept'); 2040 2041 secondary.addEventListener('click', privacy_config.variant === 'manage' ? privacy_cb_openModal : privacy_cb_reject); 2042 acceptBtn.addEventListener('click', privacy_cb_accept); 2043 2044 actions.appendChild(secondary); 2045 actions.appendChild(acceptBtn); 2046 inner.appendChild(p); 2047 inner.appendChild(actions); 2048 wrap.appendChild(inner); 2049 return wrap; 2050 } 2051 2052 // âââ init ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ 2053 2054 function privacy_cb_init() { 2055 2056 if (!document.body) { 2057 document.addEventListener('DOMContentLoaded', privacy_cb_init, { once: true }); 2058 return; 2059 } 2060 2061 privacy_config = Object.assign({}, privacy_config_defaults, window.privacy_config || {}); 2062 if (window.privacy_allow && window.privacy_allow.disabled === true) return; 2063 if (!window.DiPrivacy || window.DiPrivacy.consent !== 'pending' || window.DiPrivacy.gpcEnabled) { 2064 var signals = []; 2065 2066 if (navigator.globalPrivacyControl === true) { 2067 signals.push('navigator.globalPrivacyControl'); 2068 } 2069 if (window.matchMedia && window.matchMedia('(global-privacy-control: 1)').matches) { 2070 signals.push('matchMedia(global-privacy-control: 1)'); 2071 } 2072 var dnt = navigator.doNotTrack || window.doNotTrack || navigator.msDoNotTrack; 2073 if (dnt === '1' || dnt === 'yes') { 2074 signals.push('doNotTrack (' + dnt + ')'); 2075 } 2076 2077 if (signals.length) { 2078 console.log('[Privacy] GPC/DNT active via: ' + signals.join(', ')); 2079 } else { 2080 console.log('[Privacy] No GPC/DNT signals active â early return triggered by DiPrivacy state (consent=' + 2081 (window.DiPrivacy && window.DiPrivacy.consent) + ', gpcEnabled=' + 2082 (window.DiPrivacy && window.DiPrivacy.gpcEnabled) + ')'); 2083 } 2084 return; 2085 } 2086 privacy_cb_injectStyles(); 2087 document.body.appendChild(privacy_cb_createDialog()); 2088 var banner = privacy_cb_createBanner(); 2089 banner.style.setProperty('--di-cb-primary', privacy_config.primaryColor); 2090 banner.style.setProperty('--di-cb-bg', privacy_config.bgColor); 2091 banner.style.setProperty('--di-cb-text', privacy_config.textColor); 2092 banner.style.setProperty('--di-cb-font', privacy_config.fontFamily); 2093 banner.style.setProperty('--di-cb-radius', privacy_config.buttonRadius); 2094 document.body.appendChild(banner); 2095 } 2096 2097 if (document.readyState === 'loading') { 2098 document.addEventListener('DOMContentLoaded', privacy_cb_init, { once: true }); 2099 } else if (document.body) { 2100 privacy_cb_init(); 2101 } else { 2102 document.addEventListener('DOMContentLoaded', privacy_cb_init, { once: true }); 2103 } 2104 2105 })(); 2106</script>
2106 2107<!--
2107<script>FontAwesomeConfig = {searchPseudoElements: true};</script>
2107 -->
2108<script> 2109 javascript_deferred.prototype[get_deferred_id()] = function() { 2110 $.getScript('https://www.googletagmanager.com/gtag/js?id=G-2ZD2LPEQ4S'); 2111 window.dataLayer = window.dataLayer || []; 2112 google_tracking.gtag('js', new Date()); 2113 google_tracking.gtag('config', 'G-2ZD2LPEQ4S'); 2114 } 2115 javascript_deferred.prototype[get_deferred_id()] = function() { 2116 $.getScript('https://www.googletagmanager.com/gtag/js?id=G-65ED0KWQ5Y'); 2117 window.dataLayer = window.dataLayer || []; 2118 google_tracking.gtag('js', new Date()); 2119 google_tracking.gtag('config', 'G-65ED0KWQ5Y'); 2120 } 2121 javascript_deferred.prototype[get_deferred_id()] = function() { 2122 $.getScript('https://www.googletagmanager.com/gtag/js?id=G-6BRP1GT1L6'); 2123 window.dataLayer = window.dataLayer || []; 2124 google_tracking.gtag('js', new Date()); 2125 google_tracking.gtag('config', 'G-6BRP1GT1L6'); 2126 } 2127 javascript_deferred.prototype[get_deferred_id()] = function() { 2128 $.getScript('https://apps.elfsight.com/p/platform.js'); 2129 } 2130 javascript_deferred.prototype[get_deferred_id()] = function() { 2131 $.getScript('https://www.instagram.com/embed.js'); 2132 } 2133 2134 javascript_deferred.prototype[get_deferred_id()] = function() { 2135 !function(){var geq=window.geq=window.geq||[];if(geq.initialize) return;if (geq.invoked){if (window.console && console.error) {console.error("GE snippet included twice.");}return;}geq.invoked = true;geq.methods = ["page", "suppress", "trackOrder", "identify", "addToCart", "callBack", "event"];geq.factory = function(method){return function(){var args = Array.prototype.slice.call(arguments);args.unshift(method);geq.push(args);return geq;};};for (var i = 0; i < geq.methods.length; i++) {var key = geq.methods[i];geq[key] = geq.factory(key);} geq.load = function(key){var script = document.createElement("script");script.type = "text/javascript";script.async = true; if (location.href.includes("vge=true")) {script.src = "https://s3-us-west-2.amazonaws.com/jsstore/a/" + key + "/ge.js?v=" + Math.random();} else {script.src = "https://s3-us-west-2.amazonaws.com/jsstore/a/" + key + "/ge.js";} var first = document.getElementsByTagName("script")[0];first.parentNode.insertBefore(script, first);};geq.SNIPPET_VERSION = "1.6.1"; 2136 geq.load("020H7WR");}(); 2137 } 2138 javascript_deferred.prototype[get_deferred_id()] = function() { 2139 geq.page(); 2140 } 2141 javascript_deferred.prototype[get_deferred_id()] = function() { 2142 $.getScript('https://tag.pearldiver.io/ldc.js?pid=ba73cbbc01f1737685584857e5bd1010&aid=16de03f2'); 2143 } 2144 2145 javascript_deferred.prototype[get_deferred_id()] = function() {
vendor: 417 bytes, lines 2145-2154
2145 2146 !function(f,b,e,v,n,t,s) 2147 {if(f.fbq)return;n=f.fbq=function(){n.callMethod? 2148 n.callMethod.apply(n,arguments):n.queue.push(arguments)}; 2149 if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0'; 2150 n.queue=[];t=b.createElement(e);t.async=!0; 2151 t.src=v;s=b.getElementsByTagName(e)[0]; 2152 s.parentNode.insertBefore(t,s)}(window, document,'script', 2153 'https://connect.facebook.net/en_US/fbevents.js'); 2154 fbq('init', '
2154992356092447547
vendor: 33 bytes, lines 2154-2156
2154'); 2155 fbq('track', 'PageView'); 2156
2156} 2157 javascript_deferred.prototype[get_deferred_id()] = function() {
vendor: 338 bytes, lines 2157-2162
2157 2158 (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': 2159 new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 2160 j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 2161 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 2162 })(window,document,'script','dataLayer','
2162GTM-NRC5KRSQ
vendor: 5 bytes, lines 2162-2163
2162'); 2163
2163} 2164 2165</script>
vendor: 1 bytes, line 2165
2165
2166<script> 2167 javascript_deferred.prototype[get_deferred_id()] = function() { 2168 !function() { var t; if (t = window.webbot = window.webbot = window.webbot || [], !t.init) return t.invoked ? void (window.console && console.error && console.error("Snippet included twice.")) : ( t.load =function(e){ var o,n; o=document.createElement("script"); e.type="text/javscript"; o.async=!0; o.crossorigin="anonymous"; o.src="https://chat.doctorsinternet.com/web-bot/script/frame/"+e+"/webbot.js"; n=document.getElementsByTagName("script")[0]; n.parentNode.insertBefore(o,n); }); }(); webbot.load('JbpDlnQU4ZuRPE9ierkI7YUypPt8OQ8a0tT1bjb8'); 2169 } 2170</script>
2170 2171 2172 <link rel="canonical" href="https://iconicdentalarts.com/team/"> 2173 2174 <meta name="description" content="Our team of experienced dentists and hygienists is dedicated to providing you with the best possible dental experience. Call (405) 943-8575 today!"> 2175 <meta name="keywords" content="Meet Our Team, Oklahoma City Dental Office, Dentist in Oklahoma City, Dentist 73120, Cosmetic Dentist near Oklahoma City, Emergency Dentist Oklahoma City, Pediatric Dentist Oklahoma City, Family Dentist in Oklahoma City, Cosmetic Dental Office 73120, Dental Implants Dentist Oklahoma City, Implant Restorations Oklahoma City, All-on-4 Dental Implants Oklahoma City, Same Day Dental Crowns near Oklahoma City, Laser Dentist Oklahoma City, Orthodontics Oklahoma City, Invisalign Oklahoma City, Teeth Whitening near Oklahoma City, Dental Veneers Oklahoma City, Root Canal Treatment Oklahoma City"> 2176
2176<script type="application/ld+json">[]</script>
2176 2177 <style>body { 2178 border: 0px; 2179 padding: 0px; 2180 margin: 0px; 2181 font-family: "arial"; 2182 font-size: 16px; 2183 letter-spacing: 0.25px; 2184 word-spacing: 0.5px; 2185 font-weight: normal; 2186 background: white; 2187 box-sizing: border-box; 2188 width: 100%; 2189 height: 100%; 2190 -webkit-tap-highlight-color: rgba(0,0,0,0); 2191 text-rendering: optimizeSpeed !important; 2192 display: flex; 2193 flex-wrap: wrap; 2194} 2195body::after { 2196 content: ''; 2197 clear: both; 2198 visibility: hidden; 2199 display: block; 2200} 2201@media (max-width: 360px) { 2202 body { 2203 overflow-x: hidden; 2204 } 2205} 2206body > section { 2207 float: left; 2208 width: 100%; 2209 position: relative; 2210 z-index: 10; 2211 box-sizing: border-box; 2212 display: inline-block; 2213 flex-basis: 100%; 2214} 2215body a { 2216 text-decoration: none; 2217 color: inherit; 2218 transition: color 0.4s; 2219} 2220body a:hover { 2221 color: #0a82d2; 2222} 2223body a svg { 2224 pointer-events: none; 2225} 2226body p { 2227 margin: 1rem 0px; 2228 line-height: 1.6rem; 2229} 2230body img { 2231 max-width: 100%; 2232 max-height: 100%; 2233 image-rendering: -webkit-optimize-contrast; 2234} 2235body picture { 2236 max-width: 100%; 2237 max-height: 100%; 2238} 2239body h1, 2240body h2, 2241body h3, 2242body h4, 2243body h5, 2244body h6 { 2245 margin: 1rem 0px; 2246} 2247body h1 { 2248 font-size: 5rem; 2249} 2250body h2 { 2251 font-size: 4rem; 2252} 2253body h3 { 2254 font-size: 3rem; 2255} 2256body h4 { 2257 font-size: 2rem; 2258} 2259body h5, 2260body h6 { 2261 font-size: 1rem; 2262} 2263body sup { 2264 font-size: 0.75rem; 2265 line-height: 0px; 2266} 2267body li { 2268 line-height: 1.6rem; 2269} 2270body iframe { 2271 width: 100%; 2272 margin: 0px; 2273 padding: 0px; 2274 border: 0px; 2275} 2276body iframe:not([height]) { 2277 height: 100%; 2278} 2279body picture { 2280 max-width: 100%; 2281 max-height: 100%; 2282} 2283body .button { 2284 padding: 20px 40px; 2285 display: inline-block; 2286 cursor: pointer; 2287 transition: background 0.4s, color 0.4s; 2288 margin: 1rem 0px; 2289 text-align: center; 2290 line-height: 1.6rem; 2291 box-sizing: border-box; 2292} 2293@media (max-width: 640px) { 2294 body .button { 2295 padding: 20px; 2296 } 2297} 2298body .float-left { 2299 float: left; 2300} 2301body .float-right { 2302 float: right; 2303} 2304body .position-center { 2305 display: inline-block; 2306 position: relative; 2307 left: 50%; 2308 transform: translate(-50%); 2309} 2310body .clear { 2311 clear: both; 2312} 2313body .inline-block { 2314 display: inline-block; 2315} 2316body .flex { 2317 display: flex; 2318} 2319body .background_container { 2320 position: relative; 2321 overflow: hidden; 2322} 2323body .background_container .background_image { 2324 position: absolute; 2325 min-width: 100%; 2326 min-height: 100%; 2327 transform: translate(-50%,-50%); 2328 left: 50%; 2329 top: 50%; 2330 object-fit: cover; 2331 height: inherit; 2332 width: 100%; 2333 height: 100%; 2334} 2335body .background_container .background_image * { 2336 width: 100%; 2337 object-fit: cover; 2338 object-position: inherit; 2339 height: inherit; 2340} 2341body section[data-type="system-lightbox-container"] { 2342 position: fixed; 2343 width: 100%; 2344 height: 100%; 2345 top: 0px; 2346 left: 0px; 2347 z-index: 99999; 2348 display: flex; 2349 opacity: 0; 2350 pointer-events: none; 2351 transition: opacity 0.4s; 2352 -webkit-user-select: none; 2353 -moz-user-select: none; 2354 -ms-user-select: none; 2355 user-select: none; 2356} 2357body section[data-type="system-lightbox-container"].show { 2358 opacity: 1; 2359 pointer-events: initial; 2360} 2361body section[data-module="ad_tracking"] { 2362 display: none; 2363} 2364body form input[type="submit"] { 2365 display: none; 2366} 2367body form section[data-type="system-lightbox-content"] { 2368 display: none; 2369} 2370body form [data-hidden="1"] { 2371 display: none; 2372} 2373body form input[type="file"] { 2374 display: none; 2375} 2376body form div[data-container="file"] { 2377 margin: 5px; 2378 transition: opacity 0.4s; 2379} 2380body form div[data-container="file"].disabled { 2381 opacity: 0.2; 2382 pointer-events: none; 2383} 2384body form [data-container="file"] label { 2385 display: inline-block; 2386 cursor: pointer; 2387 line-height: 1.6rem; 2388 box-sizing: border-box; 2389 border-radius: 3px; 2390 transition: all .75s ease; 2391 background-size: 500% 500%; 2392 background-position: -2px -2px; 2393 padding: 20px 40px; 2394 color: white; 2395 position: relative; 2396} 2397body form [data-container="file"] label:hover { 2398 background-position: bottom right; 2399} 2400body form [data-container="file"] label .remove_file { 2401 position: absolute; 2402 top: -5px; 2403 left: -5px; 2404 width: 24px; 2405 height: 24px; 2406 background-color: white; 2407 border-radius: 50%; 2408 display: flex; 2409 justify-content: center; 2410 align-items: center; 2411 color: black; 2412 box-shadow: 1px 1px 5px rgba(0,0,0,0.4); 2413 font-size: 1rem; 2414} 2415body form div[data-group="file"] { 2416 display: flex; 2417 flex: 0 0 auto; 2418 width: calc(100% - 20px); 2419 margin: 10px 10px; 2420 flex-wrap: wrap; 2421 justify-content: center; 2422 user-select: none; 2423 transition: opacity 0.4s; 2424} 2425body form div[data-group="file"] > div { 2426 display: flex; 2427 flex-wrap: wrap; 2428 justify-content: center; 2429} 2430body form div[data-group="file"] .max_size_container { 2431 width: 100%; 2432 display: flex; 2433 justify-content: center; 2434 padding: 10px 20px; 2435 box-sizing: border-box; 2436 border: 3px solid #fbfbfb; 2437 border-radius: 3px; 2438 transition: background-color 0.4s, border 0.4s; 2439 margin-top: 20px; 2440} 2441body form div[data-group="file"] .max_size_container .size_divider { 2442 display: inline-block; 2443 margin: 0px 5px; 2444} 2445body form div[data-group="file"] .max_size_container .current_size_warning { 2446 display: none; 2447 margin-right: 10px; 2448 font-size: 24px; 2449} 2450body form div[data-group="file"] .max_size_container .current_size_ok { 2451 display: inline-block; 2452 margin-right: 10px; 2453 font-size: 24px; 2454} 2455body form div[data-group="file"] .too_large { 2456 color: #c40000; 2457 font-weight: bold; 2458 box-sizing: border-box; 2459 border: 3px solid #c40000; 2460 background-color: #c40000; 2461 color: white; 2462} 2463body form div[data-group="file"] .too_large .current_size_warning { 2464 display: inline-block; 2465} 2466body form div[data-group="file"] .too_large .current_size_ok { 2467 display: none; 2468} 2469body form [data-type='submit'].disabled { 2470 opacity: 0.2; 2471 pointer-events: none; 2472} 2473body form[action="https://maps.google.com/maps"] input[type="submit"] { 2474 display: initial; 2475 padding: 5px 10px; 2476 font-size: 1rem; 2477 box-sizing: border-box; 2478 border: 1px solid grey; 2479}
2480body form[action="https://maps.google.com/maps"] input#saddr { 2481 border: 1px solid grey; 2482 margin: 0px 10px; 2483 font-size: 1rem; 2484 padding: 5px 10px; 2485 box-sizing: border-box; 2486} 2487body .ui-widget.ui-widget-content { 2488 border: 0px; 2489} 2490body .ui-datepicker-flex { 2491 display: flex !important; 2492 background-color: rgba(0,0,0,0.95); 2493 position: fixed !important; 2494 top: 0px !important; 2495 left: 0px !important; 2496 z-index: 1000 !important; 2497 width: 100%; 2498 height: 100%; 2499 color: white; 2500 display: none; 2501 flex-direction: column; 2502 justify-content: center; 2503 align-items: center; 2504} 2505body .ui-datepicker-flex th, 2506body .ui-datepicker-flex td { 2507 width: 50px; 2508 height: 50px; 2509 box-sizing: border-box; 2510 text-align: center; 2511 font-size: 1.25rem; 2512 padding: 0px; 2513} 2514body .ui-datepicker-flex th a, 2515body .ui-datepicker-flex td a { 2516 padding: 0px; 2517} 2518@media (max-width: 320px) { 2519 body .ui-datepicker-flex th, 2520 body .ui-datepicker-flex td { 2521 width: 40px; 2522 height: 40px; 2523 font-size: 1rem; 2524 } 2525} 2526body .ui-datepicker-flex .ui-datepicker-header { 2527 display: flex; 2528 justify-content: center; 2529 width: 350px; 2530 border: 0px; 2531 border-bottom: 1px solid white; 2532 border-radius: 0px; 2533 background: initial; 2534 color: white; 2535} 2536body .ui-datepicker-flex .ui-datepicker-header .ui-datepicker-prev { 2537 order: 0; 2538} 2539body .ui-datepicker-flex .ui-datepicker-header .ui-datepicker-title { 2540 order: 1; 2541} 2542body .ui-datepicker-flex .ui-datepicker-header .ui-datepicker-next { 2543 order: 2; 2544} 2545body .ui-datepicker-flex .ui-widget-header .ui-state-hover { 2546 background: white; 2547 border-radius: 0px; 2548} 2549body .ui-datepicker-flex .ui-datepicker-calendar { 2550 width: 350px; 2551} 2552body .ui-datepicker-flex .ui-datepicker-calendar .ui-state-default { 2553 background: initial; 2554 color: white; 2555 border: 0px; 2556 text-align: center; 2557} 2558body .ui-datepicker-flex .ui-datepicker-calendar .ui-datepicker-current-day { 2559 background-color: white; 2560 border-radius: 50%; 2561} 2562body .ui-datepicker-flex .ui-datepicker-calendar .ui-datepicker-current-day a { 2563 color: black; 2564} 2565body .sidebar[data-sidebar="false"] { 2566 display: none; 2567} 2568body .sidebar[data-sidebar="true"] { 2569 flex-basis: 280px; 2570 width: 100%; 2571 flex-grow: 1; 2572 flex-shrink: 0; 2573 margin-left: 40px; 2574 box-sizing: border-box; 2575} 2576body .sidebar[data-sidebar="true"] img, 2577body .sidebar[data-sidebar="true"] picture { 2578 border-radius: 5px; 2579} 2580body .sidebar[data-sidebar="true"] > .label { 2581 font-size: 1.25rem; 2582 margin: 1.5rem 0px 0.5rem; 2583 border-bottom: 1px solid #ececec; 2584 padding-bottom: 0.5rem; 2585} 2586body .sidebar[data-sidebar="true"] div[data-sidebar="address_all"] { 2587 padding: 1rem 0rem; 2588} 2589body .sidebar[data-sidebar="true"] div[data-sidebar="address_all"] > div { 2590 line-height: 1.6rem; 2591} 2592body .sidebar[data-sidebar="true"] div[data-sidebar="address_current"] { 2593 padding: 1rem 0rem; 2594} 2595body .sidebar[data-sidebar="true"] div[data-sidebar="address_current"] > div { 2596 line-height: 1.6rem; 2597} 2598body .sidebar[data-sidebar="true"] div[data-sidebar="social_current"], 2599body .sidebar[data-sidebar="true"] div[data-micro-template="social_icons_dynamic"] { 2600 display: flex; 2601} 2602body .sidebar[data-sidebar="true"] div[data-sidebar="social_current"] div.title, 2603body .sidebar[data-sidebar="true"] div[data-micro-template="social_icons_dynamic"] div.title { 2604 margin-bottom: 10px; 2605} 2606body .sidebar[data-sidebar="true"] div[data-sidebar="social_current"] div[data-micro-template="social_icons"], 2607body .sidebar[data-sidebar="true"] div[data-micro-template="social_icons_dynamic"] div[data-micro-template="social_icons"] { 2608 display: flex; 2609 width: 50px; 2610 height: 50px; 2611} 2612body .sidebar[data-sidebar="true"] div[data-sidebar="social_current"] div[data-micro-template="social_icons"] a, 2613body .sidebar[data-sidebar="true"] div[data-micro-template="social_icons_dynamic"] div[data-micro-template="social_icons"] a { 2614 font-size: 1.6rem; 2615 display: flex; 2616 width: 100%; 2617 height: 100%; 2618 justify-content: center; 2619 align-items: center; 2620} 2621body .sidebar[data-sidebar="true"] div[data-micro-template="office_hours"], 2622body .sidebar[data-sidebar="true"] div[data-micro-template="office_hours_dynamic"] { 2623 display: flex; 2624 flex-direction: row; 2625 flex-wrap: wrap; 2626 padding: 1rem 0px; 2627} 2628body .sidebar[data-sidebar="true"] div[data-micro-template="office_hours"] > div.title, 2629body .sidebar[data-sidebar="true"] div[data-micro-template="office_hours_dynamic"] > div.title { 2630 margin-bottom: 10px; 2631} 2632body .sidebar[data-sidebar="true"] div[data-micro-template="office_hours"] .row, 2633body .sidebar[data-sidebar="true"] div[data-micro-template="office_hours_dynamic"] .row { 2634 display: flex; 2635 flex: 1 0 100%; 2636} 2637body .sidebar[data-sidebar="true"] div[data-micro-template="office_hours"] .row .day, 2638body .sidebar[data-sidebar="true"] div[data-micro-template="office_hours_dynamic"] .row .day { 2639 flex: 1 0 40%; 2640 line-height: 1.6rem; 2641} 2642body .sidebar[data-sidebar="true"] div[data-micro-template="office_hours"] .row .time, 2643body .sidebar[data-sidebar="true"] div[data-micro-template="office_hours_dynamic"] .row .time { 2644 flex: 1 0 60%; 2645 text-align: right; 2646 line-height: 1.6rem; 2647} 2648body .sidebar[data-sidebar="true"] div[data-sidebar="blogs_by_year"] { 2649 padding: 1rem 20px; 2650} 2651body .sidebar[data-sidebar="true"] div[data-sidebar="blogs_by_year"] ul { 2652 list-style: initial; 2653 margin: initial; 2654 padding: initial; 2655} 2656body .sidebar[data-sidebar="true"] div[data-sidebar="blogs_by_year"] ul li:not(:last-of-type) { 2657 margin-bottom: 10px; 2658} 2659body .sidebar[data-sidebar="true"] div[data-sidebar="related_blogs"] { 2660 padding: 1rem 20px; 2661} 2662body .sidebar[data-sidebar="true"] div[data-sidebar="related_blogs"] ul { 2663 list-style: initial; 2664 margin: initial; 2665 padding: initial; 2666} 2667body .sidebar[data-sidebar="true"] div[data-sidebar="related_blogs"] ul li:not(:last-of-type) { 2668 margin-bottom: 10px; 2669} 2670@media (max-width: 920px) { 2671 body .sidebar[data-sidebar="true"] { 2672 flex-basis: 100%; 2673 max-width: 100%; 2674 margin-left: 0px; 2675 margin-top: 1rem; 2676 justify-content: center; 2677 text-align: center; 2678 } 2679 body .sidebar[data-sidebar="true"] div[data-sidebar] { 2680 justify-content: center; 2681 } 2682 body .sidebar[data-sidebar="true"] div[data-sidebar="related_blogs"] ul, 2683 body .sidebar[data-sidebar="true"] div[data-sidebar="blogs_by_year"] ul { 2684 list-style: none; 2685 } 2686 body .sidebar[data-sidebar="true"] div[data-sidebar="related_blogs"] ul, 2687 body .sidebar[data-sidebar="true"] div[data-sidebar="blogs_by_year"] ul { 2688 list-style: none; 2689 } 2690 body .sidebar[data-sidebar="true"] div[data-micro-template="office_hours"] .row .day, 2691 body .sidebar[data-sidebar="true"] div[data-micro-template="office_hours_dynamic"] .row .day { 2692 padding-right: 10px; 2693 box-sizing: border-box; 2694 flex: 1 0 50%; 2695 text-align: right; 2696 } 2697 body .sidebar[data-sidebar="true"] div[data-micro-template="office_hours"] .row .time, 2698 body .sidebar[data-sidebar="true"] div[data-micro-template="office_hours_dynamic"] .row .time { 2699 padding-left: 10px; 2700 box-sizing: border-box; 2701 flex: 1 0 50%; 2702 text-align: left; 2703 } 2704} 2705@media (max-width: 920px) and (max-width: 360px) { 2706 body .sidebar[data-sidebar="true"] div[data-micro-template="office_hours"] .row .day, 2707 body .sidebar[data-sidebar="true"] div[data-micro-template="office_hours_dynamic"] .row .day { 2708 flex: 1 0 40%; 2709 } 2710 body .sidebar[data-sidebar="true"] div[data-micro-template="office_hours"] .row .time, 2711 body .sidebar[data-sidebar="true"] div[data-micro-template="office_hours_dynamic"] .row .time { 2712 flex: 1 0 60%; 2713 } 2714} 2715@media (max-width: 1080px) { 2716 body section[data-module="blog_content"] .content_container,
2717 body section[data-module="article_content"] .content_container { 2718 flex-wrap: wrap; 2719 } 2720} 2721@media (max-width: 920px) { 2722 body section[data-module="dynamic_content"] .content_container, 2723 body section[data-module="interior_content"] .content_container { 2724 flex-wrap: wrap; 2725 } 2726} 2727</style> 2728 <link rel="preconnect" href="https://fonts.googleapis.com"><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin=""><link href="https://fonts.googleapis.com/css?family=Montserrat:100,200,300,400,500&display=swap" rel="preload" as="style" onload="this.rel='stylesheet'"><link href="https://fonts.googleapis.com/css?family=Quicksand&display=swap" rel="preload" as="style" onload="this.rel='stylesheet'"><link href="https://fonts.googleapis.com/css?family=Poppins:100,200,300,400,500&display=swap" rel="preload" as="style" onload="this.rel='stylesheet'"></head> 2729 <body data-template-group="team"> 2730 <noscript><img height="1" width="1" style="display:none" src="https://www.facebook.com/tr?id=992356092447547&ev=PageView&noscript=1" data-lazy-img="true" data-src="" alt="Iconic Dental Arts"></noscript> 2731 2732<!-- Google Tag Manager (noscript) --> 2733<noscript><iframe src="" height="0" width="0" style="display:none;visibility:hidden" data-src="https://www.googletagmanager.com/ns.html?id=GTM-NRC5KRSQ" aria-label="iframe"></iframe></noscript> 2734 <!-- End Google Tag Manager (noscript) --><style>body { 2735 background: #fff; 2736 color: #1A1A1A; 2737 font-family: "Montserrat"; 2738} 2739body a { 2740 color: #AB7F29; 2741} 2742body a:hover { 2743 color: #00FFFF; 2744} 2745body h1 { 2746 font-family: "Montserrat"; 2747} 2748body h2 { 2749 font-family: "Montserrat"; 2750} 2751body h3 { 2752 font-family: "Montserrat"; 2753} 2754body h1, 2755body h2, 2756body h3, 2757body h4, 2758body h5, 2759body h6 { 2760 color: #1A1A1A; 2761 font-weight: bold; 2762} 2763body input, 2764body textarea { 2765 font-family: "Montserrat"; 2766 border: 0px; 2767 border-radius: 0; 2768} 2769body input[type="text"], 2770body textarea { 2771 -webkit-appearance: none; 2772} 2773body .button { 2774 background: #1A1A1A; 2775 color: #1A1A1A; 2776 font-size: 16px; 2777} 2778body .button:hover { 2779 background: #00cccc; 2780 color: #1A1A1A; 2781} 2782body .text_background { 2783 color: #fff; 2784} 2785body .text_primary { 2786 color: #1A1A1A; 2787} 2788body .text_secondary { 2789 color: #00FFFF; 2790} 2791body .text_tertiary { 2792 color: #AB7F29; 2793} 2794body .background_background { 2795 background: #fff; 2796} 2797body .background_primary { 2798 background: #1A1A1A; 2799} 2800body .background_secondary { 2801 background: #00FFFF; 2802} 2803body .background_tertiary { 2804 background: #AB7F29; 2805} 2806body .item_float_right { 2807 float: right; 2808 margin: 0 0 15px 15px; 2809} 2810@media (max-width: 480px) { 2811 body .item_float_right { 2812 float: none; 2813 margin: 0 auto 10px; 2814 } 2815} 2816body .item_float_left { 2817 float: left; 2818 margin: 0 15px 15px 0; 2819} 2820@media (max-width: 480px) { 2821 body .item_float_left { 2822 float: none; 2823 margin: 0 auto 10px; 2824 } 2825} 2826body .margin_center { 2827 margin: 0 auto; 2828} 2829body .margin_left { 2830 margin: 0 auto 0 0; 2831} 2832body .margin_right { 2833 margin: 0 0 0 auto; 2834} 2835body .margin_bottom { 2836 margin: auto 0 0 0; 2837} 2838body .margin_top { 2839 margin: 0 0 auto 0; 2840} 2841body .sys_flex_container { 2842 display: flex; 2843 gap: 20px; 2844} 2845body .sys_flex_container.flex_wrap { 2846 flex-wrap: wrap; 2847} 2848@media (max-width: 1024px) { 2849 body .sys_flex_container.flex_wrap_tablet { 2850 flex-wrap: wrap; 2851 } 2852} 2853@media (max-width: 768px) { 2854 body .sys_flex_container.flex_wrap_phablet { 2855 flex-wrap: wrap; 2856 } 2857} 2858@media (max-width: 480px) { 2859 body .sys_flex_container.flex_wrap_phone { 2860 flex-wrap: wrap; 2861 } 2862} 2863body .sys_flex_container.justify_center { 2864 justify-content: center; 2865} 2866body .sys_flex_container.justify_start { 2867 justify-content: flex-start; 2868} 2869body .sys_flex_container.justify_end { 2870 justify-content: flex-end; 2871} 2872body .sys_flex_container.justify_around { 2873 justify-content: space-around; 2874} 2875body .sys_flex_container.justify_between { 2876 justify-content: space-between; 2877} 2878body .sys_flex_container.align_center { 2879 align-items: center; 2880} 2881body .sys_flex_container.align_start { 2882 align-items: flex-start; 2883} 2884body .sys_flex_container.align_end { 2885 align-items: flex-end; 2886} 2887body .sys_flex_container.align_stretch { 2888 align-items: stretch; 2889} 2890body .sys_flex_container > .full_width { 2891 flex-basis: 100%; 2892} 2893@media (max-width: 1024px) { 2894 body .sys_flex_container > .full_width_tablet { 2895 flex-basis: 100%; 2896 } 2897} 2898@media (max-width: 768px) { 2899 body .sys_flex_container > .full_width_phablet { 2900 flex-basis: 100%; 2901 } 2902} 2903@media (max-width: 480px) { 2904 body .sys_flex_container > .full_width_phone { 2905 flex-basis: 100%; 2906 } 2907} 2908body .sys_flex_container.flex_column { 2909 flex-direction: column; 2910} 2911@media (max-width: 1024px) { 2912 body .sys_flex_container.flex_column_tablet { 2913 flex-direction: column; 2914 } 2915} 2916@media (max-width: 768px) { 2917 body .sys_flex_container.flex_column_phablet { 2918 flex-direction: column; 2919 } 2920} 2921@media (max-width: 480px) { 2922 body .sys_flex_container.flex_column_phone { 2923 flex-direction: column; 2924 } 2925} 2926body .sys_grid_container { 2927 display: grid; 2928 gap: 20px; 2929} 2930body .sys_grid_container.two_wide { 2931 grid-template-columns: repeat(2,1fr); 2932} 2933body .sys_grid_container.three_wide { 2934 grid-template-columns: repeat(3,1fr); 2935} 2936body .sys_grid_container.four_wide { 2937 grid-template-columns: repeat(4,1fr); 2938} 2939body .sys_grid_container.five_wide { 2940 grid-template-columns: repeat(5,1fr); 2941} 2942@media (max-width: 1024px) { 2943 body .sys_grid_container.one_wide_tablet { 2944 grid-template-columns: repeat(1,1fr); 2945 } 2946} 2947@media (max-width: 1024px) { 2948 body .sys_grid_container.two_wide_tablet { 2949 grid-template-columns: repeat(2,1fr); 2950 } 2951} 2952@media (max-width: 1024px) { 2953 body .sys_grid_container.three_wide_tablet { 2954 grid-template-columns: repeat(3,1fr); 2955 } 2956} 2957@media (max-width: 1024px) { 2958 body .sys_grid_container.four_wide_tablet { 2959 grid-template-columns: repeat(4,1fr); 2960 } 2961} 2962@media (max-width: 1024px) { 2963 body .sys_grid_container.five_wide_tablet { 2964 grid-template-columns: repeat(5,1fr); 2965 } 2966} 2967@media (max-width: 768px) { 2968 body .sys_grid_container.one_wide_phablet { 2969 grid-template-columns: repeat(1,1fr); 2970 } 2971} 2972@media (max-width: 768px) { 2973 body .sys_grid_container.two_wide_phablet { 2974 grid-template-columns: repeat(2,1fr); 2975 } 2976} 2977@media (max-width: 768px) { 2978 body .sys_grid_container.three_wide_phablet { 2979 grid-template-columns: repeat(3,1fr); 2980 } 2981} 2982@media (max-width: 768px) { 2983 body .sys_grid_container.four_wide_phablet { 2984 grid-template-columns: repeat(4,1fr); 2985 } 2986} 2987@media (max-width: 768px) { 2988 body .sys_grid_container.five_wide_phablet { 2989 grid-template-columns: repeat(5,1fr); 2990 } 2991} 2992@media (max-width: 480px) { 2993 body .sys_grid_container.one_wide_phone { 2994 grid-template-columns: repeat(1,1fr); 2995 } 2996} 2997@media (max-width: 480px) { 2998 body .sys_grid_container.two_wide_phone { 2999 grid-template-columns: repeat(2,1fr); 3000 } 3001} 3002@media (max-width: 480px) { 3003 body .sys_grid_container.three_wide_phone { 3004 grid-template-columns: repeat(3,1fr); 3005 } 3006} 3007@media (max-width: 480px) { 3008 body .sys_grid_container.four_wide_phone { 3009 grid-template-columns: repeat(4,1fr); 3010 } 3011} 3012@media (max-width: 480px) { 3013 body .sys_grid_container.five_wide_phone { 3014 grid-template-columns: repeat(5,1fr); 3015 } 3016} 3017body .sys_grid_container > .full_width { 3018 grid-column: 1/-1; 3019} 3020@media (max-width: 1024px) { 3021 body .sys_grid_container > .full_width_tablet { 3022 grid-column: 1/-1; 3023 } 3024} 3025@media (max-width: 768px) { 3026 body .sys_grid_container > .full_width_phablet { 3027 grid-column: 1/-1; 3028 } 3029} 3030@media (max-width: 480px) { 3031 body .sys_grid_container > .full_width_phone { 3032 grid-column: 1/-1; 3033 } 3034} 3035body .sys_flex_container.no_gap, 3036body .sys_grid_container.no_gap { 3037 gap: 0; 3038} 3039body .sys_flex_container.medium_gap, 3040body .sys_grid_container.medium_gap { 3041 gap: 40px; 3042} 3043body .sys_flex_container.large_gap, 3044body .sys_grid_container.large_gap { 3045 gap: 80px; 3046} 3047@media (max-width: 1024px) { 3048 body .sys_flex_container.no_gap_tablet, 3049 body .sys_grid_container.no_gap_tablet { 3050 gap: 0px; 3051 } 3052} 3053@media (max-width: 1024px) { 3054 body .sys_flex_container.small_gap_tablet, 3055 body .sys_grid_container.small_gap_tablet { 3056 gap: 20px; 3057 } 3058} 3059@media (max-width: 1024px) { 3060 body .sys_flex_container.medium_gap_tablet, 3061 body .sys_grid_container.medium_gap_tablet { 3062 gap: 40px; 3063 } 3064} 3065@media (max-width: 1024px) { 3066 body .sys_flex_container.large_gap_tablet, 3067 body .sys_grid_container.large_gap_tablet { 3068 gap: 80px; 3069 } 3070} 3071@media (max-width: 768px) { 3072 body .sys_flex_container.no_gap_phablet, 3073 body .sys_grid_container.no_gap_phablet { 3074 gap: 0px; 3075 } 3076} 3077@media (max-width: 768px) { 3078 body .sys_flex_container.small_gap_phablet, 3079 body .sys_grid_container.small_gap_phablet { 3080 gap: 20px; 3081 } 3082} 3083@media (max-width: 768px) { 3084 body .sys_flex_container.medium_gap_phablet, 3085 body .sys_grid_container.medium_gap_phablet { 3086 gap: 40px; 3087 } 3088} 3089@media (max-width: 768px) { 3090 body .sys_flex_container.large_gap_phablet, 3091 body .sys_grid_container.large_gap_phablet { 3092 gap: 80px; 3093 } 3094} 3095@media (max-width: 480px) { 3096 body .sys_flex_container.no_gap_phone, 3097 body .sys_grid_container.no_gap_phone { 3098 gap: 0px; 3099 } 3100} 3101@media (max-width: 480px) { 3102 body .sys_flex_container.small_gap_phone, 3103 body .sys_grid_container.small_gap_phone { 3104 gap: 20px; 3105 } 3106} 3107@media (max-width: 480px) { 3108 body .sys_flex_container.medium_gap_phone, 3109 body .sys_grid_container.medium_gap_phone { 3110 gap: 40px; 3111 } 3112} 3113@media (max-width: 480px) { 3114 body .sys_flex_container.large_gap_phone, 3115 body .sys_grid_container.large_gap_phone { 3116 gap: 80px; 3117 } 3118} 3119body div[data-type="locations-social"] { 3120 color: white; 3121} 3122body div[data-type="locations-social"] a:hover {
3123 color: inherit; 3124} 3125body div[data-type="locations-social"] > div { 3126 transition: background 0.2s; 3127} 3128body div[data-type="locations-social"] div[data-type="facebook"] { 3129 background: #4267b2; 3130} 3131body div[data-type="locations-social"] div[data-type="facebook"]:hover { 3132 background: #6283c5; 3133 color: #ffffff; 3134} 3135body div[data-type="locations-social"] div[data-type="twitter"] { 3136 background: #1da1f2; 3137} 3138body div[data-type="locations-social"] div[data-type="twitter"]:hover { 3139 background: #4db5f5; 3140 color: #ffffff; 3141} 3142body div[data-type="locations-social"] div[data-type="google"] { 3143 background: #db4437; 3144} 3145body div[data-type="locations-social"] div[data-type="google"]:hover { 3146 background: #e36c62; 3147 color: #ffffff; 3148} 3149body div[data-type="locations-social"] div[data-type="instagram"] { 3150 background: #833ab4; 3151} 3152body div[data-type="locations-social"] div[data-type="instagram"]:hover { 3153 background: #9c58c9; 3154 color: #ffffff; 3155} 3156body div[data-type="locations-social"] div[data-type="blog"] { 3157 background: #833ab4; 3158} 3159body div[data-type="locations-social"] div[data-type="blog"]:hover { 3160 background: #9c58c9; 3161 color: #ffffff; 3162} 3163body .sidebar[data-sidebar="true"] > .label { 3164 font-size: 1.5rem; 3165 margin: 1.5rem 0px 0.5rem; 3166 border-bottom: 1px solid #1A1A1A; 3167 padding-bottom: 0.5rem; 3168 font-weight: bold; 3169 color: #1A1A1A; 3170 font-family: "Montserrat"; 3171} 3172body :-moz-placeholder { 3173 color: #1A1A1A; 3174 font-family: "Montserrat"; 3175 text-decoration: none; 3176 font-weight: normal; 3177 opacity: 0.8; 3178} 3179body ::-moz-placeholder { 3180 color: #1A1A1A; 3181 font-family: "Montserrat"; 3182 text-decoration: none; 3183 font-weight: normal; 3184 opacity: 0.8; 3185} 3186body ::-webkit-input-placeholder { 3187 color: #1A1A1A; 3188 font-family: "Montserrat"; 3189 text-decoration: none; 3190 font-weight: normal; 3191 opacity: 0.8; 3192} 3193body :-ms-input-placeholder { 3194 color: #1A1A1A; 3195 font-family: "Montserrat"; 3196 text-decoration: none; 3197 font-weight: normal; 3198 opacity: 0.8; 3199} 3200body form * { 3201 font-family: "Montserrat"; 3202 text-decoration: none; 3203 font-weight: normal; 3204 font-size: 1rem; 3205} 3206body form div[data-container="file"] { 3207 margin: 5px; 3208 transition: opacity 0.4s; 3209} 3210body form div[data-container="file"]:last-of-type label { 3211 background-image: linear-gradient(to bottom right,#1A1A1A 25%,#00FFFF 75%); 3212} 3213body form [data-container="file"] label { 3214 background-image: linear-gradient(to bottom right,#00FFFF 25%,#1A1A1A 75%); 3215} 3216body div[data-micro-template="accordion_container"] { 3217 width: 100%; 3218 max-width: 100%; 3219 font-family: "Montserrat"; 3220} 3221body div[data-micro-template="accordion_container"] div[data-micro-template="accordion"] .accordion_title { 3222 display: flex; 3223 justify-content: space-between; 3224 align-items: center; 3225 color: #1A1A1A; 3226 cursor: pointer; 3227 border-bottom: 1px solid #1A1A1A; 3228 padding-bottom: 0px; 3229} 3230body div[data-micro-template="accordion_container"] div[data-micro-template="accordion"] .accordion_title .accordion_title_text, 3231body div[data-micro-template="accordion_container"] div[data-micro-template="accordion"] .accordion_title .accordion_toggle { 3232 font-size: 1.5rem; 3233 font-weight: 400; 3234} 3235@media (max-width: 1024px) { 3236 body div[data-micro-template="accordion_container"] div[data-micro-template="accordion"] .accordion_title .accordion_title_text, 3237 body div[data-micro-template="accordion_container"] div[data-micro-template="accordion"] .accordion_title .accordion_toggle { 3238 font-size: 1.2rem; 3239 } 3240} 3241@media (max-width: 480px) { 3242 body div[data-micro-template="accordion_container"] div[data-micro-template="accordion"] .accordion_title .accordion_title_text, 3243 body div[data-micro-template="accordion_container"] div[data-micro-template="accordion"] .accordion_title .accordion_toggle { 3244 font-size: 1.1rem; 3245 } 3246} 3247body div[data-micro-template="accordion_container"] div[data-micro-template="accordion"] .accordion_title.active { 3248 border-color: #1A1A1A; 3249 color: #1A1A1A; 3250} 3251body div[data-micro-template="accordion_container"] div[data-micro-template="accordion"] .accordion_title.active .accordion_title_text { 3252 color: #1A1A1A; 3253} 3254body div[data-micro-template="accordion_container"] div[data-micro-template="accordion"] .accordion_body { 3255 display: none; 3256 padding: 20px 0; 3257 line-height: 1.35em; 3258 text-align: left; 3259} 3260body section[data-type="system-lightbox-container"] .close-icon { 3261 background-color: white; 3262 border-radius: 50%; 3263 box-sizing: border-box; 3264 border: 5px solid white; 3265 display: flex; 3266 justify-content: center; 3267 align-items: center; 3268 top: -10px; 3269 right: -10px; 3270} 3271body section[data-type="system-lightbox-container"] .next-icon { 3272 background-color: white; 3273 border-radius: 50%; 3274 box-sizing: border-box; 3275 border: 4px solid white; 3276 display: flex; 3277 justify-content: center; 3278 align-items: center; 3279 position: absolute; 3280 top: 50%; 3281 right: 0px; 3282 font-size: 2rem; 3283 transform: translate(10px,-50%); 3284 cursor: pointer; 3285} 3286body section[data-type="system-lightbox-container"] .prev-icon { 3287 background-color: white; 3288 border-radius: 50%; 3289 box-sizing: border-box; 3290 border: 4px solid white; 3291 display: flex; 3292 justify-content: center; 3293 align-items: center; 3294 position: absolute; 3295 top: 50%; 3296 left: 0px; 3297 font-size: 2rem; 3298 transform: translate(-10px,-50%); 3299 cursor: pointer; 3300} 3301body section[data-type="system-lightbox-container"] .gallery_grid_modal { 3302 display: none; 3303 position: fixed; 3304 height: 100vh; 3305 width: 100%; 3306 top: 0; 3307 left: 0; 3308 background-color: rgba(0,0,0,0.6); 3309 justify-content: center; 3310 align-items: center; 3311 opacity: 0; 3312 transition: all 0.4s ease-in-out; 3313 z-index: 99999999; 3314} 3315body section[data-type="system-lightbox-container"] .gallery_grid_modal .highlighted_image_container { 3316 cursor: pointer; 3317 margin: 5%; 3318 position: relative; 3319} 3320body section[data-type="system-lightbox-container"] .gallery_grid_modal .highlighted_image_container img { 3321 max-height: 80vh; 3322} 3323body section[data-type="system-lightbox-container"] .gallery_grid_modal .highlighted_image_container .highlighted_image_content { 3324 display: flex; 3325 flex-direction: column; 3326} 3327body section[data-type="system-lightbox-container"] .gallery_grid_modal .highlighted_image_container .highlighted_image_content .button { 3328 order: 5; 3329 margin: 0; 3330} 3331body section[data-type="system-lightbox-container"] .gallery_grid_modal .highlighted_image_container .gallery_grid_arrow { 3332 position: absolute; 3333 top: 50%; 3334} 3335body section[data-type="system-lightbox-container"] .gallery_grid_modal .highlighted_image_container .gallery_grid_arrow svg {
3336 color: #fff; 3337 font-size: 36px; 3338 transition: all 0.2s; 3339} 3340body section[data-type="system-lightbox-container"] .gallery_grid_modal .highlighted_image_container .gallery_grid_arrow:hover svg { 3341 transform: scale(1.2); 3342} 3343body section[data-type="system-lightbox-container"] .gallery_grid_modal .highlighted_image_container .gallery_grid_left { 3344 left: -50px; 3345} 3346body section[data-type="system-lightbox-container"] .gallery_grid_modal .highlighted_image_container .gallery_grid_right { 3347 right: -50px; 3348} 3349body section[data-type="system-lightbox-container"] .gallery_grid_modal .highlighted_image_caption { 3350 position: absolute; 3351 bottom: 100px; 3352 width: 100%; 3353 text-align: center; 3354 background: rgba(0,0,0,0.6); 3355} 3356body section[data-type="system-lightbox-container"] .gallery_grid_modal .highlighted_image_caption .highlighted_image_text { 3357 color: #fff; 3358 font-size: 1.25em; 3359 margin: 0; 3360 font-family: "Montserrat"; 3361 padding: 15px 0; 3362} 3363body section[data-type="system-lightbox-container"] .gallery_grid_modal.show { 3364 display: flex; 3365 opacity: 1; 3366} 3367@media (max-width: 768px) { 3368 body section[data-type="system-lightbox-container"] .gallery_grid_modal .highlighted_image_caption { 3369 bottom: 75px; 3370 } 3371 body section[data-type="system-lightbox-container"] .gallery_grid_modal .highlighted_image_caption .highlighted_image_text { 3372 font-size: 1em; 3373 padding: 5px; 3374 } 3375 body section[data-type="system-lightbox-container"] .gallery_grid_modal .highlighted_image_container .gallery_grid_left { 3376 left: -40px; 3377 } 3378 body section[data-type="system-lightbox-container"] .gallery_grid_modal .highlighted_image_container .gallery_grid_right { 3379 right: -40px; 3380 } 3381 body section[data-type="system-lightbox-container"] .gallery_grid_modal .highlighted_image_container .highlighted_image_content .button { 3382 padding: 10px; 3383 } 3384} 3385@media (max-width: 480px) { 3386 body section[data-type="system-lightbox-container"] .gallery_grid_modal .highlighted_image_caption { 3387 bottom: 50px; 3388 } 3389 body section[data-type="system-lightbox-container"] .gallery_grid_modal .highlighted_image_container .gallery_grid_arrow { 3390 bottom: -40px; 3391 top: initial; 3392 } 3393 body section[data-type="system-lightbox-container"] .gallery_grid_modal .highlighted_image_container .gallery_grid_left { 3394 left: 20%; 3395 } 3396 body section[data-type="system-lightbox-container"] .gallery_grid_modal .highlighted_image_container .gallery_grid_right { 3397 right: 20%; 3398 } 3399} 3400body .responsive_video { 3401 padding-bottom: 56.25%; 3402 position: relative; 3403} 3404body .responsive_video iframe, 3405body .responsive_video video { 3406 position: absolute; 3407 height: 100%; 3408 width: 100%; 3409 top: 0; 3410 left: 0; 3411} 3412body .ul_column { 3413 column-count: 2; 3414} 3415@media (max-width: 768px) { 3416 body .ul_column { 3417 column-count: 2; 3418 } 3419} 3420@media (max-width: 480px) { 3421 body .ul_column { 3422 column-count: 1; 3423 } 3424} 3425body section .content_container .content div[data-micro-template="invisalign_list_container"] { 3426 display: grid; 3427 grid-template-columns: repeat(4,1fr); 3428 gap: 40px 20px; 3429} 3430@media (max-width: 1366px) { 3431 body section .content_container .content div[data-micro-template="invisalign_list_container"] { 3432 grid-template-columns: repeat(3,1fr); 3433 } 3434} 3435@media (max-width: 768px) { 3436 body section .content_container .content div[data-micro-template="invisalign_list_container"] { 3437 grid-template-columns: repeat(2,1fr); 3438 } 3439} 3440@media (max-width: 480px) { 3441 body section .content_container .content div[data-micro-template="invisalign_list_container"] { 3442 grid-template-columns: repeat(1,1fr); 3443 gap: 20px 10px; 3444 } 3445} 3446@media (max-width: 480px) { 3447 body section .content_container .content div[data-micro-template="invisalign_list_container"] a[data-micro-template="invisalign_list"] .image { 3448 display: none; 3449 } 3450} 3451body section .content_container .content div[data-micro-template="invisalign_list_container"] a[data-micro-template="invisalign_list"] .text { 3452 text-align: center; 3453} 3454@media (max-width: 480px) { 3455 body section .content_container .content div[data-micro-template="invisalign_list_container"] a[data-micro-template="invisalign_list"] .text { 3456 text-align: left; 3457 } 3458} 3459body section .content_container .content div[data-micro-template="invisalign_list_container"] a[data-micro-template="invisalign_list"] .text p { 3460 margin: 0; 3461} 3462body section .content_container .content .invisalign_video_container { 3463 display: grid; 3464 grid-template-columns: repeat(2,1fr); 3465 gap: 40px; 3466} 3467@media (max-width: 480px) { 3468 body section .content_container .content .invisalign_video_container { 3469 grid-template-columns: repeat(1,1fr); 3470 gap: 20px; 3471 } 3472} 3473body section .content_container .content .invisalign_video_container .invisalign_list .text { 3474 text-align: center; 3475} 3476body section .content_container .content .invisalign_video_container .invisalign_list .text p { 3477 color: #00FFFF; 3478 font-size: 1.2rem; 3479} 3480@media (max-width: 480px) { 3481 body section .content_container .content .invisalign_video_container .invisalign_list .text p { 3482 font-size: 1.1rem; 3483 } 3484} 3485body section .content_container .content .service_video_container { 3486 margin: 60px auto; 3487 display: flex; 3488 border-bottom: 10px solid #00FFFF; 3489 box-shadow: 6px 5px 8px 0px #bfbfbf; 3490} 3491@media (max-width: 768px) { 3492 body section .content_container .content .service_video_container { 3493 flex-direction: column; 3494 } 3495} 3496body section .content_container .content .service_video_container > div { 3497 flex: 1; 3498} 3499body section .content_container .content .service_video_container .service_video_text { 3500 padding: 0 40px; 3501 background: #1A1A1A; 3502 box-sizing: border-box; 3503 display: flex; 3504 justify-content: center; 3505 align-items: center; 3506} 3507@media (max-width: 640px) { 3508 body section .content_container .content .service_video_container .service_video_text { 3509 padding: 0 20px; 3510 } 3511} 3512body section .content_container .content .service_video_container .service_video_text h4 { 3513 color: #fff; 3514 font-size: 1rem; 3515 font-style: italic; 3516 line-height: 1.4em; 3517 font-weight: 400; 3518} 3519body section .content_container .content .service_testimonial_videos { 3520 background: #1A1A1A; 3521 padding: 20px 40px; 3522 border-bottom: 10px solid #00FFFF; 3523 text-align: center; 3524 box-shadow: 6px 5px 8px 0px #bfbfbf; 3525} 3526@media (max-width: 640px) { 3527 body section .content_container .content .service_testimonial_videos { 3528 padding: 20px; 3529 } 3530} 3531body section .content_container .content .service_testimonial_videos .secondary_divider { 3532 display: inline-block; 3533 margin: 0 auto; 3534 height: 3px; 3535 background: #00FFFF; 3536 width: 150px; 3537} 3538body section .content_container .content .service_testimonial_videos h2 { 3539 color: #fff; 3540 font-size: 2rem; 3541 margin-bottom: 10px; 3542 padding: 0; 3543 font-weight: 400; 3544} 3545body section .content_container .content .service_testimonial_videos h2.text_center { 3546 text-align: center; 3547} 3548body section .content_container .content .service_testimonial_videos p { 3549 color: #fff; 3550} 3551body section .content_container .content .service_testimonial_videos .testimonial_videos_container { 3552 display: flex; 3553 flex-wrap: wrap; 3554 justify-content: space-between; 3555 text-align: center; 3556} 3557body section .content_container .content .service_testimonial_videos .testimonial_videos_container .testimonial_video { 3558 flex-basis: 48%; 3559 margin: 20px 0; 3560} 3561@media (max-width: 550px) { 3562 body section .content_container .content .service_testimonial_videos .testimonial_videos_container .testimonial_video { 3563 flex-basis: 100%; 3564 } 3565} 3566body section .content_container .content .alternating_service_container { 3567 margin-top: 20px; 3568} 3569body section .content_container .content .alternating_service_container .alternating_service { 3570 display: flex; 3571 justify-content: space-between; 3572 align-items: center; 3573 margin-bottom: 30px; 3574 flex-wrap: wrap; 3575} 3576body section .content_container .content .alternating_service_container .alternating_service .image, 3577body section .content_container .content .alternating_service_container .alternating_service .text { 3578 flex-basis: 48%; 3579} 3580@media (max-width: 768px) { 3581 body section .content_container .content .alternating_service_container .alternating_service .image, 3582 body section .content_container .content .alternating_service_container .alternating_service .text { 3583 flex-basis: 100%; 3584 } 3585} 3586body section .content_container .content .alternating_service_container .alternating_service .text h3 { 3587 font-size: 1.4rem; 3588} 3589@media (max-width: 768px) { 3590 body section .content_container .content .alternating_service_container .alternating_service .image { 3591 text-align: center; 3592 } 3593} 3594body section .content_container .content .alternating_service_container .alternating_service:nth-of-type(even) .image { 3595 order: 2; 3596 text-align: right; 3597} 3598@media (max-width: 768px) { 3599 body section .content_container .content .alternating_service_container .alternating_service:nth-of-type(even) .image { 3600 text-align: center; 3601 order: initial; 3602 } 3603} 3604</style><style>.section_1 { 3605 padding: 50px 100px; 3606 background: #fff; 3607 z-index: 30; 3608} 3609@media (max-width: 1366px) { 3610 .section_1 { 3611 padding: 40px; 3612 } 3613} 3614@media (max-width: 1024px) { 3615 .section_1 { 3616 padding: 20px 20px 10px; 3617 } 3618} 3619.section_1 .content_container .content { 3620 display: flex; 3621 align-items: center; 3622 justify-content: space-between; 3623} 3624.section_1 .content_container .content .logo a { 3625 display: flex; 3626 align-items: center; 3627} 3628.section_1 .content_container .content .right { 3629 display: flex; 3630 text-align: right; 3631} 3632@media (max-width: 1024px) { 3633 .section_1 .content_container .content .right { 3634 text-align: left; 3635 } 3636} 3637.section_1 .content_container .content .right .phone { 3638 margin-left: 50px; 3639} 3640@media (max-width: 1366px) { 3641 .section_1 .content_container .content .right .phone { 3642 margin-left: 25px; 3643 } 3644} 3645@media (max-width: 1024px) { 3646 .section_1 .content_container .content .right .phone { 3647 margin-left: 0px; 3648 } 3649} 3650@media (max-width: 768px) { 3651 .section_1 .content_container .content .right .phone { 3652 text-align: center; 3653 } 3654} 3655.section_1 .content_container .content .right .phone h4 { 3656 color: #1A1A1A; 3657 font-size: 1.15rem; 3658 margin: 0; 3659 font-weight: 500; 3660} 3661@media (max-width: 1366px) { 3662 .section_1 .content_container .content .right .phone h4 { 3663 font-size: 1rem; 3664 } 3665} 3666.section_1 .content_container .content .right .phone.hidden { 3667 display: none; 3668} 3669.section_1 .content_container .content .right div[data-micro-template="buttons_container"] { 3670 display: flex; 3671} 3672@media (max-width: 768px) { 3673 .section_1 .content_container .content .right div[data-micro-template="buttons_container"] { 3674 display: none; 3675 } 3676} 3677.section_1 .content_container .content .right div[data-micro-template="buttons_container"] .button { 3678 background: #00FFFF; 3679 color: #1A1A1A; 3680 text-align: center; 3681 display: flex; 3682 margin: 0; 3683 height: 100%; 3684 max-height: 100px; 3685 align-items: center; 3686 margin-right: 10px; 3687 text-transform: uppercase; 3688 font-weight: 500; 3689} 3690.section_1 .content_container .content .right div[data-micro-template="buttons_container"] .button:hover { 3691 background: #00cccc; 3692} 3693@media (max-width: 1024px) { 3694 .section_1 .content_container .content .right div[data-micro-template="buttons_container"] .button { 3695 font-size: 1rem; 3696 } 3697} 3698.section_1 .content_container .content .right div[data-micro-template="buttons_container"] div[data-micro-template="buttons"]:last-of-type .button { 3699 margin-right: 0; 3700} 3701@media (max-width: 1366px) { 3702 .section_1 .content_container .content .right div[data-micro-template="buttons_container"] div[data-micro-template="buttons"]:last-of-type .button { 3703 display: none; 3704 } 3705} 3706.section_1 .content_container .content div[data-micro-template="phone"] a { 3707 font-size: 3rem; 3708 color: #1A1A1A; 3709 font-weight: 300; 3710} 3711@media (max-width: 1366px) { 3712 .section_1 .content_container .content div[data-micro-template="phone"] a { 3713 font-size: 2.25rem; 3714 } 3715} 3716@media (max-width: 768px) { 3717 .section_1 .content_container .content div[data-micro-template="phone"] a { 3718 font-size: 2rem; 3719 } 3720} 3721@media (max-width: 768px) { 3722 .section_1 .content_container .content div[data-micro-template="phone"] { 3723 margin-right: 30px; 3724 } 3725} 3726.section_1 .content_container .content ul[data-micro-template="phone_list_container"] { 3727 margin: 0; 3728 padding: 0; 3729} 3730@media (max-width: 1024px) { 3731 .section_1 .content_container .content ul[data-micro-template="phone_list_container"] { 3732 display: flex; 3733 max-width: 500px; 3734 align-items: center; 3735 height: 100%; 3736 } 3737} 3738.section_1 .content_container .content ul[data-micro-template="phone_list_container"] li[data-micro-template="phone_list"] { 3739 list-style: none; 3740 margin-top: 10px; 3741} 3742@media (max-width: 1024px) { 3743 .section_1 .content_container .content ul[data-micro-template="phone_list_container"] li[data-micro-template="phone_list"] { 3744 margin-top: 0; 3745 margin-left: 20px; 3746 } 3747} 3748.section_1 .content_container .content ul[data-micro-template="phone_list_container"] li[data-micro-template="phone_list"] span, 3749.section_1 .content_container .content ul[data-micro-template="phone_list_container"] li[data-micro-template="phone_list"] a { 3750 color: #1A1A1A; 3751} 3752.section_1 .content_container .content ul[data-micro-template="phone_list_container"] li[data-micro-template="phone_list"] span { 3753 color: #1A1A1A; 3754 font-size: 1.1rem; 3755 margin: 0; 3756 font-weight: 500; 3757 display: block; 3758} 3759@media (max-width: 1366px) { 3760 .section_1 .content_container .content ul[data-micro-template="phone_list_container"] li[data-micro-template="phone_list"] span { 3761 font-size: 1rem; 3762 } 3763} 3764.section_1 .content_container .content ul[data-micro-template="phone_list_container"] li[data-micro-template="phone_list"] a { 3765 font-size: 2rem; 3766 color: #1A1A1A; 3767 font-weight: 300; 3768} 3769@media (max-width: 1024px) { 3770 .section_1 .content_container .content ul[data-micro-template="phone_list_container"] li[data-micro-template="phone_list"] a { 3771 font-size: 1.75rem; 3772 } 3773} 3774@media (max-width: 480px) { 3775 .section_1 .content_container .content ul[data-micro-template="phone_list_container"] li[data-micro-template="phone_list"] a { 3776 font-size: 1.25rem; 3777 } 3778} 3779.section_1 .content_container .content ul[data-micro-template="phone_list_container"] li[data-micro-template="phone_list"]:first-of-type { 3780 margin-top: 0; 3781 margin-left: 0; 3782} 3783@media (max-width: 1024px) { 3784 .section_1 .content_container .content { 3785 flex-direction: column; 3786 } 3787} 3788@media (max-width: 768px) { 3789 .section_1 .content_container .content .right { 3790 flex-direction: column; 3791 height: auto; 3792 } 3793 .section_1 .content_container .content .right .phone { 3794 margin-top: 5px; 3795 } 3796 .section_1 .content_container .content div[data-micro-template="phone"] { 3797 margin-right: 0px; 3798 margin-top: 5px; 3799 } 3800} 3801</style><style>.section_1 { 3802 padding: 19px 20px 5px 20px; 3803 background: #1A1A1A; 3804 z-index: 30; 3805 position: fixed; 3806 top: 0; 3807} 3808@media (max-width: 1024px) { 3809 .section_1 { 3810 padding: 0; 3811 } 3812} 3813.section_1 .content_container .content { 3814 display: flex; 3815 align-items: center; 3816 align-content: center; 3817 justify-content: space-between; 3818} 3819@media (max-width: 1024px) { 3820 .section_1 .content_container .content .logo { 3821 display: none; 3822 } 3823} 3824.section_1 .content_container .content .logo a { 3825 display: flex; 3826 align-items: center; 3827} 3828.section_1 .content_container .content .logo img, 3829.section_1 .content_container .content .logo picture { 3830 max-width: 305px; 3831} 3832@media (max-width: 480px) { 3833 .section_1 .content_container .content .logo img, 3834 .section_1 .content_container .content .logo picture { 3835 max-width: 150px; 3836 } 3837} 3838.section_1 .content_container .content .logo p { 3839 color: #fff; 3840 margin: 0; 3841 text-align: center; 3842 font-style: italic; 3843} 3844.section_1 .content_container .content .right { 3845 display: flex; 3846 text-align: left; 3847 font-weight: bold; 3848 align-items: center; 3849} 3850@media (max-width: 1024px) { 3851 .section_1 .content_container .content .right { 3852 text-align: left; 3853 width: 100%; 3854 } 3855} 3856@media (max-width: 1366px) { 3857 .section_1 .content_container .content .right .phone { 3858 margin-left: 10px; 3859 margin-right: 10px; 3860 } 3861} 3862@media (max-width: 1024px) { 3863 .section_1 .content_container .content .right .phone { 3864 text-align: left; 3865 } 3866} 3867@media (max-width: 1024px) { 3868 .section_1 .content_container .content .right .phone { 3869 width: 100%; 3870 margin: 0; 3871 } 3872} 3873.section_1 .content_container .content .right .phone h4 { 3874 color: #00FFFF; 3875 font-size: 1.25rem; 3876 margin: 0; 3877 font-weight: 500; 3878} 3879@media (max-width: 1366px) { 3880 .section_1 .content_container .content .right .phone h4 { 3881 font-siz
3881e: 1rem; 3882 } 3883} 3884.section_1 .content_container .content .right .phone.hidden { 3885 display: none; 3886} 3887.section_1 .content_container .content .right div[data-micro-template="buttons_container"] { 3888 display: flex; 3889} 3890@media (max-width: 1024px) { 3891 .section_1 .content_container .content .right div[data-micro-template="buttons_container"] div[data-micro-template="buttons"] { 3892 flex: 1; 3893 } 3894} 3895.section_1 .content_container .content .right div[data-micro-template="buttons_container"] .button { 3896 background: none; 3897 color: #00FFFF; 3898 text-align: center; 3899 display: flex; 3900 margin: 5px 0; 3901 height: 100%; 3902 max-height: 60px; 3903 align-items: center; 3904 margin-right: 10px; 3905 text-transform: uppercase; 3906 justify-content: center; 3907 font-weight: 500; 3908 font-size: 1rem; 3909 border: 2px solid #00FFFF; 3910} 3911@media (max-width: 1024px) { 3912 .section_1 .content_container .content .right div[data-micro-template="buttons_container"] .button { 3913 margin: 0; 3914 font-size: .90rem; 3915 } 3916} 3917@media (max-width: 500px) { 3918 .section_1 .content_container .content .right div[data-micro-template="buttons_container"] .button { 3919 margin: 0; 3920 font-size: .6rem; 3921 } 3922} 3923.section_1 .content_container .content .right div[data-micro-template="buttons_container"] .button:hover { 3924 background: #00FFFF; 3925 color: #1A1A1A; 3926} 3927.section_1 .content_container .content .right div[data-micro-template="buttons_container"] div[data-micro-template="buttons"]:last-of-type .button { 3928 margin-right: 0; 3929 background: none; 3930 color: #00FFFF; 3931} 3932.section_1 .content_container .content .right div[data-micro-template="buttons_container"] div[data-micro-template="buttons"]:last-of-type .button:hover { 3933 background: #00FFFF; 3934 color: #1A1A1A; 3935} 3936@media (max-width: 1366px) { 3937 .section_1 .content_container .content .right div[data-micro-template="buttons_container"] div[data-micro-template="buttons"]:last-of-type .button { 3938 display: flex; 3939 } 3940} 3941@media (max-width: 1024px) { 3942 .section_1 .content_container .content .right div[data-micro-template="buttons_container"] div[data-micro-template="buttons"]:last-of-type .button { 3943 display: flex; 3944 } 3945} 3946.section_1 .content_container .content .icon { 3947 width: 19%; 3948 box-sizing: border-box; 3949 padding: 12px; 3950 display: inline-block; 3951 vertical-align: top; 3952} 3953.section_1 .content_container .content .text { 3954 display: flex; 3955 flex-direction: column; 3956 font-size: 1.2rem; 3957 font-weight: 500; 3958 text-align: right; 3959} 3960.section_1 .content_container .content .text a { 3961 color: #AB7F29; 3962} 3963.section_1 .content_container .content .text a:hover { 3964 color: #00cccc; 3965} 3966@media (max-width: 1024px) { 3967 .section_1 .content_container .content .text { 3968 font-size: .9rem; 3969 text-align: center; 3970 } 3971} 3972@media (max-width: 1024px) { 3973 .section_1 .content_container .content .text { 3974 display: none; 3975 } 3976} 3977.section_1 .content_container .content div[data-micro-template="phone"] { 3978 display: inline; 3979} 3980.section_1 .content_container .content div[data-micro-template="phone"] a { 3981 font-size: 1rem; 3982 color: #1A1A1A; 3983 font-weight: bold; 3984} 3985@media (max-width: 768px) { 3986 .section_1 .content_container .content div[data-micro-template="phone"] a { 3987 font-size: .9rem; 3988 } 3989} 3990.section_1 .content_container .content ul[data-micro-template="phone_list_container"] { 3991 margin: 0; 3992 padding: 0; 3993} 3994@media (max-width: 1024px) { 3995 .section_1 .content_container .content ul[data-micro-template="phone_list_container"] { 3996 display: flex; 3997 max-width: 500px; 3998 align-items: center; 3999 height: 100%; 4000 } 4001} 4002.section_1 .content_container .content ul[data-micro-template="phone_list_container"] li[data-micro-template="phone_list"] { 4003 list-style: none; 4004 margin-top: 10px; 4005} 4006@media (max-width: 1024px) { 4007 .section_1 .content_container .content ul[data-micro-template="phone_list_container"] li[data-micro-template="phone_list"] { 4008 margin-top: 0; 4009 margin-left: 20px; 4010 } 4011} 4012.section_1 .content_container .content ul[data-micro-template="phone_list_container"] li[data-micro-template="phone_list"] span, 4013.section_1 .content_container .content ul[data-micro-template="phone_list_container"] li[data-micro-template="phone_list"] a { 4014 color: #1A1A1A; 4015} 4016.section_1 .content_container .content ul[data-micro-template="phone_list_container"] li[data-micro-template="phone_list"] span { 4017 color: #1A1A1A; 4018 font-size: 1.1rem; 4019 margin: 0; 4020 font-weight: 500; 4021 display: block; 4022} 4023@media (max-width: 1366px) { 4024 .section_1 .content_container .content ul[data-micro-template="phone_list_container"] li[data-micro-template="phone_list"] span { 4025 font-size: 1rem; 4026 } 4027} 4028.section_1 .content_container .content ul[data-micro-template="phone_list_container"] li[data-micro-template="phone_list"] a { 4029 font-size: 2rem; 4030 color: #1A1A1A; 4031 font-weight: 300; 4032} 4033@media (max-width: 1024px) { 4034 .section_1 .content_container .content ul[data-micro-template="phone_list_container"] li[data-micro-template="phone_list"] a { 4035 font-size: 1.75rem; 4036 } 4037} 4038@media (max-width: 480px) { 4039 .section_1 .content_container .content ul[data-micro-template="phone_list_container"] li[data-micro-template="phone_list"] a { 4040 font-size: 1.25rem; 4041 } 4042} 4043.section_1 .content_container .content ul[data-micro-template="phone_list_container"] li[data-micro-template="phone_list"]:first-of-type { 4044 margin-top: 0; 4045 margin-left: 0; 4046} 4047@media (max-width: 1024px) { 4048 .section_1 .content_container .content { 4049 flex-direction: column; 4050 } 4051} 4052</style> 4053<section class="section_1" data-module="manticore_header" data-html="/custom/modules/manticore_header/module.html" data-json="/custom/modules/manticore_header/module.json" data-page="team" data-full-path="/team/"> 4054 <div class="content_container"> 4055 <div class="content"> 4056 4057 <div class="logo"> 4058 <a href="/" aria-label="link"><picture><source srcset="/cache/sm-custom_images_logo_5.webp 420w, /cache/md-custom_images_logo_5.webp 640w, /cache/custom_images_logo_5.webp 896w" sizes="(max-width: 420px) 100v
4058w, (max-width: 640px) 100vw, 896px" data-lazy-picture="false" type="image/webp"><img alt="Iconic Dental Arts | Intraoral Camera, Dentures and CBCT" class="" src="/custom/images/logo-5.png" data-lazy-img="false" data-src="/custom/images/logo-5.png"></picture></a> 4059 4060</div> 4061<div class="right"> 4062 <div class="phone"> 4063 <div class="text"> 4064 <a href="https://goo.gl/maps/eHcnKGktzq22" aria-label="8200 N May Ave, Oklahoma City, OK 73120" rel="noopener" target="_blank">8200 N May Ave, Oklahoma City, OK 73120</a> 4065 </div> 4066 <div data-micro-template="buttons_container"> 4067 <div data-micro-template="buttons"> 4068 <a class="button" href="https://book.modento.io/joe-isaacson-dds" role="button" aria-label="Book Online" rel="noopener" target="_blank">Book Online</a> 4069</div><div data-micro-template="buttons"> 4070 <a class="button tel_14059438575" href="tel:+14059438575" role="button" aria-label="Call/Text: (405) 943-8575" data-click-call="0">Call/Text: (405) 943-8575</a> 4071</div><div data-micro-template="buttons"> 4072 <a class="button tel_14052130328" href="tel:+14052130328" role="button" aria-label="New Patients: (405) 213-0328" data-click-call="0">New Patients: (405) 213-0328</a> 4073</div> 4074</div> 4075 </div> 4076</div> 4077 4078 </div> 4079 </div> 4080</section><style>.section_2 { 4081 --group-menu-height: 600px; 4082 --group-menu-width: 1600px; 4083 --header-height: 36px; 4084 --mobile-menu-width: 450px; 4085 --nav-height: 100px; 4086 --mobile-menu-top-spacing: 10px; 4087 --mobile-menu-top-min-height: 75px; 4088 background: #1A1A1A; 4089 padding: 0px 20px; 4090 background: none; 4091 position: fixed; 4092 left: 0; 4093 top: var(--header-height); 4094 z-index: 500; 4095 transition: background 0.3s ease; 4096} 4097@media (max-width: 1024px) { 4098 .section_2 { 4099 --header-height: 0px; 4100 } 4101} 4102@media (max-width: 1366px) { 4103 .section_2 { 4104 --group-menu-height: 500px; 4105 --group-menu-width: 1600px; 4106 } 4107} 4108@media (max-width: 768px) { 4109 .section_2 { 4110 --header-height: 0px; 4111 --nav-height: 70px; 4112 } 4113} 4114.section_2.active:hover { 4115 background: none; 4116} 4117.section_2.active .logo { 4118 opacity: 0; 4119} 4120.section_2.background_toggle .logo { 4121 filter: brightness(0) invert(1); 4122 transition: filter 0.3s ease; 4123} 4124.section_2.background_toggle nav { 4125 color: #fff; 4126} 4127.section_2.background_toggle nav .menu_wrapper > ul > li a { 4128 color: #fff; 4129 transition: color 0.3s ease; 4130} 4131.section_2.background_toggle nav .menu_wrapper > ul > li i, 4132.section_2.background_toggle nav .menu_wrapper > ul > li svg { 4133 color: #fff; 4134 transition: color 0.3s ease; 4135} 4136.section_2.not_top { 4137 background: #fff; 4138 border-bottom: 1px solid rgba(26,26,26,0.2); 4139} 4140.section_2.not_top.active { 4141 background: none; 4142 border-bottom: none; 4143} 4144.section_2.not_top nav:after { 4145 content: ''; 4146 position: absolute; 4147 top: 0; 4148 left: 0; 4149 width: 100%; 4150 height: 100%; 4151 transition: all 0s; 4152} 4153.section_2.not_top nav.active:after { 4154 background: none; 4155} 4156.section_2.not_top.background_toggle .logo { 4157 filter: none; 4158} 4159.section_2.not_top.background_toggle nav { 4160 color: #1A1A1A; 4161} 4162.section_2.not_top.background_toggle nav .menu_wrapper > ul > li a { 4163 color: #1A1A1A; 4164} 4165.section_2.not_top.background_toggle nav .menu_wrapper > ul > li i, 4166.section_2.not_top.background_toggle nav .menu_wrapper > ul > li svg { 4167 color: #1A1A1A; 4168} 4169.section_2 .logo { 4170 position: absolute; 4171 top: 50%; 4172 left: 20px; 4173 transform: translate(0,-50%); 4174 height: var(--nav-height); 4175 transition: all 0.3s; 4176 box-sizing: border-box; 4177 padding: 5px; 4178 z-index: 150; 4179} 4180@media (max-width: 1024px) { 4181 .section_2 .logo { 4182 margin-right: 50px; 4183 } 4184} 4185.section_2 .logo a { 4186 height: 100%; 4187 width: 100%; 4188 display: flex; 4189 align-items: center; 4190} 4191.section_2 .logo img, 4192.section_2 .logo picture { 4193 height: 100%; 4194} 4195.section_2 .menu_buttons { 4196 position: absolute; 4197 right: 20px; 4198 top: 50%; 4199 transform: translate(0,-50%); 4200 z-index: 999; 4201} 4202.section_2 .menu_buttons div[data-micro-template="buttons_container"] { 4203 display: flex; 4204 gap: 0 10px; 4205} 4206.section_2 .menu_buttons div[data-micro-template="buttons_container"] div[data-micro-template="buttons"] a.button { 4207 padding: 15px; 4208} 4209.section_2 nav { 4210 display: flex; 4211 margin: 0px auto; 4212 z-index: 100; 4213 width: 100%; 4214 text-align: right; 4215 color: #fff; 4216 align-items: center; 4217 justify-content: space-between; 4218 height: var(--nav-height); 4219 box-sizing: border-box; 4220 font-size: 16px; 4221 font-family: "Montserrat"; 4222} 4223.section_2 nav a:hover {
4224 color: #D2AD63; 4225} 4226.section_2 nav.no_descriptions > .menu_wrapper > ul > li .submenu_wrapper { 4227 flex-wrap: wrap; 4228 overflow-y: auto; 4229} 4230.section_2 nav.no_descriptions > .menu_wrapper > ul > li .submenu_wrapper .submenu_description { 4231 flex-basis: 100%; 4232 text-align: center; 4233 line-height: 0; 4234 border-right: 0; 4235} 4236.section_2 nav.no_descriptions > .menu_wrapper > ul > li .submenu_wrapper .submenu_description h3 { 4237 display: inline-block; 4238 border-bottom: 1px solid rgba(26,26,26,0.5); 4239 margin-bottom: 20px; 4240 padding-bottom: 1rem; 4241} 4242.section_2 nav.no_descriptions > .menu_wrapper > ul > li .submenu_wrapper .submenu_description p { 4243 display: none; 4244} 4245.section_2 nav.no_descriptions > .menu_wrapper > ul > li .submenu_wrapper > ul { 4246 margin: 0 auto; 4247 flex-basis: min(100%,1000px); 4248 display: flex; 4249 gap: 20px 10px; 4250 justify-content: center; 4251 align-items: center; 4252 flex-wrap: wrap; 4253 flex-direction: row; 4254 padding: 0; 4255} 4256@media (max-width: 1024px) { 4257 .section_2 nav.no_descriptions > .menu_wrapper > ul > li .submenu_wrapper > ul { 4258 padding-bottom: 20px; 4259 display: grid; 4260 grid-template-columns: repeat(1,1fr); 4261 gap: 5px 0; 4262 } 4263} 4264.section_2 nav.no_descriptions > .menu_wrapper > ul > li .submenu_wrapper > ul.group_container { 4265 display: flex; 4266 flex-flow: column wrap; 4267 flex-basis: min(100%,var(--group-menu-width)); 4268 height: var(--group-menu-height); 4269 justify-content: flex-start; 4270 align-items: flex-start; 4271} 4272@media (max-width: 1024px) { 4273 .section_2 nav.no_descriptions > .menu_wrapper > ul > li .submenu_wrapper > ul.group_container { 4274 align-items: flex-start; 4275 } 4276} 4277.section_2 nav .mobile_menu { 4278 position: absolute; 4279 display: none; 4280 right: 0px; 4281 padding-right: inherit; 4282 font-size: 2rem; 4283 cursor: pointer; 4284} 4285.section_2 nav .menu_wrapper { 4286 display: flex; 4287 margin: 0px auto; 4288 z-index: 100; 4289 width: 100%; 4290 text-align: right; 4291 color: #fff; 4292 align-items: center; 4293 justify-content: space-between; 4294 height: 80px; 4295 box-sizing: border-box; 4296 font-size: 16px; 4297 font-family: "Montserrat"; 4298} 4299.section_2 nav .menu_wrapper .mobile_menu_top { 4300 display: none; 4301} 4302.section_2 nav .menu_wrapper .mobile_menu_buttons { 4303 display: none; 4304} 4305.section_2 nav .menu_wrapper .close_icon { 4306 display: none; 4307} 4308.section_2 nav .menu_wrapper .mobile_information { 4309 display: none; 4310 box-sizing: border-box; 4311 padding: 0 25px; 4312 color: #fff; 4313 text-align: left; 4314 margin-top: 20px; 4315} 4316.section_2 nav .menu_wrapper .mobile_information .mobile_address, 4317.section_2 nav .menu_wrapper .mobile_information .mobile_phone, 4318.section_2 nav .menu_wrapper .mobile_information .mobile_social { 4319 margin-bottom: 20px; 4320} 4321.section_2 nav .menu_wrapper .mobile_information .mobile_address span, 4322.section_2 nav .menu_wrapper .mobile_information .mobile_phone span, 4323.section_2 nav .menu_wrapper .mobile_information .mobile_social span { 4324 margin-bottom: 5px; 4325 display: none; 4326 font-size: .9rem; 4327} 4328.section_2 nav .menu_wrapper .mobile_information .mobile_address a, 4329.section_2 nav .menu_wrapper .mobile_information .mobile_phone a, 4330.section_2 nav .menu_wrapper .mobile_information .mobile_social a { 4331 color: #fff; 4332} 4333.section_2 nav .menu_wrapper .mobile_information .mobile_phone.tracking span { 4334 display: block; 4335} 4336.section_2 nav .menu_wrapper .mobile_information .mobile_social > div { 4337 display: flex; 4338 justify-content: space-around; 4339 font-size: 1.8rem; 4340} 4341.section_2 nav .menu_wrapper ul { 4342 padding: 0px; 4343 margin: 0px; 4344} 4345.section_2 nav .menu_wrapper ul .submenu_wrapper { 4346 position: fixed; 4347 left: 0; 4348 width: 100%; 4349 background: #1A1A1A; 4350 transform: none; 4351 flex-direction: row; 4352 justify-content: center; 4353 padding: 30px; 4354 display: flex; 4355 box-sizing: border-box; 4356} 4357.section_2 nav .menu_wrapper ul .submenu_wrapper .submenu_description { 4358 text-align: left; 4359 border-right: 1px solid rgba(26,26,26,0.5); 4360 flex: 0 1 400px; 4361 padding-right: 20px; 4362 opacity: 0; 4363 transition: opacity 1s; 4364} 4365.section_2 nav .menu_wrapper ul .submenu_wrapper .submenu_description.active { 4366 opacity: 1; 4367} 4368.section_2 nav .menu_wrapper ul .submenu_wrapper .submenu_description h3 { 4369 margin: 0; 4370 color: #fff; 4371 line-height: initial; 4372} 4373.section_2 nav .menu_wrapper ul .submenu_wrapper .submenu_description h3 p { 4374 font-size: 1.1rem; 4375 font-weight: 400; 4376} 4377.section_2 nav .menu_wrapper ul .submenu_wrapper > ul { 4378 flex: 0 1 200px; 4379 text-align: left; 4380 padding-left: 20px; 4381 display: block; 4382 opacity: 0; 4383 transition: opacity 0.5s ease-in, bottom 0.5s ease; 4384} 4385.section_2 nav .menu_wrapper ul .submenu_wrapper > ul.active { 4386 opacity: 1; 4387} 4388.section_2 nav .menu_wrapper ul .submenu_wrapper > ul li a { 4389 color: #fff; 4390} 4391.section_2 nav .menu_wrapper ul li { 4392 list-style-type: none; 4393} 4394.section_2 nav .menu_wrapper ul a { 4395 display: inline-block; 4396 width: 100%; 4397 height: 100%; 4398 color: #fff; 4399} 4400.section_2 nav .menu_wrapper ul ul { 4401 display: none; 4402 padding: 0px; 4403 flex-direction: column; 4404 position: relative; 4405 background: none; 4406} 4407.section_2 nav .menu_wrapper ul > li { 4408 padding: 0px 20px; 4409} 4410.section_2 nav .menu_wrapper ul > li > ul > ul.group_container { 4411 display: flex; 4412 flex-flow: column wrap; 4413} 4414.section_2 nav .menu_wrapper ul > li > ul > ul.group_container h3 { 4415 color: #fff; 4416 font-size: 1.5rem; 4417 margin-bottom: 10px; 4418} 4419.section_2 nav .menu_wrapper ul > li > ul > ul.group_container > li > ul { 4420 display: flex; 4421} 4422.section_2 nav .menu_wrapper ul > li > ul.group_container { 4423 width: 100%; 4424 box-sizing: border-box; 4425 max-width: 1000px; 4426 flex-direction: column; 4427 flex-wrap: wrap; 4428 left: 50%; 4429 transform: translate(-50%); 4430 max-height: 480px; 4431} 4432.section_2 nav .menu_wrapper ul > li > ul.group_container h3 { 4433 font-size: 1.25rem; 4434 font-weight: bold; 4435 margin: 0px 0px 0.5rem; 4436} 4437.section_2 nav .menu_wrapper ul > li > ul.group_container > li > ul { 4438 position: relative; 4439 display: block; 4440 background: none; 4441 margin-bottom: 0.5rem; 4442} 4443.section_2 nav .menu_wrapper ul > li > ul.group_container > li > ul > li { 4444 line-height: 40px; 4445 text-align: left; 4446} 4447.section_2 nav .menu_wrapper > ul { 4448 margin-left: auto; 4449 margin-right: auto; 4450} 4451.section_2 nav .menu_wrapper > ul > li { 4452 position: relative; 4453 transform: all 0.3s; 4454 display: inline-block; 4455 line-height: 80px; 4456 padding: 0px 20px; 4457} 4458.section_2 nav .menu_wrapper > ul > li > a { 4459 color: #fff; 4460} 4461.section_2 nav .menu_wrapper > ul > li i, 4462.section_2 nav .menu_wrapper > ul > li svg { 4463 position: absolute; 4464 right: 0; 4465 top: 50%; 4466 transform: translate(0,-50%); 4467 color: #fff; 4468 transition: transform 0.3s; 4469} 4470.section_2 nav .menu_wrapper > ul > li[data-url="/services/"] .submenu_wrapper { 4471 flex-wrap: wrap; 4472 overflow-y: auto; 4473} 4474.section_2 nav .menu_wrapper > ul > li[data-url="/services/"] .submenu_wrapper .submenu_description { 4475 flex-basis: 100%; 4476 text-align: center; 4477 line-height: 0; 4478 border-right: 0; 4479} 4480.section_2 nav .menu_wrapper > ul > li[data-url="/services/"] .submenu_wrapper .submenu_description h3 { 4481 display: inline-block; 4482 border-bottom: 1px solid rgba(26,26,26,0.5); 4483 margin-bottom: 20px; 4484} 4485.section_2 nav .menu_wrapper > ul > li[data-url="/services/"] .submenu_wrapper > ul { 4486 margin: 0 auto; 4487 flex-basis: min(100%,var(--group-menu-width)); 4488 display: grid; 4489 grid-template-columns: repeat(4,1fr); 4490 gap: 10px; 4491} 4492.section_2 nav .menu_wrapper > ul > li[data-url="/services/"] .submenu_wrapper > ul.group_container { 4493 display: flex; 4494 flex-flow: column wrap; 4495 flex-basis: min(100%,var(--group-menu-width)); 4496 height: var(--group-menu-height); 4497} 4498.section_2 nav .menu_wrapper > ul > li > ul { 4499 padding-top: 20px; 4500 padding-bottom: 20px; 4501 left: 50%; 4502 transform: translate(-50%); 4503} 4504.section_2 nav .menu_wrapper > ul > li > ul > li { 4505 line-height: 40px; 4506 width: 140px; 4507 text-align: left; 4508 text-align: center; 4509} 4510.section_2 nav .menu_wrapper > ul > li > ul > li > ul:not([data-group-container]) { 4511 position: absolute; 4512 left: 100%; 4513 padding-top: 20px; 4514 padding-bottom: 20px; 4515 transform: translate(0px,-60px); 4516} 4517.section_2 nav .menu_wrapper > ul > li > ul > li > ul:not([data-group-container]) > li { 4518 line-height: 40px; 4519 width: 140px; 4520} 4521@media (max-width: 1024px) { 4522 .section_2 .menu_buttons { 4523 right: 70px; 4524 } 4525 .section_2 .menu_buttons div[data-micro-template="buttons_container"] { 4526 display: flex; 4527 gap: 0 10px; 4528 } 4529 .section_2 nav { 4530 max-width: 100%; 4531 padding: 0px 20px; 4532 box-sizing: border-box; 4533 z-index: -1 !important; 4534 } 4535 .section_2 nav.active { 4536 z-index: 9999 !important; 4537 } 4538 .section_2 nav .mobile_menu { 4539 display: inline-block; 4540 top: 50%; 4541 transform: translate(0px,-50%); 4542 z-index: 4; 4543 } 4544 .section_2 nav ul { 4545 background: #1A1A1A; 4546 } 4547 .section_2 nav ul > li { 4548 box-sizing: border-box; 4549 } 4550 .section_2 nav ul ul { 4551 position: relative; 4552 transform: initial; 4553 } 4554 .section_2 nav .menu_wrapper { 4555 z-index: initial; 4556 position: fixed; 4557 height: 100%; 4558 width: min(90%,var(--mobile-menu-width)); 4559 top: 0; 4560 left: initial; 4561 transform: translateX(0); 4562 right: calc(var(--mobile-menu-width) * -1); 4563 text-align: center; 4564 display: flex; 4565 flex-direction: column; 4566 justify-content: flex-start;
4567 align-items: flex-end; 4568 opacity: 1; 4569 transition: transform 0.3s; 4570 box-sizing: border-box; 4571 padding: 0; 4572 overflow-y: auto; 4573 background: #1A1A1A; 4574 padding-bottom: 20px; 4575 } 4576 .section_2 nav .menu_wrapper.active { 4577 z-index: 1000; 4578 transform: translateX(calc(var(--mobile-menu-width) * -1)); 4579 } 4580 .section_2 nav .menu_wrapper .mobile_menu_top { 4581 position: sticky; 4582 background: #1A1A1A; 4583 width: 100%; 4584 top: 0; 4585 z-index: 99; 4586 border-bottom: 1px solid #fff; 4587 display: block; 4588 box-sizing: border-box; 4589 padding: 10px 0 0 0; 4590 min-height: var(--mobile-menu-top-min-height); 4591 } 4592 .section_2 nav .menu_wrapper .mobile_menu_top .mobile_logo { 4593 text-align: left; 4594 filter: brightness(0) invert(1); 4595 margin-left: 10px; 4596 display: block; 4597 } 4598 .section_2 nav .menu_wrapper .mobile_menu_top .mobile_logo img, 4599 .section_2 nav .menu_wrapper .mobile_menu_top .mobile_logo picture { 4600 width: min(100%,200px); 4601 } 4602 .section_2 nav .menu_wrapper .mobile_menu_buttons { 4603 display: block; 4604 width: 100%; 4605 } 4606 .section_2 nav .menu_wrapper .mobile_menu_buttons div[data-micro-template="buttons_container"] { 4607 display: flex; 4608 justify-content: flex-start; 4609 gap: 0 10px; 4610 padding: 0 25px; 4611 box-sizing: border-box; 4612 opacity: 0; 4613 transform: translateY(40px); 4614 transition: transform 0.5s ease, opacity 0.5s ease; 4615 position: relative; 4616 } 4617 .section_2 nav .menu_wrapper .mobile_menu_buttons div[data-micro-template="buttons_container"].active { 4618 opacity: 1; 4619 transform: translateY(0); 4620 } 4621 .section_2 nav .menu_wrapper .mobile_menu_buttons div[data-micro-template="buttons_container"] div[data-micro-template="buttons"] a.button { 4622 padding: 10px 15px; 4623 font-size: 1rem; 4624 } 4625 .section_2 nav .menu_wrapper .mobile_information { 4626 display: block; 4627 margin-top: auto; 4628 width: 100%; 4629 } 4630 .section_2 nav .menu_wrapper .mobile_information .mobile_social, 4631 .section_2 nav .menu_wrapper .mobile_information .mobile_phone, 4632 .section_2 nav .menu_wrapper .mobile_information .mobile_address { 4633 opacity: 0; 4634 transform: translateY(40px); 4635 position: relative; 4636 transition: transform 0.5s, opacity 0.5s; 4637 } 4638 .section_2 nav .menu_wrapper .mobile_information .mobile_social.active, 4639 .section_2 nav .menu_wrapper .mobile_information .mobile_phone.active, 4640 .section_2 nav .menu_wrapper .mobile_information .mobile_address.active { 4641 opacity: 1; 4642 transform: translateY(0); 4643 } 4644 .section_2 nav .menu_wrapper .mobile_information .mobile_social svg, 4645 .section_2 nav .menu_wrapper .mobile_information .mobile_social i, 4646 .section_2 nav .menu_wrapper .mobile_information .mobile_phone svg, 4647 .section_2 nav .menu_wrapper .mobile_information .mobile_phone i, 4648 .section_2 nav .menu_wrapper .mobile_information .mobile_address svg, 4649 .section_2 nav .menu_wrapper .mobile_information .mobile_address i { 4650 margin-right: 5px; 4651 } 4652 .section_2 nav .menu_wrapper .mobile_information .mobile_phone div[data-micro-template="phone"] { 4653 display: inline-block; 4654 } 4655 .section_2 nav .menu_wrapper .mobile_information .mobile_phone div[data-micro-template="tracking"] { 4656 display: inline-block; 4657 } 4658 .section_2 nav .menu_wrapper .close_icon { 4659 border: none; 4660 text-align: right; 4661 line-height: initial; 4662 padding: 10px 10px 10px 20px; 4663 display: block; 4664 cursor: pointer; 4665 box-sizing: border-box; 4666 opacity: 1; 4667 position: absolute; 4668 top: 50%; 4669 right: 0; 4670 transform: translate(0,-50%); 4671 } 4672 .section_2 nav .menu_wrapper .close_icon i, 4673 .section_2 nav .menu_wrapper .close_icon svg { 4674 font-size: 2.25rem; 4675 position: relative; 4676 color: #fff; 4677 transform: none; 4678 top: initial; 4679 right: initial; 4680 } 4681 .section_2 nav .menu_wrapper > ul { 4682 width: 100%; 4683 height: auto; 4684 padding: 0 25px; 4685 box-sizing: border-box; 4686 margin-top: var(--mobile-menu-top-spacing); 4687 } 4688 .section_2 nav .menu_wrapper > ul > li:not(:last-of-type) { 4689 margin: 0px; 4690 } 4691 .section_2 nav .menu_wrapper > ul > li:last-of-type { 4692 border-bottom: 1px solid #D2AD63; 4693 } 4694 .section_2 nav .menu_wrapper > ul > li:first-of-type { 4695 border-top: none; 4696 } 4697 .section_2 nav .menu_wrapper > ul > li { 4698 width: 100%; 4699 margin: 0px; 4700 border-top: 1px solid #D2AD63; 4701 line-height: 60px; 4702 padding: 0px; 4703 display: block; 4704 justify-content: space-between; 4705 align-items: center; 4706 opacity: 0; 4707 transition: transform 0.5s, opacity 0.5s; 4708 transform: translateY(40px); 4709 text-align: left; 4710 } 4711 .section_2 nav .menu_wrapper > ul > li svg, 4712 .section_2 nav .menu_wrapper > ul > li i { 4713 color: #fff; 4714 position: absolute; 4715 right: 0; 4716 top: 30px; 4717 transform: translate(0,-50%); 4718 transition: transform 0.3s; 4719 } 4720 .section_2 nav .menu_wrapper > ul > li.active { 4721 opacity: 1; 4722 transform: translateY(0); 4723 } 4724 .section_2 nav .menu_wrapper > ul > li .submenu_wrapper { 4725 position: relative; 4726 padding: 0; 4727 justify-content: flex-start; 4728 } 4729 .section_2 nav .menu_wrapper > ul > li .submenu_wrapper .submenu_description { 4730 display: none; 4731 } 4732 .section_2 nav .menu_wrapper > ul > li .submenu_wrapper > ul { 4733 transition: opacity 0.5s ease-in, bottom 0.5s ease; 4734 display: block; 4735 opacity: 0; 4736 padding: 0 0 20px 0; 4737 flex: 100%; 4738 } 4739 .section_2 nav .menu_wrapper > ul > li .submenu_wrapper.active > ul { 4740 opacity: 1; 4741 display: grid; 4742 grid-template-columns: repeat(1,1fr); 4743 gap: 5px 0; 4744 } 4745 .section_2 nav .menu_wrapper > ul > li[data-url="/services/"] .submenu_wrapper > ul.group_container { 4746 height: auto; 4747 } 4748 .section_2 nav .menu_wrapper > ul > li[data-url="/services/"] .submenu_wrapper > ul { 4749 grid-template-columns: repeat(1,1fr); 4750 gap: 5px 0; 4751 } 4752 .section_2 nav .menu_wrapper > ul > li a { 4753 display: inline-block; 4754 width: 100%; 4755 height: 100%; 4756 color: #fff; 4757 } 4758 .section_2 nav .menu_wrapper > ul > li > ul { 4759 padding-top: 0px; 4760 } 4761 .section_2 nav .menu_wrapper > ul > li > ul > li { 4762 width: 100%; 4763 text-align: center; 4764 } 4765 .section_2 nav .menu_wrapper > ul > li > ul > li > ul:not([data-group-container]) { 4766 position: initial; 4767 left: initial; 4768 padding-top: 20px; 4769 padding-bottom: 20px; 4770 transform: initial; 4771 text-align: center; 4772 } 4773 .section_2 nav .menu_wrapper > ul > li > ul > li > ul:not([data-group-container]) > li { 4774 line-height: 40px; 4775 width: 100%; 4776 } 4777 .section_2 nav .menu_wrapper > ul > li ul.group_container { 4778 max-width: 100%; 4779 max-height: initial; 4780 } 4781 .section_2 nav .menu_wrapper > ul > li ul.group_container > li { 4782 padding: 0; 4783 } 4784 .section_2 nav .menu_wrapper > ul > li ul.group_container > li > ul > li { 4785 text-align: left; 4786 font-size: 16px; 4787 } 4788 .section_2 nav .menu_wrapper > ul > li ul.group_container > li > ul > li h3 { 4789 font-size: 18px; 4790 margin: 0; 4791 border-bottom: 1px solid #fff; 4792 margin-bottom: 5px; 4793 padding-bottom: 5px; 4794 } 4795} 4796@media (max-width: 1024px) and (max-width: 768px) { 4797 .section_2 .menu_buttons { 4798 display: none; 4799 } 4800} 4801section[data-type="system-lightbox-container"] { 4802 transition: all 0s !important; 4803} 4804section[data-type="system-lightbox-container"].active { 4805 opacity: 1; 4806 background: rgba(0,0,0,0.6); 4807 z-index: 99; 4808} 4809</style><style>.section_2 { 4810 --group-menu-height: 320px; 4811 --group-menu-width: 1600px; 4812 --header-height: 119px; 4813 --mobile-menu-width: 450px; 4814 --nav-height: 50px; 4815 --mobile-menu-top-spacing: 10px; 4816 --mobile-menu-top-min-height: 75px; 4817 background: #1A1A1A; 4818 padding: 0px 20px; 4819 position: fixed; 4820 left: 0; 4821 top: var(--header-height); 4822 z-index: 500; 4823 transition: background 0.3s ease; 4824} 4825@media (max-width: 1024px) { 4826 .section_2 { 4827 --header-height: 60px; 4828 --nav-height: 80px; 4829 } 4830} 4831@media (max-width: 1366px) { 4832 .section_2 { 4833 --group-menu-height: 500px; 4834 --group-menu-width: 1600px; 4835 } 4836} 4837@media (max-width: 768px) { 4838 .section_2 { 4839 --header-height: 60px; 4840 --nav-height: 70px; 4841 } 4842} 4843.section_2.active:hover { 4844 background: none; 4845} 4846.section_2.active .logo { 4847 opacity: 0; 4848} 4849.section_2.background_toggle .logo { 4850 filter: brightness(0) invert(1); 4851 transition: filter 0.3s ease; 4852} 4853.section_2.background_toggle nav { 4854 color: #fff; 4855} 4856.section_2.background_toggle nav .menu_wrapper > ul > li a { 4857 color: #fff; 4858 transition: color 0.3s ease; 4859} 4860.section_2.background_toggle nav .menu_wrapper > ul > li i, 4861.section_2.background_toggle nav .menu_wrapper > ul > li svg {
4862 color: #fff; 4863 transition: color 0.3s ease; 4864} 4865.section_2.not_top { 4866 background: #1A1A1A; 4867 border-bottom: 1px solid rgba(26,26,26,0.2); 4868} 4869.section_2.not_top.active { 4870 background: none; 4871 border-bottom: none; 4872} 4873.section_2.not_top nav:after { 4874 content: ''; 4875 position: absolute; 4876 top: 0; 4877 left: 0; 4878 width: 100%; 4879 height: 100%; 4880 transition: all 0s; 4881} 4882.section_2.not_top nav.active:after { 4883 background: none; 4884} 4885.section_2.not_top.background_toggle .logo { 4886 filter: none; 4887} 4888.section_2.not_top.background_toggle nav { 4889 color: #1A1A1A; 4890} 4891.section_2.not_top.background_toggle nav .menu_wrapper > ul > li a { 4892 color: #1A1A1A; 4893} 4894.section_2.not_top.background_toggle nav .menu_wrapper > ul > li i, 4895.section_2.not_top.background_toggle nav .menu_wrapper > ul > li svg { 4896 color: #1A1A1A; 4897} 4898.section_2 .logo { 4899 position: absolute; 4900 top: 50%; 4901 left: 20px; 4902 transform: translate(0,-50%); 4903 height: var(--nav-height); 4904 transition: all 0.3s; 4905 box-sizing: border-box; 4906 padding: 5px; 4907 z-index: 150; 4908 display: none; 4909} 4910@media (max-width: 1024px) { 4911 .section_2 .logo { 4912 margin-right: 50px; 4913 display: block; 4914 } 4915} 4916.section_2 .logo a { 4917 height: 100%; 4918 width: 100%; 4919 display: flex; 4920 align-items: center; 4921} 4922.section_2 .logo img, 4923.section_2 .logo picture { 4924 height: 100%; 4925} 4926.section_2 .menu_buttons { 4927 position: absolute; 4928 right: 20px; 4929 top: 50%; 4930 transform: translate(0,-50%); 4931 z-index: 999; 4932 display: none; 4933} 4934.section_2 .menu_buttons div[data-micro-template="buttons_container"] { 4935 display: flex; 4936 gap: 0 10px; 4937} 4938.section_2 .menu_buttons div[data-micro-template="buttons_container"] div[data-micro-template="buttons"] a.button { 4939 padding: 15px; 4940} 4941.section_2 nav { 4942 display: flex; 4943 margin: 0px auto; 4944 z-index: 100; 4945 width: 100%; 4946 text-align: right; 4947 color: #fff; 4948 align-items: center; 4949 justify-content: space-between; 4950 height: var(--nav-height); 4951 box-sizing: border-box; 4952 font-size: 16px; 4953 font-family: "Montserrat"; 4954} 4955.section_2 nav a:hover { 4956 color: #D2AD63; 4957} 4958.section_2 nav.no_descriptions > .menu_wrapper > ul > li .submenu_wrapper { 4959 flex-wrap: wrap; 4960 overflow-y: auto; 4961} 4962.section_2 nav.no_descriptions > .menu_wrapper > ul > li .submenu_wrapper .submenu_description { 4963 flex-basis: 100%; 4964 text-align: center; 4965 line-height: 0; 4966 border-right: 0; 4967} 4968.section_2 nav.no_descriptions > .menu_wrapper > ul > li .submenu_wrapper .submenu_description h3 { 4969 display: inline-block; 4970 border-bottom: 1px solid rgba(171,127,41,0.5); 4971 margin-bottom: 20px; 4972 padding-bottom: 1rem; 4973 font-size: 1.5rem; 4974 text-transform: uppercase; 4975} 4976.section_2 nav.no_descriptions > .menu_wrapper > ul > li .submenu_wrapper .submenu_description p { 4977 display: none; 4978} 4979.section_2 nav.no_descriptions > .menu_wrapper > ul > li .submenu_wrapper > ul { 4980 margin: 0 auto; 4981 flex-basis: min(100%,var(--group-menu-width)); 4982 display: flex; 4983 gap: 20px 10px; 4984 justify-content: center; 4985 align-items: center; 4986 flex-wrap: wrap; 4987 flex-direction: row; 4988 padding: 0; 4989} 4990@media (max-width: 1024px) { 4991 .section_2 nav.no_descriptions > .menu_wrapper > ul > li .submenu_wrapper > ul { 4992 padding-bottom: 20px; 4993 display: grid; 4994 grid-template-columns: repeat(1,1fr); 4995 gap: 5px 0; 4996 } 4997} 4998.section_2 nav.no_descriptions > .menu_wrapper > ul > li .submenu_wrapper > ul.group_container { 4999 display: flex; 5000 flex-flow: column wrap; 5001 flex-basis: min(100%,var(--group-menu-width)); 5002 height: var(--group-menu-height); 5003 justify-content: flex-start; 5004 align-items: flex-start; 5005} 5006@media (max-width: 1024px) { 5007 .section_2 nav.no_descriptions > .menu_wrapper > ul > li .submenu_wrapper > ul.group_container { 5008 align-items: flex-start; 5009 } 5010} 5011.section_2 nav .mobile_menu { 5012 position: absolute; 5013 display: none; 5014 right: 0px; 5015 padding-right: inherit; 5016 font-size: 2rem; 5017 cursor: pointer; 5018 color: #AB7F29; 5019} 5020.section_2 nav .menu_wrapper { 5021 display: flex; 5022 margin: 0px auto; 5023 z-index: 100; 5024 width: 100%; 5025 text-align: right; 5026 color: #fff; 5027 align-items: center; 5028 justify-content: space-between; 5029 height: var(--nav-height); 5030 box-sizing: border-box; 5031 font-size: 16px; 5032 font-family: "Montserrat"; 5033} 5034.section_2 nav .menu_wrapper .mobile_menu_top { 5035 display: none; 5036} 5037.section_2 nav .menu_wrapper .mobile_menu_buttons { 5038 display: none; 5039} 5040.section_2 nav .menu_wrapper .close_icon { 5041 display: none; 5042} 5043.section_2 nav .menu_wrapper .mobile_information { 5044 display: none; 5045 box-sizing: border-box; 5046 padding: 0 25px; 5047 color: #fff; 5048 text-align: left; 5049 margin-top: 20px; 5050} 5051.section_2 nav .menu_wrapper .mobile_information .mobile_address, 5052.section_2 nav .menu_wrapper .mobile_information .mobile_phone, 5053.section_2 nav .menu_wrapper .mobile_information .mobile_social { 5054 margin-bottom: 20px; 5055} 5056.section_2 nav .menu_wrapper .mobile_information .mobile_address span, 5057.section_2 nav .menu_wrapper .mobile_information .mobile_phone span, 5058.section_2 nav .menu_wrapper .mobile_information .mobile_social span { 5059 margin-bottom: 5px; 5060 display: none; 5061 font-size: .9rem; 5062} 5063.section_2 nav .menu_wrapper .mobile_information .mobile_address a, 5064.section_2 nav .menu_wrapper .mobile_information .mobile_phone a, 5065.section_2 nav .menu_wrapper .mobile_information .mobile_social a { 5066 color: #fff; 5067} 5068.section_2 nav .menu_wrapper .mobile_information .mobile_phone.tracking span { 5069 display: block; 5070} 5071.section_2 nav .menu_wrapper .mobile_information .mobile_social > div { 5072 display: flex; 5073 justify-content: space-around; 5074 font-size: 1.8rem; 5075} 5076.section_2 nav .menu_wrapper ul { 5077 padding: 0px; 5078 margin: 0px; 5079} 5080.section_2 nav .menu_wrapper ul .submenu_wrapper { 5081 position: fixed; 5082 left: 0; 5083 width: 100%; 5084 background: #1A1A1A; 5085 transform: none; 5086 flex-direction: row; 5087 justify-content: center; 5088 padding: 30px; 5089 display: flex; 5090 box-sizing: border-box; 5091} 5092.section_2 nav .menu_wrapper ul .submenu_wrapper .submenu_description { 5093 text-align: left; 5094 border-right: 1px solid rgba(26,26,26,0.5); 5095 flex: 0 1 400px; 5096 padding-right: 20px; 5097 opacity: 0; 5098 transition: opacity 1s; 5099} 5100.section_2 nav .menu_wrapper ul .submenu_wrapper .submenu_description.active { 5101 opacity: 1; 5102} 5103.section_2 nav .menu_wrapper ul .submenu_wrapper .submenu_description h3 { 5104 margin: 0; 5105 color: #fff; 5106 line-height: initial; 5107} 5108.section_2 nav .menu_wrapper ul .submenu_wrapper .submenu_description h3 p { 5109 font-size: 1.1rem; 5110 font-weight: 400; 5111} 5112.section_2 nav .menu_wrapper ul .submenu_wrapper > ul { 5113 flex: 0 1 200px; 5114 text-align: left; 5115 padding-left: 20px; 5116 display: block; 5117 opacity: 0; 5118 transition: opacity 0.5s ease-in, bottom 0.5s ease; 5119} 5120.section_2 nav .menu_wrapper ul .submenu_wrapper > ul.active { 5121 opacity: 1; 5122} 5123.section_2 nav .menu_wrapper ul .submenu_wrapper > ul li a { 5124 color: #fff; 5125} 5126.section_2 nav .menu_wrapper ul .submenu_wrapper > ul li a:hover {
5127 color: #00FFFF; 5128} 5129.section_2 nav .menu_wrapper ul li { 5130 list-style-type: none; 5131} 5132.section_2 nav .menu_wrapper ul a { 5133 display: inline-block; 5134 width: 100%; 5135 height: 100%; 5136 color: #fff; 5137} 5138.section_2 nav .menu_wrapper ul ul { 5139 display: none; 5140 padding: 0px; 5141 flex-direction: column; 5142 position: relative; 5143 background: none; 5144} 5145.section_2 nav .menu_wrapper ul > li { 5146 padding: 0px 20px; 5147} 5148.section_2 nav .menu_wrapper ul > li > ul > ul.group_container { 5149 display: flex; 5150 flex-flow: column wrap; 5151} 5152.section_2 nav .menu_wrapper ul > li > ul > ul.group_container h3 { 5153 color: #fff; 5154 font-size: 1.5rem; 5155 margin-bottom: 10px; 5156} 5157.section_2 nav .menu_wrapper ul > li > ul > ul.group_container > li > ul { 5158 display: flex; 5159} 5160.section_2 nav .menu_wrapper ul > li > ul.group_container { 5161 width: 100%; 5162 box-sizing: border-box; 5163 max-width: 1000px; 5164 flex-direction: column; 5165 flex-wrap: wrap; 5166 left: 50%; 5167 transform: translate(-50%); 5168 max-height: 480px; 5169} 5170.section_2 nav .menu_wrapper ul > li > ul.group_container h3 { 5171 font-size: 1.25rem; 5172 font-weight: bold; 5173 margin: 0px 0px 0.5rem; 5174} 5175.section_2 nav .menu_wrapper ul > li > ul.group_container > li > ul { 5176 position: relative; 5177 display: block; 5178 background: none; 5179 margin-bottom: 0.5rem; 5180} 5181.section_2 nav .menu_wrapper ul > li > ul.group_container > li > ul > li { 5182 line-height: 40px; 5183 text-align: left; 5184} 5185.section_2 nav .menu_wrapper > ul { 5186 margin-left: auto; 5187 margin-right: auto; 5188} 5189.section_2 nav .menu_wrapper > ul > li { 5190 position: relative; 5191 transform: all 0.3s; 5192 display: inline-block; 5193 line-height: var(--nav-height); 5194 padding: 0px 20px; 5195} 5196.section_2 nav .menu_wrapper > ul > li.active { 5197 color: #00FFFF; 5198} 5199.section_2 nav .menu_wrapper > ul > li.active a { 5200 color: #00FFFF; 5201} 5202@media (max-width: 1024px) { 5203 .section_2 nav .menu_wrapper > ul > li.active a { 5204 color: #fff; 5205 } 5206} 5207.section_2 nav .menu_wrapper > ul > li.active i, 5208.section_2 nav .menu_wrapper > ul > li.active svg { 5209 color: #00FFFF; 5210} 5211@media (max-width: 1024px) { 5212 .section_2 nav .menu_wrapper > ul > li.active i, 5213 .section_2 nav .menu_wrapper > ul > li.active svg { 5214 color: #fff; 5215 } 5216} 5217.section_2 nav .menu_wrapper > ul > li > a { 5218 color: #fff; 5219 text-transform: uppercase; 5220} 5221.section_2 nav .menu_wrapper > ul > li i, 5222.section_2 nav .menu_wrapper > ul > li svg { 5223 position: absolute; 5224 right: 0; 5225 top: 50%; 5226 transform: translate(0,-50%); 5227 color: #fff; 5228 transition: transform 0.3s; 5229} 5230.section_2 nav .menu_wrapper > ul > li[data-url="/services/"] .submenu_wrapper { 5231 flex-wrap: wrap; 5232 overflow-y: auto; 5233} 5234.section_2 nav .menu_wrapper > ul > li[data-url="/services/"] .submenu_wrapper .submenu_description { 5235 flex-basis: 100%; 5236 text-align: center; 5237 line-height: 0; 5238 border-right: 0; 5239} 5240.section_2 nav .menu_wrapper > ul > li[data-url="/services/"] .submenu_wrapper .submenu_description h3 { 5241 display: inline-block; 5242 border-bottom: 1px solid rgba(171,127,41,0.5); 5243 margin-bottom: 20px; 5244} 5245.section_2 nav .menu_wrapper > ul > li[data-url="/services/"] .submenu_wrapper > ul { 5246 margin: 0 auto; 5247 flex-basis: min(100%,var(--group-menu-width)); 5248 display: grid; 5249 grid-template-columns: repeat(4,1fr); 5250 gap: 10px; 5251} 5252.section_2 nav .menu_wrapper > ul > li[data-url="/services/"] .submenu_wrapper > ul.group_container { 5253 display: flex; 5254 flex-flow: column wrap; 5255 flex-basis: min(100%,var(--group-menu-width)); 5256 height: var(--group-menu-height); 5257} 5258.section_2 nav .menu_wrapper > ul > li > ul { 5259 padding-top: 20px; 5260 padding-bottom: 20px; 5261 left: 50%; 5262 transform: translate(-50%); 5263} 5264.section_2 nav .menu_wrapper > ul > li > ul > li { 5265 line-height: 40px; 5266 width: 140px; 5267 text-align: left; 5268 text-align: center; 5269} 5270.section_2 nav .menu_wrapper > ul > li > ul > li > ul:not([data-group-container]) { 5271 position: absolute; 5272 left: 100%; 5273 padding-top: 20px; 5274 padding-bottom: 20px; 5275 transform: translate(0px,-60px); 5276} 5277.section_2 nav .menu_wrapper > ul > li > ul > li > ul:not([data-group-container]) > li { 5278 line-height: 40px; 5279 width: 140px; 5280} 5281@media (max-width: 1024px) { 5282 .section_2 .menu_buttons { 5283 right: 70px; 5284 } 5285 .section_2 .menu_buttons div[data-micro-template="buttons_container"] { 5286 display: flex; 5287 gap: 0 10px; 5288 } 5289 .section_2 nav { 5290 max-width: 100%; 5291 padding: 0px 20px; 5292 box-sizing: border-box; 5293 } 5294 .section_2 nav .mobile_menu { 5295 display: inline-block; 5296 top: 50%; 5297 transform: translate(0px,-50%); 5298 z-index: 4; 5299 } 5300 .section_2 nav ul { 5301 background: #1A1A1A; 5302 } 5303 .section_2 nav ul > li { 5304 box-sizing: border-box; 5305 } 5306 .section_2 nav ul ul { 5307 position: relative; 5308 transform: initial; 5309 } 5310 .section_2 nav .menu_wrapper { 5311 z-index: initial; 5312 position: fixed; 5313 height: 100%; 5314 width: min(90%,var(--mobile-menu-width)); 5315 top: 0; 5316 left: initial; 5317 transform: translateX(0); 5318 right: calc(var(--mobile-menu-width) * -1); 5319 text-align: center; 5320 display: flex; 5321 flex-direction: column; 5322 justify-content: flex-start;
5323 align-items: flex-end; 5324 opacity: 1; 5325 transition: transform 0.3s; 5326 box-sizing: border-box; 5327 padding: 0; 5328 overflow-y: auto; 5329 background: #1A1A1A; 5330 padding-bottom: 20px; 5331 } 5332 .section_2 nav .menu_wrapper.active { 5333 z-index: 1000; 5334 transform: translateX(calc(var(--mobile-menu-width) * -1)); 5335 } 5336 .section_2 nav .menu_wrapper .mobile_menu_top { 5337 position: sticky; 5338 background: #1A1A1A; 5339 width: 100%; 5340 top: 0; 5341 z-index: 99; 5342 border-bottom: 1px solid #AB7F29; 5343 display: block; 5344 box-sizing: border-box; 5345 padding: 10px 0 0 0; 5346 min-height: var(--mobile-menu-top-min-height); 5347 } 5348 .section_2 nav .menu_wrapper .mobile_menu_top .mobile_logo { 5349 text-align: left; 5350 filter: none; 5351 margin-left: 10px; 5352 } 5353 .section_2 nav .menu_wrapper .mobile_menu_top .mobile_logo img, 5354 .section_2 nav .menu_wrapper .mobile_menu_top .mobile_logo picture { 5355 width: min(100%,200px); 5356 } 5357 .section_2 nav .menu_wrapper .mobile_menu_buttons { 5358 display: none; 5359 width: 100%; 5360 } 5361 .section_2 nav .menu_wrapper .mobile_menu_buttons div[data-micro-template="buttons_container"] { 5362 display: flex; 5363 justify-content: flex-start; 5364 gap: 0 10px; 5365 padding: 0 25px; 5366 box-sizing: border-box; 5367 opacity: 0; 5368 transform: translateY(40px); 5369 transition: transform 0.5s ease, opacity 0.5s ease; 5370 position: relative; 5371 } 5372 .section_2 nav .menu_wrapper .mobile_menu_buttons div[data-micro-template="buttons_container"].active { 5373 opacity: 1; 5374 transform: translateY(0); 5375 } 5376 .section_2 nav .menu_wrapper .mobile_menu_buttons div[data-micro-template="buttons_container"] div[data-micro-template="buttons"] a.button { 5377 padding: 10px 15px; 5378 font-size: 1rem; 5379 } 5380 .section_2 nav .menu_wrapper .mobile_information { 5381 display: block; 5382 margin-top: auto; 5383 width: 100%; 5384 } 5385 .section_2 nav .menu_wrapper .mobile_information .mobile_social, 5386 .section_2 nav .menu_wrapper .mobile_information .mobile_phone, 5387 .section_2 nav .menu_wrapper .mobile_information .mobile_address { 5388 opacity: 0; 5389 transform: translateY(40px); 5390 position: relative; 5391 transition: transform 0.5s, opacity 0.5s; 5392 } 5393 .section_2 nav .menu_wrapper .mobile_information .mobile_social.active, 5394 .section_2 nav .menu_wrapper .mobile_information .mobile_phone.active, 5395 .section_2 nav .menu_wrapper .mobile_information .mobile_address.active { 5396 opacity: 1; 5397 transform: translateY(0); 5398 } 5399 .section_2 nav .menu_wrapper .mobile_information .mobile_social svg, 5400 .section_2 nav .menu_wrapper .mobile_information .mobile_social i, 5401 .section_2 nav .menu_wrapper .mobile_information .mobile_phone svg, 5402 .section_2 nav .menu_wrapper .mobile_information .mobile_phone i, 5403 .section_2 nav .menu_wrapper .mobile_information .mobile_address svg, 5404 .section_2 nav .menu_wrapper .mobile_information .mobile_address i { 5405 margin-right: 5px; 5406 } 5407 .section_2 nav .menu_wrapper .mobile_information .mobile_phone div[data-micro-template="phone"] { 5408 display: inline-block; 5409 } 5410 .section_2 nav .menu_wrapper .mobile_information .mobile_phone div[data-micro-template="tracking"] { 5411 display: inline-block; 5412 } 5413 .section_2 nav .menu_wrapper .close_icon { 5414 border: none; 5415 text-align: right; 5416 line-height: initial; 5417 padding: 10px 10px 10px 20px; 5418 display: block; 5419 cursor: pointer; 5420 box-sizing: border-box; 5421 opacity: 1; 5422 position: absolute; 5423 top: 50%; 5424 right: 0; 5425 transform: translate(0,-50%); 5426 } 5427 .section_2 nav .menu_wrapper .close_icon i, 5428 .section_2 nav .menu_wrapper .close_icon svg { 5429 font-size: 2.25rem; 5430 position: relative; 5431 color: #AB7F29; 5432 transform: none; 5433 top: initial; 5434 right: initial; 5435 } 5436 .section_2 nav .menu_wrapper > ul { 5437 width: 100%; 5438 height: auto; 5439 padding: 0 25px; 5440 box-sizing: border-box; 5441 margin-top: var(--mobile-menu-top-spacing); 5442 } 5443 .section_2 nav .menu_wrapper > ul > li:not(:last-of-type) { 5444 margin: 0px; 5445 } 5446 .section_2 nav .menu_wrapper > ul > li:last-of-type { 5447 border-bottom: 1px solid #D2AD63; 5448 } 5449 .section_2 nav .menu_wrapper > ul > li:first-of-type { 5450 border-top: none; 5451 } 5452 .section_2 nav .menu_wrapper > ul > li { 5453 width: 100%; 5454 margin: 0px; 5455 border-top: 1px solid #D2AD63; 5456 line-height: 60px; 5457 padding: 0px; 5458 display: block; 5459 justify-content: space-between; 5460 align-items: center; 5461 opacity: 0; 5462 transition: transform 0.5s, opacity 0.5s; 5463 transform: translateY(40px); 5464 text-align: left; 5465 } 5466 .section_2 nav .menu_wrapper > ul > li svg, 5467 .section_2 nav .menu_wrapper > ul > li i { 5468 color: #fff; 5469 position: absolute; 5470 right: 0; 5471 top: 30px; 5472 transform: translate(0,-50%); 5473 transition: transform 0.3s; 5474 } 5475 .section_2 nav .menu_wrapper > ul > li.active { 5476 opacity: 1; 5477 transform: translateY(0); 5478 } 5479 .section_2 nav .menu_wrapper > ul > li .submenu_wrapper { 5480 position: relative; 5481 padding: 0; 5482 justify-content: flex-start; 5483 } 5484 .section_2 nav .menu_wrapper > ul > li .submenu_wrapper .submenu_description { 5485 display: none; 5486 } 5487 .section_2 nav .menu_wrapper > ul > li .submenu_wrapper > ul { 5488 transition: opacity 0.5s ease-in, bottom 0.5s ease; 5489 display: block; 5490 opacity: 0; 5491 padding: 0 0 20px 0; 5492 flex: 100%; 5493 } 5494 .section_2 nav .menu_wrapper > ul > li .submenu_wrapper.active > ul { 5495 opacity: 1; 5496 display: grid; 5497 grid-template-columns: repeat(1,1fr); 5498 gap: 5px 0; 5499 } 5500 .section_2 nav .menu_wrapper > ul > li[data-url="/services/"] .submenu_wrapper > ul.group_container { 5501 height: auto; 5502 } 5503 .section_2 nav .menu_wrapper > ul > li[data-url="/services/"] .submenu_wrapper > ul { 5504 grid-template-columns: repeat(1,1fr); 5505 gap: 5px 0; 5506 } 5507 .section_2 nav .menu_wrapper > ul > li a { 5508 display: inline-block; 5509 width: 100%; 5510 height: 100%; 5511 color: #fff; 5512 } 5513 .section_2 nav .menu_wrapper > ul > li > ul { 5514 padding-top: 0px; 5515 } 5516 .section_2 nav .menu_wrapper > ul > li > ul > li { 5517 width: 100%; 5518 text-align: center; 5519 } 5520 .section_2 nav .menu_wrapper > ul > li > ul > li > ul:not([data-group-container]) { 5521 position: initial; 5522 left: initial; 5523 padding-top: 20px; 5524 padding-bottom: 20px; 5525 transform: initial; 5526 text-align: center; 5527 } 5528 .section_2 nav .menu_wrapper > ul > li > ul > li > ul:not([data-group-container]) > li { 5529 line-height: 40px; 5530 width: 100%; 5531 } 5532 .section_2 nav .menu_wrapper > ul > li ul.group_container { 5533 max-width: 100%; 5534 max-height: initial; 5535 } 5536 .section_2 nav .menu_wrapper > ul > li ul.group_container > li { 5537 padding: 0; 5538 } 5539 .section_2 nav .menu_wrapper > ul > li ul.group_container > li > ul > li { 5540 text-align: left; 5541 font-size: 16px; 5542 } 5543 .section_2 nav .menu_wrapper > ul > li ul.group_container > li > ul > li h3 { 5544 font-size: 18px; 5545 margin: 0; 5546 border-bottom: 1px solid #fff; 5547 margin-bottom: 5px; 5548 padding-bottom: 5px; 5549 } 5550} 5551@media (max-width: 1024px) and (max-width: 768px) { 5552 .section_2 .menu_buttons { 5553 display: none; 5554 } 5555} 5556section[data-type="system-lightbox-container"] { 5557 transition: all 0s !important; 5558} 5559section[data-type="system-lightbox-container"].active { 5560 opacity: 1; 5561 background: rgba(0,0,0,0.6); 5562 z-index: 99; 5563} 5564</style><section class="section_2" data-module="griffin_menu" data-html="" data-json="/custom/modules/griffin_menu/module.json" data-page="team" data-full-path="/team/"> 5565 <div class="logo"> 5566 <a href="/" aria-label="link"><picture><source srcset="/cache/sm-custom_images_logo_5.webp 420w, /cache/md-custom_images_logo_5.webp 640w, /cache/custom_images_logo_5.webp 896w" sizes="(max-width: 420px) 100v
5566w, (max-width: 640px) 100vw, 896px" data-lazy-picture="false" type="image/webp"><img alt="Iconic Dental Arts | Intraoral Camera, Dentures and CBCT" class="" src="/custom/images/logo-5.png" data-lazy-img="false" data-src="/custom/images/logo-5.png"></picture></a> 5567 </div> 5568 <nav> 5569 <div class="mobile_menu"><i class="fas fa-bars"></i></div><div class="menu_wrapper"><div class="mobile_menu_top"><a href="/" class="mobile_logo" aria-label="link"><picture><source srcset="/cache/sm-custom_images_logo_5.webp 420w, /cache/md-custom_images_logo_5.webp 640w, /cache/custom_images_logo_5.webp 896w" sizes="(max-width: 420px) 100vw, (max-width: 640px) 100vw, 896px" data-lazy-picture="false" type="image/webp"><img alt="Iconic Dental Arts | Intraoral Camera, Dentures and CBCT" class="" src="/custom/images/logo-5.png" data-lazy-img="false" data-src="/custom/images/logo-5.png"></picture></a><div class="close_icon"><i class="fal fa-times"></i></div></div><ul><li data-url="/" data-label="About Us" data-new-window="" data-group="" data-group-label="" aria-haspopup="true">About Us<ul><li data-url="/our-office/" data-label="Our Office" data-new-window="" data-group="" data-group-label="">Our Office</li><li data-url="/team/" data-label="Our Team" data-new-window="" data-group="" data-group-label="">Our Team</li><li data-url="/tour/" data-label="Office Tour" data-new-window="" data-group="" data-group-label="">Office Tour</li><li data-url="/iconic-technology/" data-label="Iconic Technology" data-new-window="" data-group="" data-group-label="">Iconic Technology</li></ul></li><li data-url="/staff/dr-joe-isaacson/" data-label="Our Doctor" data-new-window="" data-group="" data-group-label="">Our Doctor</li><li data-url="/services/" data-label="Services" data-new-window="" data-group="" data-group-label="" aria-haspopup="true">Services<ul><li data-url="/services/dental-cleanings/" data-label="Dental Cleanings" data-group="general" data-group-label="General">Dental Cleanings</li><li data-url="/services/emergency-treatment/" data-label="Emergency Treatment" data-group="general" data-group-label="General">Emergency Treatment</li><li data-url="/services/night-guards/" data-label="Night Guards" data-group="general" data-group-label="General">Night Guards</li><li data-url="/services/oral-cancer-screening/" data-label="Oral Cancer Screening" data-group="general" data-group-label="General">Oral Cancer Screening</li><li data-url="/services/oral-exams/" data-label="Oral Exams" data-group="general" data-group-label="General">Oral Exams</li><li data-url="/services/pediatric-dentistry/" data-label="Pediatric Dentistry" data-group="general" data-group-label="General">Pediatric Dentistry</li><li data-url="/services/periodontal-treatment/" data-label="Periodontal Treatment" data-group="general" data-group-label="General">Periodontal Treatment</li><li data-url="/services/preventative-program/" data-label="Preventative Program" data-group="general" data-group-label="General">Preventative Program</li><li data-url="/services/root-canals/" data-label="Root Canals" data-group="general" data-group-label="General">Root Canals</li><li data-url="/services/sedation-dentistry/" data-label="Sedation Dentistry" data-group="general" data-group-label="General">Sedation Dentistry</li><li data-url="/services/tmj-disorders/" data-label="TMJ Disorders" data-group="general" data-group-label="General">TMJ Disorders</li><li data-url="/services/all-on-4/" data-label="All-on-4®" data-group="restorative" data-group-label="Restorative">All-on-4®</li><li data-url="/services/dental-bridges/" data-label="Dental Bridges" data-group="restorative" data-group-label="Restorative">Dental Bridges</li><li data-url="/services/dental-fillings/" data-label="Dental Fillings" data-group="restorative" data-group-label="Restorative">Dental Fillings</li><li data-url="/services/dentures/" data-label="Dentures" data-group="restorative" data-group-label="Restorative">Dentures</li><li data-url="/services/implant-dentistry/" data-label="Implant Dentistry" data-group="restorative" data-group-label="Restorative">Implant Dentistry</li><li data-url="/services/implant-restorations/" data-label="Implant Restorations" data-group="restorative" data-group-label="Restorative">Implant Restorations</li><li data-url="/services/invisalign/" data-label="Invisalign®" data-group="cosmetic" data-group-label="Cosmetic">
5569Invisalign®</li><li data-url="/services/smile-gallery/" data-label="Smile Gallery" data-group="cosmetic" data-group-label="Cosmetic">Smile Gallery</li><li data-url="/services/teeth-whitening/" data-label="Teeth Whitening" data-group="cosmetic" data-group-label="Cosmetic">Teeth Whitening</li><li data-url="/services/ovejet/" data-label="Overjet" data-group="technology2" data-group-label="Technology">Overjet</li></ul></li><li data-url="/technology/" data-label="Same Day Crowns" data-new-window="" data-group="" data-group-label="">Same Day Crowns</li><li data-url="/" data-label="For Patients" data-new-window="" data-group="" data-group-label="" aria-haspopup="true">For Patients<ul><li data-url="/new-patients/" data-label="New Patient Info" data-new-window="" data-group="" data-group-label="">New Patient Info</li><li data-url="/financing/" data-label="Financing Options" data-new-window="" data-group="" data-group-label="">Financing Options</li><li data-url="/post-op-instructions/" data-label="Post Op Instructions" data-new-window="" data-group="" data-group-label="">Post Op Instructions</li><li data-url="/smile-gallery/" data-label="Smile Gallery" data-new-window="" data-group="" data-group-label="">Smile Gallery</li><li data-url="/library/" data-label="Dental Health" data-new-window="" data-group="" data-group-label="">Dental Health</li><li data-url="/videos/" data-label="Dental Videos" data-new-window="" data-group="" data-group-label="">Dental Videos</li></ul></li><li data-url="https://joe-isaacson-dental.illumitrac.com/" data-label="Iconic Benefits" data-new-window="" data-group="" data-group-label="">Iconic Benefits</li><li data-url="/contact/" data-label="Contact" data-new-window="" data-group="" data-group-label="">Contact</li></ul><div class="mobile_menu_buttons"><div data-micro-template="buttons_container"> 5570 <div data-micro-template="buttons"> 5571 <a class="button" href="/appointments/" role="button" aria-label="Request Appointment">Request Appointment</a> 5572</div> 5573</div></div><div class="mobile_information"><div class="mobile_address"><span>Address:</span> <i class="fal fa-map-marker-alt"></i> 8200 N May Ave, Oklahoma City, OK 73120</div><div class="mobile_phone"><span>Phone:</span> <i class="fal fa-phone"></i> <div data-micro-template="phone"> 5574 <a href="tel:+14059438575" aria-label="(405) 943-8575" class="tel_14059438575" data-click-call="0">(405) 943-8575</a> 5575</div></div><div class="mobile_social"> <div data-micro-template="social_icons_dynamic"> 5576 <div data-micro-template="social_icons"> 5577 <a href="https://www.facebook.com/iconicdentalarts" aria-label="link" rel="noopener" target="_blank"><i class="fab fa-facebook-f"></i></a> 5578</div><div data-micro-template="social_icons"> 5579 <a href="https://www.google.com/maps/place/Joe+Isaacson+Dental/@35.554294,-97.566513,15z/data=!4m7!3m6!1s0x0:0x761eb4fe3d53e6c0!8m2!3d35.554294!4d-97.566513!9m1!1b1" aria-label="link" rel="noopener" target="_blank"><i class="fab fa-google"></i></a> 5580</div><div data-micro-template="social_icons"> 5581 <a href="https://twitter.com/BlendedDentist" aria-label="link" rel="noopener" target="_blank"><i class="fab fa-twitter"></i></a> 5582</div><div data-micro-template="social_icons"> 5583 <a href="https://www.instagram.com/iconicdentalarts" aria-label="link" rel="noopener" target="_blank"><i class="fab fa-instagram"></i></a> 5584</div><div data-micro-template="social_icons"> 5585 <a href="https://www.youtube.com/channel/UCmOTKQniQLiN6srHU8tiX4w" aria-label="link" rel="noopener" target="_blank"><i class="fab fa-youtube"></i></a> 5586</div><div data-micro-template="social_icons"> 5587 <a href="/blog/" aria-label="link"><i class="fas fa-blog"></i></a> 5588</div> 5589</div></div></div></div> </nav> 5590 <div class="menu_buttons"><div data-micro-template="buttons_container"> 5591 <div data-micro-template="buttons"> 5592 <a class="button" href="/appointments/" role="button" aria-label="Request Appointment">Request Appointment</a> 5593</div> 5594</div></div></section>
5594<script> 5595 javascript.prototype[get_id()] = function() { 5596 var json = {"settings":{"group_labels":{"group_1":"Group 1","group_2":"Group 2","group_3":"Group 3","group_4":"Group 4","group_5":"Group 5"},"submenu_icon":"fas fa-caret-down","background_color_toggle":false,"swipe_close_threshold":100,"use_descriptions":false,"mobile_logo":true,"mobile_address":true,"mobile_social":true,"mobile_phone":true,"mobile_tracking":false,"menu_buttons":true,"menu_buttons_content":[{"label":"Request Appointment","url":"\/appointments\/"}]},"content":{"menu":[{"label":"About Us","group":"","url":"\/","description":"This is a description that should not be displaying since I have use descriptions set to false.","menu":[{"label":"Our Office","url":"\/our-office\/"},{"label":"Our Team","url":"\/team\/"},{"label":"Office Tour","url":"\/tour\/"},{"label":"Iconic Technology","url":"\/iconic-technology\/"}]},{"label":"Our Doctor","url":"\/staff\/dr-joe-isaacson\/","description":"","group":""},{"label":"Services","url":"\/services\/","description":"","menu":"services","group":""},{"label":"Same Day Crowns","url":"\/technology\/","description":"","menu":"","group":""},{"label":"For Patients","group":"","description":"","url":"\/","menu":[{"label":"New Patient Info","url":"\/new-patients\/"},{"label":"Financing Options","url":"\/financing\/"}
5596,{"label":"Post Op Instructions","url":"\/post-op-instructions\/"},{"label":"Smile Gallery","url":"\/smile-gallery\/"},{"label":"Dental Health","url":"\/library\/"},{"label":"Dental Videos","url":"\/videos\/"}]},{"label":"Iconic Benefits","url":"https:\/\/joe-isaacson-dental.illumitrac.com\/"},{"label":"Contact","grouP":"","description":"","url":"\/contact\/"}]}}; 5597 var descriptionElements = []; 5598 var menuElements = []; 5599 var submenu_icon = json.settings.submenu_icon || "fas fa-caret-down"; 5600 var backgroundColorToggle = json.settings.background_color_toggle 5601 var menu_break = parseInt('1024px'.replace(/\D/g,'')); 5602 var useDescriptions = json.settings.use_descriptions; 5603 var menuWrapper = $('.section_2 nav > .menu_wrapper'); 5604 var mobileMenu = $('.section_2 .mobile_menu'); 5605 var baseNavElements = $('.section_2 nav > .menu_wrapper > ul > li'); 5606 var navElement = $('.section_2 nav'); 5607 var touchStartX; 5608 var touchStartY; 5609 var swipeCloseThreshold = json.settings.touch_threshold || 100; 5610 var openMenu = false; 5611 5612 // If background color toggle is true, make the logo + nav elements the background color until you scroll 5613 if(backgroundColorToggle) { 5614 $('.section_2').addClass('background_toggle'); 5615 } 5616 5617 // If the menu JSON is using the descriptions, this creates an array of them and sets a base class for styling 5618 if(!useDescriptions) { 5619 navElement.addClass('no_descriptions'); 5620 } 5621 $.each(json.content.menu, function(index, element) { 5622 if(element.hasOwnProperty('description')) { 5623 descriptionElements.push(element); 5624 } 5625 if(element.hasOwnProperty('menu') && element.menu.length) { 5626 menuElements.push(element); 5627 } 5628 }); 5629 5630 // Wrap all of the menu inner UL's with the submenu wrapper that houses the descriptions 5631 $('.section_2 > nav > .menu_wrapper > ul > li > ul').wrap("<ul class='submenu_wrapper' style='display: none'>"); 5632 5633 // Add the carrot icons to the side of nav items that have menus 5634 $('.section_2 > nav > .menu_wrapper > ul > li:has(> ul)').each(function () { 5635 var $fa = `<i class="menu_icon ${submenu_icon}">`; 5636 $(this).append($fa); 5637 }); 5638 5639 // Add the array of descriptions to the actual menu 5640 $('.submenu_wrapper').each(function(index) { 5641 $(this).prepend(` 5642 <div class="submenu_description"> 5643 <h3>${menuElements[index].label} 5644 <p>${descriptionElements[index].description} 5645 5646 `); 5647 }); 5648 5649 // Convert LI elements to links 5650 $('.section_2 nav *[data-url]:not([data-url=""])').each(function() { 5651 $(this).contents().filter(function() { 5652 return this.nodeType == 3; 5653 }) 5654 .replaceWith('<a href="'+$(this).attr('data-url')+'">'+$(this).attr('data-label')+''); 5655 if ($(this).attr('data-url').includes('http')) { 5656 $(this).children('a').attr('target', '_blank'); 5657 $(this).children('a').attr('rel', 'noopener'); 5658 } 5659 }); 5660 5661 // Find UL elements containing groups and categorize them 5662 $('.section_2 nav ul > li').each(function() { 5663 if ($(this).attr('data-group')) { 5664 var parent_ul = $(this).closest('ul'); 5665 var group = $(this).attr('data-group') 5666 5667 $(parent_ul).addClass('group_container'); 5668 5669 if ($(this).siblings('li[data-group-container="'+group+'"]').length == 0) { 5670 group_container_li = 5671 $('<li />') 5672 .attr('data-group-container', group) 5673 .appendTo(parent_ul); 5674 5675 group_container_ul = 5676 $('<ul />') 5677 .attr('data-group-container', group) 5678 .appendTo(group_container_li); 5679 5680 group_label = 5681 $('<li />') 5682 .appendTo(group_container_ul); 5683 5684 group_header = 5685 $('<h3 />') 5686 .html($(this).attr('data-group-label')) 5687 .appendTo(group_label); 5688 } 5689 5690 $(this).appendTo($(this).siblings('li[data-group-container="'+group+'"]').children('ul[data-group-container="'+group+'"]')); 5691 } 5692 }); 5693 5694 $('.section_2 nav > .menu_wrapper > ul > li > ul > li:not([data-group-container])').each(function() { 5695 $(this).closest('ul').closest('li').css('position', 'relative'); 5696 }); 5697 5698 // Set click and hover events 5699 {/* $('.section_2 nav li:not([data-group-container]):has(> ul)').mouseover(function(e) { 5700 if (mobileMenu.css('display') == 'none' && $(this).hasClass('active') == false) { 5701 let activeEl = $(this); 5702 $('.section_2 nav > .menu_wrapper > ul > li').each(function(el) { 5703 $(this).removeClass('active'); 5704 $(this).find('.menu_icon').css('transform', 'translate(0, -50%) rotate(0deg)'); 5705 $(this).find('.submenu_wrapper > ul').removeClass('active'); 5706 $(this).find('.submenu_description').removeClass('active'); 5707 $('> .submenu_wrapper', this).stop().slideUp(function() { 5708 }); 5709 }); 5710 5711 $(this).addClass('active'); 5712 $(this).find('.menu_icon').css('transform', 'translate(0, -50%) rotate(-180deg)'); 5713 $('> .submenu_wrapper', this).stop().slideDown(function() { 5714 $(this).css('display', 'flex'); 5715 }); 5716 $(this).find('.submenu_description').toggleClass('active'); 5717 setTimeout(function() { 5718 activeEl.find('.submenu_wrapper > ul').addClass('active'); 5719 }, 100); 5720 } 5721 }); */} 5722 5723 $('.section_2 nav li:not([data-group-container]):has(> ul)').click(function(e) { 5724 if (mobileMenu.css('display') == 'none' && $(this).hasClass('active') == false) { 5725 let activeEl = $(this); 5726 openMenu = true; 5727 $('.section_2 nav > .menu_wrapper > ul > li').each(function(el) { 5728 $(this).removeClass('active'); 5729 $(this).find('.menu_icon').css('transform', 'translate(0, -50%) rotate(0deg)'); 5730 $(this).find('.submenu_wrapper > ul').removeClass('active'); 5731 $(this).find('.submenu_description').removeClass('active'); 5732 $('> .submenu_wrapper', this).stop().slideUp(0, function() { 5733 }); 5734 }); 5735 5736 $(this).addClass('active'); 5737 $(this).find('.menu_icon').css('transform', 'translate(0, -50%) rotate(-180deg)'); 5738 $('> .submenu_wrapper', this).stop().slideDown(function() { 5739 $(this).css('display', 'flex'); 5740 }); 5741 $(this).find('.submenu_description').toggleClass('active'); 5742 setTimeout(function() { 5743 activeEl.find('.submenu_wrapper > ul').addClass('active'); 5744 }, 100); 5745 } 5746 else if (mobileMenu.css('display') == 'none' && $(this).hasClass('active') == true) { 5747 $(this).removeClass('active'); 5748 $(this).find('.submenu_wrapper > ul').removeClass('active'); 5749 $(this).find('.submenu_description').removeClass('active'); 5750 $(this).find('.menu_icon').css('transform', 'translate(0, -50%)'); 5751 $('> .submenu_wrapper', this).stop().slideUp(0); 5752 openMenu = false;
5753 } 5754 else { 5755 if(!$(this).find('.submenu_wrapper').hasClass('active')) { 5756 $('.section_2 nav > .menu_wrapper > ul > li > .submenu_wrapper').slideUp().removeClass('active'); 5757 $('.section_2 nav > .menu_wrapper > ul > li .menu_icon').css('transform', 'translate(0, -50%) rotate(0deg)'); 5758 let clicked = $(this); 5759 setTimeout(function() { 5760 clicked.find('.submenu_wrapper').slideToggle().toggleClass('active'); 5761 clicked.find('.menu_icon').css('transform', 'translate(0, -50%) rotate(-180deg)'); 5762 }, 10) 5763 } 5764 else { 5765 $(this).find('.submenu_wrapper').slideToggle().toggleClass('active'); 5766 $(this).find('.menu_icon').css('transform', 'translate(0, -50%) rotate(0deg)'); 5767 } 5768 } 5769 }); 5770 5771 // Set mobile events and click behavior 5772 $('.section_2 nav > .menu_wrapper .close_icon').click(function() { 5773 closeMobileMenu(); 5774 }); 5775 5776 $('.section_2 nav .mobile_menu').click(function() { 5777 openMobileMenu(); 5778 }); 5779 5780 $('.section_2 nav > .menu_wrapper > ul > li:has(>ul) > a').click(function(e) { 5781 if($(this).attr('href')) { 5782 e.preventDefault(); 5783 } 5784 }); 5785 5786 $('.section_2 nav li > ul > li').click(function(e) { 5787 e.stopPropagation(); 5788 }); 5789 5790 // Assign an event listener that sets up clicking outside the active mobile menu to close it 5791 window.addEventListener('click', function(e) { 5792 if(menuWrapper.hasClass('active') && !$(e.target).closest('.menu_wrapper').length && !$(e.target).closest('.mobile_menu').length) { 5793 closeMobileMenu(); 5794 } 5795 if (openMenu && (mobileMenu.css('display') == 'none') && !$(e.target).closest('.menu_wrapper').length) { 5796 baseNavElements.each(function(el) { 5797 if($(this).hasClass('active')) { 5798 $(this).removeClass('active'); 5799 $(this).find('.submenu_wrapper > ul').removeClass('active'); 5800 $(this).find('.submenu_description').removeClass('active'); 5801 $(this).find('.menu_icon').css('transform', 'translate(0, -50%)'); 5802 $('> .submenu_wrapper', this).stop().slideUp(0); 5803 } 5804 }); 5805 } 5806 }); 5807 5808 window.addEventListener('touchstart', function(e) { 5809 if(menuWrapper.hasClass('active') && !$(e.target).closest('.menu_wrapper').length && !$(e.target).closest('.mobile_menu').length) { 5810 closeMobileMenu(); 5811 } 5812 }) 5813 5814 // Assigns an event listener so you can use the escape key to close the mobile menu 5815 document.onkeydown = (e) => { 5816 if (menuWrapper.hasClass('active')) { 5817 if (e.keyCode == 27) { 5818 closeMobileMenu(); 5819 } 5820 } 5821 } 5822 5823 // Close the menu on horizontal resize 5824 var window_width = window.innerWidth; 5825 window.addEventListener('resize', function() { 5826 if (window.innerWidth == window_width) { 5827 return; 5828 } 5829 else { 5830 if ($('.section_2 nav .mobile_menu').css('display') == 'none' ) { 5831 removeActive(); 5832 baseNavElements.each(function(el) { 5833 $(this).removeClass('active'); 5834 $(this).find('.menu_icon').css('transform', 'translate(0, -50%) rotate(0deg)'); 5835 $('> ul', this).stop().fadeOut(200); 5836 }); 5837 } 5838 else { 5839 closeMobileMenu(); 5840 } 5841 } 5842 window_width = window.innerWidth; 5843 }); 5844 5845 // Iterate over elements and stagger adding active class 5846 function iterateActive(elements){ 5847 var i = 0; 5848 addActive(elements[i++]); 5849 var interval = setInterval(function(){ 5850 addActive(elements[i++]); 5851 if(i == elements.length) { 5852 clearInterval(interval); 5853 } 5854 }, 50); 5855 } 5856 5857 // Runs through the nav structure and removes all active classes 5858 function removeActive() { 5859 baseNavElements.removeClass('active'); 5860 baseNavElements.find('.submenu_description').removeClass('active'); 5861 baseNavElements.find('.submenu_wrapper > ul').removeClass('active'); 5862 } 5863 5864 // Add active class to element 5865 function addActive(element) { 5866 element.classList.add('active'); 5867 } 5868 5869 // Toggles the dark background for the page while the menu is open 5870 function toggleLightboxOverlay(remove) { 5871 if(remove && remove.length) { 5872 $('section[data-type="system-lightbox-container"]').removeClass('active'); 5873 } 5874 else { 5875 $('section[data-type="system-lightbox-container"]').toggleClass('active'); 5876 } 5877 } 5878 5879 // Closes mobile menu, removes neccessary classes, and toggles off the lightbox overlay 5880 function closeMobileMenu() { 5881 menuWrapper.removeClass('active'); 5882 navElement.removeClass('active'); 5883 $('.section_2').removeClass('active'); 5884 baseNavElements.find('.submenu_wrapper').removeClass('active') 5885 $('.section_2 nav > .menu_wrapper > .mobile_information > div').removeClass('active'); 5886 $('.section_2 nav > .menu_wrapper > .mobile_menu_buttons > div').removeClass('active'); 5887 baseNavElements.each(function(el) { 5888 $(this).removeClass('active'); 5889 $(this).find('.menu_icon').css('transform', 'translate(0, -50%) rotate(0deg)'); 5890 $('> ul', this).stop().fadeOut(200); 5891 }); 5892 toggleLightboxOverlay('remove'); 5893 $('html').css('overflow', 'visible'); 5894 window.removeEventListener('touchstart', swipeCloseStart, true); 5895 window.removeEventListener('touchend', swipeCloseEnd, true) 5896 } 5897 5898 // Opens the mobile menu, adds active class, and toggles the lightbox overlay 5899 function openMobileMenu() { 5900 toggleLightboxOverlay(); 5901 menuWrapper.toggleClass('active'); 5902 $('html').css('overflow', 'hidden'); 5903 $('.section_2').addClass('active'); 5904 navElement.addClass('active'); 5905 setTimeout(function() { 5906 iterateActive(document.querySelectorAll('.section_2 nav > .menu_wrapper > ul > li')); 5907 }, 200) 5908 if(json.settings.menu_buttons) { 5909 setTimeout(function() { 5910 $('.section_2 nav > .menu_wrapper > .mobile_menu_buttons > div').addClass('active'); 5911 }, 300) 5912 } 5913 if(json.settings.mobile_address || json.settings.mobile_social || json.settings.mobile_phone) { 5914 setTimeout(function() { 5915 iterateActive(document.querySelectorAll('.section_2 nav > .menu_wrapper > .mobile_information > div')); 5916 }, 400) 5917 } 5918 window.addEventListener('touchstart', swipeCloseStart, true); 5919 window.addEventListener('touchend', swipeCloseEnd, true) 5920 } 5921 5922 function swipeCloseStart(e) { 5923 touchStartX = e.touches[0].clientX; 5924 } 5925 5926 function swipeCloseEnd(e) { 5927 touchEnd = e.changedTouches[0].clientX; 5928 touchDiff = touchStartX - touchEnd; 5929 absDiff = Math.abs(touchStartX - touchEnd); 5930 5931 if (touchDiff < 0 && absDiff > swipeCloseThreshold) { 5932 closeMobileMenu(); 5933 } 5934 5935 touchStartX, touchEnd, touchDiff, absDiff = 0; 5936 } 5937 } 5938</script>
vendor: 1 bytes, line 5938
5938
5939<script> 5940 javascript.prototype[get_id()] = function() { 5941 $(document).scroll(function() { 5942 var position = $(document).scrollTop(); 5943 5944 if (position > 100) { 5945 if (!$('.section_2').hasClass('not_top')) { 5946 $('.section_2').addClass('not_top'); 5947 } 5948 } 5949 else { 5950 if ($('.section_2').hasClass('not_top')) { 5951 $('.section_2').removeClass('not_top'); 5952 } 5953 } 5954 }); 5955 } 5956</script>
5956<style>.section_3 .block_container .block { 5957 height: 620px; 5958 background-size: cover; 5959 background-position: center center; 5960 display: flex; 5961 justify-content: center; 5962 align-items: flex-end; 5963 padding: 0px 40px; 5964 box-sizing: border-box; 5965 text-align: center; 5966} 5967.section_3 .block_container .block h1 { 5968 color: white; 5969 position: relative; 5970 z-index: 30; 5971 margin-bottom: 60px; 5972} 5973.section_3 .block_container .block .background_gradient { 5974 overflow: hidden; 5975 width: 100%; 5976 height: 100%; 5977 position: absolute; 5978 z-index: 20; 5979 background-image: linear-gradient(to bottom right,rgba(26,26,26,0.4),rgba(26,26,26,0.3)); 5980} 5981.section_3 .block_container .block .background_container { 5982 overflow: hidden; 5983 width: 100%; 5984 height: 100%; 5985 position: absolute; 5986 z-index: 10; 5987} 5988@media (max-width: 1280px) { 5989 .section_3 .block_container .block h1 { 5990 font-size: 4rem; 5991 } 5992} 5993@media (max-width: 1024px) { 5994 .section_3 .block_container .block { 5995 height: 520px; 5996 } 5997 .section_3 .block_container .block h1 { 5998 font-size: 3.5rem; 5999 } 6000} 6001@media (max-width: 768px) { 6002 .section_3 .block_container .block { 6003 height: 420px; 6004 } 6005 .section_3 .block_container .block h1 { 6006 font-size: 2.5rem; 6007 } 6008} 6009@media (max-width: 640px) { 6010 .section_3 .block_container .block { 6011 height: 320px; 6012 padding: 0px 20px; 6013 } 6014 .section_3 .block_container .block h1 { 6015 font-size: 1.5rem; 6016 } 6017} 6018</style><style>.section_3 { 6019 margin-top: 165px; 6020} 6021.section_3 .content_container .content h1 { 6022 font-size: 4rem; 6023 color: #000; 6024 position: relative; 6025 z-index: 30; 6026 margin: 32px 0 0; 6027 text-align: center; 6028} 6029@media (max-width: 768px) { 6030 .section_3 .content_container .content h1 { 6031 font-size: 2.5rem; 6032 margin-top: 0; 6033 } 6034} 6035</style> 6036<section class="section_3" data-module="interior_banner" data-html="/custom/modules/interior_banner/team.html" data-json="" data-page="team" data-full-path="/team/"> 6037 <div class="content_container"> 6038 <div class="content"> 6039 <h1>Our Team</h1> 6040 6041 </div> 6042 </div> 6043</section>
6043<script> 6044 javascript.prototype[get_id()] = function() { 6045 6046 } 6047</script>
6047<style>.section_4 { 6048 padding: 40px 40px; 6049} 6050.section_4 .content_container { 6051 max-width: 100%; 6052 justify-content: center; 6053 display: flex; 6054 margin-left: auto; 6055 margin-right: auto; 6056 box-sizing: border-box; 6057} 6058.section_4 .content_container .content { 6059 width: 100%; 6060} 6061.section_4 .content_container .content h2 { 6062 text-align: center; 6063} 6064.section_4 .content_container .content h3 { 6065 font-size: 1.5rem; 6066} 6067@media (max-width: 640px) { 6068 .section_4 { 6069 padding: 20px 20px; 6070 } 6071} 6072</style><style>.section_4 { 6073 padding: 40px 40px; 6074} 6075.section_4 .content_container { 6076 max-width: 1400px; 6077 justify-content: center; 6078 display: flex; 6079 margin-left: auto; 6080 margin-right: auto; 6081 box-sizing: border-box; 6082} 6083.section_4 .content_container .content { 6084 width: 100%; 6085} 6086.section_4 .content_container .content h2 { 6087 font-size: 2.4rem; 6088} 6089.section_4 .content_container .content h3 { 6090 font-size: 1.8rem; 6091} 6092.section_4 .content_container .content .flex-con { 6093 display: flex; 6094 flex-wrap: wrap; 6095 justify-content: center; 6096} 6097.section_4 .content_container .content .flex-con .flex-item { 6098 flex-basis: 50%; 6099 padding: 16px; 6100 box-sizing: border-box; 6101 text-align: center; 6102} 6103@media (max-width: 768px) { 6104 .section_4 .content_container .content .flex-con .flex-item { 6105 flex-basis: 100%; 6106 } 6107} 6108.section_4 .content_container .content .spacer { 6109 padding: 40px 0; 6110} 6111@media (max-width: 480px) { 6112 .section_4 .content_container .content .spacer { 6113 padding: 20px 0; 6114 } 6115} 6116.section_4 .content_container .content .img-center { 6117 display: block; 6118 margin: 16px auto; 6119} 6120.section_4 .content_container .content .image_grid { 6121 display: grid; 6122 gap: 20px; 6123} 6124@media (max-width: 768px) { 6125 .section_4 .content_container .content .image_grid { 6126 gap: 10px; 6127 } 6128} 6129.section_4 .content_container .content .image_grid .image { 6130 border: 4px solid #00FFFF; 6131} 6132.section_4 .content_container .content .image_grid .image img, 6133.section_4 .content_container .content .image_grid .image picture { 6134 display: block; 6135} 6136.section_4 .content_container .content .image_grid.two_wide { 6137 grid-template-columns: repeat(2,1fr); 6138} 6139@media (max-width: 480px) { 6140 .section_4 .content_container .content .image_grid.two_wide { 6141 grid-template-columns: repeat(1,1fr); 6142 } 6143} 6144.section_4 .content_container .content .image_grid.three_wide { 6145 grid-template-columns: repeat(3,1fr); 6146} 6147@media (max-width: 480px) { 6148 .section_4 .content_container .content .image_grid.three_wide { 6149 grid-template-columns: repeat(1,1fr); 6150 } 6151} 6152.section_4 .content_container .content div[data-micro-template="interior_fullwidth_cta"] { 6153 background: #E9E9E9; 6154} 6155.section_4 .content_container .content div[data-micro-template="interior_fullwidth_cta"]:nth-of-type(1) .fullwidth_cta_container .image { 6156 order: 2; 6157} 6158.section_4 .content_container .content div[data-micro-template="interior_fullwidth_cta"] .fullwidth_cta_container { 6159 width: min(100%,1400px); 6160 padding: 100px 20px; 6161 display: grid; 6162 grid-template-columns: repeat(2,1fr); 6163 gap: 60px; 6164} 6165@media (max-width: 768px) { 6166 .section_4 .content_container .content div[data-micro-template="interior_fullwidth_cta"] .fullwidth_cta_container { 6167 grid-template-columns: repeat(1,1fr); 6168 gap: 10px; 6169 } 6170} 6171.section_4 .content_container .content div[data-micro-template="interior_fullwidth_cta"] .fullwidth_cta_container .image { 6172 border: 4px solid #00FFFF; 6173} 6174@media (max-width: 768px) { 6175 .section_4 .content_container .content div[data-micro-template="interior_fullwidth_cta"] .fullwidth_cta_container .image { 6176 order: 2; 6177 } 6178} 6179.section_4 .content_container .content div[data-micro-template="interior_fullwidth_cta"] .fullwidth_cta_container .image img, 6180.section_4 .content_container .content div[data-micro-template="interior_fullwidth_cta"] .fullwidth_cta_container .image picture { 6181 display: block; 6182} 6183.section_4 .content_container .content div[data-micro-template="interior_fullwidth_cta"] .fullwidth_cta_container .text h3 { 6184 color: #AB7F29; 6185} 6186.section_4 .content_container .content div[data-micro-template="interior_fullwidth_cta"] .text h3 { 6187 color: #1A1A1A; 6188} 6189.section_4 .content_container .content div[data-micro-template="interior_fullwidth_cta"] .text p { 6190 color: #1A1A1A; 6191} 6192.section_4 .content_container .content div[data-micro-template="interior_image_split"] { 6193 grid-template-columns: repeat(2,1fr); 6194} 6195@media (max-width: 768px) { 6196 .section_4 .content_container .content div[data-micro-template="interior_image_split"] { 6197 grid-template-columns: repeat(1,1fr); 6198 } 6199} 6200.section_4 .content_container .content div[data-micro-template="interior_image_split"] .image { 6201 border: 4px solid #00FFFF; 6202} 6203.section_4 .content_container .content div[data-micro-template="interior_image_split"] .image img, 6204.section_4 .content_container .content div[data-micro-template="interior_image_split"] .image picture { 6205 display: block; 6206} 6207.section_4 .content_container .content h3 { 6208 font-size: 2rem; 6209 color: #AB7F29; 6210} 6211.section_4 .content_container .content h4 { 6212 font-size: 1.5rem; 6213} 6214.section_4 .content_container .content p, 6215.section_4 .content_container .content li { 6216 font-weight: 500; 6217} 6218.section_4 .content_container .content a { 6219 color: #AB7F29; 6220} 6221.section_4 .content_container .content a:hover {
6222 color: #00FFFF; 6223} 6224.section_4 .content_container .content .team_container { 6225 display: grid; 6226 grid-template-columns: repeat(1,1fr); 6227 gap: 40px; 6228} 6229@media (max-width: 768px) { 6230 .section_4 .content_container .content .team_container { 6231 gap: 0; 6232 } 6233} 6234.section_4 .content_container .content .team_container .team_member { 6235 display: block; 6236} 6237.section_4 .content_container .content .team_container .team_member .staff { 6238 width: 100%; 6239 text-align: center; 6240} 6241.section_4 .content_container .content .team_container .team_member .bio { 6242 width: 100%; 6243 text-align: center; 6244} 6245@media (max-width: 480px) { 6246 .section_4 .content_container .content .team_container .team_member .bio { 6247 padding-top: 0; 6248 } 6249} 6250.section_4 .content_container .content .team_container .team_member .bio h3 { 6251 margin: 0; 6252} 6253@media (max-width: 480px) { 6254 .section_4 .content_container .content .team_container .team_member .bio h3 { 6255 font-size: 1.25rem; 6256 } 6257} 6258@media (max-width: 480px) { 6259 .section_4 .content_container .content .team_container .team_member .bio h4 { 6260 font-size: 1rem; 6261 margin: 5px 0; 6262 } 6263} 6264.section_4 .content_container .content .doc-float { 6265 margin-top: 6px; 6266 margin-bottom: 12px; 6267 float: right; 6268 margin-left: 20px; 6269 max-width: 500px; 6270} 6271@media (max-width: 900px) { 6272 .section_4 .content_container .content .doc-float { 6273 float: none; 6274 margin: 10px auto; 6275 display: block; 6276 } 6277} 6278.section_4 .content_container .content .doc-float p { 6279 text-align: center; 6280 background: #00FFFF; 6281 color: #1A1A1A; 6282 padding: 15px 10px; 6283 margin-top: -10px; 6284} 6285.section_4 .content_container .content .doc-float img, 6286.section_4 .content_container .content .doc-float picture { 6287 margin: 0; 6288} 6289.section_4 .content_container .content .doc-float iframe { 6290 height: 280px; 6291} 6292.section_4 .content_container .content .staff { 6293 width: 39%; 6294 box-sizing: border-box; 6295 padding: 12px; 6296 display: inline-block; 6297 vertical-align: top; 6298} 6299@media (max-width: 900px) { 6300 .section_4 .content_container .content .staff { 6301 width: 100%; 6302 display: block; 6303 } 6304} 6305.section_4 .content_container .content .bio { 6306 width: 59%; 6307 box-sizing: border-box; 6308 padding: 12px; 6309 display: inline-block; 6310 vertical-align: top; 6311} 6312@media (max-width: 900px) { 6313 .section_4 .content_container .content .bio { 6314 width: 100%; 6315 display: block; 6316 } 6317} 6318.section_4 .content_container .content .half { 6319 width: 49%; 6320 box-sizing: border-box; 6321 padding: 12px; 6322 display: inline-block; 6323 vertical-align: top; 6324} 6325@media (max-width: 900px) { 6326 .section_4 .content_container .content .half { 6327 width: 100%; 6328 display: block; 6329 } 6330} 6331.section_4 .content_container .content .half iframe { 6332 height: 280px; 6333} 6334.section_4 .content_container .content form { 6335 display: flex; 6336 flex-wrap: wrap; 6337 justify-content: space-between; 6338 background: #E9E9E9; 6339 padding: 20px; 6340 margin-bottom: 20px; 6341} 6342.section_4 .content_container .content form input { 6343 flex-basis: 48%; 6344 margin-bottom: 10px; 6345} 6346.section_4 .content_container .content form textarea { 6347 flex-basis: 100%; 6348 height: 150px; 6349} 6350.section_4 .content_container .content form input, 6351.section_4 .content_container .content form textarea { 6352 padding: 15px; 6353 box-sizing: border-box; 6354 border-bottom: 2px solid #1A1A1A; 6355} 6356.section_4 .content_container .content .elfsight { 6357 max-width: 100%; 6358} 6359.section_4 .content_container .content a.button { 6360 color: #1A1A1A; 6361} 6362.section_4 .content_container .content .button { 6363 background: linear-gradient(94deg,#B98A2E -1.86%,#D2AD63 36.41%,#B98A2E 106.21%); 6364 text-transform: uppercase; 6365 font-weight: 500; 6366 font-size: 1rem; 6367 border: 2px solid #1A1A1A; 6368 padding: 10px 40px; 6369} 6370.section_4 .content_container .content .button:hover { 6371 background: linear-gradient(94deg,#D2AD63 -1.86%,#B98A2E 36.41%,#D2AD63 106.21%); 6372 color: #1A1A1A; 6373} 6374@media (max-width: 700px) { 6375 .section_4 .content_container .content .button { 6376 margin: 10px; 6377 } 6378} 6379.section_4 .sidebar[data-sidebar="true"] { 6380 flex-basis: 375px; 6381 font-weight: 500; 6382} 6383@media (max-width: 1280px) { 6384 .section_4 .sidebar[data-sidebar="true"] { 6385 flex-basis: 325px; 6386 } 6387} 6388@media (max-width: 920px) { 6389 .section_4 .sidebar[data-sidebar="true"] { 6390 margin-bottom: 1rem; 6391 text-align: left; 6392 } 6393} 6394.section_4 .sidebar[data-sidebar="true"] div[data-sidebar="video"] .video_container { 6395 position: relative; 6396 width: 100%; 6397 height: 100%; 6398 padding-bottom: 56.25%; 6399} 6400.section_4 .sidebar[data-sidebar="true"] div[data-sidebar="video"] .video_container iframe, 6401.section_4 .sidebar[data-sidebar="true"] div[data-sidebar="video"] .video_container video { 6402 position: absolute; 6403 top: 0; 6404 left: 0; 6405 width: 100%; 6406 height: 100%; 6407}
6408.section_4[data-page="videos"] .content_container .content div[data-micro-template="video"] { 6409 margin-bottom: 60px; 6410} 6411@media (max-width: 640px) { 6412 .section_4[data-page="videos"] .content_container .content div[data-micro-template="video"] { 6413 margin-bottom: 20px; 6414 } 6415} 6416.section_4[data-page="videos"] .content_container .content div[data-micro-template="video"] .video_content_container { 6417 display: flex; 6418} 6419@media (max-width: 640px) { 6420 .section_4[data-page="videos"] .content_container .content div[data-micro-template="video"] .video_content_container { 6421 flex-wrap: wrap; 6422 } 6423} 6424.section_4[data-page="videos"] .content_container .content div[data-micro-template="video"] .video_content_container .video_container { 6425 flex-basis: 400px; 6426} 6427@media (max-width: 1024px) { 6428 .section_4[data-page="videos"] .content_container .content div[data-micro-template="video"] .video_content_container .video_container { 6429 flex-basis: 250px; 6430 } 6431} 6432@media (max-width: 640px) { 6433 .section_4[data-page="videos"] .content_container .content div[data-micro-template="video"] .video_content_container .video_container { 6434 flex-basis: 400px; 6435 } 6436} 6437.section_4[data-page="videos"] .content_container .content div[data-micro-template="video"] .video_content_container .video_container .video { 6438 padding-bottom: 75%; 6439 position: relative; 6440} 6441.section_4[data-page="videos"] .content_container .content div[data-micro-template="video"] .video_content_container .video_container .video iframe { 6442 position: absolute; 6443 height: 100%; 6444 width: 100%; 6445 left: 0; 6446 top: 0; 6447} 6448.section_4[data-page="videos"] .content_container .content div[data-micro-template="video"] .video_content_container .video_content { 6449 flex: 1; 6450 padding-left: 40px; 6451} 6452@media (max-width: 640px) { 6453 .section_4[data-page="videos"] .content_container .content div[data-micro-template="video"] .video_content_container .video_content { 6454 flex-basis: 100%; 6455 padding-left: 0; 6456 margin-top: 20px; 6457 } 6458} 6459.section_4[data-page="videos"] .content_container .content div[data-micro-template="video"] .video_content_container .video_content p:first-of-type { 6460 margin-top: 0; 6461} 6462.section_4[data-module="services_list"] .content, 6463.section_4[data-module="invisalign_list"] .content { 6464 max-width: 1200px; 6465} 6466.section_4[data-module="services_list"] .content .block_container, 6467.section_4[data-module="invisalign_list"] .content .block_container { 6468 margin-bottom: 60px; 6469 flex-basis: 32%; 6470} 6471@media (max-width: 1024px) { 6472 .section_4[data-module="services_list"] .content .block_container, 6473 .section_4[data-module="invisalign_list"] .content .block_container { 6474 flex-basis: 48%; 6475 } 6476} 6477@media (max-width: 550px) { 6478 .section_4[data-module="services_list"] .content .block_container, 6479 .section_4[data-module="invisalign_list"] .content .block_container { 6480 flex-basis: 100%; 6481 box-shadow: none; 6482 border: none; 6483 margin-bottom: 20px; 6484 } 6485} 6486.section_4[data-module="services_list"] .content .block_container .block .service, 6487.section_4[data-module="invisalign_list"] .content .block_container .block .service { 6488 display: flex; 6489 flex-direction: column; 6490} 6491.section_4[data-module="services_list"] .content .block_container .block .service .background_container, 6492.section_4[data-module="invisalign_list"] .content .block_container .block .service .background_container { 6493 border-radius: 0px; 6494 order: 3; 6495} 6496@media (max-width: 768px) { 6497 .section_4[data-module="services_list"] .content .block_container .block .service .background_container, 6498 .section_4[data-module="invisalign_list"] .content .block_container .block .service .background_container { 6499 height: 180px; 6500 } 6501} 6502@media (max-width: 550px) { 6503 .section_4[data-module="services_list"] .content .block_container .block .service .background_container, 6504 .section_4[data-module="invisalign_list"] .content .block_container .block .service .background_container { 6505 display: none; 6506 } 6507} 6508.section_4[data-module="services_list"] .content .block_container .block .service .service_content, 6509.section_4[data-module="invisalign_list"] .content .block_container .block .service .service_content { 6510 margin: 0; 6511} 6512.section_4[data-module="services_list"] .content .block_container .block .service .service_content h3, 6513.section_4[data-module="invisalign_list"] .content .block_container .block .service .service_content h3 { 6514 margin-bottom: 15px; 6515 font-weight: 300; 6516 text-align: left; 6517 font-size: 1.5rem; 6518} 6519@media (max-width: 550px) { 6520 .section_4[data-module="services_list"] .content .block_container .block .service .service_content h3, 6521 .section_4[data-module="invisalign_list"] .content .block_container .block .service .service_content h3 { 6522 margin: 0; 6523 font-size: 1.3rem; 6524 } 6525} 6526.section_4[data-module="interior_content"] div[data-micro-template="staff_list"] { 6527 box-shadow: 0px 0px 20px rgba(26,26,26,0.1); 6528 margin-bottom: 40px; 6529} 6530.section_4[data-module="interior_content"] div[data-micro-template="staff_list"] h3 { 6531 background: #1A1A1A; 6532 color: #fff; 6533 margin: 0; 6534 padding: 20px; 6535} 6536.section_4[data-module="interior_content"] div[data-micro-template="staff_list"] .staff_image { 6537 padding: 10px; 6538} 6539.section_4[data-module="interior_content"] div[data-micro-template="staff_list"] .staff_content { 6540 padding: 0 20px; 6541} 6542.section_4[data-module="interior_content"] div[data-micro-template="staff_list"] .staff_content .button { 6543 color: #1A1A1A; 6544} 6545.section_4[data-module="library_list"] .content_container .content { 6546 display: grid; 6547 grid-template-columns: repeat(2,1fr); 6548 grid-gap: 3rem; 6549} 6550@media (max-width: 920px) { 6551 .section_4[data-module="library_list"] .content_container .content { 6552 grid-template-columns: repeat(1,1fr); 6553 grid-gap: 1rem; 6554 } 6555} 6556.section_4[data-module="library_list"] .content_container .content > div { 6557 display: flex; 6558 flex-direction: column; 6559} 6560@media (max-width: 920px) { 6561 .section_4[data-module="library_list"] .content_container .content > div { 6562 margin-bottom: 0; 6563 } 6564} 6565.section_4[data-module="library_list"] .content_container .content > div h2 { 6566 font-size: 1.5rem; 6567 border-bottom: 1px solid #808080; 6568 padding-bottom: 10px; 6569} 6570@media (max-width: 640px) { 6571 .section_4[data-module="library_list"] .content_container .content > div h2 { 6572 font-size: 1.35rem; 6573 } 6574} 6575.section_4[data-module="library_list"] .content_container .content > div .library_content p { 6576 display: flex; 6577 align-items: center; 6578} 6579.section_4[data-module="library_list"] .content_container .content > div .library_content svg {
6580 color: #00FFFF; 6581 width: .625rem; 6582 height: .625rem; 6583 margin-right: 10px; 6584} 6585@media (max-width: 640px) { 6586 .section_4 { 6587 padding: 20px 20px; 6588 } 6589} 6590</style> 6591<section class="section_4" data-module="interior_content" data-html="/system/modules/interior_content/1.0.0/module.html" data-json="/custom/modules/interior_content/module.json" data-page="team" data-full-path="/team/"> 6592 <div class="content_container"> 6593 <div class="content"> 6594 <div class="team_container"> 6595 <div class="team_member"> 6596 <div class="staff"> 6597 <picture><source srcset="/cache/sm-custom_images_jamie.webp 420w, /cache/custom_images_jamie.webp 640w" sizes="(max-width: 420px) 100vw, 640px" data-lazy-picture="false" type="image/webp"><img alt="Iconic Dental Arts | Laser Dentistry, Periodontal Treatment and Dental Bridges" class="" src="/custom/images/jamie.jpg" data-lazy-img="false" data-src="/custom/images/jamie.jpg"></picture> 6598 </div> 6599 <div class="bio"> 6600 <h3>Jamie</h3> 6601 <h4>Team Integrator/General Manager</h4> 6602 </div> 6603 </div> 6604 <div class="team_member"> 6605 <div class="staff"> 6606 <picture><source srcset="/cache/sm-custom_images_heather.webp 420w, /cache/custom_images_heather.webp 640w" sizes="(max-width: 420px) 100vw, 640px" data-lazy-picture="false" type="image/webp"><img alt="Iconic Dental Arts | Laser Dentistry, Oral Cancer Screening and Invisalign reg " class="" src="/custom/images/heather.jpg" data-lazy-img="false" data-src="/custom/images/heather.jpg"></picture> 6607 </div> 6608 <div class="bio"> 6609 <h3>Heather</h3> 6610 <h4>Implant & Treatment Coordinator</h4> 6611 </div> 6612 </div> 6613 <div class="team_member"> 6614 <div class="staff"> 6615 <picture><source srcset="/cache/sm-custom_images_char.webp 420w, /cache/custom_images_char.webp 640w" sizes="(max-width: 420px) 100vw, 640px" data-lazy-picture="false" type="image/webp"><img alt="Iconic Dental Arts | Preventative Program, Dental Fillings and CBCT" class="" src="/custom/images/char.jpg" data-lazy-img="false" data-src="/custom/images/char.jpg"></picture> 6616 </div> 6617 <div class="bio"> 6618 <h3>Char</h3> 6619 <h4>New Patient & Treatment Coordinator</h4> 6620 </div> 6621 </div> 6622 <div class="team_member"> 6623 <div class="staff"> 6624 <picture><source srcset="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mP8Xw8AAoMBgDTD2qgAAAAASUVORK5CYII=" data-srcset="/cache/sm-custom_images_jami3.webp 420w, /cache/custom_images_jami3.webp 640w" sizes="(max-width: 420px) 100vw, 640px" data-lazy-picture="true" type="image/webp"><img alt="Iconic Dental Arts | Same-Day Crowns, Oral Exams and Invisalign reg " class="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mP8Xw8AAoMBgDTD2qgAAAAASUVORK5CYII=" data-lazy-img="true" data-src="/custom/images/jami3.jpg"></picture> 6625 </div> 6626 <div class="bio"> 6627 <h3>Jami</h3> 6628 <h4>Registered Dental Hygienist (RDH)</h4> 6629 </div> 6630 </div> 6631 <div class="team_member"> 6632 <div class="staff"> 6633 <picture><source srcset="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mP8Xw8AAoMBgDTD2qgAAAAASUVORK5CYII=" data-srcset="/cache/sm-custom_images_sheryl.webp 420w, /cache/custom_images_sheryl.webp 640w" sizes="(max-width: 420px) 100vw, 640px" data-lazy-picture="true" type="image/webp"><img alt="Iconic Dental Arts | Same-Day Crowns, Intraoral Camera and Dentures" class="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mP8Xw8AAoMBgDTD2qgAAAAASUVORK5CYII=" data-lazy-img="true" data-src="/custom/images/sheryl.jpg"></picture> 6634 </div> 6635 <div class="bio"> 6636 <h3>Sheryl</h3> 6637 <h4>Registered Dental Hygienist (RDH)</h4> 6638 </div> 6639 </div> 6640 <div class="team_member"> 6641 <div class="staff"> 6642 <picture><source srcset="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mP8Xw8AAoMBgDTD2qgAAAAASUVORK5CYII=" data-srcset="/cache/sm-custom_images_lacey.webp 420w, /cache/custom_images_lacey.webp 640w" sizes="(max-width: 420px) 100v
6642w, 640px" data-lazy-picture="true" type="image/webp"><img alt="Iconic Dental Arts | Same-Day Crowns, All-on-4 reg and Periodontal Treatment" class="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mP8Xw8AAoMBgDTD2qgAAAAASUVORK5CYII=" data-lazy-img="true" data-src="/custom/images/lacey.jpg"></picture> 6643 </div> 6644 <div class="bio"> 6645 <h3>Lacey</h3> 6646 <h4>Clinical Dental Assistant, Expanded Functions</h4> 6647 </div> 6648 </div> 6649 <div class="team_member"> 6650 <div class="staff"> 6651 <picture><source srcset="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mP8Xw8AAoMBgDTD2qgAAAAASUVORK5CYII=" data-srcset="/cache/sm-custom_images_grace.webp 420w, /cache/custom_images_grace.webp 640w" sizes="(max-width: 420px) 100vw, 640px" data-lazy-picture="true" type="image/webp"><img alt="Iconic Dental Arts | Emergency Treatment, Laser Dentistry and Implant Dentistry" class="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mP8Xw8AAoMBgDTD2qgAAAAASUVORK5CYII=" data-lazy-img="true" data-src="/custom/images/grace.jpg"></picture> 6652 </div> 6653 <div class="bio"> 6654 <h3>Grace</h3> 6655 <h4>Clinical Dental Assistant, Expanded Functions</h4> 6656 </div> 6657 </div> 6658 6659 6660 6661 6662 6663 6664 6665 6666 6667 <!--<div class="team_member"> 6668 <div class="staff"> 6669 <img src="/custom/images/Trisha.jpg" /> 6670 </div> 6671 <div class="bio"> 6672 <h3>Trisha C.</h3> 6673 <h4>Practice Administrator</h4> 6674 </div> 6675 </div>--> 6676 6677 <!--<div class="team_member"> 6678 <div class="staff"> 6679 <img src="/custom/images/Sunny.jpg" /> 6680 </div> 6681 <div class="bio"> 6682 <h3>Sunny E.</h3> 6683 <h4>Patient Care Coordinator</h4> 6684 </div> 6685 </div>--> 6686 6687 6688 6689 <!--<div class="team_member"> 6690 <div class="staff"> 6691 <img src="/custom/images/Jennifer.jpg" /> 6692 </div> 6693 <div class="bio"> 6694 <h3>Jennifer H.</h3> 6695 <h4>Dental Hygienist</h4> 6696 </div> 6697 </div>--> 6698 6699 <!--<div class="team_member"> 6700 <div class="staff"> 6701 <img src="/custom/images/Ariana.jpg" /> 6702 </div> 6703 <div class="bio"> 6704 <h3>Ariana G.</h3> 6705 <h4>Dental Assistant</h4> 6706 </div> 6707 </div> 6708 6709 <div class="team_member"> 6710 <div class="staff"> 6711 <img src="/custom/images/Bree.jpg" /> 6712 </div> 6713 <div class="bio"> 6714 <h3>Bree B.</h3> 6715 <h4>Dental Assistant</h4> 6716 </div> 6717 </div>--> 6718 6719 <!--<div class="team_member"> 6720 <div class="staff"> 6721 <img src="/custom/images/Tobi.jpg" /> 6722 </div> 6723 <div class="bio"> 6724 <h3>Tobi B.</h3> 6725 <h4>Dental Assistant</h4> 6726 </div> 6727 </div>--> 6728</div> 6729<!--<img src="/custom/images/team.jpg" class="img-center" alt="team photo">--> 6730 </div> 6731 <div class="sidebar" data-sidebar="true"> 6732 <div class="label">Our Office</div><div data-sidebar="address_all"> 6733 <div data-micro-template="full_address_dynamic"> 6734 6735 6736 <div>8200 N May Ave</div> 6737 6738 <div><span>Oklahoma City</span>, <span>OK</span> <span>73120</span></div> 6739 6740 6741 <div class="tracking_number"><a href="tel:+14052130328" aria-label="New Patients: (405) 213-0328" class="tel_14052130328" data-click-call="0"><span class="phone_label">New Patients:</span> (405) 213-0328</a></div> 6742 <div class="existing_number"><a href="tel:+14059438575" aria-label="Existing Patients: (405) 943-8575" class="tel_14059438575" data-click-call="0"><span class="phone_label">Existing Patients:</span> (405) 943-8575</a></div> 6743 6744 6745</div> 6746</div><div class="label">Office Hours</div><div data-sidebar="hours_all"> 6747 <div data-micro-template="office_hours"> 6748 <div class="row"><div class="day">Monday</div><div class="time">8:30 am - 5:00 pm</div></div> 6749 <div class="row"><div class="day">Tuesday</div><div class="time">8:30 am - 6:00 pm</div></div> 6750 <div class="row"><div class="day">Wednesday</div><div class="time">8:30 am - 5:00 pm</div></div> 6751 <div class="row"><div class="day">Thursday</div><div class="time">7:30 am - 4:00 pm</div></div> 6752 <div class="row"><div class="day">Friday</div><div class="time">8:30 am - 2:00 pm</div></div> 6753 <div class="row"><div class="day">Saturday</div><div class="time">Closed</div></div> 6754 <div class="row"><div class="day">Sunday</div><div class="time">Closed</div></div> 6755</div> 6756</div><div class="label">Visit Us Online</div><div data-sidebar="social_current"> 6757 <div data-micro-template="social_icons"> 6758 <a href="https://www.facebook.com/iconicdentalarts" aria-label="link" rel="noopener" target="_blank"><i class="fab fa-facebook-f"></i></a> 6759</div><div data-micro-template="social_icons"> 6760 <a href="https://www.google.com/maps/place/Joe+Isaacson+Dental/@35.554294,-97.566513,15z/data=!4m7!3m6!1s0x0:0x761eb4fe3d53e6c0!8m2!3d35.554294!4d-97.566513!9m1!1b1" aria-label="link" rel="noopener" target="_blank"><i class="fab fa-google"></i></a> 6761</div><div data-micro-template="social_icons"> 6762 <a href="https://twitter.com/BlendedDentist" aria-label="link" rel="noopener" target="_blank"><i class="fab fa-twitter"></i></a> 6763</div><div data-micro-template="social_icons"> 6764 <a href="https://www.instagram.com/iconicdentalarts" aria-label="link" rel="noopener" target="_blank"><i class="fab fa-instagram"></i></a> 6765</div><div data-micro-template="social_icons"> 6766 <a href="https://www.youtube.com/channel/UCmOTKQniQLiN6srHU8tiX4w" aria-label="link" rel="noopener" target="_blank"><i class="fab fa-youtube"></i></a> 6767</div><div data-micro-template="social_icons"> 6768 <a href="/blog/" aria-label="link"><i class="fas fa-blog"></i></a> 6769</div> 6770</div> 6771 </div> 6772 </div> 6773</section><style>.section_5 .block_container { 6774 display: flex; 6775 flex-direction: column; 6776} 6777.section_5 .block_container .block { 6778 display: flex; 6779 flex-wrap: wrap; 6780} 6781.section_5 .block_container .block .background_container { 6782 width: 100%; 6783 height: 680px; 6784 display: flex; 6785 justify-content: center; 6786 align-items: center; 6787} 6788.section_5 .block_container .block .background_container .background_content { 6789 position: relative; 6790 z-index: 20; 6791 width: 100%; 6792 height: 100%; 6793 display: flex; 6794 align-items: center; 6795 justify-content: center; 6796} 6797.section_5 .block_container .block .background_container .background_image { 6798 max-height: initial; 6799} 6800</style><style>.section_5 .content_container .content .block_container .block { 6801 display: flex; 6802 justify-content: space-between; 6803} 6804.section_5 .content_container .content .block_container .block .map, 6805.section_5 .content_container .content .block_container .block .text { 6806 flex: 1; 6807} 6808@media (max-width: 1024px) { 6809 .section_5 .content_container .content .block_container .block .map, 6810 .section_5 .content_container .content .block_container .block .text { 6811 flex-basis: 100%; 6812 } 6813} 6814.section_5 .content_container .content .block_container .block .map { 6815 position: relative; 6816} 6817@media (max-width: 1024px) { 6818 .section_5 .content_container .content .block_container .block .map { 6819 height: 300px; 6820 } 6821} 6822.section_5 .content_container .content .block_container .block .map div[data-micro-template="map"] { 6823 height: 100%; 6824} 6825.section_5 .content_container .content .block_container .block .map .responsive_iframe { 6826 position: relative; 6827} 6828.section_5 .content_container .content .block_container .block .map .responsive_iframe.sixteen-9 { 6829 padding-bottom: 56.25%; 6830} 6831.section_5 .content_container .content .block_container .block .map .responsive_iframe iframe { 6832 position: absolute; 6833 top: 0; 6834 left: 0; 6835 width: 100%; 6836 height: 100%; 6837} 6838.section_5 .content_container .content .block_container .block .text { 6839 padding: 80px 20px; 6840 background: linear-gradient(94deg,#B98A2E -1.86%,#D2AD63 36.41%,#B98A2E 106.21%); 6841 display: flex; 6842 align-items: center; 6843 justify-content: center; 6844} 6845@media (max-width: 1024px) { 6846 .section_5 .content_container .content .block_container .block .text { 6847 padding: 40px 20px; 6848 } 6849} 6850.section_5 .content_container .content .block_container .block .text .text_container { 6851 max-width: 700px; 6852 display: flex; 6853 flex-wrap: wrap; 6854 color: #1A1A1A; 6855 font-weight: 500; 6856} 6857.section_5 .content_container .content .block_container .block .text h2 { 6858 font-size: 3rem; 6859 text-transform: capitalize; 6860 margin: 0; 6861 flex-basis: 100%; 6862 color: #1A1A1A; 6863 margin-bottom: 20px; 6864} 6865@media (max-width: 1024px) { 6866 .section_5 .content_container .content .block_container .block .text h2 { 6867 font-size: 2rem; 6868 } 6869} 6870@media (max-width: 550px) { 6871 .section_5 .content_container .content .block_container .block .text h2 { 6872 font-size: 1.65rem; 6873 } 6874} 6875.section_5 .content_container .content .block_container .block .text h3 { 6876 flex-basis: 100%; 6877 font-size: 1.5rem; 6878 text-transform: uppercase; 6879 margin: 0; 6880 font-weight: 400; 6881 color: #fff; 6882} 6883@media (max-width: 1024px) { 6884 .section_5 .content_container .content .block_container .block .text h3 { 6885 font-size: 1.2rem; 6886 } 6887} 6888.section_5 .content_container .content .block_container .block .text p { 6889 flex-basis: 100%; 6890} 6891.section_5 .content_container .content .block_container .block .text a { 6892 font-weight: 700; 6893 cursor: pointer;
6894 color: #1A1A1A; 6895} 6896.section_5 .content_container .content .block_container .block .text a:hover { 6897 color: #1A1A1A; 6898} 6899.section_5 .content_container .content .block_container .block .text .hours, 6900.section_5 .content_container .content .block_container .block .text .address { 6901 flex-basis: 50%; 6902 text-transform: none; 6903} 6904@media (max-width: 768px) { 6905 .section_5 .content_container .content .block_container .block .text .hours, 6906 .section_5 .content_container .content .block_container .block .text .address { 6907 flex-basis: 100%; 6908 } 6909} 6910.section_5 .content_container .content .block_container .block .text .hours .row, 6911.section_5 .content_container .content .block_container .block .text .address .row { 6912 display: flex; 6913 justify-content: space-between; 6914} 6915@media (max-width: 768px) { 6916 .section_5 .content_container .content .block_container .block .text .hours .row, 6917 .section_5 .content_container .content .block_container .block .text .address .row { 6918 justify-content: flex-start; 6919 } 6920 .section_5 .content_container .content .block_container .block .text .hours .row .day, 6921 .section_5 .content_container .content .block_container .block .text .address .row .day { 6922 margin-right: 20px; 6923 } 6924} 6925@media (max-width: 768px) { 6926 .section_5 .content_container .content .block_container .block .text .hours { 6927 margin-top: 20px; 6928 } 6929} 6930.section_5 .content_container .content .block_container .block .text div[data-micro-template="buttons_container"] { 6931 display: flex; 6932 flex-wrap: wrap; 6933} 6934.section_5 .content_container .content .block_container .block .text div[data-micro-template="buttons_container"] .button { 6935 color: #1A1A1A; 6936 background: #00FFFF; 6937 margin: 5px 10px 5px 0; 6938 text-transform: uppercase; 6939 font-weight: 500; 6940 font-size: 1rem; 6941 border: 2px solid #1A1A1A; 6942 padding: 10px 40px; 6943 box-sizing: border-box; 6944 transition: all 0.3s; 6945} 6946.section_5 .content_container .content .block_container .block .text div[data-micro-template="buttons_container"] .button:hover { 6947 background: #00cccc; 6948 color: #1A1A1A; 6949 border: 2px solid #1A1A1A; 6950} 6951</style> 6952<section class="section_5" data-module="parallax_image" data-html="/custom/modules/basilisk_split_contact/module.html" data-json="/custom/modules/basilisk_split_contact/module.json" data-page="team" data-full-path="/team/"> 6953 <div class="content_container"> 6954 <div class="content"> 6955 <div class="block_container"> 6956 <div class="block"> 6957 <div class="map"> 6958 <div data-micro-template="map"> 6959 <iframe src="" allowfullscreen="" data-src="https://www.google.com/maps/embed?pb=!1m14!1m8!1m3!1d4725.039146238709!2d-97.56982471074556!3d35.553893029216326!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x87b21ae5b00a0765%3A0x761eb4fe3d53e6c0!2sJoe%20Isaacson%20Dental!5e0!3m2!1sen!2sus!4v1698861467087!5m2!1sen!2sus" aria-label="iframe"></iframe> 6960</div> 6961 </div> 6962 <div class="text"> 6963 <div class="text_container"> 6964 <h2>Iconic Dental Arts</h2> 6965 <div class="address"> 6966 <div data-micro-template="full_address_dynamic"> 6967 6968 6969 <div>8200 N May Ave</div> 6970 6971 <div><span>Oklahoma City</span>, <span>OK</span> <span>73120</span></div> 6972 6973 6974 <div class="tracking_number"><a href="tel:+14052130328" aria-label="New Patients: (405) 213-0328" class="tel_14052130328" data-click-call="0"><span class="phone_label">New Patients:</span> (405) 213-0328</a></div> 6975 <div class="existing_number"><a href="tel:+14059438575" aria-label="Existing Patients: (405) 943-8575" class="tel_14059438575" data-click-call="0"><span class="phone_label">Existing Patients:</span> (405) 943-8575</a></div> 6976 6977 6978</div> 6979 </div> 6980 <div class="hours"> 6981 <div data-micro-template="office_hours"> 6982 <div class="row"><div class="day">Monday</div><div class="time">8:30 am - 5:00 pm</div></div> 6983 <div class="row"><div class="day">Tuesday</div><div class="time">8:30 am - 6:00 pm</div></div> 6984 <div class="row"><div class="day">Wednesday</div><div class="time">8:30 am - 5:00 pm</div></div> 6985 <div class="row"><div class="day">Thursday</div><div class="time">7:30 am - 4:00 pm</div></div> 6986 <div class="row"><div class="day">Friday</div><div class="time">8:30 am - 2:00 pm</div></div> 6987 <div class="row"><div class="day">Saturday</div><div class="time">Closed</div></div> 6988 <div class="row"><div class="day">Sunday</div><div class="time">Closed</div></div> 6989</div> 6990 </div> 6991 <p></p> 6992 <div data-micro-template="buttons_container"> 6993 <div data-micro-template="buttons"> 6994 <a class="button" href="/contact/" role="button" aria-label="Contact Us">Contact Us</a> 6995</div> 6996</div> 6997 </div> 6998 </div> 6999 </div> 7000</div> 7001 7002 </div> 7003 </div> 7004</section>
7004<script> 7005 javascript.prototype[get_id()] = function() { 7006 var json = {"settings":{"parallax":false},"content":[{"title":"Iconic Dental Arts","text":"","button":[{"label":"Contact Us","url":"\/contact\/"}]}]}; 7007 7008 function shift_image() { 7009 if ( 7010 json.settings.hasOwnProperty('parallax') && 7011 json.settings.parallax 7012 ) { 7013 $('.section_5 .background_image').each(function() { 7014 var elementHeight = $(this).height(); 7015 var startEffect = $(this).offset().top - $(window).height(); 7016 var endEffect = $(this).offset().top + elementHeight; 7017 7018 var pageHeight = $(document).height(); 7019 7020 var scrollDistance = endEffect - startEffect; 7021 var scrollPosition = $(document).scrollTop(); 7022 7023 if (scrollPosition > startEffect && scrollPosition < endEffect) { 7024 scrollPercent = ((scrollPosition - startEffect) / scrollDistance * 100).toFixed(4); 7025 /* $(this).css('transform', 'translate(-50%, -'+(100 - scrollPercent)+'%)'); */ 7026 $(this).css('object-position', 'center '+(100 - scrollPercent)+'%'); 7027 } 7028 }); 7029 } 7030 else { 7031 $('.section_5 .background_image').addClass('static'); 7032 } 7033 } 7034 7035 shift_image(); 7036 7037 $(window).resize(function() { 7038 shift_image(); 7039 }); 7040 7041 $(document).scroll(function() { 7042 shift_image(); 7043 }); 7044 } 7045</script>
7045<style>.section_6 { 7046 padding: 40px 40px; 7047} 7048.section_6 .content_container { 7049 max-width: 100%; 7050 justify-content: center; 7051 display: flex; 7052 margin-left: auto; 7053 margin-right: auto; 7054 box-sizing: border-box; 7055} 7056.section_6 .content_container .content { 7057 width: 100%; 7058} 7059.section_6 .content_container .content h2 { 7060 text-align: center; 7061} 7062.section_6 .content_container .content h3 { 7063 font-size: 1.5rem; 7064} 7065@media (max-width: 640px) { 7066 .section_6 { 7067 padding: 20px 20px; 7068 } 7069} 7070</style><style>.section_6 { 7071 padding: 60px 10px 20px; 7072 background-color: #1A1A1A; 7073} 7074.section_6 .content { 7075 text-align: center; 7076 color: #fff; 7077} 7078.section_6 .content .logo { 7079 margin-bottom: 20px; 7080} 7081.section_6 .content .logo img, 7082.section_6 .content .logo picture { 7083 max-width: 300px; 7084} 7085.section_6 .content .associations { 7086 margin: 40px 0; 7087} 7088.section_6 .content .associations img, 7089.section_6 .content .associations picture { 7090 margin: 0 20px; 7091 vertical-align: middle; 7092} 7093@media (max-width: 1280px) { 7094 .section_6 .content .associations img, 7095 .section_6 .content .associations picture { 7096 margin: 20px; 7097 } 7098} 7099.section_6 .content .phone { 7100 color: #fff; 7101 font-size: 1.4rem; 7102} 7103.section_6 .content .social { 7104 margin-bottom: 20px; 7105} 7106.section_6 .content .social div[data-micro-template='social_icons_container'] { 7107 display: flex; 7108 justify-content: center; 7109} 7110.section_6 .content .social div[data-micro-template='social_icons_container'] > div { 7111 margin: 0 15px; 7112} 7113.section_6 .content .social div[data-micro-template='social_icons_container'] > div svg { 7114 color: #fff; 7115 font-size: 1.5rem; 7116 transition: all 0.3s; 7117} 7118.section_6 .content .social div[data-micro-template='social_icons_container'] > div svg:hover { 7119 color: #00FFFF; 7120} 7121.section_6 .copyright { 7122 margin: 40px 0px 60px; 7123 text-align: center; 7124 font-size: 0.75rem; 7125 color: #fff; 7126} 7127.section_6 .copyright a { 7128 color: #fff; 7129} 7130.section_6 .copyright div { 7131 margin-bottom: 5px; 7132} 7133.section_6 .copyright div:first-of-type { 7134 margin-bottom: 5px; 7135} 7136</style> 7137<section class="section_6" data-module="content" data-html="/custom/modules/manticore_footer/module.html" data-json="" data-page="team" data-full-path="/team/"> 7138 <div class="content_container"> 7139 <div class="content"> 7140 <div class="logo"> 7141 <picture><source srcset="/cache/sm-custom_images_logo_5.webp 420w, /cache/md-custom_images_logo_5.webp 640w, /cache/custom_images_logo_5.webp 896w" sizes="(max-width: 420px) 100vw, (max-width: 640px) 100vw, 896px" data-lazy-picture="false" type="image/webp"><img alt="Iconic Dental Arts | Intraoral Camera, Dentures and CBCT" class="" src="/custom/images/logo-5.png" data-lazy-img="false" data-src="/custom/images/logo-5.png"></picture> 7142</div> 7143<div class="associations"> 7144 <picture><source srcset="/cache/custom_images_associations_logo_oda.webp 185w" sizes="185px" data-lazy-picture="false" type="image/webp"><img alt="Oklahoma City Cosmetic Dentist" class="" src="/custom/images/associations/logo-oda.png" data-lazy-img="false" data-src="/custom/images/associations/logo-oda.png"></picture> 7145 <picture><source srcset="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mP8Xw8AAoMBgDTD2qgAAAAASUVORK5CYII=" data-srcset="/cache/custom_images_associations_logo_oklahoma_county_dental_society.webp 157w" sizes="157px" data-lazy-picture="true" type="image/webp"><img alt="Cosmetic Dental Office 73120" class="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mP8Xw8AAoMBgDTD2qgAAAAASUVORK5CYII=" data-lazy-img="true" data-src="/custom/images/associations/logo-oklahoma-county-dental-society.png"></picture> 7146 <picture><source srcset="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mP8Xw8AAoMBgDTD2qgAAAAASUVORK5CYII=" data-srcset="/cache/custom_images_associations_logo_aacd.webp 179w" sizes="179px" data-lazy-picture="true" type="image/webp"><img alt="Emergency Dentist Oklahoma City" class="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mP8Xw8AAoMBgDTD2qgAAAAASUVORK5CYII=" data-lazy-img="true" data-src="/custom/images/associations/logo-aacd.png"></picture> 7147 <picture><source srcset="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mP8Xw8AAoMBgDTD2qgAAAAASUVORK5CYII=" data-srcset="/cache/custom_images_associations_logo_lvi.webp 112w" sizes="112px" data-lazy-picture="true" type="image/webp"><img alt="Family Dentist in Oklahoma City" class="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mP8Xw8AAoMBgDTD2qgAAAAASUVORK5CYII=" data-lazy-img="true" data-src="/custom/images/associations/logo-lvi.png"></picture> 7148 <picture><source srcset="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mP8Xw8AAoMBgDTD2qgAAAAASUVORK5CYII=" data-srcset="/cache/custom_images_associations_logo_resnik_implant_institute.webp 96w" sizes="96px" data-lazy-picture="true" type="image/webp"><img alt="Dental Implants Dentist Oklahoma City" class="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mP8Xw8AAoMBgDTD2qgAAAAASUVORK5CYII=" data-lazy-img="true" data-src="/custom/images/associations/logo-resnik-implant-institute.png"></picture> 7149 <picture><source srcset="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mP8Xw8AAoMBgDTD2qgAAAAASUVORK5CYII=" data-srcset="/cache/custom_images_associations_logo_icoi.webp 84w" sizes="84px" data-lazy-picture="true" type="image/webp"><img alt="Dentist 73120" class="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mP8Xw8AAoMBgDTD2qgAAAAASUVORK5CYII=" data-lazy-img="true" data-src="/custom/images/associations/logo-icoi.png"></picture> 7150 <picture><source srcset="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mP8Xw8AAoMBgDTD2qgAAAAASUVORK5CYII=" data-srcset="/cache/custom_images_associations_logo_americas_top_dentists.webp 100w" sizes="100px" data-lazy-picture="true" type="image/webp"><img alt="Pediatric Dentist Oklahoma City" class="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mP8Xw8AAoMBgDTD2qgAAAAASUVORK5CYII=" data-lazy-img="true" data-src="/custom/images/associations/logo-americas-top-dentists.png"></picture> 7151</div> 7152<div class="social"> 7153 <div><div data-micro-template="social_icons_container"> 7154 <div data-micro-template="social_icons"> 7155 <a href="https://www.facebook.com/iconicdentalarts" aria-label="link" rel="noopener" target="_blank"><i class="fab fa-facebook-f"></i></a> 7156</div><div data-micro-template="social_icons"> 7157 <a href="https://www.google.com/maps/place/Joe+Isaacson+Dental/@35.554294,-97.566513,15z/data=!4m7!3m6!1s0x0:0x761eb4fe3d53e6c0!8m2!3d35.554294!4d-97.566513!9m1!1b1" aria-label="link" rel="noopener" target="_blank"><i class="fab fa-google"></i></a> 7158</div><div data-micro-template="social_icons"> 7159 <a href="https://twitter.com/BlendedDentist" aria-label="link" rel="noopener" target="_blank"><i class="fab fa-twitter"></i></a> 7160</div><div data-micro-template="social_icons"> 7161 <a href="https://www.instagram.com/iconicdentalarts" aria-label="link" rel="noopener" target="_blank"><i class="fab fa-instagram"></i></a> 7162</div><div data-micro-template="social_icons"> 7163 <a href="https://www.youtube.com/channel/UCmOTKQniQLiN6srHU8tiX4w" aria-label="link" rel="noopener" target="_blank"><i class="fab fa-youtube"></i></a> 7164</div><div data-micro-template="social_icons"> 7165 <a href="/blog/" aria-label="link"><i class="fas fa-blog"></i></a> 7166</div> 7167</div></div> 7168</div> 7169<div class="copyright"> 7170 <div> 7171 © 2026 Iconic Dental Arts. All Rights Reserved. | <a href="/accessibility/" aria-label="Accessibility Policy">Accessibility Policy</a> 7172</div> 7173<div> 7174 <a href="https://doctorsinternet.com/dentistry/" aria-label="Dentist Marketing" rel="noopener" target="_blank">Dentist Marketing</a> 7175</div> 7176<div> 7177 Oklahoma City Dentist | Dentist 73120 | Cosmetic Dentist Oklahoma City 7178</div> 7179</div> 7180 </div> 7181 </div> 7182</section><style>section[data-module="faq"] div[data-micro-template="faq_container"] { 7183 max-width: 1400px; 7184 padding: 0 0px 40px 0px; 7185} 7186.img-center { 7187 display: block; 7188 margin: 16px auto; 7189} 7190body section[data-type="system-lightbox-container"].show { 7191 background: rgba(255,255,255,0.9); 7192} 7193body section[data-type="system-lightbox-container"].show section[data-form-name="contact"] { 7194 display: flex; 7195 align-items: center; 7196 justify-content: center; 7197 flex-basis: 100%; 7198} 7199body section[data-type="system-lightbox-container"].show section[data-form-name="contact"] .container { 7200 padding: 20px; 7201 box-sizing: border-box; 7202} 7203body section[data-type="system-lightbox-container"].show section[data-form-name="contact"] .container .button { 7204 background: #00FFFF; 7205 color: #1A1A1A; 7206} 7207body section[data-type="system-lightbox-container"].show section[data-form-name="contact"] .container .button:hover { 7208 background: #00cccc; 7209} 7210</style> 7211<section class="section_8" data-module="ad_tracking" data-html="" data-json="/custom/modules/ad_tracking/module.json" data-page="team" data-full-path="/team/"></section>
7211<script> 7212 javascript.prototype[get_id()] = function() { 7213 var json = {"settings":{"google_conversion_enabled":true,"facebook_conversion_enabled":true,"replacements":[{"number_to_replace":"(405) 213-0328","phone_numbers":{"source":{"google_ads":"(405) 561-3003"},"campaign":{}}}]},"content":[{}]}; 7214 var ad_management = {"ad_sources":{"none":"None","aleso":"Aleso","aleso_ads":"Aleso Ads","email":"Email","google":"Google","google_ads":"Google Ads","youtube":"YouTube","youtube_ads":"YouTube Ads","facebook":"Facebook","facebook_ads":"Facebook Ads","linkedin":"LinkedIn","linkedin_ads":"LinkedIn Ads","bing":"Bing Ads","bing_ads":"Bing Ads","adroll":"AdRoll","chatgpt_ads":"ChatGPT Ads","performance_max":"Performance Max","email_capture":"Email Capture","other":"Other","example_source":"Example Source"},"ad_campaign_labels":{"cosmetic":"Cosmetic","emergency":"Emergency","extractions":"Extractions","general":"General","implants":"Implants","orthodontics":"Orthodontics","pediatrics":"Pediatrics","example_campaign":"Example Campaign"},"ad_campaigns":{"default":{"default":"Default","general":"General","none":"None","other":"Other"},"cosmetic":{"clear_aligners":"Clear Aligners","cosmetic_dentist":"Cosmetic Dentist","cosmetic_dentistry":"Cosmetic Dentistry","smile_design":"Smile Design","smile_makeover":"Smile Makeover","teeth_whitening":"Teeth Whitening","veneers":"Veneers"},"emergency":{"cracked_tooth":"Cracked Tooth","dental_emergency":"Dental Emergency","emergency":"Emergency","emergency_dentist":"Emergency Dentist","endodontics":"Endodontics","endodontist":"Endodontist","root_canal":"Root Canal","root_canals":"Root Canals"},"extractions":{"extractions":"Extractions","tooth_extraction":"Tooth Extraction","tooth_extractions":"Tooth Extractions","wisdom_tooth_extraction":"Wisdom Tooth Extraction","wisdom_tooth_extractions":"Wisdom Tooth Extractions"},"general":{"branding":"Branding","cerec":"CEREC","dental_crowns":"Dental Crowns","dentist_near_me":"Dentist Near Me","family_dentist":"Family Dentist","family_dentistry":"Family Dentistry","same_day_crowns":"Same Day Crowns","tmj":"TMJ","periodontics":"Periodontics","periodontist":"Periodontist","oral_surgeon":"Oral Surgeon","oral_surgery":"Oral Surgery","sleep_apnea":"Sleep Apnea","sedation_dentistry":"Sedation Dentistry"},"implants":{"all_on_four":"All On Four","dental_implants":"Dental Implants","full_mouth_rehabilitation":"Full Mouth Rehabilitation","implant_dentist":"Implant Dentist"},"orthodontics":{"invisalign":"Invisalign","orthodontist":"Orthodontist"},"pediatrics":{"pediatric_dentist":"Pediatric Dentist","pediatric_dentistry":"Pediatric Dentistry"},"example_campaign":{"example":"Example"},"prosthodontist":{"prosthodontist":"Prosthodontist"}},"ad_location_labels":{}}; 7215 var metadata = {}; 7216 7217 console.log(metadata); 7218 console.log('Tracking'); 7219 7220 var ad_grouping = []; 7221 7222 function find_childless_elements(selector) { 7223 var parent = $(selector); 7224 var found = []; 7225 7226 recursive_search($(parent)); 7227 7228 function recursive_search(element) { 7229 7230 if($(element).children().length > 0) { 7231 $(element).children().each(function (index, child) { 7232 recursive_search($(child)) 7233 }); 7234 } else { 7235 found.push($(element)[0]) 7236 } 7237 } 7238 7239 return found; 7240 } 7241 7242 function find_closest_parent_of_content(selector, find = []) { 7243 var parent = $(selector); 7244 var found = []; 7245 7246 if (find.length) { 7247 if ($(parent).children().length > 0) { 7248 recursive_search($(parent)); 7249 } else { 7250 var text = $(parent).text(); 7251 $.each(find, function (index, string) { 7252 if (text.includes(string) && found.length === 0) { 7253 found.push($(parent)[0]); 7254 } 7255 }); 7256 } 7257 } 7258 7259 return (found.length)? found : false; 7260 7261 7262 function recursive_search(element, parent = null, ) { 7263 7264 var html = $(element).html(); 7265 $.each(find, function (index, string) { 7266 if (html.includes(string)) { 7267 if ($(element).children().length > 0) { 7268 var found_in_children = false; 7269 $(element).children().each(function (index, child) { 7270 var child_html = $(child).html() 7271 $.each(find, function (index, string) {
7272 if (child_html.includes(string)) { 7273 recursive_search($(child), $(element)); 7274 found_in_children = true; 7275 } 7276 }); 7277 }); 7278 7279 if (!found_in_children) { 7280 found.push($(element)[0]) 7281 } 7282 7283 } else { 7284 found.push($(element)[0]) 7285 } 7286 7287 7288 } 7289 }); 7290 } 7291 } 7292 7293 function find_replace(find, replace) { 7294 var rFilter = [ 7295 find 7296 ]; 7297 7298 var instanceLimit = 20; 7299 7300 for (var i = 0; i < rFilter.length; i++) { 7301 var instanceCounter = 0; 7302 $('*').contents().filter(function() { 7303 return this.nodeType === 3; 7304 }).replaceWith(function() { 7305 var to_replace = new RegExp(rFilter[i]); 7306 if ((this.nodeValue.indexOf(rFilter[i]) >= 0) && (instanceCounter < instanceLimit)) { 7307 instanceCounter++; 7308 return this.nodeValue.replace(to_replace, replace); 7309 } 7310 else { 7311 return this.nodeValue; 7312 } 7313 }); 7314 } 7315 } 7316 7317 function find_replace_links(find, replace, find_texts = []) { 7318 find_link = find.replace(/[^a-zA-Z0-9+]/g, ''); 7319 replace_link = replace.replace(/[^a-zA-Z0-9+]/g, ''); 7320 7321 7322 $('*[href^="tel:+1'+find_link+'"]').each(function() { 7323 $(this).attr('href', 'tel:+1'+replace_link); 7324 var elements_with_find_text = find_closest_parent_of_content($(this), [find, ...find_texts]); 7325 console.log(elements_with_find_text) 7326 if (elements_with_find_text) { 7327 $(elements_with_find_text).each(function(index, element) { 7328 if (!$(this).is('script')) { 7329 var html = $(this).html(); 7330 7331 if (html.includes(find)) { 7332 html = html.replaceAll(find, replace); 7333 } 7334 7335 if(find_texts.length) { 7336 $.each(find_texts, function (index, find_text) { 7337 if (html.includes(find_text)) { 7338 html = html.replaceAll(find_text, replace); 7339 } 7340 }); 7341 } 7342 7343 if ($(this).html() !== html) { 7344 $(this).html(html); 7345 } 7346 } 7347 }); 7348 } 7349 7350 $(this).attr('data-click-call', 1); 7351 }); 7352 7353 // $('*[href^="tel:+1'+find_link+'"]').each(function() { 7354 // $(this).attr('href', 'tel:+1'+replace_link); 7355 7356 // if (!$(this).is('script')) { 7357 // var html = $(this).html(); 7358 7359 // if (html.includes(find)) { 7360 // html = html.replaceAll(find, replace); 7361 // } 7362 7363 // if(find_texts.length) { 7364 // $.each(find_texts, function (index, find_text) { 7365 // if (html.includes(find_text)) { 7366 // html = html.replaceAll(find_text, replace); 7367 // } 7368 // }); 7369 // } 7370 7371 // if ($(this).html() !== html) { 7372 // $(this).html(html); 7373 // } 7374 // } 7375 // }); 7376 } 7377 7378 function fill_tags_with_metadata(metadata) { 7379 var data = metadata; 7380 7381 $.each(data, function (attribute, value) { 7382 if (attribute !== "json_ld") { 7383 if (attribute === "tags") { 7384 $.each(value, function (tag, content) { 7385 tag_tag = $(`${tag}`); 7386 if (tag_tag.length) { 7387 console.log(`<${tag}/> updated with ${content}.`) 7388 $(tag_tag).text(content) 7389 } else { 7390 console.log(`<${tag}/> failed.`) 7391 } 7392 }); 7393 } else { 7394 $.each(value, function (type, content) { 7395 meta_tag = $(`meta[${attribute}="${type}"]`); 7396 if (meta_tag.length) { 7397 console.log(`<meta ${attribute}="${type}"/> updated with ${content}.`) 7398 $(meta_tag).attr('content', content) 7399 } else { 7400 console.log(`<meta ${attribute}="${type}"/> failed.`); 7401 } 7402 }); 7403 } 7404 } 7405 }); 7406 } 7407 7408 fill_tags_with_metadata(metadata); 7409 7410 var source = null; 7411 var campaign = null; 7412 var ad_location = null; 7413 7414 if (get_cookie('source')) { 7415 source = get_cookie('source'); 7416 $('select[data-ad-tracking="source"] option[name="'+source+'"]').attr('selected', true); 7417 } 7418 else { 7419 $('select[data-ad-tracking="source"]').val('None'); 7420 } 7421 7422 if (get_cookie('campaign')) { 7423 campaign = get_cookie('campaign'); 7424 $('select[data-ad-tracking="campaign"] option[name="'+campaign+'"]').attr('selected', true); 7425 } 7426 else { 7427 $('select[data-ad-tracking="campaign"]').val('None'); 7428 } 7429 7430 if (get_cookie('location')) { 7431 console.log(ad_location); 7432 ad_location = get_cookie('location'); 7433 $('select[data-ad-tracking="ad_location"] option[name="'+ad_location+'"]').attr('selected', true); 7434 } 7435 else { 7436 $('select[data-ad-tracking="ad_location"]').val('None'); 7437 } 7438 7439 7440 7441 prioritize_source = ( 7442 json.settings.hasOwnProperty('prioritize_source') && 7443 json.settings.prioritize_source 7444 ? true 7445 : false 7446 ); 7447 7448 google_conversion = ( 7449 json.settings.hasOwnProperty('google_conversion_enabled') && 7450 json.settings.google_conversion_enabled && 7451 source == 'google' 7452 ? true 7453 : false 7454 ); 7455 7456 facebook_conversion = ( 7457 json.settings.hasOwnProperty('facebook_conversion_enabled') && 7458 json.settings.facebook_conversion_enabled && 7459 source == 'facebook' 7460 ? true 7461 : false 7462 ); 7463 7464 if ( 7465 source != null && campaign != null && 7466 source.length && campaign.length 7467 ) { 7468 if (ad_management.hasOwnProperty('ad_campaigns')) { 7469 $.each(ad_management.ad_campaigns, function(key, val) { 7470 if (val.hasOwnProperty(campaign)) { 7471 ad_grouping.push(key); 7472 } 7473 }); 7474 } 7475 7476 if ( 7477 ad_grouping.length && 7478 ad_management.hasOwnProperty('ad_campaign_labels') && 7479 ad_management.ad_campaign_labels.hasOwnProperty(ad_grouping[0]) && 7480 ad_management.ad_campaign_labels[ad_grouping[0]].length 7481 ) { 7482 var new_label = ad_management.ad_campaign_labels[ad_grouping[0]]; 7483 $('form').each(function() { 7484 var current_label = $(this).attr('data-category') || ''; 7485 if (current_label.length) { 7486 $(this).attr('data-category', current_label+' ('+new_label+')'); 7487 } 7488 }); 7489 } 7490 7491 if ( 7492 $('body').attr('data-template-group')?.includes('landing') && 7493 window.location.pathname !== '/' 7494 ) { 7495 7496 let current_url_params = new URLSearchParams(window.location.search); 7497 current_url_params.delete('location'); 7498 current_url_params.delete('source'); 7499 current_url_params.delete('campaign'); 7500 7501 console.log(ad_location); 7502 console.log(current_url_params.toString()); 7503 7504 7505 if (ad_location !== null && ad_location.length) { 7506 // history.pushState(null, null, ad_location + '/' + source.replaceAll('_', '-') + '/' + campaign.replaceAll('_', '-') + '/'); 7507 history.pushState(null, null, `${ad_location}/${source.replaceAll('_', '-')}
7507/${campaign.replaceAll('_', '-')}/${current_url_params.toString()? '?'+current_url_params.toString():'' }`); 7508 } else { 7509 // history.pushState(null, null, source.replaceAll('_', '-')+'/'+campaign.replaceAll('_', '-')+'/'); 7510 history.pushState(null, null, `${source.replaceAll('_', '-')}/${campaign.replaceAll('_', '-')}/${current_url_params.toString()? '?'+current_url_params.toString():'' }`); 7511 } 7512 } 7513 } 7514 7515 if (json.settings.hasOwnProperty('replacements')) { 7516 7517 if (json.settings.replacements.hasOwnProperty('convirza')) { 7518 // Enable if convirza.dni exists and is truthy, unless enable is explicitly false 7519 const convirza = json.settings.replacements.convirza; 7520 if ( 7521 convirza.hasOwnProperty('dni') && convirza.dni && 7522 (!convirza.hasOwnProperty('enable') || convirza.enable !== false) 7523 ) { 7524 console.log('Enabling Convirza DNI with ID: ' + convirza.dni); 7525 } 7526 } 7527 7528 7529 $.each(json.settings.replacements, function(key, val) { 7530 7531 var number_to_replace = ( 7532 val.hasOwnProperty('number_to_replace') && 7533 val.hasOwnProperty('phone_numbers') && 7534 val.number_to_replace.length > 0 7535 ? val.number_to_replace 7536 : false 7537 ); 7538 7539 var text_to_replace = ( 7540 val.hasOwnProperty('text_to_replace') && 7541 val.hasOwnProperty('phone_numbers') && 7542 val.text_to_replace.length > 0 7543 ? val.text_to_replace 7544 : false 7545 ); 7546 7547 if (number_to_replace) { 7548 7549 var has_source = ( 7550 val.hasOwnProperty('phone_numbers') && 7551 val.phone_numbers.hasOwnProperty('source') 7552 ? true 7553 : false 7554 ); 7555 7556 var has_campaign = ( 7557 val.hasOwnProperty('phone_numbers') && 7558 val.phone_numbers.hasOwnProperty('campaign') 7559 ? true 7560 : false 7561 ); 7562 7563 var has_grouping = ( 7564 val.hasOwnProperty('phone_numbers') && 7565 val.phone_numbers.hasOwnProperty('grouping') 7566 ); 7567 7568 if (prioritize_source) { 7569 if (has_source && val.phone_numbers.source.hasOwnProperty(source)) { 7570 var number_replacement = val.phone_numbers.source[source]; 7571 } 7572 else if (has_campaign && val.phone_numbers.campaign.hasOwnProperty(campaign)) { 7573 var number_replacement = val.phone_numbers.campaign[campaign]; 7574 } 7575 else if ( 7576 has_grouping && 7577 ad_grouping.length && 7578 val.phone_numbers.grouping.hasOwnProperty(ad_grouping[0]) 7579 ) { 7580 var number_replacement = val.phone_numbers.grouping[ad_grouping[0]]; 7581 } 7582 else { 7583 number_replacement = null; 7584 } 7585 7586 if (number_replacement) { 7587 if (text_to_replace) { 7588 find_replace_links(number_to_replace, number_replacement, text_to_replace); 7589 } else { 7590 find_replace_links(number_to_replace, number_replacement ); 7591 } 7592 } 7593 } 7594 else { 7595 if (has_campaign && val.phone_numbers.campaign.hasOwnProperty(campaign)) { 7596 var number_replacement = val.phone_numbers.campaign[campaign]; 7597 } 7598 else if ( 7599 has_grouping && 7600 ad_grouping.length && 7601 val.phone_numbers.grouping.hasOwnProperty(ad_grouping[0]) 7602 ) { 7603 var number_replacement = val.phone_numbers.grouping[ad_grouping[0]]; 7604 } 7605 else if (has_source && val.phone_numbers.source.hasOwnProperty(source)) { 7606 var number_replacement = val.phone_numbers.source[source]; 7607 } 7608 else { 7609 number_replacement = null; 7610 } 7611 7612 if (number_replacement) { 7613 if (text_to_replace) { 7614 find_replace_links(number_to_replace, number_replacement, text_to_replace); 7615 } else { 7616 find_replace_links(number_to_replace, number_replacement); 7617 } 7618 } 7619 } 7620 } 7621 }); 7622 } 7623 7624 $('[data-click-call="1"]').click(function(e) { 7625 e.preventDefault(); 7626 var request = {}; 7627 request.action = 'log_click_to_call'; 7628 request.number = $(this).attr('href'); 7629 request.source = source; 7630 request.campaign = campaign; 7631 request.domain = window.location.hostname; 7632 request.path = window.location.pathname; 7633 7634 $.post('https://referrals.di-api.com/', { 7635 'action': JSON.stringify(request) 7636 }) 7637 .done(function() { 7638 let link = document.createElement('a'); 7639 link.href = request.number; 7640 link.click(); 7641 URL.revokeObjectURL(link.href); 7642 }); 7643 }); 7644 7645 function initDNIIntercept(key, host) { 7646 return new Promise((resolve, reject) => { 7647 var script = document.createElement('script'); 7648 script.src = 'https://dni.logmycalls.com/dni.js?app_id=CT'; 7649 script.onerror = () => reject(new Error('Failed to load DNI script')); 7650 script.onload = function () { 7651 // Script loaded â CZADNI is now on window. 7652 // Replace their DOM-swapping function with a no-op that also captures the phone number and resolves the promise. 7653 const originalChangeNumber = CZADNI.changeTheNumberOnScreen.changeNumber; 7654 CZADNI.changeTheNumberOnScreen.changeNumber = function (mappings) { 7655 const mapping = mappings?.[0]; 7656 if (mapping?.phone_number && mapping.phone_number !== 'not_exist') { 7657 const formatted = CZADNI.changeTheNumberOnScreen.formatNumber( 7658 mapping.phone_number, 7659 mapping.dni_number_format 7660 ); 7661 resolve({ 7662 raw: mapping.phone_number, 7663 formatted: formatted.phone 7664 }); 7665 } 7666 }; 7667 7668 // init the DNI script 7669 getDNIRecord(key, host); 7670 }; 7671 document.head.appendChild(script); 7672 }); 7673 } 7674 } 7675</script>
7675 7676 7677 <section data-type="system-lightbox-container"></section> 7678
7678<script src="/system/js/jquery-3.5.1.min.js"></script>
7678 7679
7679<script src="https://kit.fontawesome.com/10cd9403cd.js" async></script>
7679 7680
7680<script> 7681 var scroll_disabled = false; 7682 var extras_loaded = false; 7683 var form_button_lock = false; 7684 var click_lock = false; 7685 var _userway_config = { position: 5, color: "#053e67", language: "en", account: "72Ve6c8l9z" }; 7686 var timeout = false; 7687 var window_width = null; 7688 var window_height = null; 7689 var google_conversion = false; 7690 var facebook_conversion = false; 7691 var file_field_counter = 0; 7692 const api = 'https://referrals.di-api.com/'; 7693 var newSession = false; 7694 var newVisitor = false; 7695 let socket = null; 7696 const pageID = uuid(); 7697 7698 function gtag(arguments) { 7699 dataLayer.push(arguments); 7700 } 7701 7702 google_tracking = { 7703 gtag: function () { 7704 dataLayer.push(arguments); 7705 } 7706 }; 7707 7708 facebook_tracking = { 7709 fbq: function () { 7710 n.queue.push(arguments); 7711 } 7712 }; 7713 7714 function Socket(visitorId, sessionId, pageId) { 7715 const ws = "wss://socket.di-api.com/analytics" 7716 this.promise = new Promise((resolve, reject) => { 7717 this.visitorId = visitorId; 7718 this.sessionId = sessionId; 7719 this.pageId = pageId; 7720 this.connection = null; 7721 7722 this.attempts = 0; 7723 this.interval = 1000; 7724 this.has_reconnect = false; 7725 var multiplier = 1.25; 7726 7727 var connect = () => { 7728 this.connection = new WebSocket(`${ws}?visitor_id=${visitorId}&session_id=${sessionId}&page_id=${pageId}`); 7729 this.attempts++; 7730 7731 this.connection.onopen = (e) => { 7732 {/* console.log(this.connection); 7733 console.log(e); */} 7734 this.attempts = 0; 7735 this.interval = 1000; 7736 console.log('Connection established'); 7737 7738 resolve(1) 7739 } 7740 7741 this.connection.onclose = (e) => { 7742 console.log('Connection closed'); 7743 this.connection = null; 7744 7745 if (this.has_reconnect) { 7746 this.interval *= multiplier; 7747 setTimeout(function () { 7748 reconnect(); 7749 }, this.interval); 7750 } 7751 } 7752 7753 this.connection.onerror = (e) => { 7754 console.log('%cConnection error ', 'color: red; display: block; width: 100%;', e); 7755 this.connection.close(); 7756 resolve(-1) 7757 } 7758 7759 this.connection.onmessage = (e) => { 7760 if (e.data) { 7761 7762 } 7763 } 7764 } 7765 7766 var reconnect = () => { 7767 if (this.connection === null && this.id !== null) { 7768 console.log('Reconnecting...') 7769 connect(ws); 7770 return 1; 7771 } else { 7772 console.log('Needs to Reconnect...') 7773 return -1; 7774 } 7775 } 7776 7777 7778 if (this.id !== null) { 7779 connect() 7780 } 7781 }) 7782 } 7783 7784 Socket.prototype.kill = function () { 7785 if (this.connection !== null) { 7786 if (this.connection.readyState) { 7787 this.has_reconnect = false; 7788 this.connection.close(); 7789 return 1; 7790 } else { 7791 return -1; 7792 } 7793 } else { 7794 return -1; 7795 } 7796 } 7797 7798 Socket.prototype.get_state = function () { 7799 if (this.connection !== null) { 7800 return this.connection.readyState; 7801 } else { 7802 return null; 7803 } 7804 } 7805 7806 function get_visitor_id() { 7807 let visitorID = localStorage.getItem('visitorID'); 7808 if (!visitorID) { 7809 newVisitor = true; 7810 visitorID = uuid(); 7811 localStorage.setItem('visitorID', visitorID); 7812 } 7813 return visitorID; 7814 } 7815 7816 function get_session_id() { 7817 let sessionID = sessionStorage.getItem('sessionID'); 7818 if (!sessionID) { 7819 newSession = true; 7820 sessionID = uuid(); 7821 sessionStorage.setItem('sessionID', sessionID); 7822 } 7823 return sessionID; 7824 } 7825 7826 function get_tracking_permitted() { 7827 const consent = window.DiPrivacy.consent ?? null; 7828 if (consent === 'granted') { 7829 return 1; 7830 } else if (consent === 'denied') { 7831 return 0; 7832 } else { 7833 return null; 7834 } 7835 } 7836 7837 7838 function is_valid_interaction_type(type) { 7839 // Array of patterns (including static strings as patterns) 7840 const patterns = [ 7841 /^call$/, // Exact match of 'call' 7842 /^click$/, // Exact match of 'click' 7843 /^form_submission$/, // Exact match of 'form_submission' 7844 /^landing$/, // Exact match of 'landing' 7845 /^page$/, // Exact match of 'page' 7846 /^question_\d+$/, // Matches 'question_' followed by one or more digits 7847 /^tracking_permitted$/, // Exact match of 'tracking_permitted' 7848 ]; 7849 7850 // Iterate over the patterns and check if the type matches any of them 7851 for (let pattern of patterns) { 7852 if (pattern.test(type)) { 7853 return true; 7854 } 7855 } 7856 7857 return false; 7858 } 7859 7860 function track_submit(elem) { 7861 return new Promise((resolve, reject) => { 7862 7863 const visitorID = get_visitor_id(); 7864 const sessionID = get_session_id() 7865 7866 let aios_module = elem.closest('[data-mid]'); 7867 let aios_content = elem.closest('[data-cid]') 7868
7869 if (aios_module instanceof jQuery) { 7870 if (aios_module.length) { 7871 aios_module = aios_module[0] 7872 } else { 7873 aios_module = null; 7874 } 7875 } 7876 7877 if (aios_content instanceof jQuery) { 7878 if (aios_content.length) { 7879 aios_content = aios_content[0]; 7880 } else { 7881 aios_content = null; 7882 } 7883 } 7884 7885 7886 7887 let request = {}; 7888 request.action = 'page_interaction'; 7889 request.type = 'form_submission'; 7890 request.visitor_id = visitorID; 7891 request.session_id = sessionID; 7892 request.page_id = pageID; 7893 request.mid = (aios_module !== null) ? aios_module.getAttribute('data-mid') : null; 7894 request.cid = (aios_content !== null) ? aios_content.getAttribute('data-cid') : null; 7895 request.domain = window.location.hostname; 7896 request.page = window.location.pathname; 7897 request.href = null; 7898 request.source = (get_cookie('source') ? get_cookie('source') : null); 7899 request.campaign = (get_cookie('campaign') ? get_cookie('campaign') : null); 7900 request.location = (get_cookie('location') ? get_cookie('location') : null); 7901 request.category = (aios_content !== null) ? aios_content.getAttribute('data-category') : null; 7902 request.subcategory = (aios_content !== null) ? aios_content.getAttribute('data-subcategory') : null; 7903 request.referrer = document.referrer; 7904 request.tracking_permitted = get_tracking_permitted(); 7905 7906 if (get_tracking_permitted() === 1) { } 7907 else { 7908 request.visitor_id = null; 7909 if (document.referrer) { 7910 request.referrer = (new URL(document.referrer)).hostname || null; 7911 } 7912 } 7913 7914 7915 7916 // console.log(request) 7917 7918 let xhr = new XMLHttpRequest(); 7919 xhr.open('POST', api); 7920 xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); 7921 xhr.onreadystatechange = function () { 7922 // console.log(xhr.readyState) 7923 if (xhr.readyState == 2) { 7924 resolve(true); 7925 } 7926 if (xhr.readyState == 4) { 7927 if (xhr.status == 200) { 7928 } else { 7929 } 7930 } 7931 } 7932 xhr.onerror = function () { 7933 reject(xhr.status); 7934 } 7935 xhr.send(encodeURI('action=' + JSON.stringify(request))); 7936 }); 7937 } 7938 7939 function track_click(elem) { 7940 return new Promise((resolve, reject) => { 7941 7942 const visitorID = get_visitor_id(); 7943 const sessionID = get_session_id() 7944 7945 let click_type = 'click'; 7946 let aios_module = elem.closest('[data-mid]'); 7947 let aios_content = elem.closest('[data-cid]') 7948 7949 if (aios_module instanceof jQuery) { 7950 if (aios_module.length) { 7951 aios_module = aios_module[0] 7952 } else { 7953 aios_module = null; 7954 } 7955 } 7956 7957 if (aios_content instanceof jQuery) { 7958 if (aios_content.length) { 7959 aios_content = aios_content[0]; 7960 } else { 7961 aios_content = null; 7962 } 7963 } 7964 7965 if (elem.hasAttribute('href')) { 7966 if (elem.getAttribute('href').indexOf('tel:') > -1) { 7967 click_type = 'call' 7968 } 7969 } 7970 7971 if (elem.tagName === 'BUTTON') { 7972 if (elem.hasAttribute('data-click-tracking-type') || elem.hasAttribute('data-event')) { 7973 const elem_type = elem.getAttribute('data-click-tracking-type') || elem.getAttribute('data-event'); 7974 if (elem_type === 'consent_accept' || elem_type === 'consent_reject') { 7975 click_type = 'tracking_permitted'; 7976 } else if (is_valid_interaction_type(elem_type)) { 7977 click_type = elem_type; 7978 } 7979 } 7980 } 7981 7982 if (elem.hasAttribute('data-click-tracking')) { 7983 if (elem.hasAttribute('data-click-tracking-type') || elem.hasAttribute('data-event')) { 7984 const elem_type = elem.getAttribute('data-click-tracking-type') || elem.getAttribute('data-event'); 7985 if (is_valid_interaction_type(elem_type)) { 7986 click_type = elem_type; 7987 } 7988 } 7989 } 7990 7991 let request = {}; 7992 request.action = 'page_interaction'; 7993 request.type = click_type; 7994 request.visitor_id = visitorID; 7995 request.session_id = sessionID; 7996 request.page_id = pageID; 7997 request.mid = (aios_module !== null) ? aios_module.getAttribute('data-mid') : null; 7998 request.cid = (aios_content !== null) ? aios_content.getAttribute('data-cid') : null; 7999 request.domain = window.location.hostname; 8000 request.page = window.location.pathname; 8001 request.href = elem.getAttribute('href'); 8002 request.source = (get_cookie('source') ? get_cookie('source') : null); 8003 request.campaign = (get_cookie('campaign') ? get_cookie('campaign') : null); 8004 request.location = (get_cookie('location') ? get_cookie('location') : null); 8005 request.category = (aios_content !== null) ? aios_content.getAttribute('data-category') : null; 8006 request.subcategory = (aios_content !== null) ? aios_content.getAttribute('data-subcategory') : null; 8007 request.referrer = document.referrer; 8008 request.tracking_permitted = get_tracking_permitted(); 8009 8010 if (get_tracking_permitted() === 1) { } 8011 else { 8012 request.visitor_id = null; 8013 if (document.referrer) { 8014 request.referrer = (new URL(document.referrer)).hostname || null; 8015 } 8016 } 8017 8018 console.log(request); 8019 8020 let xhr = new XMLHttpRequest(); 8021 xhr.open('POST', api); 8022 xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); 8023 xhr.onreadystatechange = function () { 8024 // console.log(xhr.readyState) 8025 if (xhr.readyState == 2) { 8026 resolve(true); 8027 } 8028 if (xhr.readyState == 4) { 8029 if (xhr.status == 200) { 8030 } else { 8031 } 8032 } 8033 } 8034 xhr.onerror = function () { 8035 reject(xhr.status); 8036 } 8037 xhr.send(encodeURI('action=' + JSON.stringify(request))); 8038 }); 8039 } 8040 8041 function track_load() { 8042 return new Promise((resolve, reject) => { 8043 const visitorID = get_visitor_id(); 8044 const sessionID = get_session_id() 8045 {/* pageID = uuid(); */ } 8046 8047 let request = {}; 8048 request.action = 'page_interaction'; 8049 request.type = (newSession) ? 'landing' : 'page'; 8050 request.visitor_id = visitorID; 8051 request.session_id = sessionID; 8052 request.page_id = pageID; 8053 request.domain = window.location.hostname; 8054 request.page = window.location.pathname; 8055 request.source = (get_cookie('source') ? get_cookie('source') : null); 8056 request.campaign = (get_cookie('campaign') ? get_cookie('campaign') : null); 8057 request.location = (get_cookie('location') ? get_cookie('location') : null); 8058 request.referrer = document.referrer; 8059 request.tracking_permitted = get_tracking_permitted(); 8060 8061 if (get_tracking_permitted() === 1) { } 8062 else { 8063 request.visitor_id = null; 8064 if (document.referrer) { 8065 request.referrer = (new URL(document.referrer)).hostname || null; 8066 } 8067 } 8068 8069 let xhr = new XMLHttpRequest(); 8070 xhr.open('POST', api); 8071 xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); 8072 xhr.onreadystatechange = function () { 8073 if (xhr.readyState == 2) { 8074 resolve(true); 8075 } 8076 if (xhr.readyState == 4) { 8077 if (xhr.status == 200) { 8078 } else { 8079 } 8080 } 8081 } 8082 xhr.onerror = function () { 8083 reject(xhr.status); 8084 } 8085 xhr.send(encodeURI('action=' + JSON.stringify(request))); 8086 }); 8087 } 8088 8089 function deferred_websocket() { 8090 return new Promise((resolve, reject) => { 8091 let visitorID = get_visitor_id(); 8092 const sessionID = get_session_id(); 8093 8094 if (get_tracking_permitted() !== 1) { 8095 visitorID = null; 8096 } 8097 8098 window.addEventListener('scroll', function () { 8099 if (socket === null) { 8100 socket = new Socket(visitorID, sessionID, pageID); 8101 resolve(true); 8102 } 8103 }); 8104 8105 window.addEventListener('mousemove', function () { 8106 if (socket === null) { 8107 socket = new Socket(visitorID, sessionID, pageID); 8108 resolve(true); 8109 } 8110 }); 8111 8112 window.addEventListener('click', function () { 8113 if (socket === null) { 8114 socket = new Socket(visitorID, sessionID, pageID); 8115 resolve(true); 8116 } 8117 }); 8118 }); 8119 } 8120 8121 function clone_lightbox(selected, dom, section, settings) { 8122 var counter = 0; 8123 clonedDom = dom.cloneNode(true); 8124 document.querySelector('section[data-type="system-lightbox-container"]').appendChild(clonedDom); 8125 document.querySelector('section[data-type="system-lightbox-container"] > [data-action="lightbox"]').setAttribute('data-origin', section); 8126 var lightboxItems = document.querySelectorAll('section[data-type="system-lightbox-container"] [data-action="lightbox_item"]'); 8127 lightboxItems[selected].classList.add('selected'); 8128 8129 var closeLightboxElement = document.createElement('div'); 8130 closeLightboxElement.classList.add('close-icon'); 8131 closeLightboxElement.innerHTML = ` 8132 <i class="fal fa-times-circle"> 8133 `; 8134 closeLightboxElement.addEventListener('click', function (e) { 8135 e.preventDefault(); 8136 close_lightbox(); 8137 }); 8138 8139 var nextLightboxElement = document.createElement('div'); 8140 nextLightboxElement.classList.add('next-icon'); 8141 nextLightboxElement.innerHTML = ` 8142 <i class="fal fa-chevron-circle-right"> 8143 `; 8144 8145 var prevLightboxElement = document.createElement('div'); 8146 prevLightboxElement.classList.add('prev-icon'); 8147 prevLightboxElement.innerHTML = ` 8148 <i class="fal fa-chevron-circle-left"> 8149 `; 8150 8151 lightboxItems[selected].appendChild(closeLightboxElement); 8152 lightboxItems[selected].appendChild(nextLightboxElement); 8153 lightboxItems[selected].appendChild(prevLightboxElement); 8154 8155 $('section[data-type="system-lightbox-container"] [data-action="lightbox_item"]').each(function () { 8156 $(this).attr('data-index', counter), 8157 counter++; 8158 }); 8159 8160 open_lightbox(); 8161 } 8162 8163 function open_lightbox() { 8164 $('section[data-type="system-lightbox-container"]').addClass('show'); 8165 setTimeout(function () { 8166 $('*[data-type="system-lightbox-close"]').click(close_lightbox); 8167 }, 400); 8168 8169 $('section[data-type="system-lightbox-container"] [data-lazy-picture="true"]').each(function () { 8170 var data_srcset = $(this).attr('data-srcset'); 8171 var srcset = $(this).attr('srcset'); 8172
8173 if (data_srcset !== '') { 8174 $(this).attr('srcset', data_srcset); 8175 } 8176 }); 8177 8178 $('section[data-type="system-lightbox-container"] [data-lazy-img="true"]').each(function () { 8179 var src = $(this).attr('data-src'); 8180 if (src) { 8181 $(this).attr('src', src); 8182 } 8183 }); 8184 } 8185 8186 function close_lightbox() { 8187 $('*[data-type="system-lightbox-close"]').unbind(); 8188 $('section[data-type="system-lightbox-container"]').removeClass('show'); 8189 setTimeout(function () { 8190 $('section[data-type="system-lightbox-container"]').empty(); 8191 }, 0); 8192 } 8193 8194 function reset_lightbox_container() { 8195 const $container = $('section[data-type="system-lightbox-container"]'); 8196 8197 // Remove only injected lightbox-content clones 8198 $container.find('section[data-type="system-lightbox-content"]').remove(); 8199 8200 // Remove container click handlers (or at least the ones you add via namespace) 8201 $container.off('click.autoOutsideClose'); 8202 } 8203 8204 (function wrapOpenLightbox() { 8205 if (window.__openLightboxWrapped2) return; 8206 window.__openLightboxWrapped2 = true; 8207 8208 function wait() { 8209 if (typeof window.open_lightbox !== 'function') { 8210 setTimeout(wait, 25); 8211 return; 8212 } 8213 8214 const originalOpen = window.open_lightbox; 8215 8216 // Global config 8217 window.override_lightbox = window.override_lightbox || false; 8218 window.lightbox_allowed_source = window.lightbox_allowed_source || null; 8219 window.lightbox_call_source = null; // ephemeral, set right before allowed opens 8220 8221 // Helper: run a function while temporarily marking the caller 8222 window.with_lightbox_source = function (sourceId, fn) { 8223 const prev = window.lightbox_call_source; 8224 window.lightbox_call_source = sourceId; 8225 try { 8226 return fn(); 8227 } finally { 8228 window.lightbox_call_source = prev; 8229 } 8230 }; 8231 8232 window.open_lightbox = function () { 8233 // If override is active, only allow calls tagged by the allowed source 8234 if (window.override_lightbox) { 8235 if (!window.lightbox_allowed_source) return; // locked down hard 8236 if (window.lightbox_call_source !== window.lightbox_allowed_source) { 8237 return; // ignore everyone else 8238 } 8239 } 8240 8241 return originalOpen.apply(this, arguments); 8242 }; 8243 } 8244 8245 wait(); 8246 })(); 8247 8248 function uuid(verbose = false) { 8249 let id = ([1e7] + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, c => 8250 (c ^ crypto.getRandomValues(new Uint8Array(1))[0] & 15 >> c / 4).toString(16) 8251 ) 8252 if (verbose) { 8253 console.log(id); 8254 } 8255 return id 8256 } 8257 8258 function set_cookie(name, value, days, domain) { 8259 var expires = ''; 8260 if (domain == null) { 8261 var domain = window.location.hostname; 8262 domain = domain.split('.'); 8263 8264 if (domain.length == 2) { 8265 domain = domain.join('.'); 8266 } 8267 8268 if (domain.length == 3) { 8269 domain = domain.slice(Math.max(domain.length - 2, 1)); 8270 domain = domain.join('.'); 8271 } 8272 } 8273 if (days) { 8274 var date = new Date(); 8275 date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000)); 8276 expires = '; expires=' + date.toUTCString(); 8277 } 8278 document.cookie = name + '=' + (value || '') + expires + '; domain=' + domain + '; path=/'; 8279 } 8280 8281 function get_cookie(name) { 8282 var name_eq = name + '='; 8283 var ca = document.cookie.split(';'); 8284 for (var i = 0; i < ca.length; i++) { 8285 var c = ca[i]; 8286 while (c.charAt(0) == ' ') c = c.substring(1, c.length); 8287 if (c.indexOf(name_eq) == 0) return c.substring(name_eq.length, c.length); 8288 } 8289 return null; 8290 } 8291 8292 function disable_scroll() { 8293 if (scroll_disabled) { 8294 return; 8295 } 8296 8297 scroll_disabled = true; 8298 scrollTop = $(window).scrollTop(); 8299 8300 $('body') 8301 .css({ 8302 'top': -1 * scrollTop, 8303 'position': 'fixed', 8304 'overflow': 'hidden', 8305 'pointer-events': 'none', 8306 }); 8307 } 8308 8309 function load_extras() { 8310 $.getScript('https://cdn.userway.org/widget.js'); 8311 javascript_deferred.load.forEach(function (v) { 8312 javascript_deferred.prototype[v](); 8313 }); 8314 8315 $('iframe[data-src]').each(function () { 8316 var src = $(this).attr('data-src'); 8317 if (!(src == null || src == '')) { 8318 $(this).attr('src', src); 8319 } 8320 }); 8321 8322 $('iframe[data-srcdoc]').each(function () { 8323 var srcdoc = atob($(this).attr('data-srcdoc')); 8324 if (!(srcdoc == null || srcdoc == '')) { 8325 $(this).attr('srcdoc', srcdoc); 8326 } 8327 }); 8328 } 8329 8330 function update_deferred_images() { 8331 $('[data-lazy-picture="false"]').each(function () { 8332 var data_srcset = $(this).attr('data-srcset'); 8333 var srcset = $(this).attr('srcset'); 8334
8335 if (data_srcset !== '') { 8336 $(this).attr('srcset', data_srcset); 8337 } 8338 }); 8339 8340 $('[data-lazy-img="false"]').each(function () { 8341 var src = $(this).attr('data-src'); 8342 if (src) { 8343 $(this).attr('src', src); 8344 } 8345 }); 8346 8347 /* $('source[data-srcset]').each(function() { 8348 if ($('body').attr('data-width') > 360) { 8349 var src = $(this).attr('data-srcset'); 8350 $(this).attr('srcset', src); 8351 } 8352 else { 8353 var src = $(this).attr('data-srcset-sm'); 8354 $(this).attr('srcset', src); 8355 } 8356 }); */ 8357 8358 8359 $('video source[data-src]').each(function () { 8360 if ($('body').attr('data-width') > 360) { 8361 var src = $(this).attr('data-src'); 8362 $(this).attr('src', src); 8363 $(this).closest('video')[0].load(); 8364 8365 if ($(this).closest('video')[0].hasAttribute('muted')) { 8366 $(this).closest('video')[0].play(); 8367 } 8368 } 8369 }); 8370 } 8371 8372 function lazy_load_deferred_images() { 8373 const lazySections = document.querySelectorAll('body > section') 8374 8375 lazySections.forEach(section => { 8376 // section.classList.add('lazying'); 8377 createObserver(section); 8378 }); 8379 8380 8381 function createObserver(el) { 8382 let observer; 8383 8384 let options = { 8385 root: null, 8386 rootMargin: "100px 0px", 8387 threshold: 0 8388 }; 8389 8390 observer = new window.IntersectionObserver(handleIntersect, options); 8391 observer.observe(el); 8392 } 8393 8394 function handleIntersect(entries, o) { 8395 entries.forEach((entry) => { 8396 if (entry.isIntersecting) { 8397 const lazyAssets = entry.target.querySelectorAll('[data-lazy-picture="true"], [data-lazy-img="true"]'); 8398 // console.log('Lazy Assets', lazyAssets); 8399 8400 lazyAssets.forEach((asset) => { 8401 load(asset); 8402 }); 8403 8404 o.unobserve(entry.target) 8405 8406 } else { 8407 } 8408 }); 8409 } 8410 8411 function load(asset) { 8412 8413 if (asset.tagName === 'IMG') { 8414 if (asset.hasAttribute('data-src')) { 8415 const source = asset.getAttribute('data-src'); 8416 if (source) { 8417 asset.setAttribute('src', source); 8418 asset.removeAttribute('data-src') 8419 } 8420 } else { 8421 } 8422 } 8423 8424 if (asset.tagName === 'SOURCE') { 8425 if (asset.hasAttribute('data-srcset')) { 8426 const source = asset.getAttribute('data-srcset'); 8427 if (source) { 8428 asset.setAttribute('srcset', source); 8429 asset.removeAttribute('data-srcset') 8430 } 8431 } else { 8432 } 8433 } 8434 } 8435 8436 // document.addEventListener('scroll', function () { 8437 8438 // }); 8439 } 8440 8441 8442 function set_resize_listeners() { 8443 window.addEventListener('resize', function () { 8444 if ($(window).width() == window_width) { 8445 return; 8446 } 8447 else { 8448 clearTimeout(timeout); 8449 timeout = setTimeout(get_viewport_size, 50); 8450 } 8451 window_width = $(window).width(); 8452 }); 8453 8454 window.addEventListener('resize', function () { 8455 if ($(window).height() == window_height) { 8456 return; 8457 } 8458 else { 8459 clearTimeout(timeout); 8460 timeout = setTimeout(get_viewport_size, 50); 8461 } 8462 window_height = $(window).height(); 8463 }); 8464 } 8465 8466 function set_scroll_listeners() { 8467 $(document).one('scroll', function () { 8468 if (!extras_loaded) { 8469 extras_loaded = true; 8470 load_extras(); 8471 } 8472 }); 8473 8474 $(document).one('mousemove', function () { 8475 if (!extras_loaded) { 8476 extras_loaded = true; 8477 load_extras(); 8478 } 8479 }); 8480 } 8481 8482 function set_accordion_listeners() { 8483 if ($('div[data-micro-template="accordion"]')) { 8484 $('div[data-accordion="title"').click(function () { 8485 var $container = $(this).closest($('div[data-micro-template="accordion_container"]')); 8486 var $toggles = $container.find('.accordion_toggle'); 8487 var $bodies = $container.find('.accordion_body'); 8488 var $titles = $container.find('.accordion_title'); 8489 8490 $titles.removeClass('active'); 8491 $toggles.text("+"); 8492 $bodies.slideUp(); 8493 8494 if (!$(this).next().is(":visible")) { 8495 $(this).addClass('active'); 8496 $(this).next().slideDown(); 8497 $(this).children('.accordion_toggle').text('-'); 8498 } 8499 }); 8500 } 8501 } 8502 8503 8504 function get_form_info(form) { 8505 const el = $(form)[0]; 8506 return { 8507 page: window.location.pathname, 8508 form: { 8509 id: el.getAttribute('data-form-id') || null, 8510 type: el.getAttribute('data-type') || null, 8511 category: el.getAttribute('data-category') || null, 8512 }, 8513 }; 8514 } 8515 8516 function dispatch_form_event(name, form, response, form_data) { 8517 const detail = get_form_info(form); 8518 detail.response = response; 8519 detail.form_data = form_data ?? null; 8520 $(form)[0].dispatchEvent(new CustomEvent(name, { bubbles: true, detail: detail })); 8521 } 8522 8523 function form_actions() { 8524 if ($('form').length) { 8525 if ($('input[data-toggle="datepicker"]').length) { 8526 $.getScript('/system/js/datepicker/datepicker.js', function () { 8527 $('head').append($('<link rel="stylesheet" type="text/css" />').attr('href', '/system/js/datepicker/datepicker.css')); 8528 $('input[data-toggle="datepicker"]').each(function () { 8529 8530 let start_date; 8531 8532 if ($(this).attr('name') == 'dob' || $(this).attr('name') == 'birthdate' || $(this).attr('data-email-label').includes('Birth')) { 8533 start_date = '1907-03-04'; 8534 } 8535 8536 const data_start_date = $(this).attr('data-start-date'); 8537 8538 if (data_start_date) { 8539 start_date = data_start_date; 8540 } 8541 8542 if (start_date) { 8543 const match = /^([+-])(\d+)([dwy])$/.exec(start_date); 8544 if (match) { 8545 const [, sign, amountStr, unit] = match; 8546 const amount = parseInt(amountStr, 10) * (sign === '-' ? -1 : 1); 8547 start_date = new Date(); 8548 if (unit === 'd') start_date.setDate(start_date.getDate() + amount); 8549 else if (unit === 'w') start_date.setDate(start_date.getDate() + amount * 7); 8550 else if (unit === 'y') start_date.setFullYear(start_date.getFullYear() + amount); 8551 } else { 8552 start_date = new Date(start_date); 8553 } 8554 } else { 8555 start_date = new Date(); 8556 } 8557 8558 var disabled = { 8559 'mon': $(this).attr('data-mon'),
8560 'tue': $(this).attr('data-tue'), 8561 'wed': $(this).attr('data-wed'), 8562 'thu': $(this).attr('data-thu'), 8563 'fri': $(this).attr('data-fri'), 8564 'sat': $(this).attr('data-sat'), 8565 'sun': $(this).attr('data-sun'), 8566 }; 8567 8568 $(this).datepicker({ 8569 'autoHide': true, 8570 'startDate': start_date, 8571 'filter': function (date, view) { 8572 if (disabled['mon'] == true) { if (date.getDay() === 1 && view === 'day') { return false; } } 8573 if (disabled['tue'] == true) { if (date.getDay() === 2 && view === 'day') { return false; } } 8574 if (disabled['wed'] == true) { if (date.getDay() === 3 && view === 'day') { return false; } } 8575 if (disabled['thu'] == true) { if (date.getDay() === 4 && view === 'day') { return false; } } 8576 if (disabled['fri'] == true) { if (date.getDay() === 5 && view === 'day') { return false; } } 8577 if (disabled['sat'] == true) { if (date.getDay() === 6 && view === 'day') { return false; } } 8578 if (disabled['sun'] == true) { if (date.getDay() === 0 && view === 'day') { return false; } } 8579 } 8580 }); 8581 }); 8582 }); 8583 } 8584 8585 $('form input[type="file"]').change(function () { 8586 var max_file_size = $(this).closest('[data-group="file"]').attr('data-max-size'); 8587 var current_label = $(this).closest('label').find('.label_name').text(); 8588 console.log(current_label); 8589 var current_form = $(this).closest('form'); 8590 var container = $(this).closest('[data-container="file"]'); 8591 var selected_file = $(this).val().split('/').pop().split('\\').pop(); 8592 8593 $(this).closest('label').find('.label_name').text(selected_file); 8594 $(this).closest('label').find('.label_name').append('<div class="remove_file"><i class="fal fa-times">'); 8595 8596 var total_file_size = 0; 8597 8598 $(current_form).find('input[type="file"]').each(function () { 8599 if ($(this).val().length > 0) { 8600 total_file_size += $(this).prop('files')[0].size; 8601 } 8602 }); 8603 8604 $(current_form).find('.max_size_container .dynamic_size').text((total_file_size / 1024 / 1024).toFixed(2)); 8605 8606 if ($(container).next('[data-container="file"]').length < 1) { 8607 file_field_counter++; 8608 var current_name = $(container).attr('data-name'); 8609 var next_container = $(container).clone(true).insertAfter(container); 8610 $(next_container).find('input').attr('name', current_name + '_' + file_field_counter); 8611 $(next_container).find('input').val(''); 8612 $(next_container).find('label .label_name').text(current_label); 8613 } 8614 8615 if ((total_file_size / 1024 / 1024).toFixed(2) > parseInt(max_file_size)) { 8616 $(current_form).find('.max_size_container').addClass('too_large'); 8617 $(current_form).find('[data-group="file"] > div [data-container="file"]:last-of-type').addClass('disabled'); 8618 $(current_form).find('[data-type="submit"]').addClass('disabled'); 8619 $(current_form).addClass('disabled'); 8620 } 8621 else { 8622 $(current_form).find('.max_size_container').removeClass('too_large'); 8623 $(current_form).find('[data-group="file"] > div [data-container="file"]:last-of-type').removeClass('disabled'); 8624 $(current_form).find('[data-type="submit"]').removeClass('disabled'); 8625 $(current_form).removeClass('disabled'); 8626 } 8627 8628 $(container).find('.remove_file').click(function (e) { 8629 e.preventDefault(); 8630 $(container).remove(); 8631 8632 total_file_size = 0; 8633 8634 $(current_form).find('input[type="file"]').each(function () { 8635 if ($(this).val().length > 0) { 8636 total_file_size += $(this).prop('files')[0].size; 8637 } 8638 }); 8639 8640 if ((total_file_size / 1024 / 1024).toFixed(2) > parseInt(max_file_size)) { 8641 $(current_form).find('.max_size_container').addClass('too_large'); 8642 $(current_form).find('[data-group="file"] > div [data-container="file"]:last-of-type').addClass('disabled'); 8643 $(current_form).find('[data-type="submit"]').addClass('disabled'); 8644 $(current_form).addClass('disabled'); 8645 } 8646 else { 8647 $(current_form).find('.max_size_container').removeClass('too_large'); 8648 $(current_form).find('[data-group="file"] > div [data-container="file"]:last-of-type').removeClass('disabled'); 8649 $(current_form).find('[data-type="submit"]').removeClass('disabled'); 8650 $(current_form).removeClass('disabled'); 8651 } 8652 8653 if ($('form.disabled').length > 0) { 8654 $('form [data-type="submit_multi"]').addClass('disabled'); 8655 } 8656 else { 8657 $('form [data-type="submit_multi"]').removeClass('disabled'); 8658 } 8659
8660 $(current_form).find('.max_size_container .dynamic_size').text((total_file_size / 1024 / 1024).toFixed(2)); 8661 }); 8662 }); 8663 8664 $('form *[data-required="true"], form *[data-required="1"]').each(function () { 8665 var placeholder = $(this).attr('placeholder'); 8666 $(this).attr('required', true); 8667 $(this).attr('placeholder', placeholder + ' *'); 8668 $(this).find('option[value=""]').text($(this).find('option[value=""]').text() + ' *'); 8669 }); 8670 8671 $('form fieldset').each(function () { 8672 var field_name = $(this).attr('name'); 8673 var default_value = $(this).attr('value'); 8674 8675 if (default_value !== '') { 8676 $(this).find('input[data-type="radio"][name="' + field_name + '"][value="' + default_value + '"]').attr('checked', true); 8677 $(this).find('input[data-type="radio"][id="' + field_name + '_' + default_value + '"]').attr('checked', true); 8678 $(this).find('input[data-type="checkbox"][name="' + default_value + '"]').attr('checked', true); 8679 $(this).find('input[data-type="checkbox"][id="' + field_name + '_' + default_value + '"]').attr('checked', true); 8680 } 8681 }); 8682 8683 $('form *[data-readonly="true"], form *[data-readonly="1"]').each(function () { 8684 $(this).attr('readonly', true); 8685 }); 8686 8687 $('form *[data-hidden="true"], form *[data-hidden="1"]').each(function () { 8688 $(this).css('display', 'none'); 8689 }); 8690 8691 $('form[data-dynamic="true"]').on('submit', function (e) { 8692 console.time('Click 2 Submit') 8693 e.preventDefault(); 8694 var submitted_form = $(this); 8695 var submitted_form_data = null; // ADD 8696 var recaptcha_site_key = $(this).attr('data-recaptcha-site-key'); 8697 var recaptcha_secret_key = $(this).attr('data-recaptcha-secret-key'); 8698 var recaptcha_processor = $(this).attr('data-recaptcha-processor'); 8699 8700 if ( 8701 recaptcha_site_key !== '' && 8702 recaptcha_secret_key !== '' && 8703 recaptcha_processor !== '' 8704 ) { 8705 if (this.checkValidity()) { 8706 grecaptcha.ready(function () { 8707 grecaptcha.execute(recaptcha_site_key, { action: 'submit' }).then(function (token) { 8708 $.post(recaptcha_processor, { 8709 secret: recaptcha_secret_key, 8710 response: token 8711 }) 8712 .done(function (recaptcha) { 8713 prepare_submission(submitted_form, recaptcha).then((val) => { 8714 return submit_form(val.form_submit, val.recaptcha, val.form_data, val.db_only, val.recipients, val.recipients_add, val.ad_recipients, val.cc, val.cc_add, val.subject, val.category, val.is_hipaa, val.reply_to, val.pdf, val.ad_source, val.ad_campaign, val.ad_location, val.ad_source_key, val.ad_campaign_ke
8714y, val.ad_location_key, val.submission_url); 8715 }).then((val) => { 8716 // Done 8717 submitted_form_data = val.form_data; 8718 track_submit(submitted_form); 8719 8720 // Custom Event 8721 dispatch_form_event("tdi:form:success", submitted_form, val, submitted_form_data); 8722 8723 }); 8724 }) 8725 }); 8726 }); 8727 } 8728 } 8729 else { 8730 if (this.checkValidity()) { 8731 prepare_submission(submitted_form, null).then((val) => { 8732 return submit_form(val.form_submit, val.recaptcha, val.form_data, val.db_only, val.recipients, val.recipients_add, val.ad_recipients, val.cc, val.cc_add, val.subject, val.category, val.is_hipaa, val.reply_to, val.pdf, val.ad_source, val.ad_campaign, val.ad_location, val.ad_source_key, val.ad_campaign_key, val.ad_location_key, val.submission_url); 8733 }).then((val) => { 8734 // Done 8735 submitted_form_data = val.form_data; 8736 track_submit(submitted_form); 8737 8738 // Custom Event 8739 dispatch_form_event("tdi:form:success", submitted_form, val, submitted_form_data); 8740 8741 }); 8742 } 8743 } 8744 }); 8745 8746 $('form .button.submit[data-dynamic="true"]').click(function () { 8747 if (!form_button_lock && !click_lock) { 8748 click_lock = true; 8749 $(this).closest('form').find('input[type="submit"]')[0].click(); 8750 } 8751 setTimeout(function () { 8752 click_lock = false; 8753 }, 1000); 8754 }); 8755 8756 $('form select[name="location"]').change(function (e) { 8757 $(this).closest('form').find('input[name="date"').val(''); 8758 if ($(this).find(':selected').data('datesDisabled')) { 8759 var $selectedOption = $(this).find(':selected').data('datesDisabled'); 8760 $selectedOption = atob($selectedOption); 8761 8762 $(this).closest('form').find('input[data-toggle="datepicker"]').each(function () { 8763 var disabled = JSON.parse($selectedOption); 8764 $(this).datepicker('destroy'); 8765 $(this).datepicker({ 8766 'autoHide': true, 8767 'filter': function (date, view) { 8768 if (disabled['mon'] == true) { if (date.getDay() === 1 && view === 'day') { return false; } } 8769 if (disabled['tue'] == true) { if (date.getDay() === 2 && view === 'day') { return false; } } 8770 if (disabled['wed'] == true) { if (date.getDay() === 3 && view === 'day') { return false; } } 8771 if (disabled['thu'] == true) { if (date.getDay() === 4 && view === 'day') { return false; } } 8772 if (disabled['fri'] == true) { if (date.getDay() === 5 && view === 'day') { return false; } } 8773 if (disabled['sat'] == true) { if (date.getDay() === 6 && view === 'day') { return false; } } 8774 if (disabled['sun'] == true) { if (date.getDay() === 0 && view === 'day') { return false; } } 8775 } 8776 }); 8777 $(this).datepicker('update'); 8778 }); 8779 } 8780 }); 8781 8782 8783 8784 $('form input[name^="phone"][data-type="text"]').on('input', function () { 8785 var el = this; 8786 var oldValue = el.value; 8787 var selStart = el.selectionStart; 8788 8789 // digits to the left of the caret in the OLD value 8790 var digitsLeft = oldValue.slice(0, selStart).replace(/\D/g, '').length; 8791 8792 var digits = oldValue.replace(/\D/g, ''); 8793 8794 8795 var intl = digits.length > 10; 8796 8797 var formatted; 8798 if (!intl) { 8799 var m = digits.slice(0, 10).match(/^(\d{0,3})(\d{0,3})(\d{0,4})$/); 8800 formatted = !m[2] ? m[1] : '(' + m[1] + ') ' + m[2] + (m[3] ? '-' + m[3] : ''); 8801 } else { 8802 formatted = '+' + digits.slice(0, 15); 8803 } 8804 8805 el.value = formatted; 8806 8807 if (el === document.activeElement) { 8808 var pos = 0, seen = 0; 8809 while (pos < formatted.length && seen < digitsLeft) { 8810 if (/\d/.test(formatted[pos])) seen++; 8811 pos++; 8812 } 8813 el.setSelectionRange(pos, pos); 8814 } 8815 }); 8816 } 8817 } 8818 8819 function prepare_submission(form_submit, recaptcha) { 8820 return new Promise((resolve, reject) => { 8821 console.time('prepare_submission()'); 8822 form_button_lock = true; 8823 $(form_submit).find('.button.submit[data-dynamic="true"]').text('Sending...'); 8824 8825 const appendLocation = $(form_submit).attr('data-append-location') === '1' ? true : false;
8826 const locationSelected = $(form_submit).find('select[name="location"] option:selected') ? $(form_submit).find('select[name="location"] option:selected').text() : null; 8827 8828 var form_data = {}; 8829 var recipients_add = []; 8830 var cc_add = []; 8831 var db_only = $(form_submit).attr('data-db-only'); 8832 var recipients = $(form_submit).attr('data-recipients'); 8833 var ad_recipients = $(form_submit).attr('data-ad-recipients'); 8834 var cc = $(form_submit).attr('data-cc'); 8835 var subject = $(form_submit).attr('data-subject'); 8836 var category = $(form_submit).attr('data-category') + (appendLocation && locationSelected ? ` (${locationSelected})` : ''); 8837 var is_hipaa = $(form_submit).attr('data-hipaa'); 8838 var reply_to = $(form_submit).attr('data-reply-to'); 8839 var pdf = $(form_submit).attr('data-pdf'); 8840 var submission_url = $(form_submit).attr('data-submission-url'); 8841 8842 var ad_source = $(form_submit).find('[data-ad-tracking="source"]').val(); 8843 var ad_campaign = $(form_submit).find('[data-ad-tracking="campaign"]').val(); 8844 var ad_location = $(form_submit).find('[data-ad-tracking="ad_location"]').val(); 8845 8846 var ad_source_key = (get_cookie('source') ? get_cookie('source') : null);
8847 var ad_campaign_key = (get_cookie('campaign') ? get_cookie('campaign') : null); 8848 var ad_location_key = (get_cookie('location') ? get_cookie('location') : null); 8849 8850 $(form_submit).find('input, textarea, select, fieldset').each(function () { 8851 if ( 8852 $(this).is('input:not([type="file"])') && 8853 $(this)[0].hasAttribute('name') && 8854 $(this)[0].hasAttribute('data-email-label') 8855 ) { 8856 value_obj = { 8857 'label': $(this).attr('data-email-label'), 8858 'name': $(this).attr('name'), 8859 'value': $(this).val(), 8860 'type': 'text' 8861 }; 8862 form_data[$(this).attr('name')] = value_obj; 8863 } 8864 8865 if ( 8866 $(this).is('textarea') && 8867 $(this)[0].hasAttribute('name') && 8868 $(this)[0].hasAttribute('data-email-label') 8869 ) { 8870 value_obj = { 8871 'label': $(this).attr('data-email-label'), 8872 'name': $(this).attr('name'), 8873 'value': $(this).val(), 8874 'type': 'textarea' 8875 }; 8876 form_data[$(this).attr('name')] = value_obj; 8877 } 8878 8879 if ( 8880 $(this).is('select') && 8881 $(this)[0].hasAttribute('name') && 8882 $(this)[0].hasAttribute('data-email-label') 8883 ) { 8884 value_obj = { 8885 'label': $(this).attr('data-email-label'), 8886 'name': $(this).attr('name'), 8887 'value': $(this).val(), 8888 'type': 'select' 8889 }; 8890 form_data[$(this).attr('name')] = value_obj; 8891 8892 if ( 8893 $(this).find(':selected').length > 0 && 8894 $(this).find(':selected')[0].hasAttribute('data-recipients') && 8895 $(this).find(':selected').attr('data-recipients').length 8896 ) { 8897 recipients_add.push($(this).find(':selected').attr('data-recipients')); 8898 } 8899 8900 if ( 8901 $(this).find(':selected').length > 0 && 8902 $(this).find(':selected')[0].hasAttribute('data-cc') && 8903 $(this).find(':selected').attr('data-cc').length 8904 ) { 8905 cc_add.push($(this).find(':selected').attr('data-cc')); 8906 } 8907 } 8908 8909 if ( 8910 $(this).is('fieldset') && 8911 $(this)[0].hasAttribute('name') && 8912 $(this)[0].hasAttribute('data-email-label') 8913 ) { 8914 var val = []; 8915 var keys = []; 8916 $(this).find('input:checked').each(function () { 8917 val.push($(this).attr('value')); 8918 keys.push($(this).attr('name')); 8919 }); 8920 value_obj = { 8921 'label': $(this).attr('data-email-label'), 8922 'name': $(this).attr('name'), 8923 'keys': keys.join('; '), 8924 'value': val.join('; '), 8925 'type': $(this).attr('type') 8926 }; 8927 form_data[$(this).attr('name')] = value_obj; 8928 } 8929 }); 8930 8931 console.timeEnd('prepare_submission()'); 8932 console.time('submit_form()'); 8933 resolve({ 8934 "form_submit": form_submit, 8935 "recaptcha": recaptcha, 8936 "form_data": form_data, 8937 "db_only": db_only, 8938 "recipients": recipients, 8939 "recipients_add": recipients_add, 8940 "ad_recipients": ad_recipients, 8941 "cc": cc, 8942 "cc_add": cc_add, 8943 "subject": subject, 8944 "category": category, 8945 "is_hipaa": is_hipaa, 8946 "reply_to": reply_to, 8947 "pdf": pdf, 8948 "ad_source": ad_source, 8949 "ad_campaign": ad_campaign, 8950 "ad_location": ad_location, 8951 "ad_source_key": ad_source_key,
8952 "ad_campaign_key": ad_campaign_key, 8953 "ad_location_key": ad_location_key, 8954 "submission_url": submission_url 8955 }) 8956 }); 8957 } 8958 8959 function submit_form(form_submit, recaptcha, form_data, db_only, recipients, recipients_add, ad_recipients, cc, cc_add, subject, category, is_hipaa, reply_to, pdf, ad_source, ad_campaign, ad_location, ad_source_key, ad_campaign_key, ad_location_key, submission_url) { 8960 return new Promise((resolve, reject) => { 8961 var email_list = []; 8962 var first_name = null; 8963 var last_name = null; 8964 8965 var file_size_total = 0; 8966 var files_uploaded = []; 8967 var files_selected = 0; 8968 8969 if ( 8970 form_submit[0].hasAttribute('data-google-conversion') && 8971 google_conversion 8972 ) { 8973 const conversion_code = $(form_submit[0]).attr('data-google-conversion'); 8974 if (conversion_code.length > 0) { 8975 google_tracking.gtag('event', 'conversion', { 'send_to': conversion_code }); 8976 } 8977 } 8978 8979 if ( 8980 form_submit[0].hasAttribute('data-facebook-conversion') && 8981 facebook_conversion 8982 ) { 8983 const conversion_type = $(form_submit[0]).attr('data-facebook-conversion'); 8984 if (conversion_type.length > 0) { 8985 facebook_tracking.fbq('track', conversion_type); 8986 } 8987 } 8988 8989 $(form_submit).find('input[type="file"]').each(function () { 8990 var file_selected = $(this).val(); 8991 if (file_selected.length > 0) { 8992 files_selected++; 8993 } 8994 }); 8995 8996 $(form_submit).find('input[type="file"]').each(function () { 8997 var file_to_upload = $(this).val(); 8998 var submit_promise = new Promise((res, rej) => { 8999 if (file_to_upload.length > 0) { 9000 var xhr = new XMLHttpRequest(); 9001 var file = $(this).prop('files')[0]; 9002 var formData = new FormData(); 9003 formData.append('file', file); 9004 9005 xhr.onreadystatechange = function () { 9006 if (xhr.readyState == 4) { 9007 files_uploaded.push(xhr.responseText); 9008 res(xhr.responseText); 9009 } 9010 } 9011 9012 xhr.open('POST', '/system/processors/file_upload/processor.php', true); 9013 xhr.send(formData); 9014 } else { 9015 res('') 9016 } 9017 }).then((file) => { 9018 if (file) { 9019 return file; 9020 } else { 9021 return ''; 9022 } 9023 }); 9024 files_uploaded.push(submit_promise); 9025 }); 9026 9027 $(form_submit).find('input[type="email"]').each(function () { 9028 email_list.push($(this).val()); 9029 }); 9030 9031 $(form_submit).find('input[type="text"][data-email-label="First Name"]').each(function () { 9032 first_name = $(this).val(); 9033 }); 9034 9035 $(form_submit).find('input[type="text"][data-email-label="Last Name"]').each(function () { 9036 last_name = $(this).val(); 9037 }); 9038 9039 9040 if ((first_name === null || first_name === '') && (last_name === null || last_name === '')) { 9041 $(form_submit).find('input[type="text"][data-email-label="Full Name"], input[type="text"][data-email-label="Name"]').each(function () { 9042 const full_name = $(this).val(); 9043 first_name = full_name; 9044 }); 9045 } 9046 9047 9048 console.time('POST to processor.php') 9049 $.post('/system/processors/validation/processor.php', { 9050 type: 'date_time', 9051 val: null 9052 }) 9053 .done(function (validation) { 9054 console.timeEnd('POST to processor.php') 9055 console.time('Wait For Files') 9056 9057 Promise.all(files_uploaded).then((value) => { 9058 console.timeEnd('Wait For Files') 9059 let uploaded_files = value.filter(file => file); 9060 console.log(JSON.stringify(uploaded_files)); 9061 console.log('Files Uploaded'); 9062 console.time('POST to submission_url') 9063 $.post(submission_url, { 9064 validation: validation, 9065 db_only: db_only, 9066 recipients: recipients, 9067 recipients_add: JSON.stringify(recipients_add), 9068 ad_recipients: ad_recipients, 9069 recaptcha: recaptcha, 9070 cc: cc, 9071 cc_add: JSON.stringify(cc_add), 9072 subject: subject, 9073 category: category, 9074 first_name: first_name, 9075 last_name: last_name, 9076 is_hipaa: is_hipaa, 9077 reply_to: reply_to, 9078 pdf: pdf, 9079 ad_source: ad_source, 9080 ad_campaign: ad_campaign, 9081 ad_location: ad_location, 9082 ad_source_key: ad_source_key,
9083 ad_campaign_key: ad_campaign_key, 9084 ad_location_key: ad_location_key, 9085 files: JSON.stringify(uploaded_files), 9086 data: JSON.stringify(form_data), 9087 email_list: JSON.stringify(email_list) 9088 }) 9089 .done(function (data) { 9090 console.timeEnd('POST to submission_url') 9091 9092 form_button_lock = false; 9093 form_submit[0].reset(); 9094 $(form_submit).find('.remove_file').click(); 9095 $('form .button.submit[data-dynamic="true"]').each(function () { 9096 var placeholder = $(this).attr('placeholder'); 9097 $(this).text(placeholder); 9098 }); 9099 9100 if ($(form_submit).attr('data-action') !== '') { 9101 var action = $(form_submit).attr('data-action'); 9102 9103 if (action == 'close_lightbox') { 9104 close_lightbox(); 9105 } 9106 9107 if (action == 'redirect') { 9108 var redirect = $(form_submit).attr('data-confirmation'); 9109 window.location.replace(redirect); 9110 } 9111 9112 if (action == 'function') { 9113 var form_complete_function = $(form_submit).attr('data-confirmation'); 9114 window[form_complete_function](form_data); 9115 } 9116 9117 if (action == 'none') { } 9118 } 9119 else { 9120 var confirmation = $(form_submit).children('section[data-type="system-lightbox-content"]'); 9121 $(confirmation).clone().appendTo('section[data-type="system-lightbox-container"]'); 9122 open_lightbox(); 9123 } 9124 resolve(false); 9125 }); 9126 }); 9127 }); 9128 }); 9129 } 9130 9131 function get_viewport_size() { 9132 viewport_size = viewport(); 9133 $('body').attr('data-width', viewport_size.width); 9134 $('body').attr('data-height', viewport_size.height); 9135 } 9136 9137 function viewport() { 9138 var e = window, a = 'inner'; 9139 if (!('innerWidth' in window)) { 9140 a = 'client'; 9141 e = document.documentElement || document.body; 9142 } 9143 return { width: e[a + 'Width'], height: e[a + 'Height'] }; 9144 } 9145 9146 function set_tracking() { 9147 const url_parameters = new URLSearchParams(window.location.search); 9148 const source = url_parameters.get('source'); 9149 const campaign = url_parameters.get('campaign'); 9150 const location = url_parameters.get('location'); 9151 9152 if (source) { 9153 set_cookie('source', source, 90, null); 9154 } 9155 9156 if (campaign) { 9157 set_cookie('campaign', campaign, 90, null); 9158 } 9159 9160 if (location) { 9161 set_cookie('location', location, 90, null); 9162 } 9163 } 9164 9165 function load_functions() { 9166 javascript.load.forEach(function (v) { 9167 javascript.prototype[v](); 9168 }); 9169 } 9170 9171 function load_fa() { 9172 /* $.getScript('https://kit.fontawesome.com/10cd9403cd.js'); */ 9173 } 9174 9175 function load_default_subs() { 9176 $('video:not(.no_subs)').each(function () { 9177 var found_video = $(this); 9178 9179 if ($(this).find('source').length) { 9180 var video_source = $(this).find('source').attr('src').split('/').pop(); 9181 } 9182 else { 9183 var video_source = $(this).attr('src').split('/').pop(); 9184 } 9185 9186 $.get('/custom/content/subs/' + video_source + '.vtt', function (data) { 9187 if (data === 'Error') { 9188 $('<track/>') 9189 .attr('label', 'English') 9190 .attr('kind', 'subtitles') 9191 .attr('srclang', 'en') 9192 .attr('src', '/system/content/subs/no_audio.vtt') 9193 .appendTo(found_video); 9194 } 9195 else { 9196 $('<track/>') 9197 .attr('label', 'English') 9198 .attr('kind', 'subtitles') 9199 .attr('srclang', 'en') 9200 .attr('src', '/custom/content/subs/' + video_source + '.vtt') 9201 .appendTo(found_video); 9202 } 9203 }) 9204 .fail(function (data) { 9205 $('<track/>') 9206 .attr('label', 'English') 9207 .attr('kind', 'subtitles') 9208 .attr('srclang', 'en') 9209 .attr('src', '/system/content/subs/no_audio.vtt') 9210 .appendTo(found_video); 9211 }); 9212 }); 9213 } 9214 9215 function stalling(ms) { 9216 return setTimeout(() => { 9217 }, ms); 9218 } 9219 9220 function initialize() { 9221 console.log('Initializing...'); 9222 window_width = $(window).width(); 9223 window_height = $(window).height(); 9224 get_viewport_size(); 9225 viewport_size = viewport(); 9226 update_deferred_images(); 9227 set_resize_listeners(); 9228 set_scroll_listeners(); 9229 set_accordion_listeners(); 9230 form_actions(); 9231 set_tracking(); 9232 load_functions(); 9233 load_fa(); 9234 load_default_subs(); 9235 9236 track_load(); 9237 deferred_websocket(); 9238 lazy_load_deferred_images(); 9239 9240 // Add Tracking to each button 9241 const selection = document.querySelectorAll('section[class^="section_"], #di-consent-banner, #di-cookie-pref-dialog'); 9242 for (var i = 0; i < selection.length; i++) { 9243 var found_buttons = selection[i].querySelectorAll("a[href], [data-click-tracking]:not(a[href]), button:not(a[href])"); 9244 found_buttons = Array.from(new Set(found_buttons)); 9245 found_buttons.forEach(element => { 9246 element.addEventListener('click', function (e) { 9247 var stall = false;
9248 if (this.tagName === 'A' && this.getAttribute('href') !== '#') { 9249 stall = stalling(500); 9250 } 9251 9252 track_click(this).then(() => { 9253 if (stall !== false) { 9254 clearTimeout(stall); 9255 } 9256 }) 9257 }) 9258 }); 9259 } 9260 } 9261 9262 $(document).ready(initialize); 9263</script>
9263 9264 9265
9265<script> 9266 // Override any default global variables from SYSTEM_JS 9267 (function() { 9268 var overrides = { 9269 }; 9270 9271 // Apply overrides to global scope 9272 for (var key in overrides) { 9273 if (overrides.hasOwnProperty(key)) { 9274 window[key] = overrides[key]; 9275 } 9276 } 9277 })(); 9278 </script>
9278 9279 9280
9280<script src="https://api.aleso.ai/aleso.js" async></script>
9280 9281 </body> 9282 </html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.