{"version":3,"file":"main.js","mappings":"UACIA,EADAC,ECAAC,EACAC,E,kBCDJ,IAAIC,EAAM,CACT,wBAAyB,CACxB,KACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KAED,oBAAqB,CACpB,KACA,IACA,KAED,0BAA2B,CAC1B,KACA,IAED,oBAAqB,CACpB,KACA,IAED,gBAAiB,CAChB,KACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KAED,cAAe,CACd,KACA,IACA,IAED,qCAAsC,CACrC,KACA,KAED,iCAAkC,CACjC,KACA,IACA,IACA,IACA,IACA,KAED,kCAAmC,CAClC,KACA,IACA,IACA,KAED,qBAAsB,CACrB,KACA,IACA,KAED,wBAAyB,CACxB,KACA,IACA,IACA,IACA,IACA,IACA,IACA,IAED,aAAc,CACb,MAED,mBAAoB,CACnB,KACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KAED,eAAgB,CACf,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KAED,mBAAoB,CACnB,KACA,IACA,KAED,kBAAmB,CAClB,KACA,IACA,IACA,IACA,IACA,IACA,IACA,KAED,qBAAsB,CACrB,MAED,YAAa,CACZ,KACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KAED,aAAc,CACb,KACA,KAED,mBAAoB,CACnB,IACA,IACA,KAED,mBAAoB,CACnB,KACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,MAGF,SAASC,EAAoBC,GAC5B,IAAIC,EAAoBC,EAAEJ,EAAKE,GAC9B,OAAOG,QAAQC,UAAUC,MAAK,KAC7B,IAAIC,EAAI,IAAIC,MAAM,uBAAyBP,EAAM,KAEjD,MADAM,EAAEE,KAAO,mBACHF,CAAC,IAIT,IAAIG,EAAMX,EAAIE,GAAMU,EAAKD,EAAI,GAC7B,OAAON,QAAQQ,IAAIF,EAAIG,MAAM,GAAGd,IAAIG,EAAoBK,IAAID,MAAK,IACzDJ,EAAoBS,IAE7B,CACAX,EAAoBc,KAAO,IAAOC,OAAOD,KAAKf,GAC9CC,E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","sources":["webpack://waepa_theme/webpack/runtime/create fake namespace object","webpack://waepa_theme/webpack/runtime/load script","webpack://waepa_theme/./js/calculators/ lazy ^\\.\\/.*\\.js$ chunkName: [request] namespace object","webpack://waepa_theme/./js/calculators/index.js","webpack://waepa_theme/./js/calculators/results-panel.js","webpack://waepa_theme/./js/front-end/background.js","webpack://waepa_theme/./js/front-end/click-dimensions-form-data.js","webpack://waepa_theme/./js/front-end/scrollbar-width.js","webpack://waepa_theme/./js/front-end/smooth-scroll.js","webpack://waepa_theme/./js/front-end/speedbump.js","webpack://waepa_theme/./js/front-end/toc-dropdown.js","webpack://waepa_theme/./js/front-end/video-block.js","webpack://waepa_theme/./js/front-end/video-cta.js","webpack://waepa_theme/webpack/bootstrap","webpack://waepa_theme/webpack/runtime/compat get default export","webpack://waepa_theme/webpack/runtime/define property getters","webpack://waepa_theme/webpack/runtime/ensure chunk","webpack://waepa_theme/webpack/runtime/get javascript chunk filename","webpack://waepa_theme/webpack/runtime/get mini-css chunk filename","webpack://waepa_theme/webpack/runtime/global","webpack://waepa_theme/webpack/runtime/hasOwnProperty shorthand","webpack://waepa_theme/webpack/runtime/make namespace object","webpack://waepa_theme/webpack/runtime/publicPath","webpack://waepa_theme/webpack/runtime/jsonp chunk loading","webpack://waepa_theme/./js/front-end/media-slider.js","webpack://waepa_theme/./js/front-end/media-slick-slider.js","webpack://waepa_theme/./js/front-end/tabs.js"],"sourcesContent":["var getProto = Object.getPrototypeOf ? (obj) => (Object.getPrototypeOf(obj)) : (obj) => (obj.__proto__);\nvar leafPrototypes;\n// create a fake namespace object\n// mode & 1: value is a module id, require it\n// mode & 2: merge all properties of value into the ns\n// mode & 4: return value when already ns object\n// mode & 16: return value when it's Promise-like\n// mode & 8|1: behave like require\n__webpack_require__.t = function(value, mode) {\n\tif(mode & 1) value = this(value);\n\tif(mode & 8) return value;\n\tif(typeof value === 'object' && value) {\n\t\tif((mode & 4) && value.__esModule) return value;\n\t\tif((mode & 16) && typeof value.then === 'function') return value;\n\t}\n\tvar ns = Object.create(null);\n\t__webpack_require__.r(ns);\n\tvar def = {};\n\tleafPrototypes = leafPrototypes || [null, getProto({}), getProto([]), getProto(getProto)];\n\tfor(var current = mode & 2 && value; typeof current == 'object' && !~leafPrototypes.indexOf(current); current = getProto(current)) {\n\t\tObject.getOwnPropertyNames(current).forEach((key) => (def[key] = () => (value[key])));\n\t}\n\tdef['default'] = () => (value);\n\t__webpack_require__.d(ns, def);\n\treturn ns;\n};","var inProgress = {};\nvar dataWebpackPrefix = \"waepa_theme:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = (url, done, key, chunkId) => {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = (prev, event) => {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach((fn) => (fn(event)));\n\t\tif(prev) return prev(event);\n\t}\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","var map = {\n\t\"./associate-member.js\": [\n\t\t7869,\n\t\t961,\n\t\t225,\n\t\t434,\n\t\t664,\n\t\t985,\n\t\t203,\n\t\t822,\n\t\t556,\n\t\t863,\n\t\t326\n\t],\n\t\"./calculations.js\": [\n\t\t1084,\n\t\t434,\n\t\t687\n\t],\n\t\"./calculator-heading.js\": [\n\t\t5465,\n\t\t42\n\t],\n\t\"./coefficients.js\": [\n\t\t7312,\n\t\t27\n\t],\n\t\"./coverage.js\": [\n\t\t2760,\n\t\t961,\n\t\t225,\n\t\t434,\n\t\t664,\n\t\t985,\n\t\t203,\n\t\t838,\n\t\t435\n\t],\n\t\"./dialog.js\": [\n\t\t1186,\n\t\t961,\n\t\t17\n\t],\n\t\"./fieldTemplates/formatCurrency.js\": [\n\t\t3144,\n\t\t969\n\t],\n\t\"./fieldTemplates/moneyInput.js\": [\n\t\t4656,\n\t\t961,\n\t\t225,\n\t\t434,\n\t\t838,\n\t\t589\n\t],\n\t\"./fieldTemplates/numberInput.js\": [\n\t\t1037,\n\t\t961,\n\t\t225,\n\t\t472\n\t],\n\t\"./form-elements.js\": [\n\t\t2492,\n\t\t434,\n\t\t311\n\t],\n\t\"./guaranteed-issue.js\": [\n\t\t5382,\n\t\t961,\n\t\t225,\n\t\t434,\n\t\t664,\n\t\t985,\n\t\t822,\n\t\t29\n\t],\n\t\"./index.js\": [\n\t\t5888\n\t],\n\t\"./premium-alt.js\": [\n\t\t7383,\n\t\t961,\n\t\t225,\n\t\t434,\n\t\t664,\n\t\t985,\n\t\t203,\n\t\t822,\n\t\t556,\n\t\t863,\n\t\t468\n\t],\n\t\"./premium.js\": [\n\t\t977,\n\t\t961,\n\t\t225,\n\t\t434,\n\t\t664,\n\t\t985,\n\t\t203,\n\t\t822,\n\t\t556,\n\t\t863,\n\t\t298\n\t],\n\t\"./rates-chart.js\": [\n\t\t1788,\n\t\t961,\n\t\t805\n\t],\n\t\"./rates-stdi.js\": [\n\t\t5008,\n\t\t961,\n\t\t225,\n\t\t664,\n\t\t985,\n\t\t203,\n\t\t822,\n\t\t827\n\t],\n\t\"./results-panel.js\": [\n\t\t9065\n\t],\n\t\"./stdi.js\": [\n\t\t2058,\n\t\t961,\n\t\t225,\n\t\t434,\n\t\t664,\n\t\t985,\n\t\t203,\n\t\t838,\n\t\t975,\n\t\t705\n\t],\n\t\"./utils.js\": [\n\t\t7225,\n\t\t306\n\t],\n\t\"./validations.js\": [\n\t\t728,\n\t\t664,\n\t\t867\n\t],\n\t\"./waepa-fegli.js\": [\n\t\t5552,\n\t\t961,\n\t\t225,\n\t\t434,\n\t\t664,\n\t\t985,\n\t\t203,\n\t\t822,\n\t\t838,\n\t\t556,\n\t\t863,\n\t\t155\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(() => {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn Promise.all(ids.slice(1).map(__webpack_require__.e)).then(() => {\n\t\treturn __webpack_require__(id);\n\t});\n}\nwebpackAsyncContext.keys = () => (Object.keys(map));\nwebpackAsyncContext.id = 7987;\nmodule.exports = webpackAsyncContext;","import initResultsPanel from './results-panel';\n\nconst inView = (element, callback, options = {}) => {\n\tconst defaultOptions = {\n\t\troot: null,\n\t\trootMargin: '0px',\n\t\tthreshold: 0.5,\n\t};\n\n\tconst mergedOptions = { ...defaultOptions, ...options };\n\n\tconst handleIntersection = (entries, observer) => {\n\t\tentries.forEach((entry) => {\n\t\t\tif (entry.isIntersecting) {\n\t\t\t\tcallback(true);\n\t\t\t} else {\n\t\t\t\tcallback(false);\n\t\t\t}\n\t\t});\n\t};\n\n\tconst observer = new IntersectionObserver(handleIntersection, mergedOptions);\n\tobserver.observe(element);\n};\n\nconst calculatorImporter = () => {\n\tconst imports = [\n\t\t{\n\t\t\tpath: 'coverage',\n\t\t\ttest: document.querySelector('.calculator-block--coverage'),\n\t\t},\n\t\t{\n\t\t\tpath: 'premium',\n\t\t\ttest: document.querySelector('.calculator-block--premium'),\n\t\t},\n\t\t{\n\t\t\tpath: 'premium-alt',\n\t\t\ttest: document.querySelector('.calculator-block--premium-alt'),\n\t\t},\n\t\t{\n\t\t\tpath: 'waepa-fegli',\n\t\t\ttest: document.querySelector('.calculator-block--waepa-fegli'),\n\t\t},\n\t\t{\n\t\t\tpath: 'associate-member',\n\t\t\ttest: document.querySelector('.calculator-block--associate-member'),\n\t\t},\n\t\t{\n\t\t\tpath: 'guaranteed-issue',\n\t\t\ttest: document.querySelector('.calculator-block--guaranteed-issue'),\n\t\t},\n\t\t{\n\t\t\tpath: 'rates-stdi',\n\t\t\ttest: document.querySelector('.calculator-block--stdi-rates'),\n\t\t},\n\t\t{\n\t\t\tpath: 'stdi',\n\t\t\ttest: document.querySelector('.calculator-block--stdi'),\n\t\t},\n\t\t{\n\t\t\tpath: 'rates-chart',\n\t\t\ttest: document.querySelector('.calculator-block--rates'),\n\t\t},\n\t];\n\n\timports.forEach(({ path, test }) => {\n\t\tif (test) {\n\t\t\tinView(test, (isVisible) => {\n\t\t\t\tif (isVisible) {\n\t\t\t\t\timport(\n\t\t\t\t\t\t/* webpackChunkName: \"[request]\" */\n\t\t\t\t\t\t`./${path}.js`\n\t\t\t\t\t).then(setTimeout(()=>{\n\t\t\t\t\t\tinitResultsPanel();\n\t\t\t\t\t}, 1000));\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t});\n};\n\ncalculatorImporter();\n","const initResultsPanel = () => {\n\tconst stickyElement = document.querySelector( '.calculator-block-results-wrapper' );\n\tif ( !stickyElement ) return;\n\n\tlet isExpanded = false;\n\tlet initialBottom = -( stickyElement.offsetHeight - 280 );\n\n\t// Function to apply initial styles for viewports 900px or smaller\n\tfunction applyStickyStyles() {\n\t\tstickyElement.style.bottom = isExpanded ? '0px' : `${initialBottom}px`;\n\t}\n\n\t// Function to remove applied styles for viewports above 900px\n\tfunction removeStickyStyles() {\n\t\tstickyElement.style.removeProperty( 'bottom' );\n\t\tisExpanded = false; // Reset expansion state\n\t}\n\n\t// Toggle visibility on click\n\tstickyElement.addEventListener( 'click', () => {\n\t\tif ( window.matchMedia( '(max-width: 900px)' ).matches ) { // Only toggle if within the responsive breakpoint\n\t\t\tisExpanded = !isExpanded;\n\t\t\tstickyElement.classList.toggle( 'expanded' );\n\t\t\tapplyStickyStyles();\n\t\t}\n\t} );\n\n\t// Check viewport width and apply/remove styles accordingly\n\tfunction checkViewport() {\n\t\tif ( window.matchMedia( '(max-width: 900px)' ).matches ) {\n\t\t\tapplyStickyStyles();\n\t\t\tstickyElement.classList.add( 'loaded' );\n\t\t} else {\n\t\t\tremoveStickyStyles();\n\t\t}\n\t}\n\n\t// Listen for window resize events\n\twindow.addEventListener( 'resize', () => {\n\t\t// Recalculate initialBottom in case element height changes (e.g., content changes or other responsive adjustments)\n\t\tinitialBottom = -( stickyElement.offsetHeight - 280 );\n\t\tcheckViewport();\n\t} );\n\n\t// Initial check\n\tcheckViewport();\n};\n\nexport default initResultsPanel;\n","// Check if the next adjacent div has the class \"has-background\"\nconst hasBackgroundDiv = document.querySelector('.hero-wrapper + .has-background') || document.querySelector('.no-hero-wrapper + .has-background');\nconst heroWrapper = document.querySelector('.hero-wrapper');\nconst noHeroWrapper = document.querySelector('.no-hero-wrapper');\n// remove margin-bottom from the default page header with class \"no-hero-wrapper\" or hero-wrapper\nif (hasBackgroundDiv && (heroWrapper || noHeroWrapper)) {\n if (heroWrapper) {\n heroWrapper.style.marginBottom = '0';\n }\n if (noHeroWrapper) {\n noHeroWrapper.style.marginBottom = '0';\n }\n}","/**\n * Get the value of a specific cookie by name.\n *\n * @param {string} name - The name of the cookie to retrieve.\n * @returns {string|null} - The value of the cookie if found, otherwise null.\n */\nconst getCookieValue = ( name ) => {\n\tconst match = document.cookie.match( new RegExp( `(^| )${name}=([^;]+)` ) );\n\tif ( match ) return match[2];\n\treturn null;\n};\n\nconst jsonToUrlEncoded = ( json ) => Object.keys( json )\n\t.map( key => `${encodeURIComponent( key )}=${encodeURIComponent( json[key] )}` )\n\t.join( '&' );\n\n/**\n * Perform an action before a Gravity Form is submitted.\n *\n * @param {number} formId The ID of the Gravity Form.\n */\nconst handleFormPreSubmission = () => {\n // Get calculator data first\n const calcValuesElement = document.querySelector('#calculator-results');\n let calculatorData = null;\n \n if (calcValuesElement) {\n try {\n calculatorData = JSON.parse(calcValuesElement.innerText);\n } catch (err) {\n console.error('Failed to parse calculator data:', err);\n }\n }\n\n // Check both main document and iframe contexts for form\n const form = document.querySelector('.gform_wrapper form') || \n document.querySelector('#gform-frame')?.contentDocument?.querySelector('.gform_wrapper form');\n if (!form) return;\n \n // Find input in either context\n const inputField = form.querySelector('[name=\"input_9999\"]') ||\n document.querySelector('#gform-frame')?.contentDocument?.querySelector('[name=\"input_9999\"]');\n if (!inputField) return;\n \n // Combine calculator data with cuvid\n const cuvid = getCookieValue('cuvid');\n const dataToSend = {\n ...(calculatorData || {}),\n cuvid: cuvid || ''\n };\n \n // Set the value\n inputField.value = jsonToUrlEncoded(dataToSend);\n};\n\nconst handleSendCalcValues = () => {\n // Handle both iframe and direct form contexts\n const form = document.querySelector('dialog form') || \n document.querySelector('#gform-frame')?.contentDocument?.querySelector('dialog form');\n if (!form) return;\n\n const { formid } = form.dataset;\n const calcValuesElement = document.querySelector('.calculator-result-packaged');\n const cuvid = getCookieValue('cuvid');\n \n // Check both contexts for input field\n const input = form.querySelector(`#field_${formid}_9999 input`) ||\n document.querySelector('#gform-frame')?.contentDocument?.querySelector(`#field_${formid}_9999 input`);\n if (!input) return;\n\n let values = {};\n\n if (calcValuesElement) {\n const calculatorValues = JSON.parse(calcValuesElement.innerText);\n values = { ...calculatorValues };\n }\n\n if (cuvid) {\n values = { ...values, cuvid };\n }\n\n input.value = jsonToUrlEncoded(values);\n};\n\ndocument.addEventListener( 'DOMContentLoaded', () => {\n\tconst targetNode = document.body;\n\tconst observerOptions = {\n\t\tchildList: true,\n\t\tsubtree: true,\n\t};\n\n\tconst attachEventListener = () => {\n\t\tconst dialogTrigger = document.querySelector( '.dialog-trigger' );\n\t\tif ( dialogTrigger ) {\n\t\t\t// Remove existing listener first to prevent duplicates\n\t\t\tdialogTrigger.removeEventListener('click', handleSendCalcValues);\n\t\t\tdialogTrigger.addEventListener('click', handleSendCalcValues);\n\t\t}\n\t};\n\n\tconst observer = new MutationObserver( ( mutationsList, observer ) => {\n\t\tattachEventListener();\n\t} );\n\n\tobserver.observe( targetNode, observerOptions );\n\n\t// Attach event listener initially\n\tattachEventListener();\n \n // Initial setup\n handleFormPreSubmission();\n \n // Listen for calculator updates\n $(document).on('calculatorUpdated', function(e, data) {\n handleFormPreSubmission();\n });\n \n // Listen for form in iframe\n $(document).on('gform_post_render', function(event, formId) {\n if (formId === 64 || formId === 63) {\n handleFormPreSubmission();\n }\n });\n} );\n\nwindow.addEventListener( 'load', handleFormPreSubmission );\n","function setScrollbarWidthVariable() {\n\t// Create a temporary element to measure the scrollbar width\n\tconst measureBox = document.createElement( 'div' );\n\tmeasureBox.style.overflow = 'scroll';\n\tdocument.body.appendChild( measureBox );\n\tconst scrollbarWidth = measureBox.offsetWidth - measureBox.clientWidth;\n\tdocument.body.removeChild( measureBox );\n\n\t// Set the --scrollbar-width variable on the :root element\n\tdocument.documentElement.style.setProperty( '--scrollbar-width', `${scrollbarWidth}px` );\n}\n\n// Call the function to set the variable\nsetScrollbarWidthVariable();\n","document.addEventListener('DOMContentLoaded', () => {\n document.querySelectorAll('a[href^=\"#\"]').forEach(anchor => {\n anchor.addEventListener('click', function (e) {\n // Skip links within the `.people-of-waepa-inner` div\n if (this.closest('.people-of-waepa-inner')) {\n return;\n }\n\n e.preventDefault();\n const target = document.querySelector(this.getAttribute('href'));\n if (target) {\n target.scrollIntoView({\n behavior: 'smooth'\n });\n }\n });\n });\n});\n","document.addEventListener('DOMContentLoaded', function() {\n // Get all buttons with speedbump data attribute\n const buttons = document.querySelectorAll('.wp-block-button[data-speedbump=\"true\"]');\n\n buttons.forEach(button => {\n // Create the popup structure inside the button div\n let popup = document.createElement('div');\n popup.className = 'speedbump-popup';\n popup.style.display = 'none'; // Start hidden\n popup.innerHTML = `\n
\n \n

\n

\n
\n `;\n const speedbumpButtonText1 = button.getAttribute('data-speedbump-button-text-1');\n const speedbumpButtonText2 = button.getAttribute('data-speedbump-button-text-2');\n // Only add the buttons if the respective texts are present\n if (speedbumpButtonText1 || speedbumpButtonText2) {\n const buttonContainer = document.createElement('div');\n buttonContainer.className = 'speedbump-button-container';\n\n if (speedbumpButtonText1) {\n const button1 = document.createElement('div');\n button1.className = 'wp-block-button wp-block-button-1 wdg-card__button';\n button1.innerHTML = ``;\n button1.querySelector('a').textContent = speedbumpButtonText1;\n button1.querySelector('a').href = button.getAttribute('data-speedbump-button-link-1');\n buttonContainer.appendChild(button1);\n button1.querySelector('a').addEventListener('click', function(event) {\n event.preventDefault(); // Prevent default anchor behavior\n const link1 = button.getAttribute('data-speedbump-button-link-1');\n window.location.href = link1; // Navigate to the link\n });\n }\n\n if (speedbumpButtonText2) {\n const button2 = document.createElement('div');\n button2.className = 'wp-block-button wp-block-button-2 wdg-card__button';\n button2.innerHTML = ``;\n button2.querySelector('a').textContent = speedbumpButtonText2;\n button2.querySelector('a').href = button.getAttribute('data-speedbump-button-link-2');\n buttonContainer.appendChild(button2);\n button2.querySelector('a').addEventListener('click', function(event) {\n event.preventDefault(); // Prevent default anchor behavior\n const link2 = button.getAttribute('data-speedbump-button-link-2');\n window.location.href = link2; // Navigate to the link\n });\n }\n\n popup.querySelector('.speedbump-popup-content').appendChild(buttonContainer);\n }\n\n button.appendChild(popup); // Append the popup to the button div\n\n button.addEventListener('click', function(event) {\n const speedbumpContent = this.getAttribute('data-speedbump-content');\n const speedbumpTitle = this.getAttribute('data-speedbump-title');\n const speedbumpButtonText1 = button.getAttribute('data-speedbump-button-text-1');\n const speedbumpButtonLink1 = button.getAttribute('data-speedbump-button-link-1');\n const speedbumpButtonText2 = button.getAttribute('data-speedbump-button-text-2');\n const speedbumpButtonLink2 = button.getAttribute('data-speedbump-button-link-2');\n // Check if speedbump is enabled and if content is present\n if (this.getAttribute('data-speedbump') === 'true' && speedbumpContent ) {\n event.preventDefault(); // Prevent navigation\n\n // Set the popup content\n popup.querySelector('.speedbump-title').textContent = speedbumpTitle;\n if (/]*>(.*?)<\\/a>/.test(speedbumpContent)) {\n // If it contains an anchor tag, set the innerHTML\n popup.querySelector('.speedbump-content').innerHTML = speedbumpContent;\n } else {\n // If no anchor tag, just set text content\n popup.querySelector('.speedbump-content').textContent = speedbumpContent;\n }\n // Set button texts and links\n const button1 = popup.querySelector('.wp-block-button-1 a');\n if(button1) {\n button1.textContent = speedbumpButtonText1;\n button1.href = speedbumpButtonLink1;\n }\n \n const button2 = popup.querySelector('.wp-block-button-2 a');\n if(button2) {\n button2.textContent = speedbumpButtonText2;\n button2.href = speedbumpButtonLink2;\n }\n // Show the popup\n popup.style.display = 'flex'; // Display the popup\n\n // Add event listener for the close button\n const closePopup = popup.querySelector('#close-popup');\n closePopup.onclick = function(event) {\n popup.style.display = 'none'; // Hide the popup on close\n event.stopPropagation();\n };\n } else {\n // If speedbump is not enabled, navigate to the link\n window.location.href = this.querySelector('a').href;\n }\n });\n });\n});\n","document.addEventListener('DOMContentLoaded', function() {\n var tocList = document.getElementById('tocList');\n var toggleButton = document.getElementById('toggleButton');\n\n if (toggleButton)\n toggleButton.addEventListener('click', function() {\n tocList.classList.toggle('wdg-toc-list');\n if (tocList.classList.contains('wdg-anchor-links')) {\n addCloseButton();\n } else {\n removeCloseButton();\n }\n });\n function addCloseButton() {\n\n var closeButtonHtml = '
';\n tocList.insertAdjacentHTML('afterbegin', closeButtonHtml);\n var closeButton = document.getElementById('closeButton');\n closeButton.addEventListener('click', function() {\n tocList.classList.add('wdg-toc-list');\n removeCloseButton();\n });\n }\n function removeCloseButton() {\n var closeButton = document.getElementById('closeButton');\n if (closeButton) {\n closeButton.parentNode.removeChild(closeButton);\n }\n }\n});","document.addEventListener('DOMContentLoaded', () => {\n const videoBlocks = document.querySelectorAll('.wp-block-wdg-video-block.wdg-video-block');\n \n videoBlocks.forEach(videoBlock => {\n if (!videoBlock) return;\n\n const video = videoBlock.querySelector('video');\n const soundButton = videoBlock.querySelector('.wdg-video-block__buttons--sound');\n const playButton = videoBlock.querySelector('.wdg-video-block__buttons--play');\n let fadeTimeout;\n\n const showButtons = () => {\n soundButton.classList.remove('fade-out');\n playButton.classList.remove('fade-out');\n videoBlock.querySelector('.wdg-video-block__video').classList.remove('controls-hidden');\n };\n\n const hideButtons = () => {\n if (!video.paused) {\n soundButton.classList.add('fade-out');\n playButton.classList.add('fade-out');\n videoBlock.querySelector('.wdg-video-block__video').classList.add('controls-hidden');\n }\n };\n\n const handleMouseEnter = () => {\n clearTimeout(fadeTimeout);\n showButtons();\n };\n\n const handleMouseLeave = () => {\n if (!video.paused) {\n fadeTimeout = setTimeout(hideButtons, 1000);\n }\n };\n\n // Add mouse event listeners\n videoBlock.addEventListener('mouseenter', handleMouseEnter);\n videoBlock.addEventListener('mouseleave', handleMouseLeave);\n\n if(playButton.textContent.indexOf('Pause Video') > -1)\n playButton.innerHTML = ' Pause Video';\n else\n playButton.innerHTML = ' Play Video';\n\n // Toggle play/pause on clicking the play button.\n playButton.addEventListener('click', function () {\n if (video.paused || video.ended) {\n video.play();\n playButton.innerHTML = ' Pause Video';\n fadeTimeout = setTimeout(hideButtons, 1000);\n } else {\n video.pause();\n playButton.innerHTML = ' Play Video';\n showButtons();\n clearTimeout(fadeTimeout);\n }\n });\n\n // Toggle mute/unmute on clicking the sound button.\n soundButton.addEventListener('click', function () {\n video.muted = !video.muted;\n this.textContent = video.muted ? 'Unmute' : 'Mute'; // Change button text accordingly\n\n if (video.muted) {\n this.classList.remove('not-muted');\n } else {\n this.classList.add('not-muted');\n }\n\n // Reset fade timeout when sound button is clicked\n clearTimeout(fadeTimeout);\n showButtons();\n if (!video.paused) {\n fadeTimeout = setTimeout(hideButtons, 1000);\n }\n });\n });\n});\n","document.addEventListener('DOMContentLoaded', () => {\n\t// Query the video and button elements.\n\tconst videoBlock = document.querySelector('.wp-block-wdg-video-cta.wdg-video-cta');\n\tif (!videoBlock) return; // Exit if the video block is not found.\n\n\tconst video = videoBlock.querySelector('video');\n\tconst soundButton = videoBlock.querySelector('.wdg-video-cta__buttons--sound');\n\tconst playButton = videoBlock.querySelector('.wdg-video-cta__buttons--play');\n\n\tif(playButton.textContent.indexOf('Pause Video') > -1)\n\t\tplayButton.textContent = 'Pause Video \\u23F8';\n\telse\n\t\tplayButton.textContent = 'Play Video \\u25B6';\n\n\t// Toggle play/pause on clicking the play button.\n\tplayButton.addEventListener('click', function () {\n\t\tif (video.paused || video.ended) {\n\t\t\tvideo.play();\n\t\t\tthis.textContent = 'Pause Video \\u23F8'; // Change button text to 'Pause'\n\t\t} else {\n\t\t\tvideo.pause();\n\t\t\tthis.textContent = 'Play Video \\u25B6'; // Change button text to 'Play'\n\t\t}\n\t});\n\n\t// Toggle mute/unmute on clicking the sound button.\n\tsoundButton.addEventListener('click', function () {\n\t\tvideo.muted = !video.muted;\n\t\tthis.textContent = video.muted ? 'Unmute' : 'Mute'; // Change button text accordingly\n\n\t\tif (video.muted) {\n\t\t\tthis.classList.remove('not-muted');\n\t\t} else {\n\t\t\tthis.classList.add('not-muted');\n\t\t}\n\t});\n});\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = (chunkId) => {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce((promises, key) => {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = (chunkId) => {\n\t// return url for filenames based on template\n\treturn \"\" + ({\"17\":\"dialog-js\",\"27\":\"coefficients-js\",\"29\":\"guaranteed-issue-js\",\"42\":\"calculator-heading-js\",\"155\":\"waepa-fegli-js\",\"298\":\"premium-js\",\"306\":\"utils-js\",\"311\":\"form-elements-js\",\"326\":\"associate-member-js\",\"435\":\"coverage-js\",\"468\":\"premium-alt-js\",\"472\":\"fieldTemplates-numberInput-js\",\"589\":\"fieldTemplates-moneyInput-js\",\"687\":\"calculations-js\",\"705\":\"stdi-js\",\"805\":\"rates-chart-js\",\"827\":\"rates-stdi-js\",\"867\":\"validations-js\",\"969\":\"fieldTemplates-formatCurrency-js\"}[chunkId] || chunkId) + \".js\";\n};","// This function allow to reference async chunks\n__webpack_require__.miniCssF = (chunkId) => {\n\t// return url for filenames based on template\n\treturn undefined;\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","var scriptUrl;\nif (__webpack_require__.g.importScripts) scriptUrl = __webpack_require__.g.location + \"\";\nvar document = __webpack_require__.g.document;\nif (!scriptUrl && document) {\n\tif (document.currentScript && document.currentScript.tagName.toUpperCase() === 'SCRIPT')\n\t\tscriptUrl = document.currentScript.src;\n\tif (!scriptUrl) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tif(scripts.length) {\n\t\t\tvar i = scripts.length - 1;\n\t\t\twhile (i > -1 && (!scriptUrl || !/^http(s?):/.test(scriptUrl))) scriptUrl = scripts[i--].src;\n\t\t}\n\t}\n}\n// When supporting browsers where an automatic publicPath is not supported you must specify an output.publicPath manually via configuration\n// or pass an empty string (\"\") and set the __webpack_public_path__ variable from your code to use your own logic.\nif (!scriptUrl) throw new Error(\"Automatic publicPath is not supported in this browser\");\nscriptUrl = scriptUrl.replace(/#.*$/, \"\").replace(/\\?.*$/, \"\").replace(/\\/[^\\/]+$/, \"/\");\n__webpack_require__.p = scriptUrl;","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t792: 0\n};\n\n__webpack_require__.f.j = (chunkId, promises) => {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise((resolve, reject) => (installedChunkData = installedChunks[chunkId] = [resolve, reject]));\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = (event) => {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n// no on chunks loaded\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar [chunkIds, moreModules, runtime] = data;\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkwaepa_theme\"] = self[\"webpackChunkwaepa_theme\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","export class MediaSlider {\n /**\n * Initialize a new Sections element\n *\n * @param {HTMLElement} node - the node that contains the root scrolling element\n * @param {object} opts -\n */\n constructor( node, opts ) {\n this.node = node;\n this.opts = {\n back: '.media-slider__back',\n forward: '.media-slider__forward',\n content: '.media-slider__slides',\n items: '.media-slider__slides > *',\n slides: '.dot',\n ...opts,\n };\n\n if ( ! this.node ) {\n return;\n }\n\n this.interval = null;\n this.back = this.node.querySelector( this.opts.back );\n this.forward = this.node.querySelector( this.opts.forward );\n this.content = this.node.querySelector( this.opts.content );\n this.items = this.node.querySelectorAll( this.opts.items );\n this.slides = this.node.querySelectorAll( this.opts.slides );\n \n window.addEventListener( 'resize', this.setState.bind( this ) );\n this.content.addEventListener( 'scroll', this.setState.bind( this ) );\n\n if ( this.back ) {\n this.back.addEventListener( 'click', this.backIndex.bind( this ) );\n }\n\n if ( this.forward ) {\n this.forward.addEventListener( 'click', this.forwardIndex.bind( this ) );\n }\n\n if( this.slides ){\n var vm = this;\n for(var i = 0; i < this.slides.length; i++){\n this.slides[i].addEventListener( 'click',this.navigateIndex.bind( this ) );\n }\n }\n\n this.setIndex( 0 );\n this.setState();\n }\n \n /**\n * Scroll forward the scrollable content area\n */\n scrollForward() {\n this.scrollInterval = setInterval( () => {\n this.content.scrollTo( { left: this.content.scrollLeft + 5 } );\n\n if ( this.forward.disabled ) {\n this.scrollStop();\n }\n }, 10 );\n }\n\n /**\n * Scroll backwards the scrollable content area\n */\n scrollBack() {\n this.scrollInterval = setInterval( () => {\n this.content.scrollTo( { left: Math.max( 0, this.content.scrollLeft - 5 ) } );\n\n if ( this.back.disabled ) {\n this.scrollStop();\n }\n }, 10 );\n }\n\n /**\n * Stop the scrolling interval if it's active\n */\n scrollStop() {\n if ( typeof this.scrollInterval === 'number' ) {\n clearInterval( this.scrollInterval );\n }\n\n this.scrollInterval = null;\n }\n\n setState() {\n const firstItem = this.items[ 0 ];\n const lastItem = this.items[ this.items.length - 1 ];\n\n if ( this.back ) {\n if ( firstItem.offsetLeft - this.content.scrollLeft >= 0 ) {\n // first item is is view\n this.back.disabled = true;\n } else {\n // first item is outside the scroll area\n this.back.removeAttribute( 'disabled' );\n }\n }\n\n if ( this.forward ) {\n if ( this.content.scrollLeft + this.content.offsetWidth + 80 >= lastItem.offsetLeft + lastItem.offsetWidth - 1) {\n // the last item is fully in view\n this.forward.disabled = true;\n // this.forward.setAttribute( 'disabled',true );\n } else {\n // last item is outside the scroll area\n this.forward.removeAttribute( 'disabled' );\n }\n }\n }\n\n getIndex() {\n const offset = this.getPaddingOffset();\n const distances = [ ...this.items ].map( ( item ) => Math.abs( item.offsetLeft - this.content.scrollLeft - offset ) );\n\n return distances.indexOf( Math.min( ...distances ) );\n }\n\n getPaddingOffset() {\n return Math.max( parseInt( getComputedStyle( this.content ).paddingLeft, 10 ), 0 );\n }\n\n setIndex( index, behavior = 'smooth' ) {\n if ( index <= this.items.length ) {\n const left = this.items[ index ].offsetLeft - this.getPaddingOffset();\n\n this.content.scrollTo( {\n left: Math.max( 0, left ),\n behavior,\n } );\n } else if ( interval > 0 ) {\n clearInterval( interval );\n interval = null;\n }\n for(var i = 0; i < this.slides.length; i++){\n if(this.slides[i].getAttribute('data-slide') == (index + 1))\n this.slides[i].classList.add('isActiveSlide');\n else\n this.slides[i].classList.remove('isActiveSlide'); \n }\n }\n\n backIndex() {\n this.pauseVideos();\n this.setIndex( Math.round( Math.max( this.getIndex() - 1, 0 ) ) );\n }\n\n forwardIndex() {\n this.pauseVideos();\n this.setIndex( Math.round( Math.min( this.getIndex() + 1, this.items.length - 1 ) ) );\n }\n\n navigateIndex(slide){\n var i = slide.target.getAttribute('data-slide') - 1;\n this.setIndex(i);\n }\n /**\n * Pause the video if slider button is clicked\n */\n pauseVideos() {\n\n const videoBlocks = this.node.querySelectorAll('.wp-block-wdg-video-block.wdg-video-block');\n videoBlocks.forEach(videoBlock => {\n const playButton = videoBlock.querySelector('.wdg-video-block__buttons--play');\n const video = videoBlock.querySelector('video');\n if (video && !video.paused) {\n video.pause();\n playButton.innerHTML = ' Play Video';\n }\n })\n }\n}\n\ndocument.addEventListener('DOMContentLoaded', () => {\n // Check if video-slider or linkedin-slider exists on the page\n const sliders = document.querySelectorAll('.video-slider, .linkedin-slider');\n \n if (sliders.length > 0) {\n jQuery(document).ready(() => {\n sliders.forEach((node) => {\n new MediaSlider(node, { ...node.dataset });\n });\n });\n } else {\n console.log('No video slider or LinkedIn slider found on this page.');\n }\n});\n","export class MediaSlickSlider {\n constructor(node, opts) {\n this.node = node;\n this.opts = {\n back: '.media-slider__back',\n forward: '.media-slider__forward',\n content: '.media-slider__slides',\n items: '.media-slider__slides > *',\n slides: '.dot',\n ...opts,\n };\n\n if (!this.node) {\n return;\n }\n\n this.content = this.node.querySelector(this.opts.content);\n this.initSlider();\n }\n\n initSlider() {\n // Wait for jQuery and DOM to be ready\n jQuery(document).ready(() => {\n // Initialize Slick slider\n jQuery(this.content).slick({\n \tslidesToShow: 3,\n\t\t\t\tslidesToScroll: 1,\n\t\t\t\tinfinite: true,\n prevArrow: this.node.querySelector(this.opts.back),\n nextArrow: this.node.querySelector(this.opts.forward),\n dots: true,\n appendDots: this.node,\n customPaging: (slider, i) => ``,\n\t centerPadding: '30px',\n\t responsive: [\n\t\t\t\t {\n\t\t\t\t breakpoint: 781,\n\t\t\t\t settings: {\n\t\t\t\t slidesToShow: 1,\n\t\t\t\t slidesToScroll: 1\n\t\t\t\t }\n\t\t\t\t }\n\t\t\t\t ]\n });\n\n\n\n // Handle slick change event to update video play state\n jQuery(this.content).on('beforeChange', () => {\n this.pauseVideos();\n });\n });\n }\n\n pauseVideos() {\n const videoBlocks = this.node.querySelectorAll('.wp-block-wdg-video-block.wdg-video-block');\n videoBlocks.forEach(videoBlock => {\n const playButton = videoBlock.querySelector('.wdg-video-block__buttons--play');\n const video = videoBlock.querySelector('video');\n if (video && !video.paused) {\n video.pause();\n playButton.innerHTML = ' Play Video';\n }\n });\n }\n}\n\ndocument.addEventListener('DOMContentLoaded', () => {\n jQuery(document).ready(() => {\n document.querySelectorAll('.media-slider-slick').forEach((node) => {\n new MediaSlickSlider(node, { ...node.dataset });\n });\n });\n});\n","export class Tabs {\n\tconstructor( node, config ) {\n\t\tthis.node = node;\n\t\tthis.config = {\n\t\t\ttabList: '[role=\"tablist\"]',\n\t\t\ttabs: '[role=\"tab\"]',\n\t\t\ttabPanels: '[role=\"tabpanel\"]',\n\t\t\tnavClass: 'tabs__nav',\n\t\t\tnavOpenClass: 'is-open',\n\t\t\tnavItemClass: 'tabs__nav-item',\n\t\t\tnavItemActiveClass: 'is-active',\n\t\t\tcurrentItemClass: 'tabs__nav-current',\n\t\t\t...config,\n\t\t};\n\n\t\tif ( ! this.node ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.tabMap = {};\n\n\t\tthis.tabList = this.node.querySelector( this.config.tabList );\n\t\tthis.tabs = Array.from( this.tabList.querySelectorAll( this.config.tabs ) );\n\t\tthis.tabPanels = Array.from( this.node.querySelectorAll( this.config.tabPanels ) );\n\t\tthis.orientation = this.tabList.getAttribute( 'aria-orientation' );\n\n\t\tthis.nav = this.node.querySelector( `.${ this.config.navClass }` );\n\t\tthis.currentItem = this.node.querySelector( `.${ this.config.currentItemClass }` );\n\n\t\tif ( this.currentItem && this.nav ) {\n\t\t\tthis.currentItemText = this.currentItem.querySelector( 'span' );\n\n\t\t\tthis.currentItem.addEventListener( 'click', (event) => {\n\t\t\t\tthis.nav.classList.toggle(this.config.navOpenClass);\n\t\t\t} );\n\t\t}\n\n\t\t// Create an object where the where the keys are the hash\n\t\t// and the values are the corresponding HTML elements\n\t\t// { '#1': button#tab-1 }\n\t\tthis.tabs.forEach( ( tab ) => {\n\t\t\tconst hash = this.getTabHashFromId( tab.id );\n\t\t\tthis.tabMap[ hash ] = tab;\n\t\t} );\n\n\t\tthis.init();\n\t}\n\n\tinit() {\n\t\t// Hide all tab panels except the first\n\t\tthis.setFirstTab();\n\n\t\t// Enable arrow navigation between tabs in the tab list\n\t\tthis.tabList.addEventListener( 'keydown', ( e ) => this.handleKeydown( e ) );\n\n\t\t// Add a click event handler to each tab\n\t\tthis.tabs.forEach( ( tab ) => {\n\t\t\ttab.addEventListener( 'click', ( e ) => { this.changeTabs( e ) \n\t\t\t\t// Update the current item text on mobile\n\n\t\t\t\tif ( this.currentItemText && e.isTrusted) {\n\t\t\t\t\tthis.nav.classList.toggle(this.config.navOpenClass);\n\t\t\t\t}} \n\t\t\t);\n\t\t} );\n\n\t\twindow.addEventListener( 'load', () => this.handleHash(), false );\n\t\twindow.addEventListener( 'hashchange', () => this.handleHash(), false );\n\t}\n\n\tsetFirstTab() {\n\t\tif ( this.tabs.length > 0 ) {\n\t\t\tthis.tabs[ 0 ].classList.add( this.config.navItemActiveClass );\n\t\t\tthis.tabs[ 0 ].setAttribute( 'aria-selected', true );\n\t\t\tthis.tabs[ 0 ].setAttribute( 'tabindex', '0' );\n\t\t}\n\n\t\t// Hide all tab panels except the first\n\t\tthis.tabPanels.forEach( ( panel, index ) => {\n\t\t\tif ( index !== 0 ) {\n\t\t\t\tpanel.setAttribute( 'hidden', true );\n\t\t\t}\n\t\t} );\n\t}\n\n\t/**\n\t * Removes 'tab-' prefix from a string\n\t * @example 'tab-foo' -> '#foo'\n\t */\n\tgetTabHashFromId( id ) {\n\t\treturn `#${ id.replace( 'tab-', '' ) }`;\n\t}\n\n\t/**\n\t * Programmatically clicks a tab depending on the URL hash\n\t */\n\thandleHash() {\n\t\tconst { hash } = window.location;\n\n\t\tif ( hash ) {\n\t\t\tsetTimeout( () => {\n\t\t\t\tconst tabEl = this.tabMap[ hash ];\n\t\t\t\tif ( tabEl ) {\n\t\t\t\t\ttabEl.click();\n\t\t\t\t}\n\t\t\t}, 0 );\n\t\t}\n\t}\n\n\t/**\n\t * Handle keyboard navigation with arrows\n\t */\n\thandleKeydown( e ) {\n\t\tconst key = e.key;\n\t\tconst target = e.target;\n\t\tconst tabs = Array.from( this.tabList.querySelectorAll( '.tabs__nav-item' ) );\n\t\tlet index = tabs.indexOf( target );\n\n\t\tswitch ( key ) {\n\t\t\tcase 'ArrowLeft':\n\t\t\t\tif ( this.orientation === 'horizontal' ) {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tindex = index - 1 < 0 ? tabs.length - 1 : index - 1;\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\tcase 'ArrowUp':\n\t\t\t\tif ( this.orientation === 'vertical' ) {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tindex = index - 1 < 0 ? tabs.length - 1 : index - 1;\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\tcase 'ArrowRight':\n\t\t\t\tif ( this.orientation === 'horizontal' ) {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tindex = ( index + 1 ) % tabs.length;\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\tcase 'ArrowDown':\n\t\t\t\tif ( this.orientation === 'vertical' ) {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tindex = ( index + 1 ) % tabs.length;\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\treturn;\n\t\t}\n\n\t\t// Focus the new tab\n\t\ttabs[ index ].focus();\n\n\t\t// Select the new tab\n\t\tthis.changeTabs( { currentTarget: tabs[ index ] } );\n\t}\n\n\t/**\n\t * Handle changing tabs when clicking on a tab\n\t */\n\tchangeTabs( e ) {\n\t\tconst target = e.currentTarget;\n\n\t\tif ( target.classList.contains( this.config.navItemClass ) ) {\n\t\t\t// Unselect all tabs\n\t\t\tArray.from( this.tabList.querySelectorAll( '[aria-selected=\"true\"]' ) ).forEach( ( tab ) => {\n\t\t\t\ttab.setAttribute( 'aria-selected', false );\n\t\t\t\ttab.setAttribute( 'tabindex', '-1' );\n\t\t\t\ttab.classList.remove( this.config.navItemActiveClass );\n\t\t\t} );\n\n\t\t\t// Set this tab as selected\n\t\t\ttarget.setAttribute( 'aria-selected', true );\n\t\t\ttarget.setAttribute( 'tabindex', '0' );\n\t\t\ttarget.classList.add( this.config.navItemActiveClass );\n\n\t\t\t// Hide all tab panels\n\t\t\tthis.tabPanels.forEach( ( panel ) => panel.setAttribute( 'hidden', true ) );\n\n\t\t\t// Show the selected panel\n\t\t\tthis.node.querySelector( `#${ target.getAttribute( 'aria-controls' ) }` ).removeAttribute( 'hidden' );\n\n\t\t\t// Change URL hash based on selected tab\n\t\t\tif ( window.history && history.pushState ) {\n\t\t\t\tconst hash = this.getTabHashFromId( target.id );\n\t\t\t\thistory.replaceState( {}, '', hash );\n\t\t\t}\n\n\t\t\t// Update the current item text on mobile\n\t\t\tif ( this.currentItemText ) {\n\t\t\t\tthis.currentItemText.innerText = target.innerText.trim();\n\t\t\t}\n\t\t}\n\t}\n}\n\nTabs.instances = Array.from( document.querySelectorAll( '.tabs' ) ).map( ( n ) => new Tabs( n ) );\n"],"names":["leafPrototypes","getProto","inProgress","dataWebpackPrefix","map","webpackAsyncContext","req","__webpack_require__","o","Promise","resolve","then","e","Error","code","ids","id","all","slice","keys","Object","module","exports","path","test","document","querySelector","forEach","_ref","element","callback","options","arguments","length","undefined","mergedOptions","_objectSpread","root","rootMargin","threshold","IntersectionObserver","entries","observer","entry","isIntersecting","observe","inView","isVisible","concat","setTimeout","initResultsPanel","stickyElement","isExpanded","initialBottom","offsetHeight","addEventListener","window","matchMedia","matches","classList","toggle","applyStickyStyles","checkViewport","style","bottom","add","removeProperty","hasBackgroundDiv","heroWrapper","noHeroWrapper","marginBottom","getCookieValue","name","match","cookie","RegExp","jsonToUrlEncoded","json","key","encodeURIComponent","join","handleFormPreSubmission","_document$querySelect","_document$querySelect2","calcValuesElement","calculatorData","JSON","parse","innerText","err","console","error","form","contentDocument","inputField","cuvid","dataToSend","value","handleSendCalcValues","_document$querySelect3","_document$querySelect4","formid","dataset","input","values","targetNode","body","attachEventListener","dialogTrigger","removeEventListener","MutationObserver","mutationsList","childList","subtree","$","on","data","event","formId","measureBox","createElement","overflow","appendChild","scrollbarWidth","offsetWidth","clientWidth","removeChild","documentElement","setProperty","setScrollbarWidthVariable","querySelectorAll","anchor","this","closest","preventDefault","target","getAttribute","scrollIntoView","behavior","button","popup","className","display","innerHTML","speedbumpButtonText1","speedbumpButtonText2","buttonContainer","button1","textContent","href","link1","location","button2","link2","speedbumpContent","speedbumpTitle","speedbumpButtonLink1","speedbumpButtonLink2","onclick","stopPropagation","tocList","getElementById","toggleButton","removeCloseButton","closeButton","parentNode","closeButtonHtml","contains","insertAdjacentHTML","videoBlock","fadeTimeout","video","soundButton","playButton","showButtons","remove","hideButtons","paused","clearTimeout","indexOf","ended","play","pause","muted","__webpack_module_cache__","moduleId","cachedModule","__webpack_modules__","m","n","getter","__esModule","d","a","getPrototypeOf","obj","t","mode","ns","create","r","def","current","getOwnPropertyNames","definition","defineProperty","enumerable","get","f","chunkId","reduce","promises","u","miniCssF","g","globalThis","Function","prop","prototype","hasOwnProperty","call","l","url","done","push","script","needAttach","scripts","getElementsByTagName","i","s","charset","timeout","nc","setAttribute","src","onScriptComplete","prev","onerror","onload","doneFns","fn","bind","type","head","Symbol","toStringTag","scriptUrl","importScripts","currentScript","tagName","toUpperCase","replace","p","installedChunks","j","installedChunkData","promise","reject","errorType","realSrc","message","request","webpackJsonpCallback","parentChunkLoadingFunction","chunkIds","moreModules","runtime","some","chunkLoadingGlobal","self","MediaSlider","node","opts","_classCallCheck","back","forward","content","items","slides","interval","setState","backIndex","forwardIndex","navigateIndex","setIndex","_this","scrollInterval","setInterval","scrollTo","left","scrollLeft","disabled","scrollStop","_this2","Math","max","clearInterval","firstItem","lastItem","offsetLeft","removeAttribute","_this3","offset","getPaddingOffset","distances","_toConsumableArray","item","abs","min","apply","parseInt","getComputedStyle","paddingLeft","index","pauseVideos","round","getIndex","slide","sliders","jQuery","ready","log","MediaSlickSlider","initSlider","slick","slidesToShow","slidesToScroll","infinite","prevArrow","nextArrow","dots","appendDots","customPaging","slider","centerPadding","responsive","breakpoint","settings","Tabs","config","tabList","tabs","tabPanels","navClass","navOpenClass","navItemClass","navItemActiveClass","currentItemClass","tabMap","Array","from","orientation","nav","currentItem","currentItemText","tab","hash","getTabHashFromId","init","setFirstTab","handleKeydown","changeTabs","isTrusted","handleHash","panel","tabEl","click","focus","currentTarget","_this4","history","pushState","replaceState","trim","instances"],"sourceRoot":""}