{"version":3,"sources":["js-search-redirect.js","js-alert-collapse.js","svg.js","jquery-accessiblemegamenu.js","RPUtil.js","CtaControl.js","slider.js","pagination.js","ghs.js","wffm-modal.js","cta-modal.js"],"names":["elCheckbox","document","getElementById","elSearchInput","form","addEventListener","e","preventDefault","checked","urlSearchLocation","dataset","searchLocation","newUrl","window","location","protocol","host","value","href","target","submit","setCookie","cname","cvalue","milliseconds","OnetrustActiveGroups","includes","d","Date","setTime","getTime","cookie","toUTCString","initAlertListeners","elAlertBanner","alertId","name","v","match","getCookie","classList","add","btnAlertClose","querySelector","alertExpiration","Number","expiration","arrAlertBanner","querySelectorAll","i","length","SVG_SPRITE","$","getPlugin","addUniqueId","togglePanel","clickHandler","clickOutsideHandler","DOMAttrModifiedHandler","focusInHandler","focusOutHandler","keyDownHandler","mouseDownHandler","mouseOverHandler","mouseUpIconHandler","mouseOutHandler","toggleExpandedEventHandlers","uuid","keydownSearchString","isTouch","pluginName","defaults","navToggle","navId","mobileBreakpoint","topNavIconClass","uuidPrefix","menuClass","topNavItemClass","panelClass","panelGroupClass","hoverClass","focusClass","openClass","Keyboard","BACKSPACE","COMMA","DELETE","DOWN","END","ENTER","ESCAPE","HOME","LEFT","PAGE_DOWN","PAGE_UP","PERIOD","RIGHT","SPACE","TAB","UP","keyMap","48","49","50","51","52","53","54","55","56","57","59","65","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","87","88","89","90","96","97","98","99","100","101","102","103","104","105","190","AccessibleMegaMenu","element","options","this","settings","extend","mouseTimeoutID","focusTimeoutID","mouseFocused","justFocused","init","visible","expr","filters","parents","addBack","filter","css","_focusable","isTabIndexNotNaN","map","mapName","img","nodeName","toLowerCase","parentNode","test","disabled","prototype","hasOwnProperty","closest","data","attr","event","hide","newfocus","that","menu","topli","panel","hasClass","call","find","is","relatedTarget","has","removeClass","type","activeElement","console","log","keyCode","setTimeout","off","focus","clearTimeout","siblings","addClass","innerWidth","currentTarget","stopPropagation","originalEvent","attrName","newValue","on","proxy","panels","not","cvox","Api","getCurrentNode","node","scope","event2","next","start","o","label","regex","constructor","topnavitems","tabbables","panelGroups","currentPanelGroup","keycode","which","found","newString","isTopNavItem","index","opera","toString","ctrlKey","metaKey","children","shiftKey","keydownTimeoutID","get","reverse","eq","RegExp","replace","trim","text","icon","toggleClass","nav","first","each","topnavitem","topnavitemlink","topnavitempanel","aria-haspopup","aria-controls","aria-expanded","aria-hidden","trigger","bind","width","click","getDefaults","getOption","opt","getAllOptions","setOption","reinitialize","fn","createPseudo","dataName","elem","focusable","isNaN","tabbable","tabIndex","isTabIndexNaN","jQuery","_createClass","defineProperties","props","descriptor","enumerable","configurable","writable","Object","defineProperty","key","Constructor","protoProps","staticProps","_classCallCheck","instance","TypeError","RPUtil","tmp","Storage","sessionStorage","getItem","obj","setItem","refEl","findSelector","matches","Element","msMatchesSelector","webkitMatchesSelector","currentEl","parentElement","narray","Math","max","apply","navigator","userAgent","a","documentElement","body","tstClass","className","indexOf","readyState","CtaControl","selector","resetCTA","blkAr","sec","val","val2","push","height","getMaxFromArray","w","slick","nSlide","nTitle","$slides","html","slidesToShow","slidesToScroll","arrows","fade","infinite","adaptiveHeight","asNavFor","dots","focusOnSelect","responsive","breakpoint","currentSlide","slideCount","nextTitle","show","aTag","animate","scrollTop","offset","top","resizePagination","last","ready","plength","tally","nde","firstLi","secLi","thirdLi","lastLi","secLaLi","thirdLaLi","pages","curPg","totalPg","getLi","prevLi","parseFloat","nextLi","isFirst","isLast","totLi","num","cur","makeActive","firstLast","indx","nodeExists","sliderOptions","pathPrefix","hostname","contains","nextArrow","prevArrow","el","cols","num_cols","container","listClass","listClass2","items_per_col","items","min_items_per_col","floor","difference","append","j","pointer","k","contents","unwrap","wrapAll","splitList","WffmModal","closeBtnModalListener","closeModal","getAttribute","closeOutsideModalListener","id","checkCookie","elModalWithExpiration","modalExpireId","remove","targetId","eModal","elModalExpire","arrModalExpire","createModal","dynamicModalContent","targetDiv","innerHTML","Init","modalId","btnsModal","getElementsByClassName","setAttribute","InitOpenModalButton","linkBtnsModal","InitOpenModalLinkButton","eModalClose","InitCloseModal","isAuto","shouldOpen","delayDuration","durationId","InitAutoModal","CtaModal","eStickyCtaContent","stickyCta","eModalContentHolder","stickyCtaButton","modalContent","stickyCtaButtonListener","spotLightBlocks","_this","isOnAccountBox","wasMobile","ctaSizeController","adjustSpotlightItems","arrSpotlightItems","parentBlock","forEach","elItem","style","heightMax","item","clientHeight","resizeCTABlocks","spotlightBlock","spotlightItems","resizer","slice","_i","spotlightBlocksResize","readableArticles","layout","wwth","padding-left","padding-right","fixHeroDisplay","padding","margin-top","margin-left","margin-bottom","max-width","inx","beforePrint","ribbon","detach","appendTo","display","position","background-color","border","video","src","parent","afterPrint","PointerEventsPolyfill","initialize","$elSubnavToggle","$subnavIcon","closeMenus","faqClose","header","slideUp","fadeDuration","faqOpen","slideDown","$t","$faqArea","textDataOpen","textDataClose","isOpen","$tt","$next","$faqToggleBtn","nextDisplayVal","isHeaderOpen","countForCloseOpen","headersLength","currentCount","autoClose","varElem","prev","evt","slideToggle","cntr","targ","max-height","padding-bottom","arrObjectFitSelectors","objectResizeController","getObjectFitImages","objectFitImageNodes","join","onResize","switchNavIcons","setAccountDropdown","moveContactDropdown","objectFitImages","moveNewsFilters","setUpContactEvt","watchMQ","isMobile","toggleAccountMenu","stopImmediatePropagation","timeoutAccountMenuClose","setAccountDropdownTimeout","timeoutId","checkOrientation","getDeviceOrientation","orientation","isDesktop","hitMobileBreakpoint","dataId","eContactMenus","undefined","closestRibbonParent","random","prependTo","insertAfter","toggleContact","zz","lil","unbind","hover","ggParent","accessibleMegaMenu","srch","resize","elWidth","total","links","newLinks","replaceWith","truncateLinks","checkTags","pathname","colorbox","opacity","maxWidth","maxHeight","iframe","fixed","transition","fastIframe","videoId","url","youtube_parser","resizeBlocks","change","matchMedia","addListener","mql","onbeforeprint","onafterprint","isIE","vendor","hash","$target"],"mappings":"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","file":"main.js","sourcesContent":["'use strict';(function searchRedirectJs() {\n var elCheckbox = document.getElementById('js-search-redirect');\n var elSearchInput = document.getElementById('cts-search-box');\n\n function submitHandler(e) {\n e.preventDefault();\n if (!elCheckbox.checked) {\n e.target.submit();\n return;\n }\n var urlSearchLocation = elCheckbox.dataset.searchLocation;\n var newUrl = window.location.protocol + '//' + window.location.host + urlSearchLocation + '?q=' + elSearchInput.value;\n window.location.href = newUrl;\n }\n\n if (elCheckbox) {\n var elSearchForm = elCheckbox.form;\n elSearchForm.addEventListener('submit', submitHandler);\n }\n})();","'use strict';(function alertCollapseJs() {\n function hasCookieConsent() {\n if (!window.OnetrustActiveGroups) return true;\n return window.OnetrustActiveGroups.includes('C0003');\n }\n\n function getCookie(name) {\n var v = document.cookie.match('(^|;) ?' + name + '=([^;]*)(;|$)');\n return v ? v[2] : false;\n }\n\n function setCookie(cname, cvalue, milliseconds) {\n if (!hasCookieConsent()) return;\n var d = new Date();\n d.setTime(d.getTime() + milliseconds);\n document.cookie = cname + '=' + cvalue + ';expires=' + d.toUTCString() + ';path=/';\n }\n\n function initAlertListeners(elAlertBanner) {\n var alertId = elAlertBanner.dataset.alertId;\n\n if (getCookie(alertId)) {\n elAlertBanner.classList.add('u-display--none');\n return;\n }\n\n var btnAlertClose = elAlertBanner.querySelector('.js-alert-close');\n var alertExpiration = Number(elAlertBanner.dataset.expiration);\n\n btnAlertClose.addEventListener('click', function (e) {\n e.preventDefault();\n elAlertBanner.classList.add('u-display--none');\n setCookie(alertId, 'clicked', alertExpiration);\n });\n }\n\n var arrAlertBanner = document.querySelectorAll('.js-alert-collapse');\n for (var i = 0; i < arrAlertBanner.length; i++) {\n initAlertListeners(arrAlertBanner[i]);\n }\n //This code is also being used for the persistent CTA\n})();","'use strict';var SVG_SPRITE = '';","'use strict'; /*\r\n Copyright © 2013 Adobe Systems Incorporated.\r\n \r\n Licensed under the Apache License, Version 2.0 (the “License”);\r\n you may not use this file except in compliance with the License.\r\n You may obtain a copy of the License at\r\n \r\n http://www.apache.org/licenses/LICENSE-2.0\r\n \r\n Unless required by applicable law or agreed to in writing, software\r\n distributed under the License is distributed on an “AS IS” BASIS,\r\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n See the License for the specific language governing permissions and\r\n limitations under the License.\r\n */\n\n/**\r\n * See http://jquery.com.\r\n * @name jquery\r\n * @class\r\n * See the jQuery Library (http://jquery.com) for full details. This just\r\n * documents the function and classes that are added to jQuery by this plug-in.\r\n */\n\n/**\r\n * See http://jquery.com\r\n * @name fn\r\n * @class\r\n * See the jQuery Library (http://jquery.com) for full details. This just\r\n * documents the function and classes that are added to jQuery by this plug-in.\r\n * @memberOf jquery\r\n */\n\n/**\r\n * @fileOverview accessibleMegaMenu plugin\r\n *\r\n *

Licensed under the Apache License, Version 2.0 (the “License”)\r\n *
Copyright © 2013 Adobe Systems Incorporated.\r\n *
Project page https://github.com/mandalatv/Accessible-Mega-Menu\r\n * @version 0.1\r\n * @author Michael Jordan\r\n * @author Rich Hauck\r\n * @requires jquery\r\n */\n\n/*jslint browser: true, devel: true, plusplus: true, nomen: true */\n/*global jQuery */\n(function ($, window, document) {\n var pluginName = 'accessibleMegaMenu',\n defaults = {\n navToggle: '#nav-toggle', // Button that toggles navigation at mobile\n navId: '#primary-nav', //id of navigation\n mobileBreakpoint: '1023', // breakpoint that defines when menu goes to mobile\n topNavIconClass: '.nav-item__icon', // css class representing icon on mobile\n uuidPrefix: 'accessible-megamenu', // unique ID's are required to indicate aria-owns, aria-controls and aria-labelledby\n menuClass: 'accessible-megamenu', // default css class used to define the megamenu styling\n topNavItemClass: 'accessible-megamenu-top-nav-item', // default css class for a top-level navigation item in the megamenu\n panelClass: 'accessible-megamenu-panel', // default css class for a megamenu panel\n panelGroupClass: 'accessible-megamenu-panel-group', // default css class for a group of items within a megamenu panel\n hoverClass: 'hover', // default css class for the hover state\n focusClass: 'focus', // default css class for the focus state\n openClass: 'open' // default css class for the open state\n },\n Keyboard = {\n BACKSPACE: 8,\n COMMA: 188,\n DELETE: 46,\n DOWN: 40,\n END: 35,\n ENTER: 13,\n ESCAPE: 27,\n HOME: 36,\n LEFT: 37,\n PAGE_DOWN: 34,\n PAGE_UP: 33,\n PERIOD: 190,\n RIGHT: 39,\n SPACE: 32,\n TAB: 9,\n UP: 38,\n keyMap: {\n 48: '0',\n 49: '1',\n 50: '2',\n 51: '3',\n 52: '4',\n 53: '5',\n 54: '6',\n 55: '7',\n 56: '8',\n 57: '9',\n 59: ';',\n 65: 'a',\n 66: 'b',\n 67: 'c',\n 68: 'd',\n 69: 'e',\n 70: 'f',\n 71: 'g',\n 72: 'h',\n 73: 'i',\n 74: 'j',\n 75: 'k',\n 76: 'l',\n 77: 'm',\n 78: 'n',\n 79: 'o',\n 80: 'p',\n 81: 'q',\n 82: 'r',\n 83: 's',\n 84: 't',\n 85: 'u',\n 86: 'v',\n 87: 'w',\n 88: 'x',\n 89: 'y',\n 90: 'z',\n 96: '0',\n 97: '1',\n 98: '2',\n 99: '3',\n 100: '4',\n 101: '5',\n 102: '6',\n 103: '7',\n 104: '8',\n 105: '9',\n 190: '.' } };\n\n\n /**\r\n * @desc Creates a new accessible mega menu instance.\r\n * @param {jquery} element\r\n * @param {object} [options] Mega Menu options\r\n * @param {string} [options.uuidPrefix=accessible-megamenu] - Prefix for generated unique id attributes, which are required to indicate aria-owns, aria-controls and aria-labelledby\r\n * @param {string} [options.menuClass=accessible-megamenu] - CSS class used to define the megamenu styling\r\n * @param {string} [options.topNavItemClass=accessible-megamenu-top-nav-item] - CSS class for a top-level navigation item in the megamenu\r\n * @param {string} [options.panelClass=accessible-megamenu-panel] - CSS class for a megamenu panel\r\n * @param {string} [options.panelGroupClass=accessible-megamenu-panel-group] - CSS class for a group of items within a megamenu panel\r\n * @param {string} [options.hoverClass=hover] - CSS class for the hover state\r\n * @param {string} [options.focusClass=focus] - CSS class for the focus state\r\n * @param {string} [options.openClass=open] - CSS class for the open state\r\n * @constructor\r\n */\n function AccessibleMegaMenu(element, options) {\n this.element = element;\n\n // merge optional settings and defaults into settings\n this.settings = $.extend({}, defaults, options);\n\n this.defaults = defaults;\n this.name = pluginName;\n\n this.mouseTimeoutID = null;\n this.focusTimeoutID = null;\n this.mouseFocused = false;\n this.justFocused = false;\n\n this.init();\n }\n\n AccessibleMegaMenu.prototype = function () {\n\n /* private attributes and methods ------------------------ */\n var uuid = 0,\n keydownTimeoutDuration = 1000,\n keydownSearchString = '',\n isTouch = typeof window.hasOwnProperty === 'function' && !!window.hasOwnProperty('ontouchstart'),\n getPlugin,\n addUniqueId,\n togglePanel,\n clickHandler,\n clickOutsideHandler,\n DOMAttrModifiedHandler,\n focusInHandler,\n focusOutHandler,\n keyDownHandler,\n mouseDownHandler,\n mouseOverHandler,\n mouseUpIconHandler,\n mouseOutHandler,\n toggleExpandedEventHandlers;\n\n /**\r\n * @name jQuery.fn.accessibleMegaMenu~getPlugin\r\n * @desc Returns the parent accessibleMegaMenu instance for a given element\r\n * @param {jQuery} element\r\n * @memberof jQuery.fn.accessibleMegaMenu\r\n * @inner\r\n * @private\r\n */\n getPlugin = function getPlugin(element) {\n return $(element).closest(':data(plugin_' + pluginName + ')').data('plugin_' + pluginName);\n };\n\n /**\r\n * @name jQuery.fn.accessibleMegaMenu~addUniqueId\r\n * @desc Adds a unique id and element.\r\n * The id string starts with the\r\n * string defined in settings.uuidPrefix.\r\n * @param {jQuery} element\r\n * @memberof jQuery.fn.accessibleMegaMenu\r\n * @inner\r\n * @private\r\n */\n addUniqueId = function addUniqueId(element) {\n element = $(element);\n var settings = this.settings;\n if (!element.attr('id')) {\n element.attr('id', settings.uuidPrefix + '-' + new Date().getTime() + '-' + ++uuid);\n }\n };\n\n /**\r\n * @name jQuery.fn.accessibleMegaMenu~togglePanel\r\n * @desc Toggle the display of mega menu panels in response to an event.\r\n * The optional boolean value 'hide' forces all panels to hide.\r\n * @param {event} event\r\n * @param {Boolean} [hide] Hide all mega menu panels when true\r\n * @memberof jQuery.fn.accessibleMegaMenu\r\n * @inner\r\n * @private\r\n */\n togglePanel = function togglePanel(event, hide) {\n var target = $(event.target),\n that = this,\n settings = this.settings,\n menu = this.menu,\n topli = target.closest('.' + settings.topNavItemClass),\n panel = target.hasClass(settings.panelClass) ? target : target.closest('.' + settings.panelClass),\n newfocus;\n\n toggleExpandedEventHandlers.call(this, true);\n\n if (hide) {\n topli = menu.find('.' + settings.topNavItemClass + ' .' + settings.openClass + ':first').closest('.' + settings.topNavItemClass);\n if (!(topli.is(event.relatedTarget) || topli.has(event.relatedTarget).length > 0)) {\n if ((event.type === 'mouseout' || event.type === 'focusout') && topli.has(document.activeElement).length > 0) {\n console.log('returned');\n return;\n }\n topli.find('[aria-expanded]').\n attr('aria-expanded', 'false').\n removeClass(settings.openClass).\n filter('.' + settings.panelClass).\n attr('aria-hidden', 'true');\n if (event.type === 'keydown' && event.keyCode === Keyboard.ESCAPE || event.type === 'DOMAttrModified') {\n newfocus = topli.find(':tabbable:first');\n setTimeout(function () {\n menu.find('[aria-expanded].' + that.settings.panelClass).off('DOMAttrModified.accessible-megamenu');\n newfocus.focus();\n that.justFocused = false;\n }, 99);\n }\n } else if (topli.length === 0) {\n menu.find('[aria-expanded=true]').\n attr('aria-expanded', 'false').\n removeClass(settings.openClass).\n filter('.' + settings.panelClass).\n attr('aria-hidden', 'true');\n }\n } else {\n\n clearTimeout(that.focusTimeoutID);\n\n var siblings = topli.siblings();\n\n // hide all other siblings\n siblings.\n find('[aria-expanded]').\n attr('aria-expanded', 'false').\n removeClass(settings.openClass).\n filter('.' + settings.panelClass).\n attr('aria-hidden', 'true');\n\n // remove open class from all sibling icons\n siblings.\n find(settings.topNavIconClass).\n removeClass('icon--open');\n\n // open topli\n topli.find('[aria-expanded]').\n attr('aria-expanded', 'true').\n addClass(settings.openClass).\n filter('.' + settings.panelClass).\n attr('aria-hidden', 'false');\n\n if (event.type === 'mouseover' && target.is(':tabbable') && topli.length === 1 && panel.length === 0 && menu.has(document.activeElement).length > 0) {\n console.log('focus set');\n target.focus();\n that.justFocused = false;\n }\n\n toggleExpandedEventHandlers.call(that);\n }\n };\n\n /**\r\n * @name jQuery.fn.accessibleMegaMenu~clickHandler\r\n * @desc Handle click event on mega menu item\r\n * @param {event} Event object\r\n * @memberof jQuery.fn.accessibleMegaMenu\r\n * @inner\r\n * @private\r\n */\n clickHandler = function clickHandler(event) {\n if (window.innerWidth >= this.settings.mobileBreakpoint) {\n var target = $(event.currentTarget),\n topli = target.closest('.' + this.settings.topNavItemClass),\n panel = target.closest('.' + this.settings.panelClass);\n if (topli.length === 1 &&\n panel.length === 0 &&\n topli.find('.' + this.settings.panelClass).length === 1) {\n if (!target.hasClass(this.settings.openClass)) {\n event.preventDefault();\n event.stopPropagation();\n togglePanel.call(this, event);\n this.justFocused = false;\n } else {\n if (this.justFocused) {\n event.preventDefault();\n event.stopPropagation();\n this.justFocused = false;\n } else if (isTouch) {\n event.preventDefault();\n event.stopPropagation();\n togglePanel.call(this, event, target.hasClass(this.settings.openClass));\n }\n }\n }\n }\n };\n\n /**\r\n * @name jQuery.fn.accessibleMegaMenu~clickOutsideHandler\r\n * @desc Handle click event outside of a the megamenu\r\n * @param {event} Event object\r\n * @memberof jQuery.fn.accessibleMegaMenu\r\n * @inner\r\n * @private\r\n */\n clickOutsideHandler = function clickOutsideHandler(event) {\n if (window.innerWidth >= this.settings.mobileBreakpoint) {\n if ($(event.target).closest(this.menu).length === 0) {\n event.preventDefault();\n event.stopPropagation();\n togglePanel.call(this, event, true);\n }\n }\n };\n\n /**\r\n * @name jQuery.fn.accessibleMegaMenu~DOMAttrModifiedHandler\r\n * @desc Handle DOMAttrModified event on panel to respond to Windows 8 Narrator ExpandCollapse pattern\r\n * @param {event} Event object\r\n * @memberof jQuery.fn.accessibleMegaMenu\r\n * @inner\r\n * @private\r\n */\n DOMAttrModifiedHandler = function DOMAttrModifiedHandler(event) {\n if (event.originalEvent.attrName === 'aria-expanded' &&\n event.originalEvent.newValue === 'false' &&\n $(event.target).hasClass(this.settings.openClass)) {\n event.preventDefault();\n event.stopPropagation();\n togglePanel.call(this, event, true);\n }\n };\n\n /**\r\n * @name jQuery.fn.accessibleMegaMenu~focusInHandler\r\n * @desc Handle focusin event on mega menu item.\r\n * @param {event} Event object\r\n * @memberof jQuery.fn.accessibleMegaMenu\r\n * @inner\r\n * @private\r\n */\n focusInHandler = function focusInHandler(event) {\n clearTimeout(this.focusTimeoutID);\n var target = $(event.target),\n panel = target.closest('.' + this.settings.panelClass);\n target.\n addClass(this.settings.focusClass).\n on('click.accessible-megamenu', $.proxy(clickHandler, this));\n this.justFocused = !this.mouseFocused;\n this.mouseFocused = false;\n if (this.panels.not(panel).filter('.' + this.settings.openClass).length) {\n togglePanel.call(this, event);\n }\n };\n\n /**\r\n * @name jQuery.fn.accessibleMegaMenu~focusOutHandler\r\n * @desc Handle focusout event on mega menu item.\r\n * @param {event} Event object\r\n * @memberof jQuery.fn.accessibleMegaMenu\r\n * @inner\r\n * @private\r\n */\n focusOutHandler = function focusOutHandler(event) {\n this.justFocused = false;\n var that = this,\n target = $(event.target),\n topli = target.closest('.' + this.settings.topNavItemClass);\n target.\n removeClass(this.settings.focusClass).\n off('click.accessible-megamenu');\n\n if (window.cvox) {\n // If ChromeVox is running...\n that.focusTimeoutID = setTimeout(function () {\n window.cvox.Api.getCurrentNode(function (node) {\n if (topli.has(node).length) {\n // and the current node being voiced is in\n // the mega menu, clearTimeout,\n // so the panel stays open.\n clearTimeout(that.focusTimeoutID);\n } else {\n\n that.focusTimeoutID = setTimeout(function (scope, event2, hide) {\n togglePanel.call(scope, event, hide);\n }, 275, that, event, true);\n }\n });\n }, 25);\n } else {\n that.focusTimeoutID = setTimeout(function () {\n togglePanel.call(that, event, true);\n }, 300);\n }\n };\n\n /**\r\n * @name jQuery.fn.accessibleMegaMenu~keyDownHandler\r\n * @desc Handle keydown event on mega menu.\r\n * @param {event} Event object\r\n * @memberof jQuery.fn.accessibleMegaMenu\r\n * @inner\r\n * @private\r\n */\n keyDownHandler = function keyDownHandler(event) {\n var that = this.constructor === AccessibleMegaMenu ? this : getPlugin(this), // determine the AccessibleMegaMenu plugin instance\n settings = that.settings,\n target = $($(this).is('.' + settings.hoverClass + ':tabbable') ? this : event.target), // if the element is hovered the target is this, otherwise, its the focused element\n menu = that.menu,\n topnavitems = that.topnavitems,\n topli = target.closest('.' + settings.topNavItemClass),\n tabbables = menu.find(':tabbable'),\n panel = target.hasClass(settings.panelClass) ? target : target.closest('.' + settings.panelClass),\n panelGroups = panel.find('.' + settings.panelGroupClass),\n currentPanelGroup = target.closest('.' + settings.panelGroupClass),\n next,\n keycode = event.keyCode || event.which,\n start,\n i,\n o,\n label,\n found = false,\n newString = Keyboard.keyMap[event.keyCode] || '',\n regex,\n isTopNavItem = topli.length === 1 && panel.length === 0;\n\n if (target.is('input:focus, select:focus, textarea:focus, button:focus')) {\n // if the event target is a form element we should handle keydown normally\n return;\n }\n\n if (target.is('.' + settings.hoverClass + ':tabbable')) {\n $('html').off('keydown.accessible-megamenu');\n }\n\n switch (keycode) {\n case Keyboard.ESCAPE:\n togglePanel.call(that, event, true);\n break;\n case Keyboard.DOWN:\n event.preventDefault();\n if (isTopNavItem) {\n togglePanel.call(that, event);\n found = topli.find('.' + settings.panelClass + ' :tabbable:first').focus().length === 1;\n } else {\n found = tabbables.filter(':gt(' + tabbables.index(target) + '):first').focus().length === 1;\n }\n\n if (!found && window.opera && opera.toString() === '[object Opera]' && (event.ctrlKey || event.metaKey)) {\n tabbables = $(':tabbable');\n i = tabbables.index(target);\n found = $(':tabbable:gt(' + $(':tabbable').index(target) + '):first').focus().length === 1;\n }\n break;\n case Keyboard.UP:\n event.preventDefault();\n if (isTopNavItem && target.hasClass(settings.openClass)) {\n togglePanel.call(that, event, true);\n next = topnavitems.filter(':lt(' + topnavitems.index(topli) + '):last');\n if (next.children('.' + settings.panelClass).length) {\n found = next.children().\n attr('aria-expanded', 'true').\n addClass(settings.openClass).\n filter('.' + settings.panelClass).\n attr('aria-hidden', 'false').\n find(':tabbable:last').\n focus() === 1;\n }\n } else if (!isTopNavItem) {\n found = tabbables.filter(':lt(' + tabbables.index(target) + '):last').focus().length === 1;\n }\n\n if (!found && window.opera && opera.toString() === '[object Opera]' && (event.ctrlKey || event.metaKey)) {\n tabbables = $(':tabbable');\n i = tabbables.index(target);\n found = $(':tabbable:lt(' + $(':tabbable').index(target) + '):first').focus().length === 1;\n }\n break;\n case Keyboard.RIGHT:\n event.preventDefault();\n if (isTopNavItem) {\n found = topnavitems.filter(':gt(' + topnavitems.index(topli) + '):first').find(':tabbable:first').focus().length === 1;\n } else {\n if (panelGroups.length && currentPanelGroup.length) {\n // if the current panel contains panel groups, and we are able to focus the first tabbable element of the next panel group\n found = panelGroups.filter(':gt(' + panelGroups.index(currentPanelGroup) + '):first').find(':tabbable:first').focus().length === 1;\n }\n\n if (!found) {\n found = topli.find(':tabbable:first').focus().length === 1;\n }\n }\n break;\n case Keyboard.LEFT:\n event.preventDefault();\n if (isTopNavItem) {\n found = topnavitems.filter(':lt(' + topnavitems.index(topli) + '):last').find(':tabbable:first').focus().length === 1;\n } else {\n if (panelGroups.length && currentPanelGroup.length) {\n // if the current panel contains panel groups, and we are able to focus the first tabbable element of the previous panel group\n found = panelGroups.filter(':lt(' + panelGroups.index(currentPanelGroup) + '):last').find(':tabbable:first').focus().length === 1;\n }\n\n if (!found) {\n found = topli.find(':tabbable:first').focus().length === 1;\n }\n }\n break;\n case Keyboard.TAB:\n i = tabbables.index(target);\n if (event.shiftKey && isTopNavItem && target.hasClass(settings.openClass)) {\n togglePanel.call(that, event, true);\n next = topnavitems.filter(':lt(' + topnavitems.index(topli) + '):last');\n if (next.children('.' + settings.panelClass).length) {\n found = next.children().\n attr('aria-expanded', 'true').\n addClass(settings.openClass).\n filter('.' + settings.panelClass).\n attr('aria-hidden', 'false').\n find(':tabbable:last').\n focus();\n }\n } else if (event.shiftKey && i > 0) {\n found = tabbables.filter(':lt(' + i + '):last').focus().length === 1;\n } else if (!event.shiftKey && i < tabbables.length - 1) {\n found = tabbables.filter(':gt(' + i + '):first').focus().length === 1;\n } else if (window.opera && opera.toString() === '[object Opera]') {\n tabbables = $(':tabbable');\n i = tabbables.index(target);\n if (event.shiftKey) {\n found = $(':tabbable:lt(' + $(':tabbable').index(target) + '):last').focus().length === 1;\n } else {\n found = $(':tabbable:gt(' + $(':tabbable').index(target) + '):first').focus().length === 1;\n }\n }\n\n if (found) {\n event.preventDefault();\n }\n break;\n case Keyboard.SPACE:\n if (isTopNavItem) {\n event.preventDefault();\n clickHandler.call(that, event);\n } else {\n //return true;\n }\n break;\n case Keyboard.ENTER:\n //return true;\n break;\n default:\n // alphanumeric filter\n clearTimeout(this.keydownTimeoutID);\n\n keydownSearchString += newString !== keydownSearchString ? newString : '';\n\n if (keydownSearchString.length === 0) {\n return;\n }\n\n this.keydownTimeoutID = setTimeout(function () {\n keydownSearchString = '';\n }, keydownTimeoutDuration);\n\n if (isTopNavItem && !target.hasClass(settings.openClass)) {\n tabbables = tabbables.filter(':not(.' + settings.panelClass + ' :tabbable)');\n } else {\n tabbables = topli.find(':tabbable');\n }\n\n if (event.shiftKey) {\n tabbables = $(tabbables.get().\n reverse());\n }\n\n for (i = 0; i < tabbables.length; i++) {\n o = tabbables.eq(i);\n if (o.is(target)) {\n start = keydownSearchString.length === 1 ? i + 1 : i;\n break;\n }\n }\n\n regex = new RegExp('^' + keydownSearchString.replace(/[\\-\\[\\]{}()*+?.,\\\\\\^$|#\\s]/g, '\\\\$&'), 'i');\n\n for (i = start; i < tabbables.length; i++) {\n o = tabbables.eq(i);\n label = $.trim(o.text());\n if (regex.test(label)) {\n found = true;\n o.focus();\n break;\n }\n }\n if (!found) {\n for (i = 0; i < start; i++) {\n o = tabbables.eq(i);\n label = $.trim(o.text());\n if (regex.test(label)) {\n o.focus();\n break;\n }\n }\n }\n break;}\n\n that.justFocused = false;\n };\n\n /**\r\n * @name jQuery.fn.accessibleMegaMenu~mouseDownHandler\r\n * @desc Handle mousedown event on mega menu.\r\n * @param {event} Event object\r\n * @memberof accessibleMegaMenu\r\n * @inner\r\n * @private\r\n */\n mouseDownHandler = function mouseDownHandler(event) {\n if ($(event.target).is(this.settings.panelClass) || $(event.target).closest(':focusable').length) {\n this.mouseFocused = true;\n }\n this.mouseTimeoutID = setTimeout(function () {\n clearTimeout(this.focusTimeoutID);\n }, 1);\n };\n\n /**\r\n * @name jQuery.fn.accessibleMegaMenu~mouseOverHandler\r\n * @desc Handle mouseover event on mega menu.\r\n * @param {event} Event object\r\n * @memberof jQuery.fn.accessibleMegaMenu\r\n * @inner\r\n * @private\r\n */\n mouseOverHandler = function mouseOverHandler(event) {\n if (window.innerWidth >= this.settings.mobileBreakpoint) {\n clearTimeout(this.mouseTimeoutID);\n $(event.target).\n addClass(this.settings.hoverClass);\n togglePanel.call(this, event);\n if ($(event.target).is(':tabbable')) {\n $('html').on('keydown.accessible-megamenu', $.proxy(keyDownHandler, event.target));\n }\n }\n };\n /**\r\n * @name jQuery.fn.accessibleMegaMenu~mouseUpIconHandler\r\n * @desc Handle mouseup event on icons at mobile. Assigned to icons, only.\r\n * @param {event} Event object\r\n * @memberof jQuery.fn.accessibleMegaMenu\r\n * @inner\r\n * @private\r\n */\n mouseUpIconHandler = function mouseUpIconHandler(event) {\n clearTimeout(this.mouseTimeoutID);\n\n var icon = $(event.target);\n icon.toggleClass('icon--open');\n\n if (icon.hasClass('icon--open')) {\n // open nav\n togglePanel.call(this, event);\n } else {\n // close nav\n togglePanel.call(this, event, true);\n }\n\n if ($(event.target).is(':tabbable')) {\n $('html').on('keydown.accessible-megamenu', $.proxy(keyDownHandler, event.target));\n }\n };\n\n /**\r\n * @name jQuery.fn.accessibleMegaMenu~mouseOutHandler\r\n * @desc Handle mouseout event on mega menu.\r\n * @param {event} Event object\r\n * @memberof jQuery.fn.accessibleMegaMenu\r\n * @inner\r\n * @private\r\n */\n mouseOutHandler = function mouseOutHandler(event) {\n if (window.innerWidth >= this.settings.mobileBreakpoint) {\n var that = this;\n $(event.target).\n removeClass(that.settings.hoverClass);\n\n that.mouseTimeoutID = setTimeout(function () {\n togglePanel.call(that, event, true);\n }, 250);\n if ($(event.target).is(':tabbable')) {\n $('html').off('keydown.accessible-megamenu');\n }\n }\n };\n\n toggleExpandedEventHandlers = function toggleExpandedEventHandlers(hide) {\n var menu = this.menu;\n if (hide) {\n $('html').off('mouseup.outside-accessible-megamenu, touchend.outside-accessible-megamenu, mspointerup.outside-accessible-megamenu, pointerup.outside-accessible-megamenu');\n\n menu.find('[aria-expanded].' + this.settings.panelClass).off('DOMAttrModified.accessible-megamenu');\n } else {\n $('html').on('mouseup.outside-accessible-megamenu, touchend.outside-accessible-megamenu, mspointerup.outside-accessible-megamenu, pointerup.outside-accessible-megamenu', $.proxy(clickOutsideHandler, this));\n\n /* Narrator in Windows 8 automatically toggles the aria-expanded property on double tap or click.\r\n To respond to the change to collapse the panel, we must add a listener for a DOMAttrModified event. */\n menu.find('[aria-expanded=true].' + this.settings.panelClass).on('DOMAttrModified.accessible-megamenu', $.proxy(DOMAttrModifiedHandler, this));\n }\n };\n\n /* public attributes and methods ------------------------- */\n return {\n constructor: AccessibleMegaMenu,\n\n /**\r\n * @lends jQuery.fn.accessibleMegaMenu\r\n * @desc Initializes an instance of the accessibleMegaMenu plugins\r\n * @memberof jQuery.fn.accessibleMegaMenu\r\n * @instance\r\n */\n init: function init() {\n var settings = this.settings,\n nav = $(this.element),\n menu = nav.children().first(),\n topnavitems = menu.children();\n this.start(settings, nav, menu, topnavitems);\n },\n\n start: function start(settings, nav, menu, topnavitems) {\n var that = this;\n this.settings = settings;\n this.menu = menu;\n this.topnavitems = topnavitems;\n\n //nav.attr('role', 'navigation');\n menu.addClass(settings.menuClass);\n topnavitems.each(function (i, topnavitem) {\n var topnavitemlink, topnavitempanel;\n topnavitem = $(topnavitem);\n topnavitem.addClass(settings.topNavItemClass);\n topnavitemlink = topnavitem.find(':tabbable:first');\n topnavitempanel = topnavitem.children(':not(:tabbable):last');\n addUniqueId.call(that, topnavitemlink);\n if (topnavitempanel.length) {\n addUniqueId.call(that, topnavitempanel);\n topnavitemlink.attr({\n 'aria-haspopup': true,\n 'aria-controls': topnavitempanel.attr('id'),\n 'aria-expanded': false });\n\n if (topnavitem.hasClass('global-nav-item')) {\n return;\n } else {\n topnavitempanel.attr({\n 'aria-expanded': false,\n 'aria-hidden': true }).\n\n addClass(settings.panelClass).\n not('[aria-labelledby]').\n attr('aria-labelledby', topnavitemlink.attr('id'));\n }\n }\n });\n\n this.panels = menu.find('.' + settings.panelClass);\n\n menu.on('focusin.accessible-megamenu', ':focusable, .' + settings.panelClass, $.proxy(focusInHandler, this)).\n on('focusout.accessible-megamenu', ':focusable, .' + settings.panelClass, $.proxy(focusOutHandler, this)).\n on('keydown.accessible-megamenu', $.proxy(keyDownHandler, this)).\n on('mouseover.accessible-megamenu', $.proxy(mouseOverHandler, this)).\n on('mouseout.accessible-megamenu', $.proxy(mouseOutHandler, this)).\n on('mousedown.accessible-megamenu', $.proxy(mouseDownHandler, this));\n\n $(settings.topNavIconClass).on('mouseup.accessible-megamenu', $.proxy(mouseUpIconHandler, this));\n\n if (isTouch) {\n menu.on('touchstart.accessible-megamenu', $.proxy(clickHandler, this));\n }\n\n menu.find('hr').attr('role', 'separator');\n\n if ($(document.activeElement).closest(menu).length) {\n $(document.activeElement).trigger('focusin.accessible-megamenu');\n }\n\n // Ensure subnavs hide if browser is expanded to desktop\n $(window).bind('resize', function () {\n\n if ($(window).width() >= settings.mobileBreakpoint) {\n\n // hide all other subnavs\n $('.' + settings.topNavItemClass).\n find('[aria-expanded]').\n attr('aria-expanded', 'false').\n removeClass(settings.openClass).\n filter('.' + settings.panelClass).\n attr('aria-hidden', 'true');\n\n // remove open class from all icons\n $('.' + settings.topNavItemClass).\n find(settings.topNavIconClass).\n removeClass('icon--open');\n }\n // remove active class from navId\n if (window.innerWidth >= settings.mobileBreakpoint) {\n $(settings.navId).removeClass('active');\n }\n });\n // sets navigation to active and changes label\n $(settings.navToggle).click(function (event) {\n event.preventDefault();\n $(settings.navId).toggleClass('active');\n /*\r\n if($(settings.navId).hasClass('active')){\r\n $(settings.navToggle + ' span').html('close');\r\n }else{\r\n $(settings.navToggle + ' span').html('menu');\r\n }\r\n */\n });\n },\n\n /**\r\n * @desc Get default values\r\n * @example $(selector).accessibleMegaMenu(\"getDefaults\");\r\n * @return {object}\r\n * @memberof jQuery.fn.accessibleMegaMenu\r\n * @instance\r\n */\n getDefaults: function getDefaults() {\n return this.defaults;\n },\n\n /**\r\n * @desc Get any option set to plugin using its name (as string)\r\n * @example $(selector).accessibleMegaMenu(\"getOption\", some_option);\r\n * @param {string} opt\r\n * @return {string}\r\n * @memberof jQuery.fn.accessibleMegaMenu\r\n * @instance\r\n */\n getOption: function getOption(opt) {\n return this.settings[opt];\n },\n\n /**\r\n * @desc Get all options\r\n * @example $(selector).accessibleMegaMenu(\"getAllOptions\");\r\n * @return {object}\r\n * @memberof jQuery.fn.accessibleMegaMenu\r\n * @instance\r\n */\n getAllOptions: function getAllOptions() {\n return this.settings;\n },\n\n /**\r\n * @desc Set option\r\n * @example $(selector).accessibleMegaMenu(\"setOption\", \"optionname\", \"option_value\", reinitialize);\r\n * @param {string} opt - Option name\r\n * @param {string} val - Option value\r\n * @param {boolean} [reinitialize] - boolean to re-initialize the menu.\r\n * @memberof jQuery.fn.accessibleMegaMenu\r\n * @instance\r\n */\n setOption: function setOption(opt, value, reinitialize) {\n this.settings[opt] = value;\n if (reinitialize) {\n this.init();\n }\n } };\n\n }();\n\n /* lightweight plugin wrapper around the constructor,\r\n to prevent against multiple instantiations */\n\n /**\r\n * @class accessibleMegaMenu\r\n * @memberOf jQuery.fn\r\n * @classdesc Implements an accessible mega menu as a jQuery plugin.\r\n *

The mega-menu It is modeled after the mega menu on {@link http://adobe.com|adobe.com} but has been simplified for use by others. A brief description of the interaction design choices can be\r\n * found in a blog post at {@link http://blogs.adobe.com/accessibility/2013/05/adobe-com.html|Mega menu accessibility on adobe.com}.

\r\n *

Keyboard Accessibility

\r\n *

The accessible mega menu supports keyboard interaction modeled after the behavior described in the {@link http://www.w3.org/TR/wai-aria-practices/#menu|WAI-ARIA Menu or Menu bar (widget) design\r\n * pattern}, however we also try to respect users' general expectations for the behavior of links in a global navigation. To this end, the accessible mega menu implementation permits tab focus on each of the six top-level menu items. When one of the menu items has focus,\r\n * pressing the Enter key, Spacebar or Down arrow will open the submenu panel, and pressing the Left or Right arrow key will shift focus to the adjacent menu item. Links within the submenu panels are included in the tab order when the panel is open.\r\n * They can also be navigated with the arrow keys or by typing the first character in the link name,\r\n * which speeds up keyboard navigation considerably. Pressing the Escape key closes the submenu and restores focus to the parent menu item.

\r\n *

Screen Reader Accessibility

\r\n *

The accessible mega menu models its use of WAI-ARIA Roles, States, and Properties after those described in the {@link http://www.w3.org/TR/wai-aria-practices/#menu|WAI-ARIA Menu or Menu bar (widget) design pattern}\r\n * with some notable exceptions, so that it behaves better with screen reader user expectations for global navigation. We don't use role=\"menu\" for the\r\n * menu container and role=\"menuitem\" for each of the links therein, because if we do,\r\n * assistive technology will no longer interpret the links as links, but instead, as menu items, and the links in our global navigation\r\n * will no longer show up when a screen reader user executes a shortcut command to bring up a list of links in the page.

\r\n * @example

HTML


\r\n <nav>\r\n <ul class="nav-menu">\r\n <li class="nav-item">\r\n <a href="?movie">Movies</a>\r\n <div class="sub-nav">\r\n <ul class="sub-nav-group">\r\n <li><a href="?movie&genre=0">Action &amp; Adventure</a></li>\r\n <li><a href="?movie&genre=2">Children &amp; Family</a></li>\r\n <li>&#8230;</li>\r\n </ul>\r\n <ul class="sub-nav-group">\r\n <li><a href="?movie&genre=7">Dramas</a></li>\r\n <li><a href="?movie&genre=9">Foreign</a></li>\r\n <li>&#8230;</li>\r\n </ul>\r\n <ul class="sub-nav-group">\r\n <li><a href="?movie&genre=14">Musicals</a></li>\r\n <li><a href="?movie&genre=15">Romance</a></li>\r\n <li>&#8230;</li>\r\n </ul>\r\n </div>\r\n </li>\r\n <li class="nav-item">\r\n <a href="?tv">TV Shows</a>\r\n <div class="sub-nav">\r\n <ul class="sub-nav-group">\r\n <li><a href="?tv&genre=20">Classic TV</a></li>\r\n <li><a href="?tv&genre=21">Crime TV</a></li>\r\n <li>&#8230;</li>\r\n </ul>\r\n <ul class="sub-nav-group">\r\n <li><a href="?tv&genre=27">Reality TV</a></li>\r\n <li><a href="?tv&genre=30">TV Action</a></li>\r\n <li>&#8230;</li>\r\n </ul>\r\n <ul class="sub-nav-group">\r\n <li><a href="?tv&genre=33">TV Dramas</a></li>\r\n <li><a href="?tv&genre=34">TV Horror</a></li>\r\n <li>&#8230;</li>\r\n </ul>\r\n </div>\r\n </li>\r\n </ul>\r\n </nav>\r\n * @example

CSS


\r\n /* Rudimentary mega menu CSS for demonstration */\r\n /* mega menu list */\r\n .nav-menu {\r\n display: block;\r\n position: relative;\r\n list-style: none;\r\n margin: 0;\r\n padding: 0;\r\n z-index: 15;\r\n }\r\n /* a top level navigation item in the mega menu */\r\n .nav-item {\r\n list-style: none;\r\n display: inline-block;\r\n padding: 0;\r\n margin: 0;\r\n }\r\n /* first descendant link within a top level navigation item */\r\n .nav-item > a {\r\n position: relative;\r\n display: inline-block;\r\n padding: 0.5em 1em;\r\n margin: 0 0 -1px 0;\r\n border: 1px solid transparent;\r\n }\r\n /* focus/open states of first descendant link within a top level\r\n navigation item */\r\n .nav-item > a:focus,\r\n .nav-item > a.open {\r\n border: 1px solid #dedede;\r\n }\r\n /* open state of first descendant link within a top level\r\n navigation item */\r\n .nav-item > a.open {\r\n background-color: #fff;\r\n border-bottom: none;\r\n z-index: 1;\r\n }\r\n /* sub-navigation panel */\r\n .sub-nav {\r\n position: absolute;\r\n display: none;\r\n top: 2.2em;\r\n margin-top: -1px;\r\n padding: 0.5em 1em;\r\n border: 1px solid #dedede;\r\n background-color: #fff;\r\n }\r\n /* sub-navigation panel open state */\r\n .sub-nav.open {\r\n display: block;\r\n }\r\n /* list of items within sub-navigation panel */\r\n .sub-nav ul {\r\n display: inline-block;\r\n vertical-align: top;\r\n margin: 0 1em 0 0;\r\n padding: 0;\r\n }\r\n /* list item within sub-navigation panel */\r\n .sub-nav li {\r\n display: block;\r\n list-style-type: none;\r\n margin: 0;\r\n padding: 0;\r\n }\r\n * @example

JavaScript


\r\n <!-- include jquery -->\r\n <script src="http://code.jquery.com/jquery-1.10.1.min.js"></script>\r\n <!-- include the jquery-accessibleMegaMenu plugin script -->\r\n <script src="js/jquery-accessibleMegaMenu.js"></script>\r\n <!-- initialize a selector as an accessibleMegaMenu -->\r\n <script>\r\n $("nav:first").accessibleMegaMenu({\r\n /* prefix for generated unique id attributes, which are required to indicate aria-owns, aria-controls and aria-labelledby */\r\n uuidPrefix: "accessible-megamenu",\r\n /* css class used to define the megamenu styling */\r\n menuClass: "nav-menu",\r\n /* css class for a top-level navigation item in the megamenu */\r\n topNavItemClass: "nav-item",\r\n /* css class for a megamenu panel */\r\n panelClass: "sub-nav",\r\n /* css class for a group of items within a megamenu panel */\r\n panelGroupClass: "sub-nav-group",\r\n /* css class for the hover state */\r\n hoverClass: "hover",\r\n /* css class for the focus state */\r\n focusClass: "focus",\r\n /* css class for the open state */\r\n openClass: "open"\r\n });\r\n </script>\r\n * @param {object} [options] Mega Menu options\r\n * @param {string} [options.uuidPrefix=accessible-megamenu] - Prefix for generated unique id attributes, which are required to indicate aria-owns, aria-controls and aria-labelledby\r\n * @param {string} [options.menuClass=accessible-megamenu] - CSS class used to define the megamenu styling\r\n * @param {string} [options.topNavItemClass=accessible-megamenu-top-nav-item] - CSS class for a top-level navigation item in the megamenu\r\n * @param {string} [options.panelClass=accessible-megamenu-panel] - CSS class for a megamenu panel\r\n * @param {string} [options.panelGroupClass=accessible-megamenu-panel-group] - CSS class for a group of items within a megamenu panel\r\n * @param {string} [options.hoverClass=hover] - CSS class for the hover state\r\n * @param {string} [options.focusClass=focus] - CSS class for the focus state\r\n * @param {string} [options.openClass=open] - CSS class for the open state\r\n */\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n $.fn[pluginName] = function (options) {\n return this.each(function () {\n if (!$.data(this, 'plugin_' + pluginName)) {\n $.data(this, 'plugin_' + pluginName, new $.fn[pluginName].AccessibleMegaMenu(this, options));\n }\n });\n };\n\n $.fn[pluginName].AccessibleMegaMenu = AccessibleMegaMenu;\n\n /* :focusable and :tabbable selectors from\r\n https://raw.github.com/jquery/jquery-ui/master/ui/jquery.ui.core.js */\n\n /**\r\n * @private\r\n */\n function visible(element) {\n return $.expr.filters.visible(element) && !$(element).parents().addBack().filter(function () {\n return $.css(this, 'visibility') === 'hidden';\n }).length;\n }\n\n /**\r\n * @private\r\n */\n function _focusable(element, isTabIndexNotNaN) {\n var map,mapName,img,\n nodeName = element.nodeName.toLowerCase();\n if (nodeName === 'area') {\n map = element.parentNode;\n mapName = map.name;\n if (!element.href || !mapName || map.nodeName.toLowerCase() !== 'map') {\n return false;\n }\n img = $('img[usemap=#' + mapName + ']')[0];\n return !!img && visible(img);\n }\n return (/input|select|textarea|button|object/.test(nodeName) ? !element.disabled :\n nodeName === 'a' ? element.href || isTabIndexNotNaN :\n isTabIndexNotNaN) &&\n // the element and all of its ancestors must be visible\n visible(element);\n }\n\n $.extend($.expr[':'], {\n data: $.expr.createPseudo ? $.expr.createPseudo(function (dataName) {\n return function (elem) {\n return !!$.data(elem, dataName);\n };\n }) : // support: jQuery <1.8\n function (elem, i, match) {\n return !!$.data(elem, match[3]);\n },\n\n focusable: function focusable(element) {\n return _focusable(element, !isNaN($.attr(element, 'tabindex')));\n },\n\n tabbable: function tabbable(element) {\n var tabIndex = $.attr(element, 'tabindex'),\n isTabIndexNaN = isNaN(tabIndex);\n return (isTabIndexNaN || tabIndex >= 0) && _focusable(element, !isTabIndexNaN);\n } });\n\n})(jQuery, window, document);","'use strict';var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if (\"value\" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError(\"Cannot call a class as a function\");}}var RPUtil = function () {function RPUtil() {_classCallCheck(this, RPUtil);}_createClass(RPUtil, null, [{ key: 'isNullOrEmpty', value: function isNullOrEmpty(\n tmp) {\n return !tmp || 0 === tmp.length;\n } }, { key: 'isUndefined', value: function isUndefined(\n\n tmp) {\n return typeof tmp === 'undefined';\n } }, { key: 'getFromStore', value: function getFromStore(\n\n name) {\n if (typeof Storage !== 'undefined') {\n return sessionStorage.getItem(name);\n }\n }\n\n // Parameter obj is a name/value object\n }, { key: 'writeToStore', value: function writeToStore(obj) {\n if (typeof Storage !== 'undefined') {\n sessionStorage.setItem(obj.name, obj.value);\n }\n }\n\n // Find closest parent selector for referenced element\n }, { key: 'closest', value: function closest(refEl, findSelector) {\n if (refEl.closest) {\n return refEl.closest(findSelector);\n }\n\n var matches = Element.prototype.matches ||\n Element.prototype.msMatchesSelector ||\n Element.prototype.webkitMatchesSelector,\n currentEl = refEl;\n\n while (currentEl) {\n if (matches.call(currentEl, findSelector)) {\n return currentEl;\n }\n currentEl = currentEl.parentElement;\n }\n return null;\n }\n\n /**\r\n * Get the largest value from an array\r\n * @param narray integer\r\n **/ }, { key: 'getMaxFromArray', value: function getMaxFromArray(\n narray) {\n return Math.max.apply(null, narray);\n } }, { key: 'isIE', value: function isIE()\n\n {\n if (/MSIE \\d|Trident.*rv:/.test(navigator.userAgent)) {\n return true;\n } else\n {\n return false;\n }\n } }, { key: 'viewportWidth', value: function viewportWidth()\n\n {\n var e = window;\n var a = 'inner';\n if (!('innerWidth' in window)) {\n a = 'client';\n e = document.documentElement || document.body;\n }\n return e[a + 'Width'];\n } }, { key: 'hasClass', value: function hasClass(\n\n elem, tstClass) {\n return elem.className.indexOf(tstClass) !== -1;\n } }, { key: 'loaded', value: function loaded(\n\n document, fn) {\n if (document.readyState !== 'loading') {\n fn();\n } else\n {\n document.addEventListener('DOMContentLoaded', fn);\n }\n } }, { key: 'resize', value: function resize(\n\n window, fn) {\n window.addEventListener('resize', fn);\n } }]);return RPUtil;}();","'use strict';var _createClass = function () {function defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if (\"value\" in descriptor) descriptor.writable = true;Object.defineProperty(target, descriptor.key, descriptor);}}return function (Constructor, protoProps, staticProps) {if (protoProps) defineProperties(Constructor.prototype, protoProps);if (staticProps) defineProperties(Constructor, staticProps);return Constructor;};}();function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError(\"Cannot call a class as a function\");}}var CtaControl = function () {function CtaControl() {_classCallCheck(this, CtaControl);}_createClass(CtaControl, null, [{ key: 'resizeCTABlocks',\n\t\t/**\r\n * Resize vertically a nodelist to be the size of the\r\n * largest node element.\r\n * @param selector String\r\n **/value: function resizeCTABlocks(\n\t\tselector) {\n\t\t\tCtaControl.resetCTA(selector);\n\t\t\tvar blkAr = [];\n\t\t\tvar sec = $('[class^=\"page-section\"]');\n\t\t\tif (window.innerWidth > 990) {\n\t\t\t\tsec.each(function (i, val) {\n\t\t\t\t\t// val is page section\n\t\t\t\t\t$(val).find(selector).each(function (i, val2) {\n\t\t\t\t\t\tblkAr.push($(val2).height());\n\t\t\t\t\t});\n\t\t\t\t\t$(val).find(selector).height(RPUtil.getMaxFromArray(blkAr));\n\t\t\t\t\tblkAr = [];\n\t\t\t\t});\n\t\t\t} else\n\t\t\t{\n\t\t\t\tsec.each(function (i, val) {\n\t\t\t\t\tif ($(val).find(selector).length > 0) {\n\t\t\t\t\t\t$(val).find(selector).css('height', 'auto');\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t} }, { key: 'resetCTA', value: function resetCTA(\n\n\t\tselector) {\n\t\t\tvar sec = $('[class^=\"page-section\"]');\n\t\t\tsec.each(function (i, val) {\n\t\t\t\tif ($(val).find(selector).length > 0) {\n\t\t\t\t\t$(val).find(selector).css('height', 'auto');\n\t\t\t\t}\n\t\t\t});\n\t\t} }]);return CtaControl;}();","'use strict';(function (w, d, $) {\n if ($('.tabbed-carousel').length > 0) {\n $('.carousel-nav').on('init', function (event, slick) {\n var nSlide = $('.slick-slide.slick-current.slick-active').data('slick-index') + 1;\n var nTitle = $(slick.$slides.get(nSlide)).data('title');\n $('.slick-manual-next strong').html(nTitle);\n });\n // slick carousel\n $('.carousel-for').slick({\n slidesToShow: 1,\n slidesToScroll: 1,\n arrows: false,\n fade: true,\n infinite: false,\n adaptiveHeight: true,\n asNavFor: '.carousel-nav' });\n\n\n $('.page-section--full .carousel-nav').slick({\n slidesToShow: 8,\n slidesToScroll: 1,\n asNavFor: '.carousel-for',\n dots: false,\n infinite: false,\n focusOnSelect: true,\n responsive: [\n {\n breakpoint: 1024,\n settings: {\n slidesToShow: 6 } },\n\n\n {\n breakpoint: 768,\n settings: {\n slidesToShow: 4 } },\n\n\n {\n breakpoint: 480,\n settings: {\n slidesToShow: 2 }\n\n\n // You can unslick at a given breakpoint now by adding:\n // settings: \"unslick\"\n // instead of a settings object\n }] });\n\n $('.page-layout--left-col .carousel-nav').slick({\n slidesToShow: 5,\n slidesToScroll: 1,\n asNavFor: '.carousel-for',\n dots: false,\n infinite: false,\n focusOnSelect: true,\n responsive: [\n {\n breakpoint: 768,\n settings: {\n slidesToShow: 4 } },\n\n\n {\n breakpoint: 480,\n settings: {\n slidesToShow: 2 }\n\n\n // You can unslick at a given breakpoint now by adding:\n // settings: \"unslick\"\n // instead of a settings object\n }] });\n\n $('.carousel-nav').on('afterChange', function (event, slick, currentSlide, slideCount) {\n var count = $('.carousel-nav').slick('getSlick').slideCount - 1;\n if (currentSlide == count) {\n $('.slick-manual-next').hide();\n } else {\n var nextTitle = $(slick.$slides.get(currentSlide + 1)).data('title');\n $('.slick-manual-next').show();\n $('.slick-manual-next strong').html(nextTitle);\n }\n });\n\n $('.slick-manual-next').click(function (e) {\n e.preventDefault();\n $('.carousel-nav').slick('slickNext');\n var aTag = $('.tabbed-carousel');\n $('html,body').animate({ scrollTop: aTag.offset().top }, 'slow');\n });\n }\n})(window, document, jQuery);","'use strict';(function (w, d, $) {\n\n $(d).ready(function () {\n var nav = $('nav.pagination--block');\n var pages = $('nav.pagination--block > ul li');\n var first = $('.pagination--block ul > li:first');\n var last = $('.pagination--block ul > li:last');\n var curPg = nav.attr('data-currentpage');\n var curLi = getLi(curPg);\n //console.log(`curLi ${curLi}`);\n var totalPg = nav.attr('data-totalpages');\n // console.log('total ', totalPg);\n var priorPg = parseFloat(curPg) - 1; //PREV\n // console.log(`priorPg ${priorPg}`);\n var prevLi = getLi(priorPg); //PREV\n // console.log(`prevLi ${prevLi}`);\n var nextPg = parseFloat(curPg) + 1;\n var nextLi = getLi(nextPg); // NEXT\n // console.log(`nextLi ${nextLi}`);\n var isFirst = curPg === '1';\n var isLast = curPg === totalPg;\n var totLi = getTotalLi(pages.length);\n\n makeActive(curPg);\n firstLast();\n applyBefEllipse(prevLi);\n applyAftEllipse(nextLi);\n\n function getLi(num) {\n return parseFloat($(pages[num]).find('a').text());\n }\n\n function getTotalLi(plength) {\n var tally = plength;\n tally = !isFirst ? tally - 1 : tally;\n tally = !isLast ? tally - 1 : tally;\n return tally;\n }\n\n function applyBefEllipse(nde) {\n // console.log(`before current: ${nde}`);\n var firstLi = getLi(1);\n // console.log('firstli ', firstLi);\n var secLi = getLi(2);\n // console.log('secLi ', secLi);\n var thirdLi = getLi(3);\n if (nde != firstLi && nde != secLi && nde != thirdLi && !isFirst) {\n $(pages[nde]).addClass('pagination--ellipsis');\n $(pages[nde]).find('a').html('…');\n $(pages).each(function (indx) {\n if (indx !== 0 && indx < prevLi) {\n if (indx !== firstLi && indx !== secLi && indx !== thirdLi) {\n $(pages[indx]).css('display', 'none');\n }\n }\n });\n }\n }\n\n function applyAftEllipse(nde) {\n // console.log('After current: ', nde);\n var lastLi = totLi;\n var secLaLi = totLi - 1;\n var thirdLaLi = totLi - 2;\n //console.log('last, sec, third: ', lastLi, secLaLi, thirdLaLi);\n if (nde != lastLi && nde != secLaLi && nde != thirdLaLi) {\n //console.log(`apply after ${nde}`);\n $(pages[nde]).addClass('pagination--ellipsis');\n $(pages[nde]).find('a').html('…');\n $(pages).each(function (indx) {\n if (indx !== 0 && indx !== totalPg && indx > nde && indx < totalPg) {\n if (indx !== lastLi && indx !== secLaLi && indx !== thirdLaLi) {\n $(pages[indx]).css('display', 'none');\n }\n }\n });\n }\n }\n\n function makeActive(cur) {\n if (pages.hasClass('active')) {\n pages.removeClass('active');\n }\n $(pages[cur]).addClass('active');\n }\n\n function firstLast() {\n if (isFirst) {\n first.css('display', 'none');\n }\n\n if (isLast) {\n last.css('display', 'none');\n }\n\n }\n\n });\n\n function nodeExists(nde) {\n return nde.length > 0;\n }\n\n function resizePagination() {\n var first = $('.pagination--block ul > li:first').width();\n var last = $('.pagination--block ul > li:last').width();\n if (first > last) {\n $('.pagination--block ul > li:last').width(first + 'px');\n } else\n {\n $('.pagination--block ul > li:first').width(last + 'px');\n }\n }\n\n $(window).bind('resize', resizePagination);\n\n $(window).on('load', function () {\n if (nodeExists($('.pagination--block'))) {\n resizePagination();\n }\n });\n\n})(window, document, jQuery);","'use strict';(function (w, d, $) {\n\t$(d).ready(function () {\n\n\t\tvar sliderOptions = {\n\t\t\tdots: false,\n\t\t\tslidesToShow: 1,\n\t\t\tslidesToScroll: 1 };\n\n\t\tvar pathPrefix = window.location.hostname === 'localhost' ? '' : '/assets/ghp';\n\t\tif ($('.photo-slideshow').length > 0) {\n\t\t\t$('.photo-slideshow').each(function setOptionImage() {\n\t\t\t\tif (this.classList.contains('photo-slideshow--quote-slide')) {\n\t\t\t\t\tsliderOptions.nextArrow = '\"Next\"',\n\t\t\t\t\tsliderOptions.prevArrow = '\"Previous\"';\n\t\t\t\t} else {\n\t\t\t\t\tsliderOptions.nextArrow = '\"Next\"',\n\t\t\t\t\tsliderOptions.prevArrow = '\"Previous\"';\n\t\t\t\t}\n\t\t\t\t$(this).slick(sliderOptions);\n\t\t\t});\n\t\t}\n\t\tif ($('.split-list').length > 0) {\n\t\t\t$('.split-list').each(function (indx, el) {\n\t\t\t\tsplitList($(el), $(el).data('cols'));\n\t\t\t});\n\t\t\t//splitList($('.split-list').data('cols'));\n\t\t}\n\t});\n\tfunction splitList(el, cols) {\n\t\tvar num_cols = cols,\n\t\t//container = $('.split-list'),\n\t\tcontainer = el,\n\t\tlistItem = 'li',\n\t\tlistClass = 'sub-list',\n\t\tlistClass2 = 'cols' + num_cols;\n\t\tcontainer.each(function () {\n\t\t\tvar items_per_col = [],\n\t\t\titems = $(this).find(listItem),\n\t\t\tmin_items_per_col = Math.floor(items.length / num_cols),\n\t\t\tdifference = items.length - min_items_per_col * num_cols;\n\t\t\tfor (var i = 0; i < num_cols; i++) {\n\t\t\t\tif (i < difference) {\n\t\t\t\t\titems_per_col[i] = min_items_per_col + 1;\n\t\t\t\t} else {\n\t\t\t\t\titems_per_col[i] = min_items_per_col;\n\t\t\t\t}\n\t\t\t}\n\t\t\tfor (var i = 0; i < num_cols; i++) {\n\t\t\t\t$(this).append($('').addClass(listClass).addClass(listClass2));\n\t\t\t\tfor (var j = 0; j < items_per_col[i]; j++) {\n\t\t\t\t\tvar pointer = 0;\n\t\t\t\t\tfor (var k = 0; k < i; k++) {\n\t\t\t\t\t\tpointer += items_per_col[k];\n\t\t\t\t\t}\n\t\t\t\t\t$(this).find('.' + listClass).last().append(items[j + pointer]);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t\tcontainer.contents().unwrap().wrapAll('
');\n\t}\n})(window, document, jQuery);","'use strict';var WffmModal = function () {\n function hasCookieConsent() {\n if (!window.OnetrustActiveGroups) return true;\n return window.OnetrustActiveGroups.includes('C0003');\n }\n\n function getCookie(name) {\n var v = document.cookie.match('(^|;) ?' + name + '=([^;]*)(;|$)');\n return v ? v[2] : false;\n }\n\n function setCookie(cname, cvalue, milliseconds) {\n if (!hasCookieConsent()) return;\n if (!cname && !milliseconds) return;\n var d = new Date();\n d.setTime(d.getTime() + milliseconds);\n document.cookie = cname + '=' + cvalue + ';expires=' + d.toUTCString() + ';path=/';\n }\n\n function closeBtnModalListener(e) {\n closeModal(e.target.getAttribute('data-modal'));\n }\n\n function closeOutsideModalListener(e) {\n if (e.target.classList.contains('c-modal')) {\n closeModal(e.target.id);\n }\n }\n\n function checkCookie(elModalWithExpiration) {\n var modalExpireId = elModalWithExpiration.dataset.modalExpireId;\n if (!modalExpireId) return false;\n var cookie = getCookie(modalExpireId);\n\n if (cookie) {\n elModalWithExpiration.classList.add('c-modal--hidden');\n document.body.classList.remove('modal-active');\n return true;\n }\n return false;\n }\n\n function closeModal(targetId) {\n var eModal = document.getElementById(targetId);\n\n if (eModal.classList.contains('c-modal--experience')) return;\n\n eModal.classList.add('c-modal--hidden');\n document.body.classList.remove('modal-active');\n\n function initModalListeners(elModalExpire) {\n\n checkCookie(elModalExpire);\n var modalExpireId = elModalExpire.dataset.modalExpireId;\n var modalExpiration = Number(elModalExpire.dataset.expiration);\n\n setCookie(modalExpireId, 'clicked', modalExpiration);\n }\n\n var arrModalExpire = document.querySelectorAll('.js-modal-expire');\n for (var i = 0; i < arrModalExpire.length; i++) {\n initModalListeners(arrModalExpire[i]);\n }\n }\n\n function createModal(e) {\n e.preventDefault();\n var eModal = document.getElementById(e.target.getAttribute('data-modal'));\n if (eModal.classList.contains('c-modal--experience')) return;\n\n var dynamicModalContent = e.target.getAttribute('data-modal-content');\n var targetDiv = eModal.querySelector('.c-modal__wffm-holder');\n if (dynamicModalContent && targetDiv) {\n if (!targetDiv) return;\n targetDiv.innerHTML = dynamicModalContent;\n }\n\n eModal.classList.remove('c-modal--hidden');\n document.body.classList.add('modal-active');\n }\n\n function InitOpenModalButton(modalId) {\n var btnsModal = document.getElementsByClassName(modalId);\n\n if (btnsModal.length == 0) {\n console.log('no matching modal id on button');\n return;\n }\n\n btnsModal[0].setAttribute('data-modal', modalId);\n btnsModal[0].addEventListener('click', createModal);\n }\n\n function InitOpenModalLinkButton() {\n var linkBtnsModal = document.querySelectorAll('.js-dynamic-text-modal');\n\n for (var i = 0; i < linkBtnsModal.length; i++) {\n linkBtnsModal[i].addEventListener('click', createModal);\n }\n }\n\n function InitCloseModal(eModal, modalId) {\n\n eModal.addEventListener('click', closeOutsideModalListener);\n\n var eModalClose = eModal.querySelector('.c-modal--close');\n eModalClose.setAttribute('data-modal', modalId);\n eModalClose.addEventListener('click', closeBtnModalListener);\n\n window.addEventListener('keydown',\n function (e) {\n if (e.key !== 'Escape') return;\n closeModal(modalId);\n });\n }\n\n function InitAutoModal(eModal) {\n var isAuto = eModal.classList.contains('js-modal-auto');\n var shouldOpen = !checkCookie(eModal);\n\n\n if (eModal && isAuto && shouldOpen) {var\n autoShowModal = function autoShowModal() {\n eModal.classList.remove('c-modal--hidden');\n document.body.classList.add('modal-active');\n };\n var delayDuration = eModal.dataset.durationId;\n if (delayDuration) {\n setTimeout(autoShowModal, delayDuration);\n }\n }\n }\n\n function Init(modalId) {\n var eModal = document.getElementById(modalId);\n if (!eModal) return;\n InitOpenModalButton(modalId);\n InitOpenModalLinkButton();\n InitCloseModal(eModal, modalId);\n InitAutoModal(eModal);\n }\n\n return {\n Init: Init };\n\n}();","'use strict';var CtaModal = function ctaModal() {\n var eModal, eStickyCtaContent;\n function closeBtnModalListener(e) {\n closeModal();\n }\n\n function closeOutsideModalListener(e) {\n if (e.target.classList.contains('c-modal')) {\n closeModal();\n }\n }\n\n function closeModal() {\n eModal.classList.add('c-modal--hidden');\n document.body.classList.remove('modal-active');\n eStickyCtaContent.classList.remove('c-cta__sticky--hidden');\n }\n\n function stickyCtaButtonListener(e) {\n eModal.classList.remove('c-modal--hidden');\n document.body.classList.add('modal-active');\n eStickyCtaContent.classList.add('c-cta__sticky--hidden');\n }\n\n function Init() {\n var stickyCta = document.querySelector('.c-cta-sticky');\n eModal = stickyCta.querySelector('.c-modal');\n var eModalContentHolder = eModal.querySelector('.c-modal__cta-holder');\n eStickyCtaContent = stickyCta.querySelector('.c-cta__sticky');\n var stickyCtaButton = eStickyCtaContent.querySelector('.c-cta__button');\n var modalContent = stickyCta.querySelector('.c-cta__content');\n\n eModalContentHolder.innerHTML = modalContent.innerHTML;\n\n stickyCtaButton.addEventListener('click', stickyCtaButtonListener);\n eModal.addEventListener('click', closeOutsideModalListener);\n\n var eModalClose = eModal.querySelector('.c-modal--close');\n eModalClose.addEventListener('click', closeBtnModalListener);\n\n window.addEventListener('keydown',\n function (e) {\n if (e.keyCode !== 27) return;\n closeModal();\n });\n }\n\n Init();\n};"]}