PageSourceSearch

https://iconicdentalarts.com/contact/

html iconicdentalarts.com collected 2026-10-09 22:39:49 UTC 307,188 bytes, 9,224 lines download raw bytes

1<!DOCTYPE html>
2<html lang="en">
3					<head>
4						<title>Contact Our Oklahoma City Dentist | Oklahoma City Cosmetic Dentist | Pediatric Dentist 73120</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="Contact Our Oklahoma City Dentist | Oklahoma City Cosmetic Dentist | Pediatric Dentist 73120">
9<meta property="og:url" content="https://iconicdentalarts.com/contact/">
10<meta property="og:type" content="website">
11<meta property="og:description" content="Whether you have questions about our office, are interested in a consultation, or would like to schedule an appointment for care just call (405) 943-8575.">
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/contact/">
2173				
2174						<meta name="description" content="Whether you have questions about our office, are interested in a consultation, or would like to schedule an appointment for care just call (405) 943-8575.">
2175						<meta name="keywords" content="Contact Our Dentist, Oklahoma City Cosmetic Dentist, 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="interior">
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="contact" data-full-path="/contact/">
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="contact" data-full-path="/contact/">
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 .block_container .block {
6022  height: 520px;
6023  background-size: cover;
6024  background-position: center center;
6025  display: flex;
6026  justify-content: center;
6027  align-items: flex-end;
6028  padding: 0px 40px;
6029  box-sizing: border-box;
6030  text-align: center;
6031}
6032.section_3 .block_container .block h1 {
6033  color: #00FFFF;
6034  position: relative;
6035  z-index: 30;
6036  margin-bottom: 60px;
6037}
6038.section_3 .block_container .block .background_gradient {
6039  overflow: hidden;
6040  width: 100%;
6041  height: 100%;
6042  position: absolute;
6043  z-index: 20;
6044  background-image: linear-gradient(to bottom right,rgba(26,26,26,0.4),rgba(26,26,26,0.3));
6045}
6046.section_3 .block_container .block .background_container {
6047  overflow: hidden;
6048  width: 100%;
6049  height: 100%;
6050  position: absolute;
6051  z-index: 10;
6052}
6053@media (max-width: 1280px) {
6054  .section_3 .block_container .block h1 {
6055    font-size: 4rem;
6056  }
6057}
6058@media (max-width: 1024px) {
6059  .section_3 {
6060    margin-top: 140px;
6061  }
6062  .section_3 .block_container .block {
6063    height: 520px;
6064  }
6065  .section_3 .block_container .block h1 {
6066    font-size: 3.5rem;
6067  }
6068}
6069@media (max-width: 768px) {
6070  .section_3 {
6071    margin-top: 120px;
6072  }
6073  .section_3 .block_container .block {
6074    height: 420px;
6075  }
6076  .section_3 .block_container .block h1 {
6077    font-size: 2.5rem;
6078  }
6079}
6080@media (max-width: 640px) {
6081  .section_3 .block_container .block {
6082    height: 320px;
6083    padding: 0px 20px;
6084  }
6085  .section_3 .block_container .block h1 {
6086    font-size: 1.5rem;
6087  }
6088}
6089</style>
6090<section class="section_3" data-module="interior_banner" data-html="/system/modules/interior_banner/1.0.2/module.html" data-json="" data-page="contact" data-full-path="/contact/">
6091	<div class="content_container">
6092		<div class="content">
6093			<div class="block_container">
6094	<div class="block">
6095		<div class="background_gradient"></div>
6096		<div class="background_container">
6097			<picture class="background_image"><source srcset="/cache/sm-custom_images_interior3.webp 420w, /cache/md-custom_images_interior3.webp 640w, /cache/lg-custom_images_interior3.webp 1024w, /cache/xl-custom_images_interior3.webp 1366w, /cache/custom_images_interior3.webp 1920w" sizes="(max-width: 420px) 100vw, (max-width: 640px) 100vw, (max-width: 1024px) 100vw, (max-width: 1366px) 100vw, 1920px" data-lazy-picture="false" type="image/webp"><img alt="Dentist 73120" class="background_image" src="/custom/images/interior3.jpg" data-lazy-img="false" data-src="/custom/images/interior3.jpg"></picture>
6098		</div>
6099		<h1>Contact Us</h1>
6100	</div>
6101</div>
6102			
6103		</div>
6104	</div>
6105</section>
6105<script>
6106	javascript.prototype[get_id()] = function() {
6107		
6108	}
6109</script>
6109<style>.section_4 {
6110  padding: 40px 40px;
6111}
6112.section_4 .content_container {
6113  max-width: 100%;
6114  justify-content: center;
6115  display: flex;
6116  margin-left: auto;
6117  margin-right: auto;
6118  box-sizing: border-box;
6119}
6120.section_4 .content_container .content {
6121  width: 100%;
6122}
6123.section_4 .content_container .content h2 {
6124  text-align: center;
6125}
6126.section_4 .content_container .content h3 {
6127  font-size: 1.5rem;
6128}
6129@media (max-width: 640px) {
6130  .section_4 {
6131    padding: 20px 20px;
6132  }
6133}
6134</style><style>.section_4 {
6135  padding: 40px 40px;
6136}
6137.section_4 .content_container {
6138  max-width: 1400px;
6139  justify-content: center;
6140  display: flex;
6141  margin-left: auto;
6142  margin-right: auto;
6143  box-sizing: border-box;
6144}
6145.section_4 .content_container .content {
6146  width: 100%;
6147}
6148.section_4 .content_container .content h2 {
6149  font-size: 2.4rem;
6150}
6151.section_4 .content_container .content h3 {
6152  font-size: 1.8rem;
6153}
6154.section_4 .content_container .content .flex-con {
6155  display: flex;
6156  flex-wrap: wrap;
6157  justify-content: center;
6158}
6159.section_4 .content_container .content .flex-con .flex-item {
6160  flex-basis: 50%;
6161  padding: 16px;
6162  box-sizing: border-box;
6163  text-align: center;
6164}
6165@media (max-width: 768px) {
6166  .section_4 .content_container .content .flex-con .flex-item {
6167    flex-basis: 100%;
6168  }
6169}
6170.section_4 .content_container .content .spacer {
6171  padding: 40px 0;
6172}
6173@media (max-width: 480px) {
6174  .section_4 .content_container .content .spacer {
6175    padding: 20px 0;
6176  }
6177}
6178.section_4 .content_container .content .img-center {
6179  display: block;
6180  margin: 16px auto;
6181}
6182.section_4 .content_container .content .image_grid {
6183  display: grid;
6184  gap: 20px;
6185}
6186@media (max-width: 768px) {
6187  .section_4 .content_container .content .image_grid {
6188    gap: 10px;
6189  }
6190}
6191.section_4 .content_container .content .image_grid .image {
6192  border: 4px solid #00FFFF;
6193}
6194.section_4 .content_container .content .image_grid .image img,
6195.section_4 .content_container .content .image_grid .image picture {
6196  display: block;
6197}
6198.section_4 .content_container .content .image_grid.two_wide {
6199  grid-template-columns: repeat(2,1fr);
6200}
6201@media (max-width: 480px) {
6202  .section_4 .content_container .content .image_grid.two_wide {
6203    grid-template-columns: repeat(1,1fr);
6204  }
6205}
6206.section_4 .content_container .content .image_grid.three_wide {
6207  grid-template-columns: repeat(3,1fr);
6208}
6209@media (max-width: 480px) {
6210  .section_4 .content_container .content .image_grid.three_wide {
6211    grid-template-columns: repeat(1,1fr);
6212  }
6213}
6214.section_4 .content_container .content div[data-micro-template="interior_fullwidth_cta"] {
6215  background: #E9E9E9;
6216}
6217.section_4 .content_container .content div[data-micro-template="interior_fullwidth_cta"]:nth-of-type(1) .fullwidth_cta_container .image {
6218  order: 2;
6219}
6220.section_4 .content_container .content div[data-micro-template="interior_fullwidth_cta"] .fullwidth_cta_container {
6221  width: min(100%,1400px);
6222  padding: 100px 20px;
6223  display: grid;
6224  grid-template-columns: repeat(2,1fr);
6225  gap: 60px;
6226}
6227@media (max-width: 768px) {
6228  .section_4 .content_container .content div[data-micro-template="interior_fullwidth_cta"] .fullwidth_cta_container {
6229    grid-template-columns: repeat(1,1fr);
6230    gap: 10px;
6231  }
6232}
6233.section_4 .content_container .content div[data-micro-template="interior_fullwidth_cta"] .fullwidth_cta_container .image {
6234  border: 4px solid #00FFFF;
6235}
6236@media (max-width: 768px) {
6237  .section_4 .content_container .content div[data-micro-template="interior_fullwidth_cta"] .fullwidth_cta_container .image {
6238    order: 2;
6239  }
6240}
6241.section_4 .content_container .content div[data-micro-template="interior_fullwidth_cta"] .fullwidth_cta_container .image img,
6242.section_4 .content_container .content div[data-micro-template="interior_fullwidth_cta"] .fullwidth_cta_container .image picture {
6243  display: block;
6244}
6245.section_4 .content_container .content div[data-micro-template="interior_fullwidth_cta"] .fullwidth_cta_container .text h3 {
6246  color: #AB7F29;
6247}
6248.section_4 .content_container .content div[data-micro-template="interior_fullwidth_cta"] .text h3 {
6249  color: #1A1A1A;
6250}
6251.section_4 .content_container .content div[data-micro-template="interior_fullwidth_cta"] .text p {
6252  color: #1A1A1A;
6253}
6254.section_4 .content_container .content div[data-micro-template="interior_image_split"] {
6255  grid-template-columns: repeat(2,1fr);
6256}
6257@media (max-width: 768px) {
6258  .section_4 .content_container .content div[data-micro-template="interior_image_split"] {
6259    grid-template-columns: repeat(1,1fr);
6260  }
6261}
6262.section_4 .content_container .content div[data-micro-template="interior_image_split"] .image {
6263  border: 4px solid #00FFFF;
6264}
6265.section_4 .content_container .content div[data-micro-template="interior_image_split"] .image img,
6266.section_4 .content_container .content div[data-micro-template="interior_image_split"] .image picture {
6267  display: block;
6268}
6269.section_4 .content_container .content h3 {
6270  font-size: 2rem;
6271  color: #AB7F29;
6272}
6273.section_4 .content_container .content h4 {
6274  font-size: 1.5rem;
6275}
6276.section_4 .content_container .content p,
6277.section_4 .content_container .content li {
6278  font-weight: 500;
6279}
6280.section_4 .content_container .content a {
6281  color: #AB7F29;
6282}
6283.section_4 .content_container .content a:hover {
6284  color: #00FFFF;
6285}
6286.section_4 .content_container .content .team_container {
6287  display: grid;
6288  grid-template-columns: repeat(1,1fr);
6289  gap: 40px;
6290}
6291@media (max-width: 768px) {
6292  .section_4 .content_container .content .team_container {
6293    gap: 0;
6294  }
6295}
6296.section_4 .content_container .content .team_container .team_member {
6297  display: block;
6298}
6299.section_4 .content_container .content .team_container .team_member .staff {
6300  width: 100%;
6301  text-align: center;
6302}
6303.section_4 .content_container .content .team_container .team_member .bio {
6304  width: 100%;
6305  text-align: center;
6306}
6307@media (max-width: 480px) {
6308  .section_4 .content_container .content .team_container .team_member .bio {
6309    padding-top: 0;
6310  }
6311}
6312.section_4 .content_container .content .team_container .team_member .bio h3 {
6313  margin: 0;
6314}
6315@media (max-width: 480px) {
6316  .section_4 .content_container .content .team_container .team_member .bio h3 {
6317    font-size: 1.25rem;
6318  }
6319}
6320@media (max-width: 480px) {
6321  .section_4 .content_container .content .team_container .team_member .bio h4 {
6322    font-size: 1rem;
6323    margin: 5px 0;
6324  }
6325}
6326.section_4 .content_container .content .doc-float {
6327  margin-top: 6px;
6328  margin-bottom: 12px;
6329  float: right;
6330  margin-left: 20px;
6331  max-width: 500px;
6332}
6333@media (max-width: 900px) {
6334  .section_4 .content_container .content .doc-float {
6335    float: none;
6336    margin: 10px auto;
6337    display: block;
6338  }
6339}
6340.section_4 .content_container .content .doc-float p {
6341  text-align: center;
6342  background: #00FFFF;
6343  color: #1A1A1A;
6344  padding: 15px 10px;
6345  margin-top: -10px;
6346}
6347.section_4 .content_container .content .doc-float img,
6348.section_4 .content_container .content .doc-float picture {
6349  margin: 0;
6350}
6351.section_4 .content_container .content .doc-float iframe {
6352  height: 280px;
6353}
6354.section_4 .content_container .content .staff {
6355  width: 39%;
6356  box-sizing: border-box;
6357  padding: 12px;
6358  display: inline-block;
6359  vertical-align: top;
6360}
6361@media (max-width: 900px) {
6362  .section_4 .content_container .content .staff {
6363    width: 100%;
6364    display: block;
6365  }
6366}
6367.section_4 .content_container .content .bio {
6368  width: 59%;
6369  box-sizing: border-box;
6370  padding: 12px;
6371  display: inline-block;
6372  vertical-align: top;
6373}
6374@media (max-width: 900px) {
6375  .section_4 .content_container .content .bio {
6376    width: 100%;
6377    display: block;
6378  }
6379}
6380.section_4 .content_container .content .half {
6381  width: 49%;
6382  box-sizing: border-box;
6383  padding: 12px;
6384  display: inline-block;
6385  vertical-align: top;
6386}
6387@media (max-width: 900px) {
6388  .section_4 .content_container .content .half {
6389    width: 100%;
6390    display: block;
6391  }
6392}
6393.section_4 .content_container .content .half iframe {
6394  height: 280px;
6395}
6396.section_4 .content_container .content form {
6397  display: flex;
6398  flex-wrap: wrap;
6399  justify-content: space-between;
6400  background: #E9E9E9;
6401  padding: 20px;
6402  margin-bottom: 20px;
6403}
6404.section_4 .content_container .content form input {
6405  flex-basis: 48%;
6406  margin-bottom: 10px;
6407}
6408.section_4 .content_container .content form textarea {
6409  flex-basis: 100%;
6410  height: 150px;
6411}
6412.section_4 .content_container .content form input,
6413.section_4 .content_container .content form textarea {
6414  padding: 15px;
6415  box-sizing: border-box;
6416  border-bottom: 2px solid #1A1A1A;
6417}
6418.section_4 .content_container .content .elfsight {
6419  max-width: 100%;
6420}
6421.section_4 .content_container .content a.button {
6422  color: #1A1A1A;
6423}
6424.section_4 .content_container .content .button {
6425  background: linear-gradient(94deg,#B98A2E -1.86%,#D2AD63 36.41%,#B98A2E 106.21%);
6426  text-transform: uppercase;
6427  font-weight: 500;
6428  font-size: 1rem;
6429  border: 2px solid #1A1A1A;
6430  padding: 10px 40px;
6431}
6432.section_4 .content_container .content .button:hover {
6433  background: linear-gradient(94deg,#D2AD63 -1.86%,#B98A2E 36.41%,#D2AD63 106.21%);
6434  color: #1A1A1A;
6435}
6436@media (max-width: 700px) {
6437  .section_4 .content_container .content .button {
6438    margin: 10px;
6439  }
6440}
6441.section_4 .sidebar[data-sidebar="true"] {
6442  flex-basis: 375px;
6443  font-weight: 500;
6444}
6445@media (max-width: 1280px) {
6446  .section_4 .sidebar[data-sidebar="true"] {
6447    flex-basis: 325px;
6448  }
6449}
6450@media (max-width: 920px) {
6451  .section_4 .sidebar[data-sidebar="true"] {
6452    margin-bottom: 1rem;
6453    text-align: left;
6454  }
6455}
6456.section_4 .sidebar[data-sidebar="true"] div[data-sidebar="video"] .video_container {
6457  position: relative;
6458  width: 100%;
6459  height: 100%;
6460  padding-bottom: 56.25%;
6461}
6462.section_4 .sidebar[data-sidebar="true"] div[data-sidebar="video"] .video_container iframe,
6463.section_4 .sidebar[data-sidebar="true"] div[data-sidebar="video"] .video_container video {
6464  position: absolute;
6465  top: 0;
6466  left: 0;
6467  width: 100%;
6468  height: 100%;
6469}
6470.section_4[data-page="videos"] .content_container .content div[data-micro-template="video"] {
6471  margin-bottom: 60px;
6472}
6473@media (max-width: 640px) {
6474  .section_4[data-page="videos"] .content_container .content div[data-micro-template="video"] {
6475    margin-bottom: 20px;
6476  }
6477}
6478.section_4[data-page="videos"] .content_container .content div[data-micro-template="video"] .video_content_container {
6479  display: flex;
6480}
6481@media (max-width: 640px) {
6482  .section_4[data-page="videos"] .content_container .content div[data-micro-template="video"] .video_content_container {
6483    flex-wrap: wrap;
6484  }
6485}
6486.section_4[data-page="videos"] .content_container .content div[data-micro-template="video"] .video_content_container .video_container {
6487  flex-basis: 400px;
6488}
6489@media (max-width: 1024px) {
6490  .section_4[data-page="videos"] .content_container .content div[data-micro-template="video"] .video_content_container .video_container {
6491    flex-basis: 250px;
6492  }
6493}
6494@media (max-width: 640px) {
6495  .section_4[data-page="videos"] .content_container .content div[data-micro-template="video"] .video_content_container .video_container {
6496    flex-basis: 400px;
6497  }
6498}
6499.section_4[data-page="videos"] .content_container .content div[data-micro-template="video"] .video_content_container .video_container .video {
6500  padding-bottom: 75%;
6501  position: relative;
6502}
6503.section_4[data-page="videos"] .content_container .content div[data-micro-template="video"] .video_content_container .video_container .video iframe {
6504  position: absolute;
6505  height: 100%;
6506  width: 100%;
6507  left: 0;
6508  top: 0;
6509}
6510.section_4[data-page="videos"] .content_container .content div[data-micro-template="video"] .video_content_container .video_content {
6511  flex: 1;
6512  padding-left: 40px;
6513}
6514@media (max-width: 640px) {
6515  .section_4[data-page="videos"] .content_container .content div[data-micro-template="video"] .video_content_container .video_content {
6516    flex-basis: 100%;
6517    padding-left: 0;
6518    margin-top: 20px;
6519  }
6520}
6521.section_4[data-page="videos"] .content_container .content div[data-micro-template="video"] .video_content_container .video_content p:first-of-type {
6522  margin-top: 0;
6523}
6524.section_4[data-module="services_list"] .content,
6525.section_4[data-module="invisalign_list"] .content {
6526  max-width: 1200px;
6527}
6528.section_4[data-module="services_list"] .content .block_container,
6529.section_4[data-module="invisalign_list"] .content .block_container {
6530  margin-bottom: 60px;
6531  flex-basis: 32%;
6532}
6533@media (max-width: 1024px) {
6534  .section_4[data-module="services_list"] .content .block_container,
6535  .section_4[data-module="invisalign_list"] .content .block_container {
6536    flex-basis: 48%;
6537  }
6538}
6539@media (max-width: 550px) {
6540  .section_4[data-module="services_list"] .content .block_container,
6541  .section_4[data-module="invisalign_list"] .content .block_container {
6542    flex-basis: 100%;
6543    box-shadow: none;
6544    border: none;
6545    margin-bottom: 20px;
6546  }
6547}
6548.section_4[data-module="services_list"] .content .block_container .block .service,
6549.section_4[data-module="invisalign_list"] .content .block_container .block .service {
6550  display: flex;
6551  flex-direction: column;
6552}
6553.section_4[data-module="services_list"] .content .block_container .block .service .background_container,
6554.section_4[data-module="invisalign_list"] .content .block_container .block .service .background_container {
6555  border-radius: 0px;
6556  order: 3;
6557}
6558@media (max-width: 768px) {
6559  .section_4[data-module="services_list"] .content .block_container .block .service .background_container,
6560  .section_4[data-module="invisalign_list"] .content .block_container .block .service .background_container {
6561    height: 180px;
6562  }
6563}
6564@media (max-width: 550px) {
6565  .section_4[data-module="services_list"] .content .block_container .block .service .background_container,
6566  .section_4[data-module="invisalign_list"] .content .block_container .block .service .background_container {
6567    display: none;
6568  }
6569}
6570.section_4[data-module="services_list"] .content .block_container .block .service .service_content,
6571.section_4[data-module="invisalign_list"] .content .block_container .block .service .service_content {
6572  margin: 0;
6573}
6574.section_4[data-module="services_list"] .content .block_container .block .service .service_content h3,
6575.section_4[data-module="invisalign_list"] .content .block_container .block .service .service_content h3 {
6576  margin-bottom: 15px;
6577  font-weight: 300;
6578  text-align: left;
6579  font-size: 1.5rem;
6580}
6581@media (max-width: 550px) {
6582  .section_4[data-module="services_list"] .content .block_container .block .service .service_content h3,
6583  .section_4[data-module="invisalign_list"] .content .block_container .block .service .service_content h3 {
6584    margin: 0;
6585    font-size: 1.3rem;
6586  }
6587}
6588.section_4[data-module="interior_content"] div[data-micro-template="staff_list"] {
6589  box-shadow: 0px 0px 20px rgba(26,26,26,0.1);
6590  margin-bottom: 40px;
6591}
6592.section_4[data-module="interior_content"] div[data-micro-template="staff_list"] h3 {
6593  background: #1A1A1A;
6594  color: #fff;
6595  margin: 0;
6596  padding: 20px;
6597}
6598.section_4[data-module="interior_content"] div[data-micro-template="staff_list"] .staff_image {
6599  padding: 10px;
6600}
6601.section_4[data-module="interior_content"] div[data-micro-template="staff_list"] .staff_content {
6602  padding: 0 20px;
6603}
6604.section_4[data-module="interior_content"] div[data-micro-template="staff_list"] .staff_content .button {
6605  color: #1A1A1A;
6606}
6607.section_4[data-module="library_list"] .content_container .content {
6608  display: grid;
6609  grid-template-columns: repeat(2,1fr);
6610  grid-gap: 3rem;
6611}
6612@media (max-width: 920px) {
6613  .section_4[data-module="library_list"] .content_container .content {
6614    grid-template-columns: repeat(1,1fr);
6615    grid-gap: 1rem;
6616  }
6617}
6618.section_4[data-module="library_list"] .content_container .content > div {
6619  display: flex;
6620  flex-direction: column;
6621}
6622@media (max-width: 920px) {
6623  .section_4[data-module="library_list"] .content_container .content > div {
6624    margin-bottom: 0;
6625  }
6626}
6627.section_4[data-module="library_list"] .content_container .content > div h2 {
6628  font-size: 1.5rem;
6629  border-bottom: 1px solid #808080;
6630  padding-bottom: 10px;
6631}
6632@media (max-width: 640px) {
6633  .section_4[data-module="library_list"] .content_container .content > div h2 {
6634    font-size: 1.35rem;
6635  }
6636}
6637.section_4[data-module="library_list"] .content_container .content > div .library_content p {
6638  display: flex;
6639  align-items: center;
6640}
6641.section_4[data-module="library_list"] .content_container .content > div .library_content svg {
6642  color: #00FFFF;
6643  width: .625rem;
6644  height: .625rem;
6645  margin-right: 10px;
6646}
6647@media (max-width: 640px) {
6648  .section_4 {
6649    padding: 20px 20px;
6650  }
6651}
6652</style>
6653<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="contact" data-full-path="/contact/">
6654	<div class="content_container">
6655		<div class="content">
6656			<p>At Iconic Dental Arts, we provide skilled and compassionate care to help patients of all ages enjoy healthy, beautiful smiles.</p>
6657
6658<p>We look forward to hearing from you and welcome the opportunity to tell you more about our state-of-the-art practice and the many services that we provide.</p>
6659
6660<p>Whether you have questions about our office, are interested in a consultation, or would like to schedule an appointment for care, our friendly and knowledgeable office team welcomes your phone call. You can also reach out to us online with our easy and convenient "Contact Us" form.</p>
6661<br>
6662<form class="" data-submission-url="/system/processors/forms/standard_form_email/processor.php" data-form-id="contact" data-db-only="Mzg0MTAw::TXdlY1c4UnM1bWdDSnFRV0FveXNMZz09" data-append-location="" data-ad-grouping="" data-recaptcha-site-key="" data-recaptcha-secret-key="MjA5NjEz::T3ZSVHZmRHFFYkE2NkVKVjl2Ukcxdz09" data-recaptcha-processor="" data-recipients="OTM1NTQy::L0JzZGd6TmtETTh0anJNQTdxbnp0SkZQTW1sOGViU08yYWUxVFI4SDd5eVc2b2dHZ3IvYm1BaC93L3FIY2tIV3BRT2huSlZpQ3pCMTArU2ExQmxOWEE9PQ==" data-cc="MjUzMTkw::aDBNODBWa0F6ZldZc09BZkU5U2pxQT09" data-ad-recipients="NTgwMDM5::Q0JMQ29FWXYxS0h3QngwcFN6T3FpUT09" data-action="" data-subject="MjIwNDkz::alVQZFhZUnpDZkY0aHFLQzRuRlVRZz09" data-dynamic="true" data-pdf="" data-type="custom" data-category="Form" data-google-conversion="" data-facebook-conversion="" data-hipaa="NjY2NjU3::Ky9vbVFzc1BRaU9wd3UyWnpJcmFVZz09" data-reply-to="MTg3MDk5::N0QyUEtoYlBES1lmM09IRUhWbjBoQT09"><select name="source" data-email-label="Ad Source" type="select" aria-label="Ad Source" placeholder="Ad Source" data-ad-tracking="source" data-readonly="" data-hidden="1">
6663								<option value="">Ad Source</option><option name="none" value="None">None</option><option name="aleso" value="Aleso">Aleso</option><option name="aleso_ads" value="Aleso Ads">Aleso Ads</option><option name="email" value="Email">Email</option><option name="google" value="Google">Google</option><option name="google_ads" value="Google Ads">Google Ads</option><option name="youtube" value="YouTube">YouTube</option><option name="youtube_ads" value="YouTube Ads">YouTube Ads</option><option name="facebook" value="Facebook">Facebook</option><option name="facebook_ads" value="Facebook Ads">Facebook Ads</option><option name="linkedin" value="LinkedIn">LinkedIn</option><option name="linkedin_ads" value="LinkedIn Ads">LinkedIn Ads</option><option name="bing" value="Bing Ads">Bing Ads</option><option name="bing_ads" value="Bing Ads">Bing Ads</option><option name="adroll" value="AdRoll">AdRoll</option><option name="chatgpt_ads" value="ChatGPT Ads">ChatGPT Ads</option><option name="performance_max" value="Performance Max">Performance Max</option><option name="email_capture" value="Email Capture">Email Capture</option><option name="other" value="Other">Other</option><option name="example_source" value="Example Source">Example Source</option>
6664							</select><select name="campaign" data-email-label="Ad Campaign" type="select" aria-label="Ad Campaign" placeholder="Ad Campaign" data-ad-tracking="campaign" data-readonly="" data-hidden="1">
6665								<option value="">Ad Campaign</option><option name="default" value="Default">Default</option><option name="general" value="General">General</option><option name="none" value="None">None</option><option name="other" value="Other">Other</option><option name="clear_aligners" value="Clear Aligners">Clear Aligners</option><option name="cosmetic_dentist" value="Cosmetic Dentist">Cosmetic Dentist</option><option name="cosmetic_dentistry" value="Cosmetic Dentistry">Cosmetic Dentistry</option><option name="smile_design" value="Smile Design">Smile Design</option><option name="smile_makeover" value="Smile Makeover">
6665Smile Makeover</option><option name="teeth_whitening" value="Teeth Whitening">Teeth Whitening</option><option name="veneers" value="Veneers">Veneers</option><option name="cracked_tooth" value="Cracked Tooth">Cracked Tooth</option><option name="dental_emergency" value="Dental Emergency">Dental Emergency</option><option name="emergency" value="Emergency">Emergency</option><option name="emergency_dentist" value="Emergency Dentist">Emergency Dentist</option><option name="endodontics" value="Endodontics">Endodontics</option><option name="endodontist" value="Endodontist">Endodontist</option><option name="root_canal" value="Root Canal">Root Canal</option><option name="root_canals" value="Root Canals">Root Canals</option><option name="extractions" value="Extractions">Extractions</option><option name="tooth_extraction" value="Tooth Extraction">Tooth Extraction</option><option name="tooth_extractions" value="Tooth Extractions">Tooth Extractions</option><option name="wisdom_tooth_extraction" value="Wisdom Tooth Extraction">Wisdom Tooth Extraction</option><option name="wisdom_tooth_extractions" value="Wisdom Tooth Extractions">Wisdom Tooth Extractions</option><option name="branding" value="Branding">Branding</option><option name="cerec" value="CEREC">CEREC</option><option name="dental_crowns" value="Dental Crowns">Dental Crowns</option><option name="dentist_near_me" value="Dentist Near Me">Dentist Near Me</option><option name="family_dentist" value="Family Dentist">Family Dentist</option><option name="family_dentistry" value="Family Dentistry">Family Dentistry</option><option name="same_day_crowns" value="Same Day Crowns">Same Day Crowns</option><option name="tmj" value="TMJ">TMJ</option><option name="periodontics" value="Periodontics">Periodontics</option><option name="periodontist" value="Periodontist">Periodontist</option><option name="oral_surgeon" value="Oral Surgeon">Oral Surgeon</option><option name="oral_surgery" value="Oral Surgery">Oral Surgery</option><option name="sleep_apnea" value="Sleep Apnea">Sleep Apnea</option><option name="sedation_dentistry" value="Sedation Dentistry">Sedation Dentistry</option><option name="all_on_four" value="All On Four">All On Four</option><option name="dental_implants" value="Dental Implants">Dental Implants</option><option name="full_mouth_rehabilitation" value="Full Mouth Rehabilitation">Full Mouth Rehabilitation</option><option name="implant_dentist" value="Implant Dentist">Implant Dentist</option><option name="invisalign" value="Invisalign">Invisalign</option><option name="orthodontist" value="Orthodontist">Orthodontist</option><option name="pediatric_dentist" value="Pediatric Dentist">Pediatric Dentist</option><option name="pediatric_dentistry" value="Pediatric Dentistry">Pediatric Dentistry</option><option name="example" value="Example">Example</option><option name="prosthodontist" value="Prosthodontist">Prosthodontist</option>
6666							</select><input name="first" mcp-property="first_name" data-email-label="First Name" data-type="text" type="text" aria-label="input" placeholder="First Name" data-required="1" aria-required="true" data-readonly="" data-hidden="" value=""><input name="last" mcp-property="last_name" data-email-label="Last Name" data-type="text" type="text" aria-label="input" placeholder="Last Name" data-required="1" aria-required="true" data-readonly="" data-hidden="" value=""><input name="email" mcp-property="email_address" data-email-label="Email Address" data-type="email" type="email" aria-label="input" placeholder="Email Address" data-required="1" aria-required="true" data-readonly="" data-hidden=""><input name="phone" mcp-property="phone_number" data-email-label="Phone Number" data-type="text" type="text" aria-label="input" placeholder="Phone Number" data-required="" aria-required="false" data-readonly="" data-hidden="" value=""><textarea name="textarea" mcp-property="message" data-email-label="Message" data-type="textarea" type="textarea" aria-label="Message" placeholder="Message" data-required="1" aria-required="true" data-readonly="" data-hidden=""></textarea><input data-type="submit" type="submit" aria-label="input" placeholder="Submit"><div data-type="submit" type="submit" class="submit_container"><div class="button submit" data-dynamic="true" placeholder="Submit" role="button">Submit</div></div><section data-form-name="contact" data-type="system-lightbox-content"><div class="container">
6667	<h3>Thank You!</h3>
6668	<p>We appreciate you taking the time to visit our site.  We'll review your message and be in touch with you soon.</p>
6669	<div class="button" data-type="system-lightbox-close" role="button">Continue</div>
6670</div></section></form>
6671
6672		</div>
6673		<div class="sidebar" data-sidebar="true">
6674			<div class="label">Our Office</div><div data-sidebar="address_all">
6675	<div data-micro-template="full_address_dynamic">
6676	
6677	
6678	<div>8200 N May Ave</div>
6679	
6680	<div><span>Oklahoma City</span>, <span>OK</span> <span>73120</span></div>
6681	
6682	
6683		<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>
6684		<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>	
6685	
6686	
6687</div>
6688</div><div class="label">Office Hours</div><div data-sidebar="hours_all">
6689	<div data-micro-template="office_hours">
6690	<div class="row"><div class="day">Monday</div><div class="time">8:30 am - 5:00 pm</div></div>
6691	<div class="row"><div class="day">Tuesday</div><div class="time">8:30 am - 6:00 pm</div></div>
6692	<div class="row"><div class="day">Wednesday</div><div class="time">8:30 am - 5:00 pm</div></div>
6693	<div class="row"><div class="day">Thursday</div><div class="time">7:30 am - 4:00 pm</div></div>
6694	<div class="row"><div class="day">Friday</div><div class="time">8:30 am - 2:00 pm</div></div>
6695	<div class="row"><div class="day">Saturday</div><div class="time">Closed</div></div>
6696	<div class="row"><div class="day">Sunday</div><div class="time">Closed</div></div>
6697</div>
6698</div><div class="label">Visit Us Online</div><div data-sidebar="social_current">
6699	<div data-micro-template="social_icons">
6700	<a href="https://www.facebook.com/iconicdentalarts" aria-label="link" rel="noopener" target="_blank"><i class="fab fa-facebook-f"></i></a>
6701</div><div data-micro-template="social_icons">
6702	<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>
6703</div><div data-micro-template="social_icons">
6704	<a href="https://twitter.com/BlendedDentist" aria-label="link" rel="noopener" target="_blank"><i class="fab fa-twitter"></i></a>
6705</div><div data-micro-template="social_icons">
6706	<a href="https://www.instagram.com/iconicdentalarts" aria-label="link" rel="noopener" target="_blank"><i class="fab fa-instagram"></i></a>
6707</div><div data-micro-template="social_icons">
6708	<a href="https://www.youtube.com/channel/UCmOTKQniQLiN6srHU8tiX4w" aria-label="link" rel="noopener" target="_blank"><i class="fab fa-youtube"></i></a>
6709</div><div data-micro-template="social_icons">
6710	<a href="/blog/" aria-label="link"><i class="fas fa-blog"></i></a>
6711</div>
6712</div>
6713		</div>
6714	</div>
6715</section><style>.section_5 .block_container {
6716  display: flex;
6717  flex-direction: column;
6718}
6719.section_5 .block_container .block {
6720  display: flex;
6721  flex-wrap: wrap;
6722}
6723.section_5 .block_container .block .background_container {
6724  width: 100%;
6725  height: 680px;
6726  display: flex;
6727  justify-content: center;
6728  align-items: center;
6729}
6730.section_5 .block_container .block .background_container .background_content {
6731  position: relative;
6732  z-index: 20;
6733  width: 100%;
6734  height: 100%;
6735  display: flex;
6736  align-items: center;
6737  justify-content: center;
6738}
6739.section_5 .block_container .block .background_container .background_image {
6740  max-height: initial;
6741}
6742</style><style>.section_5 .content_container .content .block_container .block {
6743  display: flex;
6744  justify-content: space-between;
6745}
6746.section_5 .content_container .content .block_container .block .map,
6747.section_5 .content_container .content .block_container .block .text {
6748  flex: 1;
6749}
6750@media (max-width: 1024px) {
6751  .section_5 .content_container .content .block_container .block .map,
6752  .section_5 .content_container .content .block_container .block .text {
6753    flex-basis: 100%;
6754  }
6755}
6756.section_5 .content_container .content .block_container .block .map {
6757  position: relative;
6758}
6759@media (max-width: 1024px) {
6760  .section_5 .content_container .content .block_container .block .map {
6761    height: 300px;
6762  }
6763}
6764.section_5 .content_container .content .block_container .block .map div[data-micro-template="map"] {
6765  height: 100%;
6766}
6767.section_5 .content_container .content .block_container .block .map .responsive_iframe {
6768  position: relative;
6769}
6770.section_5 .content_container .content .block_container .block .map .responsive_iframe.sixteen-9 {
6771  padding-bottom: 56.25%;
6772}
6773.section_5 .content_container .content .block_container .block .map .responsive_iframe iframe {
6774  position: absolute;
6775  top: 0;
6776  left: 0;
6777  width: 100%;
6778  height: 100%;
6779}
6780.section_5 .content_container .content .block_container .block .text {
6781  padding: 80px 20px;
6782  background: linear-gradient(94deg,#B98A2E -1.86%,#D2AD63 36.41%,#B98A2E 106.21%);
6783  display: flex;
6784  align-items: center;
6785  justify-content: center;
6786}
6787@media (max-width: 1024px) {
6788  .section_5 .content_container .content .block_container .block .text {
6789    padding: 40px 20px;
6790  }
6791}
6792.section_5 .content_container .content .block_container .block .text .text_container {
6793  max-width: 700px;
6794  display: flex;
6795  flex-wrap: wrap;
6796  color: #1A1A1A;
6797  font-weight: 500;
6798}
6799.section_5 .content_container .content .block_container .block .text h2 {
6800  font-size: 3rem;
6801  text-transform: capitalize;
6802  margin: 0;
6803  flex-basis: 100%;
6804  color: #1A1A1A;
6805  margin-bottom: 20px;
6806}
6807@media (max-width: 1024px) {
6808  .section_5 .content_container .content .block_container .block .text h2 {
6809    font-size: 2rem;
6810  }
6811}
6812@media (max-width: 550px) {
6813  .section_5 .content_container .content .block_container .block .text h2 {
6814    font-size: 1.65rem;
6815  }
6816}
6817.section_5 .content_container .content .block_container .block .text h3 {
6818  flex-basis: 100%;
6819  font-size: 1.5rem;
6820  text-transform: uppercase;
6821  margin: 0;
6822  font-weight: 400;
6823  color: #fff;
6824}
6825@media (max-width: 1024px) {
6826  .section_5 .content_container .content .block_container .block .text h3 {
6827    font-size: 1.2rem;
6828  }
6829}
6830.section_5 .content_container .content .block_container .block .text p {
6831  flex-basis: 100%;
6832}
6833.section_5 .content_container .content .block_container .block .text a {
6834  font-weight: 700;
6835  cursor: pointer;
6836  color: #1A1A1A;
6837}
6838.section_5 .content_container .content .block_container .block .text a:hover {
6839  color: #1A1A1A;
6840}
6841.section_5 .content_container .content .block_container .block .text .hours,
6842.section_5 .content_container .content .block_container .block .text .address {
6843  flex-basis: 50%;
6844  text-transform: none;
6845}
6846@media (max-width: 768px) {
6847  .section_5 .content_container .content .block_container .block .text .hours,
6848  .section_5 .content_container .content .block_container .block .text .address {
6849    flex-basis: 100%;
6850  }
6851}
6852.section_5 .content_container .content .block_container .block .text .hours .row,
6853.section_5 .content_container .content .block_container .block .text .address .row {
6854  display: flex;
6855  justify-content: space-between;
6856}
6857@media (max-width: 768px) {
6858  .section_5 .content_container .content .block_container .block .text .hours .row,
6859  .section_5 .content_container .content .block_container .block .text .address .row {
6860    justify-content: flex-start;
6861  }
6862  .section_5 .content_container .content .block_container .block .text .hours .row .day,
6863  .section_5 .content_container .content .block_container .block .text .address .row .day {
6864    margin-right: 20px;
6865  }
6866}
6867@media (max-width: 768px) {
6868  .section_5 .content_container .content .block_container .block .text .hours {
6869    margin-top: 20px;
6870  }
6871}
6872.section_5 .content_container .content .block_container .block .text div[data-micro-template="buttons_container"] {
6873  display: flex;
6874  flex-wrap: wrap;
6875}
6876.section_5 .content_container .content .block_container .block .text div[data-micro-template="buttons_container"] .button {
6877  color: #1A1A1A;
6878  background: #00FFFF;
6879  margin: 5px 10px 5px 0;
6880  text-transform: uppercase;
6881  font-weight: 500;
6882  font-size: 1rem;
6883  border: 2px solid #1A1A1A;
6884  padding: 10px 40px;
6885  box-sizing: border-box;
6886  transition: all 0.3s;
6887}
6888.section_5 .content_container .content .block_container .block .text div[data-micro-template="buttons_container"] .button:hover {
6889  background: #00cccc;
6890  color: #1A1A1A;
6891  border: 2px solid #1A1A1A;
6892}
6893</style>
6894<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="contact" data-full-path="/contact/">
6895	<div class="content_container">
6896		<div class="content">
6897			<div class="block_container">
6898	<div class="block">
6899        <div class="map">
6900                <div data-micro-template="map">
6901	<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>
6902</div>
6903        </div>
6904        <div class="text">
6905            <div class="text_container">
6906                <h2>Iconic Dental Arts</h2>
6907                <div class="address">
6908                    <div data-micro-template="full_address_dynamic">
6909	
6910	
6911	<div>8200 N May Ave</div>
6912	
6913	<div><span>Oklahoma City</span>, <span>OK</span> <span>73120</span></div>
6914	
6915	
6916		<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>
6917		<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>	
6918	
6919	
6920</div>
6921                </div>
6922                <div class="hours">
6923                    <div data-micro-template="office_hours">
6924	<div class="row"><div class="day">Monday</div><div class="time">8:30 am - 5:00 pm</div></div>
6925	<div class="row"><div class="day">Tuesday</div><div class="time">8:30 am - 6:00 pm</div></div>
6926	<div class="row"><div class="day">Wednesday</div><div class="time">8:30 am - 5:00 pm</div></div>
6927	<div class="row"><div class="day">Thursday</div><div class="time">7:30 am - 4:00 pm</div></div>
6928	<div class="row"><div class="day">Friday</div><div class="time">8:30 am - 2:00 pm</div></div>
6929	<div class="row"><div class="day">Saturday</div><div class="time">Closed</div></div>
6930	<div class="row"><div class="day">Sunday</div><div class="time">Closed</div></div>
6931</div>
6932                </div>
6933                <p></p>
6934                <div data-micro-template="buttons_container">
6935	<div data-micro-template="buttons">
6936	<a class="button" href="/contact/" role="button" aria-label="Contact Us">Contact Us</a>
6937</div>
6938</div>
6939            </div>
6940        </div>
6941	</div>
6942</div>
6943
6944		</div>
6945	</div>
6946</section>
6946<script>
6947	javascript.prototype[get_id()] = function() {
6948		var json = {"settings":{"parallax":false},"content":[{"title":"Iconic Dental Arts","text":"","button":[{"label":"Contact Us","url":"\/contact\/"}]}]};
6949
6950		function shift_image() {
6951			if (
6952				json.settings.hasOwnProperty('parallax') &&
6953				json.settings.parallax
6954			) {
6955				$('.section_5 .background_image').each(function() {
6956					var elementHeight = $(this).height();
6957					var startEffect = $(this).offset().top - $(window).height();
6958					var endEffect = $(this).offset().top + elementHeight;
6959
6960					var pageHeight = $(document).height();
6961
6962					var scrollDistance = endEffect - startEffect;
6963					var scrollPosition = $(document).scrollTop();
6964
6965					if (scrollPosition > startEffect && scrollPosition < endEffect) {
6966						scrollPercent = ((scrollPosition - startEffect) / scrollDistance * 100).toFixed(4);
6967						/* $(this).css('transform', 'translate(-50%, -'+(100 - scrollPercent)+'%)'); */
6968						$(this).css('object-position', 'center '+(100 - scrollPercent)+'%');
6969					}
6970				});
6971			}
6972			else {
6973				$('.section_5 .background_image').addClass('static');
6974			}
6975		}
6976		
6977		shift_image();
6978
6979		$(window).resize(function() {
6980			shift_image();
6981		});
6982
6983		$(document).scroll(function() {
6984			shift_image();
6985		});
6986	}
6987</script>
6987<style>.section_6 {
6988  padding: 40px 40px;
6989}
6990.section_6 .content_container {
6991  max-width: 100%;
6992  justify-content: center;
6993  display: flex;
6994  margin-left: auto;
6995  margin-right: auto;
6996  box-sizing: border-box;
6997}
6998.section_6 .content_container .content {
6999  width: 100%;
7000}
7001.section_6 .content_container .content h2 {
7002  text-align: center;
7003}
7004.section_6 .content_container .content h3 {
7005  font-size: 1.5rem;
7006}
7007@media (max-width: 640px) {
7008  .section_6 {
7009    padding: 20px 20px;
7010  }
7011}
7012</style><style>.section_6 {
7013  padding: 60px 10px 20px;
7014  background-color: #1A1A1A;
7015}
7016.section_6 .content {
7017  text-align: center;
7018  color: #fff;
7019}
7020.section_6 .content .logo {
7021  margin-bottom: 20px;
7022}
7023.section_6 .content .logo img,
7024.section_6 .content .logo picture {
7025  max-width: 300px;
7026}
7027.section_6 .content .associations {
7028  margin: 40px 0;
7029}
7030.section_6 .content .associations img,
7031.section_6 .content .associations picture {
7032  margin: 0 20px;
7033  vertical-align: middle;
7034}
7035@media (max-width: 1280px) {
7036  .section_6 .content .associations img,
7037  .section_6 .content .associations picture {
7038    margin: 20px;
7039  }
7040}
7041.section_6 .content .phone {
7042  color: #fff;
7043  font-size: 1.4rem;
7044}
7045.section_6 .content .social {
7046  margin-bottom: 20px;
7047}
7048.section_6 .content .social div[data-micro-template='social_icons_container'] {
7049  display: flex;
7050  justify-content: center;
7051}
7052.section_6 .content .social div[data-micro-template='social_icons_container'] > div {
7053  margin: 0 15px;
7054}
7055.section_6 .content .social div[data-micro-template='social_icons_container'] > div svg {
7056  color: #fff;
7057  font-size: 1.5rem;
7058  transition: all 0.3s;
7059}
7060.section_6 .content .social div[data-micro-template='social_icons_container'] > div svg:hover {
7061  color: #00FFFF;
7062}
7063.section_6 .copyright {
7064  margin: 40px 0px 60px;
7065  text-align: center;
7066  font-size: 0.75rem;
7067  color: #fff;
7068}
7069.section_6 .copyright a {
7070  color: #fff;
7071}
7072.section_6 .copyright div {
7073  margin-bottom: 5px;
7074}
7075.section_6 .copyright div:first-of-type {
7076  margin-bottom: 5px;
7077}
7078</style>
7079<section class="section_6" data-module="content" data-html="/custom/modules/manticore_footer/module.html" data-json="" data-page="contact" data-full-path="/contact/">
7080	<div class="content_container">
7081		<div class="content">
7082			<div class="logo">
7083	<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>
7084</div>
7085<div class="associations">
7086	<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>
7087	<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>
7088	<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>
7089	<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>
7090	<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>
7091	<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>
7092	<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>
7093</div>
7094<div class="social">
7095	<div><div data-micro-template="social_icons_container">
7096	<div data-micro-template="social_icons">
7097	<a href="https://www.facebook.com/iconicdentalarts" aria-label="link" rel="noopener" target="_blank"><i class="fab fa-facebook-f"></i></a>
7098</div><div data-micro-template="social_icons">
7099	<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>
7100</div><div data-micro-template="social_icons">
7101	<a href="https://twitter.com/BlendedDentist" aria-label="link" rel="noopener" target="_blank"><i class="fab fa-twitter"></i></a>
7102</div><div data-micro-template="social_icons">
7103	<a href="https://www.instagram.com/iconicdentalarts" aria-label="link" rel="noopener" target="_blank"><i class="fab fa-instagram"></i></a>
7104</div><div data-micro-template="social_icons">
7105	<a href="https://www.youtube.com/channel/UCmOTKQniQLiN6srHU8tiX4w" aria-label="link" rel="noopener" target="_blank"><i class="fab fa-youtube"></i></a>
7106</div><div data-micro-template="social_icons">
7107	<a href="/blog/" aria-label="link"><i class="fas fa-blog"></i></a>
7108</div>
7109</div></div>
7110</div>
7111<div class="copyright">
7112	<div>
7113	© 2026 Iconic Dental Arts. All Rights Reserved. | <a href="/accessibility/" aria-label="Accessibility Policy">Accessibility Policy</a>
7114</div>
7115<div>
7116	<a href="https://doctorsinternet.com/dentistry/" aria-label="Dentist Marketing" rel="noopener" target="_blank">Dentist Marketing</a>
7117</div>
7118<div>
7119	Oklahoma City Dentist | Dentist 73120 | Cosmetic Dentist Oklahoma City
7120</div>
7121</div>
7122		</div>
7123	</div>
7124</section><style>section[data-module="faq"] div[data-micro-template="faq_container"] {
7125  max-width: 1400px;
7126  padding: 0 0px 40px 0px;
7127}
7128.img-center {
7129  display: block;
7130  margin: 16px auto;
7131}
7132body section[data-type="system-lightbox-container"].show {
7133  background: rgba(255,255,255,0.9);
7134}
7135body section[data-type="system-lightbox-container"].show section[data-form-name="contact"] {
7136  display: flex;
7137  align-items: center;
7138  justify-content: center;
7139  flex-basis: 100%;
7140}
7141body section[data-type="system-lightbox-container"].show section[data-form-name="contact"] .container {
7142  padding: 20px;
7143  box-sizing: border-box;
7144}
7145body section[data-type="system-lightbox-container"].show section[data-form-name="contact"] .container .button {
7146  background: #00FFFF;
7147  color: #1A1A1A;
7148}
7149body section[data-type="system-lightbox-container"].show section[data-form-name="contact"] .container .button:hover {
7150  background: #00cccc;
7151}
7152</style>
7153<section class="section_8" data-module="ad_tracking" data-html="" data-json="/custom/modules/ad_tracking/module.json" data-page="contact" data-full-path="/contact/"></section>
7153<script>
7154	javascript.prototype[get_id()] = function() {
7155		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":[{}]};
7156		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":{}};
7157		var metadata = {};
7158		
7159		console.log(metadata);
7160		console.log('Tracking');
7161
7162		var ad_grouping = [];
7163
7164		function find_childless_elements(selector) {
7165			var parent = $(selector);
7166			var found = [];
7167
7168			recursive_search($(parent));
7169
7170			function recursive_search(element) {
7171
7172				if($(element).children().length > 0) {
7173					$(element).children().each(function (index, child) {
7174						recursive_search($(child))
7175					});
7176				} else {
7177					found.push($(element)[0])
7178				}
7179			}
7180
7181			return found;
7182		}
7183		
7184		function find_closest_parent_of_content(selector, find = []) {
7185			var parent = $(selector);
7186			var found = [];
7187
7188			if (find.length) {
7189				if ($(parent).children().length > 0) {
7190					recursive_search($(parent));
7191				} else {
7192					var text = $(parent).text();
7193					$.each(find, function (index, string) { 
7194						 if (text.includes(string) && found.length === 0) {
7195							found.push($(parent)[0]);
7196						 }
7197					});
7198				}
7199			}
7200
7201			return (found.length)? found : false;
7202
7203
7204			function recursive_search(element, parent = null, ) {
7205
7206				var html = $(element).html();
7207				$.each(find, function (index, string) { 
7208					if (html.includes(string)) {
7209						if ($(element).children().length > 0) {
7210							var found_in_children = false;
7211							$(element).children().each(function (index, child) {
7212								var child_html = $(child).html()
7213								$.each(find, function (index, string) {
7214									if (child_html.includes(string)) {
7215										recursive_search($(child), $(element));
7216										found_in_children = true;
7217									}
7218								});
7219							});
7220
7221							if (!found_in_children) {
7222								found.push($(element)[0])
7223							}
7224							
7225						} else {
7226							found.push($(element)[0])
7227						}
7228
7229
7230					}
7231				});
7232			}
7233		}
7234
7235		function find_replace(find, replace) {
7236			var rFilter = [
7237				find
7238			];
7239
7240			var instanceLimit = 20;
7241			
7242			for (var i = 0; i < rFilter.length; i++) { 
7243				var instanceCounter = 0;
7244				$('*').contents().filter(function() {
7245					return this.nodeType === 3;
7246				}).replaceWith(function() {
7247					var to_replace = new RegExp(rFilter[i]);
7248					if ((this.nodeValue.indexOf(rFilter[i]) >= 0) && (instanceCounter < instanceLimit)) {
7249						instanceCounter++;
7250						return this.nodeValue.replace(to_replace, replace);
7251					}
7252					else {
7253						return this.nodeValue;
7254					}
7255				});
7256			}			
7257		}
7258
7259		function find_replace_links(find, replace, find_texts = []) {
7260			find_link = find.replace(/[^a-zA-Z0-9+]/g, '');
7261			replace_link = replace.replace(/[^a-zA-Z0-9+]/g, '');
7262
7263
7264			$('*[href^="tel:+1'+find_link+'"]').each(function() {
7265				$(this).attr('href', 'tel:+1'+replace_link);
7266				var elements_with_find_text = find_closest_parent_of_content($(this), [find, ...find_texts]);
7267				console.log(elements_with_find_text)
7268				if (elements_with_find_text) {
7269					$(elements_with_find_text).each(function(index, element) {
7270						if (!$(this).is('script')) {
7271							var html = $(this).html();
7272							
7273							if (html.includes(find)) {
7274								html = html.replaceAll(find, replace);
7275							}
7276							
7277							if(find_texts.length) {
7278								$.each(find_texts, function (index, find_text) { 
7279									if (html.includes(find_text)) {
7280										html = html.replaceAll(find_text, replace);
7281									}
7282								});
7283							}
7284
7285							if ($(this).html() !== html) {
7286								$(this).html(html);
7287							}
7288						}
7289					});
7290				}
7291				
7292				$(this).attr('data-click-call', 1);
7293			});
7294
7295				// $('*[href^="tel:+1'+find_link+'"]').each(function() {
7296				// 	$(this).attr('href', 'tel:+1'+replace_link);
7297
7298				// 	if (!$(this).is('script')) {
7299				// 		var html = $(this).html();
7300						
7301				// 		if (html.includes(find)) {
7302				// 			html = html.replaceAll(find, replace);
7303				// 		}
7304						
7305				// 		if(find_texts.length) {
7306				// 			$.each(find_texts, function (index, find_text) { 
7307				// 				if (html.includes(find_text)) {
7308				// 					html = html.replaceAll(find_text, replace);
7309				// 				}
7310				// 			});
7311				// 		}
7312
7313				// 		if ($(this).html() !== html) {
7314				// 			$(this).html(html);
7315				// 		}
7316				// 	}
7317				// });
7318		}
7319		
7320		function fill_tags_with_metadata(metadata) {
7321			var data = metadata;
7322
7323			$.each(data, function (attribute, value) { 
7324				if (attribute !== "json_ld") {
7325					if (attribute === "tags") {
7326						$.each(value, function (tag, content) { 
7327							tag_tag = $(`${tag}`);
7328							if (tag_tag.length) {
7329								console.log(`<${tag}/> updated with ${content}.`)
7330								$(tag_tag).text(content)
7331							} else {
7332								console.log(`<${tag}/> failed.`)
7333							}
7334						});
7335					} else {
7336						$.each(value, function (type, content) { 
7337							meta_tag = $(`meta[${attribute}="${type}"]`);
7338							if (meta_tag.length) {
7339								console.log(`<meta ${attribute}="${type}"/> updated with ${content}.`)
7340								$(meta_tag).attr('content', content)
7341							} else {
7342								console.log(`<meta ${attribute}="${type}"/> failed.`);
7343							}
7344						});
7345					}
7346				}
7347			});
7348		}
7349
7350		fill_tags_with_metadata(metadata);
7351
7352		var source 			= null;
7353		var campaign 		= null;
7354		var ad_location 	= null;
7355		
7356		if (get_cookie('source')) {
7357			source = get_cookie('source');
7358			$('select[data-ad-tracking="source"] option[name="'+source+'"]').attr('selected', true);
7359		}
7360		else {
7361			$('select[data-ad-tracking="source"]').val('None');
7362		}
7363
7364		if (get_cookie('campaign')) {
7365			campaign = get_cookie('campaign');
7366			$('select[data-ad-tracking="campaign"] option[name="'+campaign+'"]').attr('selected', true);
7367		}
7368		else {
7369			$('select[data-ad-tracking="campaign"]').val('None');
7370		}
7371		
7372		if (get_cookie('location')) {
7373			console.log(ad_location);
7374			ad_location = get_cookie('location');
7375			$('select[data-ad-tracking="ad_location"] option[name="'+ad_location+'"]').attr('selected', true);
7376		}
7377		else {
7378			$('select[data-ad-tracking="ad_location"]').val('None');
7379		}
7380
7381		
7382		
7383		prioritize_source = (
7384			json.settings.hasOwnProperty('prioritize_source') &&
7385			json.settings.prioritize_source
7386			? true
7387			: false
7388		);
7389
7390		google_conversion = (
7391			json.settings.hasOwnProperty('google_conversion_enabled') &&
7392			json.settings.google_conversion_enabled &&
7393			source == 'google'
7394			? true
7395			: false
7396		);
7397		
7398		facebook_conversion = (
7399			json.settings.hasOwnProperty('facebook_conversion_enabled') &&
7400			json.settings.facebook_conversion_enabled &&
7401			source == 'facebook'
7402			? true
7403			: false
7404		);
7405		
7406		if (
7407			source != null && campaign != null &&
7408			source.length && campaign.length
7409		) {		
7410			if (ad_management.hasOwnProperty('ad_campaigns')) {
7411				$.each(ad_management.ad_campaigns, function(key, val) {
7412					if (val.hasOwnProperty(campaign)) {
7413						ad_grouping.push(key);
7414					}
7415				});
7416			}
7417			
7418			if (
7419				ad_grouping.length &&
7420				ad_management.hasOwnProperty('ad_campaign_labels') &&
7421				ad_management.ad_campaign_labels.hasOwnProperty(ad_grouping[0]) &&
7422				ad_management.ad_campaign_labels[ad_grouping[0]].length
7423			) {
7424				var new_label = ad_management.ad_campaign_labels[ad_grouping[0]];
7425				$('form').each(function() {
7426					var current_label = $(this).attr('data-category') || '';
7427					if (current_label.length) {
7428						$(this).attr('data-category', current_label+' ('+new_label+')');
7429					}
7430				});
7431			}
7432			
7433			if (
7434				$('body').attr('data-template-group')?.includes('landing') &&
7435				window.location.pathname !== '/'
7436			) {
7437				
7438				let current_url_params = new URLSearchParams(window.location.search);
7439				current_url_params.delete('location');
7440				current_url_params.delete('source');
7441				current_url_params.delete('campaign');
7442
7443				console.log(ad_location);
7444				console.log(current_url_params.toString());
7445
7446				
7447				if (ad_location !== null && ad_location.length) {
7448					// history.pushState(null, null, ad_location + '/' + source.replaceAll('_', '-') + '/' + campaign.replaceAll('_', '-') + '/');
7449					history.pushState(null, null, `${ad_location}/${source.replaceAll('_', '-')}
7449/${campaign.replaceAll('_', '-')}/${current_url_params.toString()? '?'+current_url_params.toString():'' }`);
7450				} else {
7451					// history.pushState(null, null, source.replaceAll('_', '-')+'/'+campaign.replaceAll('_', '-')+'/');
7452					history.pushState(null, null, `${source.replaceAll('_', '-')}/${campaign.replaceAll('_', '-')}/${current_url_params.toString()? '?'+current_url_params.toString():'' }`);
7453				}
7454			}
7455		}
7456
7457		if (json.settings.hasOwnProperty('replacements')) {
7458
7459			if (json.settings.replacements.hasOwnProperty('convirza')) {
7460				// Enable if convirza.dni exists and is truthy, unless enable is explicitly false
7461				const convirza = json.settings.replacements.convirza;
7462				if (
7463					convirza.hasOwnProperty('dni') && convirza.dni &&
7464					(!convirza.hasOwnProperty('enable') || convirza.enable !== false)
7465				) {
7466					console.log('Enabling Convirza DNI with ID: ' + convirza.dni);
7467				}
7468			}
7469
7470
7471			$.each(json.settings.replacements, function(key, val) {
7472				
7473				var number_to_replace = (
7474					val.hasOwnProperty('number_to_replace') &&
7475					val.hasOwnProperty('phone_numbers') &&
7476					val.number_to_replace.length > 0
7477					? val.number_to_replace
7478					: false
7479				);
7480
7481				var text_to_replace = (
7482					val.hasOwnProperty('text_to_replace') &&
7483					val.hasOwnProperty('phone_numbers') &&
7484					val.text_to_replace.length > 0
7485					? val.text_to_replace
7486					: false
7487				);
7488
7489				if (number_to_replace) {
7490				
7491					var has_source = (
7492						val.hasOwnProperty('phone_numbers') &&
7493						val.phone_numbers.hasOwnProperty('source')
7494						? true
7495						: false
7496					);
7497
7498					var has_campaign = (
7499						val.hasOwnProperty('phone_numbers') &&
7500						val.phone_numbers.hasOwnProperty('campaign')
7501						? true
7502						: false
7503					);
7504
7505					var has_grouping = (
7506						val.hasOwnProperty('phone_numbers') &&
7507						val.phone_numbers.hasOwnProperty('grouping')	
7508					);
7509
7510					if (prioritize_source) {
7511						if (has_source && val.phone_numbers.source.hasOwnProperty(source)) {
7512							var number_replacement = val.phone_numbers.source[source];
7513						}
7514						else if (has_campaign && val.phone_numbers.campaign.hasOwnProperty(campaign)) {
7515							var number_replacement = val.phone_numbers.campaign[campaign];
7516						}
7517						else if (
7518							has_grouping &&
7519							ad_grouping.length &&
7520							val.phone_numbers.grouping.hasOwnProperty(ad_grouping[0])
7521						) {
7522							var number_replacement = val.phone_numbers.grouping[ad_grouping[0]];
7523						}
7524						else {
7525							number_replacement = null;
7526						}
7527						
7528						if (number_replacement) {
7529							if (text_to_replace) {
7530								find_replace_links(number_to_replace, number_replacement, text_to_replace);
7531							} else {
7532								find_replace_links(number_to_replace, number_replacement );
7533							}
7534						}
7535					}
7536					else {
7537						if (has_campaign && val.phone_numbers.campaign.hasOwnProperty(campaign)) {
7538							var number_replacement = val.phone_numbers.campaign[campaign];
7539						}
7540						else if (
7541							has_grouping &&
7542							ad_grouping.length &&
7543							val.phone_numbers.grouping.hasOwnProperty(ad_grouping[0])
7544						) {
7545							var number_replacement = val.phone_numbers.grouping[ad_grouping[0]];
7546						}
7547						else if (has_source && val.phone_numbers.source.hasOwnProperty(source)) {
7548							var number_replacement = val.phone_numbers.source[source];
7549						}
7550						else {
7551							number_replacement = null;
7552						}
7553						
7554						if (number_replacement) {
7555							if (text_to_replace) {
7556								find_replace_links(number_to_replace, number_replacement, text_to_replace);
7557							} else {
7558								find_replace_links(number_to_replace, number_replacement);
7559							}
7560						}
7561					}
7562				}
7563			});
7564		}
7565		
7566		$('[data-click-call="1"]').click(function(e) {
7567			e.preventDefault();
7568			var request	= {};
7569				request.action	= 'log_click_to_call';
7570				request.number	= $(this).attr('href');
7571				request.source		= source;
7572				request.campaign	= campaign;
7573				request.domain		= window.location.hostname;
7574				request.path		= window.location.pathname;
7575
7576				$.post('https://referrals.di-api.com/', {
7577					'action': JSON.stringify(request)
7578				})
7579				.done(function() {
7580					let link = document.createElement('a');
7581					link.href = request.number;
7582					link.click();
7583					URL.revokeObjectURL(link.href);
7584				});
7585		});
7586
7587		function initDNIIntercept(key, host) {
7588			return new Promise((resolve, reject) => {
7589				var script = document.createElement('script');
7590				script.src = 'https://dni.logmycalls.com/dni.js?app_id=CT';
7591				script.onerror = () => reject(new Error('Failed to load DNI script'));
7592				script.onload = function () {
7593					// Script loaded — CZADNI is now on window.
7594					// Replace their DOM-swapping function with a no-op that also captures the phone number and resolves the promise.
7595					const originalChangeNumber = CZADNI.changeTheNumberOnScreen.changeNumber;
7596					CZADNI.changeTheNumberOnScreen.changeNumber = function (mappings) {
7597						const mapping = mappings?.[0];
7598						if (mapping?.phone_number && mapping.phone_number !== 'not_exist') {
7599							const formatted = CZADNI.changeTheNumberOnScreen.formatNumber(
7600								mapping.phone_number,
7601								mapping.dni_number_format
7602							);
7603							resolve({
7604								raw: mapping.phone_number,
7605								formatted: formatted.phone
7606							});
7607						}
7608					};
7609
7610					// init the DNI script
7611					getDNIRecord(key, host);
7612				};
7613				document.head.appendChild(script);
7614			});
7615		}
7616	}
7617</script>
7617
7618						
7619						<section data-type="system-lightbox-container"></section>
7620						
7620<script src="/system/js/jquery-3.5.1.min.js"></script>
7620
7621			
7621<script src="https://kit.fontawesome.com/10cd9403cd.js" async></script>
7621
7622						
7622<script>
7623	var scroll_disabled = false;
7624	var extras_loaded = false;
7625	var form_button_lock = false;
7626	var click_lock = false;
7627	var _userway_config = { position: 5, color: "#053e67", language: "en", account: "72Ve6c8l9z" };
7628	var timeout = false;
7629	var window_width = null;
7630	var window_height = null;
7631	var google_conversion = false;
7632	var facebook_conversion = false;
7633	var file_field_counter = 0;
7634	const api = 'https://referrals.di-api.com/';
7635	var newSession = false;
7636	var newVisitor = false;
7637	let socket = null;
7638	const pageID = uuid();
7639
7640	function gtag(arguments) {
7641		dataLayer.push(arguments);
7642	}
7643
7644	google_tracking = {
7645		gtag: function () {
7646			dataLayer.push(arguments);
7647		}
7648	};
7649
7650	facebook_tracking = {
7651		fbq: function () {
7652			n.queue.push(arguments);
7653		}
7654	};
7655
7656	function Socket(visitorId, sessionId, pageId) {
7657		const ws = "wss://socket.di-api.com/analytics"
7658		this.promise = new Promise((resolve, reject) => {
7659			this.visitorId = visitorId;
7660			this.sessionId = sessionId;
7661			this.pageId = pageId;
7662			this.connection = null;
7663
7664			this.attempts = 0;
7665			this.interval = 1000;
7666			this.has_reconnect = false;
7667			var multiplier = 1.25;
7668
7669			var connect = () => {
7670				this.connection = new WebSocket(`${ws}?visitor_id=${visitorId}&session_id=${sessionId}&page_id=${pageId}`);
7671				this.attempts++;
7672
7673				this.connection.onopen = (e) => {
7674					{/* console.log(this.connection);
7675				console.log(e); */}
7676					this.attempts = 0;
7677					this.interval = 1000;
7678					console.log('Connection established');
7679
7680					resolve(1)
7681				}
7682
7683				this.connection.onclose = (e) => {
7684					console.log('Connection closed');
7685					this.connection = null;
7686
7687					if (this.has_reconnect) {
7688						this.interval *= multiplier;
7689						setTimeout(function () {
7690							reconnect();
7691						}, this.interval);
7692					}
7693				}
7694
7695				this.connection.onerror = (e) => {
7696					console.log('%cConnection error ', 'color: red; display: block; width: 100%;', e);
7697					this.connection.close();
7698					resolve(-1)
7699				}
7700
7701				this.connection.onmessage = (e) => {
7702					if (e.data) {
7703
7704					}
7705				}
7706			}
7707
7708			var reconnect = () => {
7709				if (this.connection === null && this.id !== null) {
7710					console.log('Reconnecting...')
7711					connect(ws);
7712					return 1;
7713				} else {
7714					console.log('Needs to Reconnect...')
7715					return -1;
7716				}
7717			}
7718
7719
7720			if (this.id !== null) {
7721				connect()
7722			}
7723		})
7724	}
7725
7726	Socket.prototype.kill = function () {
7727		if (this.connection !== null) {
7728			if (this.connection.readyState) {
7729				this.has_reconnect = false;
7730				this.connection.close();
7731				return 1;
7732			} else {
7733				return -1;
7734			}
7735		} else {
7736			return -1;
7737		}
7738	}
7739
7740	Socket.prototype.get_state = function () {
7741		if (this.connection !== null) {
7742			return this.connection.readyState;
7743		} else {
7744			return null;
7745		}
7746	}
7747
7748	function get_visitor_id() {
7749		let visitorID = localStorage.getItem('visitorID');
7750		if (!visitorID) {
7751			newVisitor = true;
7752			visitorID = uuid();
7753			localStorage.setItem('visitorID', visitorID);
7754		}
7755		return visitorID;
7756	}
7757
7758	function get_session_id() {
7759		let sessionID = sessionStorage.getItem('sessionID');
7760		if (!sessionID) {
7761			newSession = true;
7762			sessionID = uuid();
7763			sessionStorage.setItem('sessionID', sessionID);
7764		}
7765		return sessionID;
7766	}
7767
7768	function get_tracking_permitted() {
7769		const consent = window.DiPrivacy.consent ?? null;
7770		if (consent === 'granted') {
7771			return 1;
7772		} else if (consent === 'denied') {
7773			return 0;
7774		} else {
7775			return null;
7776		}
7777	}
7778
7779
7780	function is_valid_interaction_type(type) {
7781		// Array of patterns (including static strings as patterns)
7782		const patterns = [
7783			/^call$/, // Exact match of 'call'
7784			/^click$/, // Exact match of 'click'
7785			/^form_submission$/, // Exact match of 'form_submission'
7786			/^landing$/, // Exact match of 'landing'
7787			/^page$/, // Exact match of 'page'
7788			/^question_\d+$/, // Matches 'question_' followed by one or more digits
7789			/^tracking_permitted$/, // Exact match of 'tracking_permitted'
7790		];
7791
7792		// Iterate over the patterns and check if the type matches any of them
7793		for (let pattern of patterns) {
7794			if (pattern.test(type)) {
7795				return true;
7796			}
7797		}
7798
7799		return false;
7800	}
7801
7802	function track_submit(elem) {
7803		return new Promise((resolve, reject) => {
7804
7805			const visitorID = get_visitor_id();
7806			const sessionID = get_session_id()
7807
7808			let aios_module = elem.closest('[data-mid]');
7809			let aios_content = elem.closest('[data-cid]')
7810
7811			if (aios_module instanceof jQuery) {
7812				if (aios_module.length) {
7813					aios_module = aios_module[0]
7814				} else {
7815					aios_module = null;
7816				}
7817			}
7818
7819			if (aios_content instanceof jQuery) {
7820				if (aios_content.length) {
7821					aios_content = aios_content[0];
7822				} else {
7823					aios_content = null;
7824				}
7825			}
7826
7827
7828
7829			let request = {};
7830			request.action = 'page_interaction';
7831			request.type = 'form_submission';
7832			request.visitor_id = visitorID;
7833			request.session_id = sessionID;
7834			request.page_id = pageID;
7835			request.mid = (aios_module !== null) ? aios_module.getAttribute('data-mid') : null;
7836			request.cid = (aios_content !== null) ? aios_content.getAttribute('data-cid') : null;
7837			request.domain = window.location.hostname;
7838			request.page = window.location.pathname;
7839			request.href = null;
7840			request.source = (get_cookie('source') ? get_cookie('source') : null);
7841			request.campaign = (get_cookie('campaign') ? get_cookie('campaign') : null);
7842			request.location = (get_cookie('location') ? get_cookie('location') : null);
7843			request.category = (aios_content !== null) ? aios_content.getAttribute('data-category') : null;
7844			request.subcategory = (aios_content !== null) ? aios_content.getAttribute('data-subcategory') : null;
7845			request.referrer = document.referrer;
7846			request.tracking_permitted = get_tracking_permitted();
7847
7848			if (get_tracking_permitted() === 1) { }
7849			else {
7850				request.visitor_id = null;
7851				if (document.referrer) {
7852					request.referrer = (new URL(document.referrer)).hostname || null;
7853				}
7854			}
7855
7856
7857
7858			// console.log(request)
7859
7860			let xhr = new XMLHttpRequest();
7861			xhr.open('POST', api);
7862			xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
7863			xhr.onreadystatechange = function () {
7864				// console.log(xhr.readyState)
7865				if (xhr.readyState == 2) {
7866					resolve(true);
7867				}
7868				if (xhr.readyState == 4) {
7869					if (xhr.status == 200) {
7870					} else {
7871					}
7872				}
7873			}
7874			xhr.onerror = function () {
7875				reject(xhr.status);
7876			}
7877			xhr.send(encodeURI('action=' + JSON.stringify(request)));
7878		});
7879	}
7880
7881	function track_click(elem) {
7882		return new Promise((resolve, reject) => {
7883
7884			const visitorID = get_visitor_id();
7885			const sessionID = get_session_id()
7886
7887			let click_type = 'click';
7888			let aios_module = elem.closest('[data-mid]');
7889			let aios_content = elem.closest('[data-cid]')
7890
7891			if (aios_module instanceof jQuery) {
7892				if (aios_module.length) {
7893					aios_module = aios_module[0]
7894				} else {
7895					aios_module = null;
7896				}
7897			}
7898
7899			if (aios_content instanceof jQuery) {
7900				if (aios_content.length) {
7901					aios_content = aios_content[0];
7902				} else {
7903					aios_content = null;
7904				}
7905			}
7906
7907			if (elem.hasAttribute('href')) {
7908				if (elem.getAttribute('href').indexOf('tel:') > -1) {
7909					click_type = 'call'
7910				}
7911			}
7912
7913			if (elem.tagName === 'BUTTON') {
7914				if (elem.hasAttribute('data-click-tracking-type') || elem.hasAttribute('data-event')) {
7915					const elem_type = elem.getAttribute('data-click-tracking-type') || elem.getAttribute('data-event');
7916					if (elem_type === 'consent_accept' || elem_type === 'consent_reject') {
7917						click_type = 'tracking_permitted';
7918					} else if (is_valid_interaction_type(elem_type)) {
7919						click_type = elem_type;
7920					}
7921				}
7922			}
7923
7924			if (elem.hasAttribute('data-click-tracking')) {
7925				if (elem.hasAttribute('data-click-tracking-type') || elem.hasAttribute('data-event')) {
7926					const elem_type = elem.getAttribute('data-click-tracking-type') || elem.getAttribute('data-event');
7927					if (is_valid_interaction_type(elem_type)) {
7928						click_type = elem_type;
7929					}
7930				}
7931			}
7932
7933			let request = {};
7934			request.action = 'page_interaction';
7935			request.type = click_type;
7936			request.visitor_id = visitorID;
7937			request.session_id = sessionID;
7938			request.page_id = pageID;
7939			request.mid = (aios_module !== null) ? aios_module.getAttribute('data-mid') : null;
7940			request.cid = (aios_content !== null) ? aios_content.getAttribute('data-cid') : null;
7941			request.domain = window.location.hostname;
7942			request.page = window.location.pathname;
7943			request.href = elem.getAttribute('href');
7944			request.source = (get_cookie('source') ? get_cookie('source') : null);
7945			request.campaign = (get_cookie('campaign') ? get_cookie('campaign') : null);
7946			request.location = (get_cookie('location') ? get_cookie('location') : null);
7947			request.category = (aios_content !== null) ? aios_content.getAttribute('data-category') : null;
7948			request.subcategory = (aios_content !== null) ? aios_content.getAttribute('data-subcategory') : null;
7949			request.referrer = document.referrer;
7950			request.tracking_permitted = get_tracking_permitted();
7951
7952			if (get_tracking_permitted() === 1) { }
7953			else {
7954				request.visitor_id = null;
7955				if (document.referrer) {
7956					request.referrer = (new URL(document.referrer)).hostname || null;
7957				}
7958			}
7959
7960			console.log(request);
7961
7962			let xhr = new XMLHttpRequest();
7963			xhr.open('POST', api);
7964			xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
7965			xhr.onreadystatechange = function () {
7966				// console.log(xhr.readyState)
7967				if (xhr.readyState == 2) {
7968					resolve(true);
7969				}
7970				if (xhr.readyState == 4) {
7971					if (xhr.status == 200) {
7972					} else {
7973					}
7974				}
7975			}
7976			xhr.onerror = function () {
7977				reject(xhr.status);
7978			}
7979			xhr.send(encodeURI('action=' + JSON.stringify(request)));
7980		});
7981	}
7982
7983	function track_load() {
7984		return new Promise((resolve, reject) => {
7985			const visitorID = get_visitor_id();
7986			const sessionID = get_session_id()
7987			{/* pageID = uuid(); */ }
7988
7989			let request = {};
7990			request.action = 'page_interaction';
7991			request.type = (newSession) ? 'landing' : 'page';
7992			request.visitor_id = visitorID;
7993			request.session_id = sessionID;
7994			request.page_id = pageID;
7995			request.domain = window.location.hostname;
7996			request.page = window.location.pathname;
7997			request.source = (get_cookie('source') ? get_cookie('source') : null);
7998			request.campaign = (get_cookie('campaign') ? get_cookie('campaign') : null);
7999			request.location = (get_cookie('location') ? get_cookie('location') : null);
8000			request.referrer = document.referrer;
8001			request.tracking_permitted = get_tracking_permitted();
8002
8003			if (get_tracking_permitted() === 1) { }
8004			else {
8005				request.visitor_id = null;
8006				if (document.referrer) {
8007					request.referrer = (new URL(document.referrer)).hostname || null;
8008				}
8009			}
8010
8011			let xhr = new XMLHttpRequest();
8012			xhr.open('POST', api);
8013			xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
8014			xhr.onreadystatechange = function () {
8015				if (xhr.readyState == 2) {
8016					resolve(true);
8017				}
8018				if (xhr.readyState == 4) {
8019					if (xhr.status == 200) {
8020					} else {
8021					}
8022				}
8023			}
8024			xhr.onerror = function () {
8025				reject(xhr.status);
8026			}
8027			xhr.send(encodeURI('action=' + JSON.stringify(request)));
8028		});
8029	}
8030
8031	function deferred_websocket() {
8032		return new Promise((resolve, reject) => {
8033			let visitorID = get_visitor_id();
8034			const sessionID = get_session_id();
8035
8036			if (get_tracking_permitted() !== 1) {
8037				visitorID = null;
8038			}
8039
8040			window.addEventListener('scroll', function () {
8041				if (socket === null) {
8042					socket = new Socket(visitorID, sessionID, pageID);
8043					resolve(true);
8044				}
8045			});
8046
8047			window.addEventListener('mousemove', function () {
8048				if (socket === null) {
8049					socket = new Socket(visitorID, sessionID, pageID);
8050					resolve(true);
8051				}
8052			});
8053
8054			window.addEventListener('click', function () {
8055				if (socket === null) {
8056					socket = new Socket(visitorID, sessionID, pageID);
8057					resolve(true);
8058				}
8059			});
8060		});
8061	}
8062
8063	function clone_lightbox(selected, dom, section, settings) {
8064		var counter = 0;
8065		clonedDom = dom.cloneNode(true);
8066		document.querySelector('section[data-type="system-lightbox-container"]').appendChild(clonedDom);
8067		document.querySelector('section[data-type="system-lightbox-container"] > [data-action="lightbox"]').setAttribute('data-origin', section);
8068		var lightboxItems = document.querySelectorAll('section[data-type="system-lightbox-container"] [data-action="lightbox_item"]');
8069		lightboxItems[selected].classList.add('selected');
8070
8071		var closeLightboxElement = document.createElement('div');
8072		closeLightboxElement.classList.add('close-icon');
8073		closeLightboxElement.innerHTML = `
8074            <i class="fal fa-times-circle">
8075        `;
8076		closeLightboxElement.addEventListener('click', function (e) {
8077			e.preventDefault();
8078			close_lightbox();
8079		});
8080
8081		var nextLightboxElement = document.createElement('div');
8082		nextLightboxElement.classList.add('next-icon');
8083		nextLightboxElement.innerHTML = `
8084            <i class="fal fa-chevron-circle-right">
8085        `;
8086
8087		var prevLightboxElement = document.createElement('div');
8088		prevLightboxElement.classList.add('prev-icon');
8089		prevLightboxElement.innerHTML = `
8090            <i class="fal fa-chevron-circle-left">
8091        `;
8092
8093		lightboxItems[selected].appendChild(closeLightboxElement);
8094		lightboxItems[selected].appendChild(nextLightboxElement);
8095		lightboxItems[selected].appendChild(prevLightboxElement);
8096
8097		$('section[data-type="system-lightbox-container"] [data-action="lightbox_item"]').each(function () {
8098			$(this).attr('data-index', counter),
8099				counter++;
8100		});
8101
8102		open_lightbox();
8103	}
8104
8105	function open_lightbox() {
8106		$('section[data-type="system-lightbox-container"]').addClass('show');
8107		setTimeout(function () {
8108			$('*[data-type="system-lightbox-close"]').click(close_lightbox);
8109		}, 400);
8110
8111		$('section[data-type="system-lightbox-container"] [data-lazy-picture="true"]').each(function () {
8112			var data_srcset = $(this).attr('data-srcset');
8113			var srcset = $(this).attr('srcset');
8114
8115			if (data_srcset !== '') {
8116				$(this).attr('srcset', data_srcset);
8117			}
8118		});
8119
8120		$('section[data-type="system-lightbox-container"] [data-lazy-img="true"]').each(function () {
8121			var src = $(this).attr('data-src');
8122			if (src) {
8123				$(this).attr('src', src);
8124			}
8125		});
8126	}
8127
8128	function close_lightbox() {
8129		$('*[data-type="system-lightbox-close"]').unbind();
8130		$('section[data-type="system-lightbox-container"]').removeClass('show');
8131		setTimeout(function () {
8132			$('section[data-type="system-lightbox-container"]').empty();
8133		}, 0);
8134	}
8135
8136	function reset_lightbox_container() {
8137		const $container = $('section[data-type="system-lightbox-container"]');
8138
8139		// Remove only injected lightbox-content clones
8140		$container.find('section[data-type="system-lightbox-content"]').remove();
8141
8142		// Remove container click handlers (or at least the ones you add via namespace)
8143		$container.off('click.autoOutsideClose');
8144	}
8145
8146	(function wrapOpenLightbox() {
8147		if (window.__openLightboxWrapped2) return;
8148		window.__openLightboxWrapped2 = true;
8149
8150		function wait() {
8151			if (typeof window.open_lightbox !== 'function') {
8152				setTimeout(wait, 25);
8153				return;
8154			}
8155
8156			const originalOpen = window.open_lightbox;
8157
8158			// Global config
8159			window.override_lightbox = window.override_lightbox || false;
8160			window.lightbox_allowed_source = window.lightbox_allowed_source || null;
8161			window.lightbox_call_source = null; // ephemeral, set right before allowed opens
8162
8163			// Helper: run a function while temporarily marking the caller
8164			window.with_lightbox_source = function (sourceId, fn) {
8165				const prev = window.lightbox_call_source;
8166				window.lightbox_call_source = sourceId;
8167				try {
8168					return fn();
8169				} finally {
8170					window.lightbox_call_source = prev;
8171				}
8172			};
8173
8174			window.open_lightbox = function () {
8175				// If override is active, only allow calls tagged by the allowed source
8176				if (window.override_lightbox) {
8177					if (!window.lightbox_allowed_source) return; // locked down hard
8178					if (window.lightbox_call_source !== window.lightbox_allowed_source) {
8179						return; // ignore everyone else
8180					}
8181				}
8182
8183				return originalOpen.apply(this, arguments);
8184			};
8185		}
8186
8187		wait();
8188	})();
8189
8190	function uuid(verbose = false) {
8191		let id = ([1e7] + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, c =>
8192			(c ^ crypto.getRandomValues(new Uint8Array(1))[0] & 15 >> c / 4).toString(16)
8193		)
8194		if (verbose) {
8195			console.log(id);
8196		}
8197		return id
8198	}
8199
8200	function set_cookie(name, value, days, domain) {
8201		var expires = '';
8202		if (domain == null) {
8203			var domain = window.location.hostname;
8204			domain = domain.split('.');
8205
8206			if (domain.length == 2) {
8207				domain = domain.join('.');
8208			}
8209
8210			if (domain.length == 3) {
8211				domain = domain.slice(Math.max(domain.length - 2, 1));
8212				domain = domain.join('.');
8213			}
8214		}
8215		if (days) {
8216			var date = new Date();
8217			date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
8218			expires = '; expires=' + date.toUTCString();
8219		}
8220		document.cookie = name + '=' + (value || '') + expires + '; domain=' + domain + '; path=/';
8221	}
8222
8223	function get_cookie(name) {
8224		var name_eq = name + '=';
8225		var ca = document.cookie.split(';');
8226		for (var i = 0; i < ca.length; i++) {
8227			var c = ca[i];
8228			while (c.charAt(0) == ' ') c = c.substring(1, c.length);
8229			if (c.indexOf(name_eq) == 0) return c.substring(name_eq.length, c.length);
8230		}
8231		return null;
8232	}
8233
8234	function disable_scroll() {
8235		if (scroll_disabled) {
8236			return;
8237		}
8238
8239		scroll_disabled = true;
8240		scrollTop = $(window).scrollTop();
8241
8242		$('body')
8243			.css({
8244				'top': -1 * scrollTop,
8245				'position': 'fixed',
8246				'overflow': 'hidden',
8247				'pointer-events': 'none',
8248			});
8249	}
8250
8251	function load_extras() {
8252		$.getScript('https://cdn.userway.org/widget.js');
8253		javascript_deferred.load.forEach(function (v) {
8254			javascript_deferred.prototype[v]();
8255		});
8256
8257		$('iframe[data-src]').each(function () {
8258			var src = $(this).attr('data-src');
8259			if (!(src == null || src == '')) {
8260				$(this).attr('src', src);
8261			}
8262		});
8263
8264		$('iframe[data-srcdoc]').each(function () {
8265			var srcdoc = atob($(this).attr('data-srcdoc'));
8266			if (!(srcdoc == null || srcdoc == '')) {
8267				$(this).attr('srcdoc', srcdoc);
8268			}
8269		});
8270	}
8271
8272	function update_deferred_images() {
8273		$('[data-lazy-picture="false"]').each(function () {
8274			var data_srcset = $(this).attr('data-srcset');
8275			var srcset = $(this).attr('srcset');
8276
8277			if (data_srcset !== '') {
8278				$(this).attr('srcset', data_srcset);
8279			}
8280		});
8281
8282		$('[data-lazy-img="false"]').each(function () {
8283			var src = $(this).attr('data-src');
8284			if (src) {
8285				$(this).attr('src', src);
8286			}
8287		});
8288
8289		/* $('source[data-srcset]').each(function() {
8290			if ($('body').attr('data-width') > 360) {
8291				var src = $(this).attr('data-srcset');
8292				$(this).attr('srcset', src);
8293			}
8294			else {
8295				var src = $(this).attr('data-srcset-sm');
8296				$(this).attr('srcset', src);
8297			}
8298		}); */
8299
8300
8301		$('video source[data-src]').each(function () {
8302			if ($('body').attr('data-width') > 360) {
8303				var src = $(this).attr('data-src');
8304				$(this).attr('src', src);
8305				$(this).closest('video')[0].load();
8306
8307				if ($(this).closest('video')[0].hasAttribute('muted')) {
8308					$(this).closest('video')[0].play();
8309				}
8310			}
8311		});
8312	}
8313
8314	function lazy_load_deferred_images() {
8315		const lazySections = document.querySelectorAll('body > section')
8316
8317		lazySections.forEach(section => {
8318			// section.classList.add('lazying');
8319			createObserver(section);
8320		});
8321
8322
8323		function createObserver(el) {
8324			let observer;
8325
8326			let options = {
8327				root: null,
8328				rootMargin: "100px 0px",
8329				threshold: 0
8330			};
8331
8332			observer = new window.IntersectionObserver(handleIntersect, options);
8333			observer.observe(el);
8334		}
8335
8336		function handleIntersect(entries, o) {
8337			entries.forEach((entry) => {
8338				if (entry.isIntersecting) {
8339					const lazyAssets = entry.target.querySelectorAll('[data-lazy-picture="true"], [data-lazy-img="true"]');
8340					// console.log('Lazy Assets', lazyAssets);
8341
8342					lazyAssets.forEach((asset) => {
8343						load(asset);
8344					});
8345
8346					o.unobserve(entry.target)
8347
8348				} else {
8349				}
8350			});
8351		}
8352
8353		function load(asset) {
8354
8355			if (asset.tagName === 'IMG') {
8356				if (asset.hasAttribute('data-src')) {
8357					const source = asset.getAttribute('data-src');
8358					if (source) {
8359						asset.setAttribute('src', source);
8360						asset.removeAttribute('data-src')
8361					}
8362				} else {
8363				}
8364			}
8365
8366			if (asset.tagName === 'SOURCE') {
8367				if (asset.hasAttribute('data-srcset')) {
8368					const source = asset.getAttribute('data-srcset');
8369					if (source) {
8370						asset.setAttribute('srcset', source);
8371						asset.removeAttribute('data-srcset')
8372					}
8373				} else {
8374				}
8375			}
8376		}
8377
8378		// document.addEventListener('scroll', function () {
8379
8380		// });
8381	}
8382
8383
8384	function set_resize_listeners() {
8385		window.addEventListener('resize', function () {
8386			if ($(window).width() == window_width) {
8387				return;
8388			}
8389			else {
8390				clearTimeout(timeout);
8391				timeout = setTimeout(get_viewport_size, 50);
8392			}
8393			window_width = $(window).width();
8394		});
8395
8396		window.addEventListener('resize', function () {
8397			if ($(window).height() == window_height) {
8398				return;
8399			}
8400			else {
8401				clearTimeout(timeout);
8402				timeout = setTimeout(get_viewport_size, 50);
8403			}
8404			window_height = $(window).height();
8405		});
8406	}
8407
8408	function set_scroll_listeners() {
8409		$(document).one('scroll', function () {
8410			if (!extras_loaded) {
8411				extras_loaded = true;
8412				load_extras();
8413			}
8414		});
8415
8416		$(document).one('mousemove', function () {
8417			if (!extras_loaded) {
8418				extras_loaded = true;
8419				load_extras();
8420			}
8421		});
8422	}
8423
8424	function set_accordion_listeners() {
8425		if ($('div[data-micro-template="accordion"]')) {
8426			$('div[data-accordion="title"').click(function () {
8427				var $container = $(this).closest($('div[data-micro-template="accordion_container"]'));
8428				var $toggles = $container.find('.accordion_toggle');
8429				var $bodies = $container.find('.accordion_body');
8430				var $titles = $container.find('.accordion_title');
8431
8432				$titles.removeClass('active');
8433				$toggles.text("+");
8434				$bodies.slideUp();
8435
8436				if (!$(this).next().is(":visible")) {
8437					$(this).addClass('active');
8438					$(this).next().slideDown();
8439					$(this).children('.accordion_toggle').text('-');
8440				}
8441			});
8442		}
8443	}
8444
8445
8446	function get_form_info(form) {
8447		const el = $(form)[0];
8448		return {
8449			page: window.location.pathname,
8450			form: {
8451				id: el.getAttribute('data-form-id') || null,
8452				type: el.getAttribute('data-type') || null,
8453				category: el.getAttribute('data-category') || null,
8454			},
8455		};
8456	}
8457
8458	function dispatch_form_event(name, form, response, form_data) {
8459		const detail = get_form_info(form);
8460		detail.response = response;
8461		detail.form_data = form_data ?? null;
8462		$(form)[0].dispatchEvent(new CustomEvent(name, { bubbles: true, detail: detail }));
8463	}
8464
8465	function form_actions() {
8466		if ($('form').length) {
8467			if ($('input[data-toggle="datepicker"]').length) {
8468				$.getScript('/system/js/datepicker/datepicker.js', function () {
8469					$('head').append($('<link rel="stylesheet" type="text/css" />').attr('href', '/system/js/datepicker/datepicker.css'));
8470					$('input[data-toggle="datepicker"]').each(function () {
8471
8472						let start_date;
8473
8474						if ($(this).attr('name') == 'dob' || $(this).attr('name') == 'birthdate' || $(this).attr('data-email-label').includes('Birth')) {
8475							start_date = '1907-03-04';
8476						}
8477
8478						const data_start_date = $(this).attr('data-start-date');
8479
8480						if (data_start_date) {
8481							start_date = data_start_date;
8482						}
8483
8484						if (start_date) {
8485							const match = /^([+-])(\d+)([dwy])$/.exec(start_date);
8486							if (match) {
8487								const [, sign, amountStr, unit] = match;
8488								const amount = parseInt(amountStr, 10) * (sign === '-' ? -1 : 1);
8489								start_date = new Date();
8490								if (unit === 'd') start_date.setDate(start_date.getDate() + amount);
8491								else if (unit === 'w') start_date.setDate(start_date.getDate() + amount * 7);
8492								else if (unit === 'y') start_date.setFullYear(start_date.getFullYear() + amount);
8493							} else {
8494								start_date = new Date(start_date);
8495							}
8496						} else {
8497							start_date = new Date();
8498						}
8499
8500						var disabled = {
8501							'mon': $(this).attr('data-mon'),
8502							'tue': $(this).attr('data-tue'),
8503							'wed': $(this).attr('data-wed'),
8504							'thu': $(this).attr('data-thu'),
8505							'fri': $(this).attr('data-fri'),
8506							'sat': $(this).attr('data-sat'),
8507							'sun': $(this).attr('data-sun'),
8508						};
8509
8510						$(this).datepicker({
8511							'autoHide': true,
8512							'startDate': start_date,
8513							'filter': function (date, view) {
8514								if (disabled['mon'] == true) { if (date.getDay() === 1 && view === 'day') { return false; } }
8515								if (disabled['tue'] == true) { if (date.getDay() === 2 && view === 'day') { return false; } }
8516								if (disabled['wed'] == true) { if (date.getDay() === 3 && view === 'day') { return false; } }
8517								if (disabled['thu'] == true) { if (date.getDay() === 4 && view === 'day') { return false; } }
8518								if (disabled['fri'] == true) { if (date.getDay() === 5 && view === 'day') { return false; } }
8519								if (disabled['sat'] == true) { if (date.getDay() === 6 && view === 'day') { return false; } }
8520								if (disabled['sun'] == true) { if (date.getDay() === 0 && view === 'day') { return false; } }
8521							}
8522						});
8523					});
8524				});
8525			}
8526
8527			$('form input[type="file"]').change(function () {
8528				var max_file_size = $(this).closest('[data-group="file"]').attr('data-max-size');
8529				var current_label = $(this).closest('label').find('.label_name').text();
8530				console.log(current_label);
8531				var current_form = $(this).closest('form');
8532				var container = $(this).closest('[data-container="file"]');
8533				var selected_file = $(this).val().split('/').pop().split('\\').pop();
8534
8535				$(this).closest('label').find('.label_name').text(selected_file);
8536				$(this).closest('label').find('.label_name').append('<div class="remove_file"><i class="fal fa-times">');
8537
8538				var total_file_size = 0;
8539
8540				$(current_form).find('input[type="file"]').each(function () {
8541					if ($(this).val().length > 0) {
8542						total_file_size += $(this).prop('files')[0].size;
8543					}
8544				});
8545
8546				$(current_form).find('.max_size_container .dynamic_size').text((total_file_size / 1024 / 1024).toFixed(2));
8547
8548				if ($(container).next('[data-container="file"]').length < 1) {
8549					file_field_counter++;
8550					var current_name = $(container).attr('data-name');
8551					var next_container = $(container).clone(true).insertAfter(container);
8552					$(next_container).find('input').attr('name', current_name + '_' + file_field_counter);
8553					$(next_container).find('input').val('');
8554					$(next_container).find('label .label_name').text(current_label);
8555				}
8556
8557				if ((total_file_size / 1024 / 1024).toFixed(2) > parseInt(max_file_size)) {
8558					$(current_form).find('.max_size_container').addClass('too_large');
8559					$(current_form).find('[data-group="file"] > div [data-container="file"]:last-of-type').addClass('disabled');
8560					$(current_form).find('[data-type="submit"]').addClass('disabled');
8561					$(current_form).addClass('disabled');
8562				}
8563				else {
8564					$(current_form).find('.max_size_container').removeClass('too_large');
8565					$(current_form).find('[data-group="file"] > div [data-container="file"]:last-of-type').removeClass('disabled');
8566					$(current_form).find('[data-type="submit"]').removeClass('disabled');
8567					$(current_form).removeClass('disabled');
8568				}
8569
8570				$(container).find('.remove_file').click(function (e) {
8571					e.preventDefault();
8572					$(container).remove();
8573
8574					total_file_size = 0;
8575
8576					$(current_form).find('input[type="file"]').each(function () {
8577						if ($(this).val().length > 0) {
8578							total_file_size += $(this).prop('files')[0].size;
8579						}
8580					});
8581
8582					if ((total_file_size / 1024 / 1024).toFixed(2) > parseInt(max_file_size)) {
8583						$(current_form).find('.max_size_container').addClass('too_large');
8584						$(current_form).find('[data-group="file"] > div [data-container="file"]:last-of-type').addClass('disabled');
8585						$(current_form).find('[data-type="submit"]').addClass('disabled');
8586						$(current_form).addClass('disabled');
8587					}
8588					else {
8589						$(current_form).find('.max_size_container').removeClass('too_large');
8590						$(current_form).find('[data-group="file"] > div [data-container="file"]:last-of-type').removeClass('disabled');
8591						$(current_form).find('[data-type="submit"]').removeClass('disabled');
8592						$(current_form).removeClass('disabled');
8593					}
8594
8595					if ($('form.disabled').length > 0) {
8596						$('form [data-type="submit_multi"]').addClass('disabled');
8597					}
8598					else {
8599						$('form [data-type="submit_multi"]').removeClass('disabled');
8600					}
8601
8602					$(current_form).find('.max_size_container .dynamic_size').text((total_file_size / 1024 / 1024).toFixed(2));
8603				});
8604			});
8605
8606			$('form *[data-required="true"], form *[data-required="1"]').each(function () {
8607				var placeholder = $(this).attr('placeholder');
8608				$(this).attr('required', true);
8609				$(this).attr('placeholder', placeholder + ' *');
8610				$(this).find('option[value=""]').text($(this).find('option[value=""]').text() + ' *');
8611			});
8612
8613			$('form fieldset').each(function () {
8614				var field_name = $(this).attr('name');
8615				var default_value = $(this).attr('value');
8616
8617				if (default_value !== '') {
8618					$(this).find('input[data-type="radio"][name="' + field_name + '"][value="' + default_value + '"]').attr('checked', true);
8619					$(this).find('input[data-type="radio"][id="' + field_name + '_' + default_value + '"]').attr('checked', true);
8620					$(this).find('input[data-type="checkbox"][name="' + default_value + '"]').attr('checked', true);
8621					$(this).find('input[data-type="checkbox"][id="' + field_name + '_' + default_value + '"]').attr('checked', true);
8622				}
8623			});
8624
8625			$('form *[data-readonly="true"], form *[data-readonly="1"]').each(function () {
8626				$(this).attr('readonly', true);
8627			});
8628
8629			$('form *[data-hidden="true"], form *[data-hidden="1"]').each(function () {
8630				$(this).css('display', 'none');
8631			});
8632
8633			$('form[data-dynamic="true"]').on('submit', function (e) {
8634				console.time('Click 2 Submit')
8635				e.preventDefault();
8636				var submitted_form = $(this);
8637				var submitted_form_data = null; // ADD
8638				var recaptcha_site_key = $(this).attr('data-recaptcha-site-key');
8639				var recaptcha_secret_key = $(this).attr('data-recaptcha-secret-key');
8640				var recaptcha_processor = $(this).attr('data-recaptcha-processor');
8641
8642				if (
8643					recaptcha_site_key !== '' &&
8644					recaptcha_secret_key !== '' &&
8645					recaptcha_processor !== ''
8646				) {
8647					if (this.checkValidity()) {
8648						grecaptcha.ready(function () {
8649							grecaptcha.execute(recaptcha_site_key, { action: 'submit' }).then(function (token) {
8650								$.post(recaptcha_processor, {
8651									secret: recaptcha_secret_key,
8652									response: token
8653								})
8654									.done(function (recaptcha) {
8655										prepare_submission(submitted_form, recaptcha).then((val) => {
8656											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
8656y, val.ad_location_key, val.submission_url);
8657										}).then((val) => {
8658											// Done
8659											submitted_form_data = val.form_data;
8660											track_submit(submitted_form);
8661
8662											// Custom Event
8663											dispatch_form_event("tdi:form:success", submitted_form, val, submitted_form_data);
8664
8665										});
8666									})
8667							});
8668						});
8669					}
8670				}
8671				else {
8672					if (this.checkValidity()) {
8673						prepare_submission(submitted_form, null).then((val) => {
8674							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);
8675						}).then((val) => {
8676							// Done
8677							submitted_form_data = val.form_data;
8678							track_submit(submitted_form);
8679
8680							// Custom Event
8681							dispatch_form_event("tdi:form:success", submitted_form, val, submitted_form_data);
8682
8683						});
8684					}
8685				}
8686			});
8687
8688			$('form .button.submit[data-dynamic="true"]').click(function () {
8689				if (!form_button_lock && !click_lock) {
8690					click_lock = true;
8691					$(this).closest('form').find('input[type="submit"]')[0].click();
8692				}
8693				setTimeout(function () {
8694					click_lock = false;
8695				}, 1000);
8696			});
8697
8698			$('form select[name="location"]').change(function (e) {
8699				$(this).closest('form').find('input[name="date"').val('');
8700				if ($(this).find(':selected').data('datesDisabled')) {
8701					var $selectedOption = $(this).find(':selected').data('datesDisabled');
8702					$selectedOption = atob($selectedOption);
8703
8704					$(this).closest('form').find('input[data-toggle="datepicker"]').each(function () {
8705						var disabled = JSON.parse($selectedOption);
8706						$(this).datepicker('destroy');
8707						$(this).datepicker({
8708							'autoHide': true,
8709							'filter': function (date, view) {
8710								if (disabled['mon'] == true) { if (date.getDay() === 1 && view === 'day') { return false; } }
8711								if (disabled['tue'] == true) { if (date.getDay() === 2 && view === 'day') { return false; } }
8712								if (disabled['wed'] == true) { if (date.getDay() === 3 && view === 'day') { return false; } }
8713								if (disabled['thu'] == true) { if (date.getDay() === 4 && view === 'day') { return false; } }
8714								if (disabled['fri'] == true) { if (date.getDay() === 5 && view === 'day') { return false; } }
8715								if (disabled['sat'] == true) { if (date.getDay() === 6 && view === 'day') { return false; } }
8716								if (disabled['sun'] == true) { if (date.getDay() === 0 && view === 'day') { return false; } }
8717							}
8718						});
8719						$(this).datepicker('update');
8720					});
8721				}
8722			});
8723
8724
8725
8726			$('form input[name^="phone"][data-type="text"]').on('input', function () {
8727    			var el = this;
8728                var oldValue = el.value;
8729                var selStart = el.selectionStart;
8730
8731                // digits to the left of the caret in the OLD value
8732                var digitsLeft = oldValue.slice(0, selStart).replace(/\D/g, '').length;
8733
8734                var digits = oldValue.replace(/\D/g, '');
8735
8736
8737                var intl = digits.length > 10;
8738
8739                var formatted;
8740                if (!intl) {
8741                    var m = digits.slice(0, 10).match(/^(\d{0,3})(\d{0,3})(\d{0,4})$/);
8742                    formatted = !m[2] ? m[1] : '(' + m[1] + ') ' + m[2] + (m[3] ? '-' + m[3] : '');
8743                } else {
8744                    formatted = '+' + digits.slice(0, 15);
8745                }
8746
8747                el.value = formatted;
8748
8749                if (el === document.activeElement) {
8750                    var pos = 0, seen = 0;
8751                    while (pos < formatted.length && seen < digitsLeft) {
8752                        if (/\d/.test(formatted[pos])) seen++;
8753                        pos++;
8754                    }
8755                    el.setSelectionRange(pos, pos);
8756                }
8757			});
8758		}
8759	}
8760
8761	function prepare_submission(form_submit, recaptcha) {
8762		return new Promise((resolve, reject) => {
8763			console.time('prepare_submission()');
8764			form_button_lock = true;
8765			$(form_submit).find('.button.submit[data-dynamic="true"]').text('Sending...');
8766
8767			const appendLocation = $(form_submit).attr('data-append-location') === '1' ? true : false;
8768			const locationSelected = $(form_submit).find('select[name="location"] option:selected') ? $(form_submit).find('select[name="location"] option:selected').text() : null;
8769
8770			var form_data = {};
8771			var recipients_add = [];
8772			var cc_add = [];
8773			var db_only = $(form_submit).attr('data-db-only');
8774			var recipients = $(form_submit).attr('data-recipients');
8775			var ad_recipients = $(form_submit).attr('data-ad-recipients');
8776			var cc = $(form_submit).attr('data-cc');
8777			var subject = $(form_submit).attr('data-subject');
8778			var category = $(form_submit).attr('data-category') + (appendLocation && locationSelected ? ` (${locationSelected})` : '');
8779			var is_hipaa = $(form_submit).attr('data-hipaa');
8780			var reply_to = $(form_submit).attr('data-reply-to');
8781			var pdf = $(form_submit).attr('data-pdf');
8782			var submission_url = $(form_submit).attr('data-submission-url');
8783
8784			var ad_source = $(form_submit).find('[data-ad-tracking="source"]').val();
8785			var ad_campaign = $(form_submit).find('[data-ad-tracking="campaign"]').val();
8786			var ad_location = $(form_submit).find('[data-ad-tracking="ad_location"]').val();
8787
8788			var ad_source_key = (get_cookie('source') ? get_cookie('source') : null);
8789			var ad_campaign_key = (get_cookie('campaign') ? get_cookie('campaign') : null);
8790			var ad_location_key = (get_cookie('location') ? get_cookie('location') : null);
8791
8792			$(form_submit).find('input, textarea, select, fieldset').each(function () {
8793				if (
8794					$(this).is('input:not([type="file"])') &&
8795					$(this)[0].hasAttribute('name') &&
8796					$(this)[0].hasAttribute('data-email-label')
8797				) {
8798					value_obj = {
8799						'label': $(this).attr('data-email-label'),
8800						'name': $(this).attr('name'),
8801						'value': $(this).val(),
8802						'type': 'text'
8803					};
8804					form_data[$(this).attr('name')] = value_obj;
8805				}
8806
8807				if (
8808					$(this).is('textarea') &&
8809					$(this)[0].hasAttribute('name') &&
8810					$(this)[0].hasAttribute('data-email-label')
8811				) {
8812					value_obj = {
8813						'label': $(this).attr('data-email-label'),
8814						'name': $(this).attr('name'),
8815						'value': $(this).val(),
8816						'type': 'textarea'
8817					};
8818					form_data[$(this).attr('name')] = value_obj;
8819				}
8820
8821				if (
8822					$(this).is('select') &&
8823					$(this)[0].hasAttribute('name') &&
8824					$(this)[0].hasAttribute('data-email-label')
8825				) {
8826					value_obj = {
8827						'label': $(this).attr('data-email-label'),
8828						'name': $(this).attr('name'),
8829						'value': $(this).val(),
8830						'type': 'select'
8831					};
8832					form_data[$(this).attr('name')] = value_obj;
8833
8834					if (
8835						$(this).find(':selected').length > 0 &&
8836						$(this).find(':selected')[0].hasAttribute('data-recipients') &&
8837						$(this).find(':selected').attr('data-recipients').length
8838					) {
8839						recipients_add.push($(this).find(':selected').attr('data-recipients'));
8840					}
8841
8842					if (
8843						$(this).find(':selected').length > 0 &&
8844						$(this).find(':selected')[0].hasAttribute('data-cc') &&
8845						$(this).find(':selected').attr('data-cc').length
8846					) {
8847						cc_add.push($(this).find(':selected').attr('data-cc'));
8848					}
8849				}
8850
8851				if (
8852					$(this).is('fieldset') &&
8853					$(this)[0].hasAttribute('name') &&
8854					$(this)[0].hasAttribute('data-email-label')
8855				) {
8856					var val = [];
8857					var keys = [];
8858					$(this).find('input:checked').each(function () {
8859						val.push($(this).attr('value'));
8860						keys.push($(this).attr('name'));
8861					});
8862					value_obj = {
8863						'label': $(this).attr('data-email-label'),
8864						'name': $(this).attr('name'),
8865						'keys': keys.join('; '),
8866						'value': val.join('; '),
8867						'type': $(this).attr('type')
8868					};
8869					form_data[$(this).attr('name')] = value_obj;
8870				}
8871			});
8872
8873			console.timeEnd('prepare_submission()');
8874			console.time('submit_form()');
8875			resolve({
8876				"form_submit": form_submit,
8877				"recaptcha": recaptcha,
8878				"form_data": form_data,
8879				"db_only": db_only,
8880				"recipients": recipients,
8881				"recipients_add": recipients_add,
8882				"ad_recipients": ad_recipients,
8883				"cc": cc,
8884				"cc_add": cc_add,
8885				"subject": subject,
8886				"category": category,
8887				"is_hipaa": is_hipaa,
8888				"reply_to": reply_to,
8889				"pdf": pdf,
8890				"ad_source": ad_source,
8891				"ad_campaign": ad_campaign,
8892				"ad_location": ad_location,
8893				"ad_source_key": ad_source_key,
8894				"ad_campaign_key": ad_campaign_key,
8895				"ad_location_key": ad_location_key,
8896				"submission_url": submission_url
8897			})
8898		});
8899	}
8900
8901	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) {
8902		return new Promise((resolve, reject) => {
8903			var email_list = [];
8904			var first_name = null;
8905			var last_name = null;
8906
8907			var file_size_total = 0;
8908			var files_uploaded = [];
8909			var files_selected = 0;
8910
8911			if (
8912				form_submit[0].hasAttribute('data-google-conversion') &&
8913				google_conversion
8914			) {
8915				const conversion_code = $(form_submit[0]).attr('data-google-conversion');
8916				if (conversion_code.length > 0) {
8917					google_tracking.gtag('event', 'conversion', { 'send_to': conversion_code });
8918				}
8919			}
8920
8921			if (
8922				form_submit[0].hasAttribute('data-facebook-conversion') &&
8923				facebook_conversion
8924			) {
8925				const conversion_type = $(form_submit[0]).attr('data-facebook-conversion');
8926				if (conversion_type.length > 0) {
8927					facebook_tracking.fbq('track', conversion_type);
8928				}
8929			}
8930
8931			$(form_submit).find('input[type="file"]').each(function () {
8932				var file_selected = $(this).val();
8933				if (file_selected.length > 0) {
8934					files_selected++;
8935				}
8936			});
8937
8938			$(form_submit).find('input[type="file"]').each(function () {
8939				var file_to_upload = $(this).val();
8940				var submit_promise = new Promise((res, rej) => {
8941					if (file_to_upload.length > 0) {
8942						var xhr = new XMLHttpRequest();
8943						var file = $(this).prop('files')[0];
8944						var formData = new FormData();
8945						formData.append('file', file);
8946
8947						xhr.onreadystatechange = function () {
8948							if (xhr.readyState == 4) {
8949								files_uploaded.push(xhr.responseText);
8950								res(xhr.responseText);
8951							}
8952						}
8953
8954						xhr.open('POST', '/system/processors/file_upload/processor.php', true);
8955						xhr.send(formData);
8956					} else {
8957						res('')
8958					}
8959				}).then((file) => {
8960					if (file) {
8961						return file;
8962					} else {
8963						return '';
8964					}
8965				});
8966				files_uploaded.push(submit_promise);
8967			});
8968
8969			$(form_submit).find('input[type="email"]').each(function () {
8970				email_list.push($(this).val());
8971			});
8972
8973			$(form_submit).find('input[type="text"][data-email-label="First Name"]').each(function () {
8974				first_name = $(this).val();
8975			});
8976
8977			$(form_submit).find('input[type="text"][data-email-label="Last Name"]').each(function () {
8978				last_name = $(this).val();
8979			});
8980
8981
8982			if ((first_name === null || first_name === '') && (last_name === null || last_name === '')) {
8983				$(form_submit).find('input[type="text"][data-email-label="Full Name"], input[type="text"][data-email-label="Name"]').each(function () {
8984					const full_name = $(this).val();
8985					first_name = full_name;
8986				});
8987			}
8988
8989
8990			console.time('POST to processor.php')
8991			$.post('/system/processors/validation/processor.php', {
8992				type: 'date_time',
8993				val: null
8994			})
8995				.done(function (validation) {
8996					console.timeEnd('POST to processor.php')
8997					console.time('Wait For Files')
8998
8999					Promise.all(files_uploaded).then((value) => {
9000						console.timeEnd('Wait For Files')
9001						let uploaded_files = value.filter(file => file);
9002						console.log(JSON.stringify(uploaded_files));
9003						console.log('Files Uploaded');
9004						console.time('POST to submission_url')
9005						$.post(submission_url, {
9006							validation: validation,
9007							db_only: db_only,
9008							recipients: recipients,
9009							recipients_add: JSON.stringify(recipients_add),
9010							ad_recipients: ad_recipients,
9011							recaptcha: recaptcha,
9012							cc: cc,
9013							cc_add: JSON.stringify(cc_add),
9014							subject: subject,
9015							category: category,
9016							first_name: first_name,
9017							last_name: last_name,
9018							is_hipaa: is_hipaa,
9019							reply_to: reply_to,
9020							pdf: pdf,
9021							ad_source: ad_source,
9022							ad_campaign: ad_campaign,
9023							ad_location: ad_location,
9024							ad_source_key: ad_source_key,
9025							ad_campaign_key: ad_campaign_key,
9026							ad_location_key: ad_location_key,
9027							files: JSON.stringify(uploaded_files),
9028							data: JSON.stringify(form_data),
9029							email_list: JSON.stringify(email_list)
9030						})
9031							.done(function (data) {
9032								console.timeEnd('POST to submission_url')
9033
9034								form_button_lock = false;
9035								form_submit[0].reset();
9036								$(form_submit).find('.remove_file').click();
9037								$('form .button.submit[data-dynamic="true"]').each(function () {
9038									var placeholder = $(this).attr('placeholder');
9039									$(this).text(placeholder);
9040								});
9041
9042								if ($(form_submit).attr('data-action') !== '') {
9043									var action = $(form_submit).attr('data-action');
9044
9045									if (action == 'close_lightbox') {
9046										close_lightbox();
9047									}
9048
9049									if (action == 'redirect') {
9050										var redirect = $(form_submit).attr('data-confirmation');
9051										window.location.replace(redirect);
9052									}
9053
9054									if (action == 'function') {
9055										var form_complete_function = $(form_submit).attr('data-confirmation');
9056										window[form_complete_function](form_data);
9057									}
9058
9059									if (action == 'none') { }
9060								}
9061								else {
9062									var confirmation = $(form_submit).children('section[data-type="system-lightbox-content"]');
9063									$(confirmation).clone().appendTo('section[data-type="system-lightbox-container"]');
9064									open_lightbox();
9065								}
9066								resolve(false);
9067							});
9068					});
9069				});
9070		});
9071	}
9072
9073	function get_viewport_size() {
9074		viewport_size = viewport();
9075		$('body').attr('data-width', viewport_size.width);
9076		$('body').attr('data-height', viewport_size.height);
9077	}
9078
9079	function viewport() {
9080		var e = window, a = 'inner';
9081		if (!('innerWidth' in window)) {
9082			a = 'client';
9083			e = document.documentElement || document.body;
9084		}
9085		return { width: e[a + 'Width'], height: e[a + 'Height'] };
9086	}
9087
9088	function set_tracking() {
9089		const url_parameters = new URLSearchParams(window.location.search);
9090		const source = url_parameters.get('source');
9091		const campaign = url_parameters.get('campaign');
9092		const location = url_parameters.get('location');
9093
9094		if (source) {
9095			set_cookie('source', source, 90, null);
9096		}
9097
9098		if (campaign) {
9099			set_cookie('campaign', campaign, 90, null);
9100		}
9101
9102		if (location) {
9103			set_cookie('location', location, 90, null);
9104		}
9105	}
9106
9107	function load_functions() {
9108		javascript.load.forEach(function (v) {
9109			javascript.prototype[v]();
9110		});
9111	}
9112
9113	function load_fa() {
9114		/* $.getScript('https://kit.fontawesome.com/10cd9403cd.js'); */
9115	}
9116
9117	function load_default_subs() {
9118		$('video:not(.no_subs)').each(function () {
9119			var found_video = $(this);
9120
9121			if ($(this).find('source').length) {
9122				var video_source = $(this).find('source').attr('src').split('/').pop();
9123			}
9124			else {
9125				var video_source = $(this).attr('src').split('/').pop();
9126			}
9127
9128			$.get('/custom/content/subs/' + video_source + '.vtt', function (data) {
9129				if (data === 'Error') {
9130					$('<track/>')
9131						.attr('label', 'English')
9132						.attr('kind', 'subtitles')
9133						.attr('srclang', 'en')
9134						.attr('src', '/system/content/subs/no_audio.vtt')
9135						.appendTo(found_video);
9136				}
9137				else {
9138					$('<track/>')
9139						.attr('label', 'English')
9140						.attr('kind', 'subtitles')
9141						.attr('srclang', 'en')
9142						.attr('src', '/custom/content/subs/' + video_source + '.vtt')
9143						.appendTo(found_video);
9144				}
9145			})
9146				.fail(function (data) {
9147					$('<track/>')
9148						.attr('label', 'English')
9149						.attr('kind', 'subtitles')
9150						.attr('srclang', 'en')
9151						.attr('src', '/system/content/subs/no_audio.vtt')
9152						.appendTo(found_video);
9153				});
9154		});
9155	}
9156
9157	function stalling(ms) {
9158		return setTimeout(() => {
9159		}, ms);
9160	}
9161
9162	function initialize() {
9163	    console.log('Initializing...');
9164		window_width = $(window).width();
9165		window_height = $(window).height();
9166		get_viewport_size();
9167		viewport_size = viewport();
9168		update_deferred_images();
9169		set_resize_listeners();
9170		set_scroll_listeners();
9171		set_accordion_listeners();
9172		form_actions();
9173		set_tracking();
9174		load_functions();
9175		load_fa();
9176		load_default_subs();
9177
9178		track_load();
9179		deferred_websocket();
9180		lazy_load_deferred_images();
9181
9182		// Add Tracking to each button
9183		const selection = document.querySelectorAll('section[class^="section_"], #di-consent-banner, #di-cookie-pref-dialog');
9184		for (var i = 0; i < selection.length; i++) {
9185			var found_buttons = selection[i].querySelectorAll("a[href], [data-click-tracking]:not(a[href]), button:not(a[href])");
9186			found_buttons = Array.from(new Set(found_buttons));
9187			found_buttons.forEach(element => {
9188				element.addEventListener('click', function (e) {
9189					var stall = false;
9190					if (this.tagName === 'A' && this.getAttribute('href') !== '#') {
9191						stall = stalling(500);
9192					}
9193
9194					track_click(this).then(() => {
9195						if (stall !== false) {
9196							clearTimeout(stall);
9197						}
9198					})
9199				})
9200			});
9201		}
9202	}
9203
9204	$(document).ready(initialize);
9205</script>
9205
9206
9207						
9207<script>
9208			// Override any default global variables from SYSTEM_JS
9209			(function() {
9210				var overrides = {
9211				};
9212
9213				// Apply overrides to global scope
9214				for (var key in overrides) {
9215					if (overrides.hasOwnProperty(key)) {
9216						window[key] = overrides[key];
9217					}
9218				}
9219			})();
9220			</script>
9220
9221						
9222						
9222<script src="https://api.aleso.ai/aleso.js" async></script>
9222
9223					</body>
9224				</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.