{"time":"2026-01-01T00:20:19.302Z","specifics":"<script>\n\n(function(){\ntry{\n/** file: addSearchboxInstructions.js */\n\"use strict\";\n\nfunction addSearchboxInstructions(searchInput, announcementMessage) {\n  const newSpan = createSrOnlyElement();\n  newSpan.id = \"instructions\";\n  newSpan.textContent = announcementMessage;\n  searchInput.insertAdjacentElement(\"afterend\", newSpan);\n  searchInput.setAttribute(\"aria-describedby\", \"instructions\");\n}\n/** file: applyMenuAttributes.js */\n\"use strict\";\n\nfunction applyMenuAttributes(menu) {\n  menu.setAttribute(\"data-acsb-m-menu\", \"ul\");\n  menu.setAttribute(\"data-acsb-fake-menu\", \"true\");\n}\n/** file: applyMenuItemAttributes.js */\n\"use strict\";\n\nfunction applyMenuItemAttributes(menuItem) {\n  let {\n    alternativeMenu = true\n  } = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n  if (alternativeMenu) {\n    forceAlternativeDropdown(menuItem);\n  }\n  menuItem.setAttribute(\"role\", \"menuitem\");\n  menuItem.setAttribute(\"data-acsb-menu-root\", \"true\");\n  menuItem.setAttribute(\"data-acsb-m-menu\", \"li\");\n  menuItem.setAttribute(\"data-acsb-menu\", \"li\");\n  menuItem.setAttribute(\"data-acsb-dropdown-container\", \"true\");\n}\n/** file: chatButtonAccessible.js */\n\"use strict\";\n\nfunction accessChatButton(iframe, skipLinks) {\n  let chatButtonSelector = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : \"\";\n  let chatButtonTabHandler = arguments.length > 3 ? arguments[3] : undefined;\n  const iframeDocument = iframe.contentDocument || iframe.contentWindow.document;\n  const chatButton = iframeDocument.querySelector(\"\".concat(chatButtonSelector ? chatButtonSelector : \"#mountHere\", \" button\"));\n  const skipLinksContainer = skipLinks.shadowRoot.querySelector(\".skip-links\");\n  const skipLink = skipLinksContainer.querySelector(\"div\");\n  const clone = skipLink.cloneNode(true);\n  const link = clone.querySelector(\"a\");\n  link.addEventListener(\"keydown\", event => {\n    if (event.key === \"Enter\") {\n      chatButton.focus();\n      chatButton.setAttribute(\"data-acsb-focused\", \"true\");\n      chatButton.style.borderColor = \"#639af9\";\n    }\n  });\n  link.addEventListener(\"click\", () => {\n    chatButton.focus();\n    chatButton.setAttribute(\"data-acsb-focused\", \"true\");\n    chatButton.style.borderColor = \"#639af9\";\n  });\n  if (chatButtonTabHandler) {\n    chatButton.addEventListener(\"keydown\", event => {\n      if (event.code === \"Tab\" && !event.shiftKey) {\n        event.preventDefault();\n        chatButtonTabHandler();\n      }\n    });\n  }\n  link.childNodes[0].textContent = \"Skip to Chat\";\n  link.href = chatButtonSelector ? chatButtonSelector : \"#gorgias-chat-container\";\n  skipLinksContainer.appendChild(clone);\n}\n/** file: connectMenuToMenuItem.js */\n\"use strict\";\n\nfunction connectMenuToMenuItem(_ref) {\n  let {\n    menuItem,\n    menu,\n    applyWrappingMenuItem = false,\n    alternativeMenu = true,\n    removeOriginalMenu = true\n  } = _ref;\n  let currentMenuItem = menuItem;\n  if (applyWrappingMenuItem) {\n    currentMenuItem = wrappMenuItem(menuItem);\n  }\n  const clonedMenu = menu.cloneNode(true);\n  currentMenuItem.appendChild(clonedMenu);\n  applyMenuItemAttributes(currentMenuItem, {\n    alternativeMenu\n  });\n  if (removeOriginalMenu) {\n    menu.remove();\n  }\n  return clonedMenu;\n}\nfunction wrappMenuItem(menuItem) {\n  const div = document.createElement(\"div\");\n  menuItem.before(div);\n  const clonedMenuItem = menuItem.cloneNode(true);\n  div.appendChild(clonedMenuItem);\n  menuItem.remove();\n  applyMenuItemAttributes(div);\n  return div;\n}\nfunction forceAlternativeDropdown(listItem) {\n  const fakeMenu1 = document.createElement(\"div\");\n  const fakeMenu2 = document.createElement(\"div\");\n  fakeMenu1.setAttribute(\"data-acsb-menu\", \"ul\");\n  fakeMenu2.setAttribute(\"data-acsb-menu\", \"ul\");\n  listItem.appendChild(fakeMenu1);\n  listItem.appendChild(fakeMenu2);\n}\n/** file: createLiveRegion.js */\n\"use strict\";\n\nfunction createLiveRegion(ariaLive, container) {\n  const span = document.createElement(\"span\");\n  span.className = \"acsb-sr-only\";\n  span.setAttribute(\"data-acsb-force-visible\", \"true\");\n  if (ariaLive) {\n    span.setAttribute(\"aria-live\", ariaLive);\n  }\n  if (container) {\n    container.append(span);\n  }\n  return span;\n}\n/** file: createSrOnlyElement.js */\n\"use strict\";\n\nfunction createSrOnlyElement() {\n  const srOnlyElement = document.createElement(\"span\");\n  srOnlyElement.style.position = \"absolute\";\n  srOnlyElement.style.width = \"1px\";\n  srOnlyElement.style.height = \"1px\";\n  srOnlyElement.style.padding = \"0\";\n  srOnlyElement.setAttribute(\"data-acsb-force-visible\", \"true\");\n  srOnlyElement.style.margin = \"-1px\";\n  srOnlyElement.style.overflow = \"hidden\";\n  srOnlyElement.style.clip = \"rect(0, 0, 0, 0)\";\n  srOnlyElement.style.whiteSpace = \"nowrap\";\n  srOnlyElement.style.borderWidth = \"0\";\n  srOnlyElement.setAttribute(\"data-acsb-force-visible\", \"true\");\n  return srOnlyElement;\n}\n/** file: forceNavigable.js */\n\"use strict\";\n\nfunction forceNavigable(element) {\n  element.setAttribute(\"data-acsb-now-navigable\", \"true\");\n  element.setAttribute(\"data-acsb-navigable\", \"true\");\n  element.setAttribute(\"data-acsb-force-navigable\", \"true\");\n  element.setAttribute(\"tabindex\", \"0\");\n}\n/** file: forceUnnavigable.js */\n\"use strict\";\n\nfunction forceUnnavigable(el) {\n  el.setAttribute(\"tabindex\", \"-1\");\n  el.setAttribute(\"data-acsb-force-unnavigable\", \"true\");\n  el.setAttribute(\"data-acsb-navigable\", \"false\");\n  el.setAttribute(\"data-acsb-now-navigable\", \"false\");\n}\n/** file: profileEnabledInterval.js */\n\"use strict\";\n\nfunction profileEnabledInterval(profile, cb) {\n  let {\n    interval = 1000,\n    clearAfterTimeout = true,\n    timeout = 15000\n  } = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n  const intervalId = setInterval(() => {\n    var _acsbState$actions;\n    const acsbState = JSON.parse(localStorage.acsbState || \"{}\");\n    if (acsbState !== null && acsbState !== void 0 && (_acsbState$actions = acsbState.actions) !== null && _acsbState$actions !== void 0 && (_acsbState$actions = _acsbState$actions[profile]) !== null && _acsbState$actions !== void 0 && _acsbState$actions.enabled) {\n      try {\n        const shouldClear = cb();\n        if (shouldClear) {\n          clearInterval(intervalId);\n        }\n      } catch (error) {\n        clearInterval(intervalId);\n        window.dispatchEvent(new CustomEvent(\"acsbWidgetSpecificsError\", {\n          detail: error\n        }));\n      }\n    }\n  }, interval);\n  if (clearAfterTimeout) {\n    setTimeout(() => {\n      clearInterval(intervalId);\n    }, timeout);\n  }\n}\n\n/** file: fix-descriptive-label-announcement-for-view-all-and-learn-more-cta-links.js */\n(function(){\ntry{\n\"use strict\";\n\nprofileEnabledInterval(\"accessMode\", () => {\n  const productsContainer = document.querySelector(\".products-container\");\n  const franchiseSection = document.querySelector(\"#franchise-block\");\n  const learnMoreAboutMemberShipLink = document.querySelector(\"a[href='/memberships/']\");\n  const welcomeSection = document.querySelector(\"#welcome-block\");\n  if (productsContainer && franchiseSection && learnMoreAboutMemberShipLink && welcomeSection) {\n    var _productsContainer$qu, _franchiseSection$que;\n    const productsContainerHeadingTextContent = (_productsContainer$qu = productsContainer.querySelector(\"h2\")) === null || _productsContainer$qu === void 0 ? void 0 : _productsContainer$qu.textContent;\n    const viewAllLinkScreenReaderElement = productsContainer.querySelector(\".btn .screen-reader-text\");\n    if (viewAllLinkScreenReaderElement) {\n      var _viewAllLinkScreenRea;\n      viewAllLinkScreenReaderElement.textContent = productsContainerHeadingTextContent;\n      (_viewAllLinkScreenRea = viewAllLinkScreenReaderElement.nextElementSibling) === null || _viewAllLinkScreenRea === void 0 || _viewAllLinkScreenRea.remove();\n    }\n    const franchiseHeadingTextContent = (_franchiseSection$que = franchiseSection.querySelector(\"h2\")) === null || _franchiseSection$que === void 0 ? void 0 : _franchiseSection$que.textContent;\n    const learnMoreLinkScreenReaderElement = franchiseSection.querySelector(\".btn .screen-reader-text\");\n    if (learnMoreLinkScreenReaderElement) {\n      var _learnMoreLinkScreenR;\n      learnMoreLinkScreenReaderElement.textContent = \" about \" + franchiseHeadingTextContent;\n      (_learnMoreLinkScreenR = learnMoreLinkScreenReaderElement.nextElementSibling) === null || _learnMoreLinkScreenR === void 0 || _learnMoreLinkScreenR.remove();\n    }\n    const memberShipLearnMoreLinkScreenReaderElement = learnMoreAboutMemberShipLink.querySelector(\".acsb-sr-only\");\n    if (memberShipLearnMoreLinkScreenReaderElement) {\n      memberShipLearnMoreLinkScreenReaderElement.textContent = \" about becoming a member\";\n    } else {\n      const srElement = createSrOnlyElement();\n      srElement.textContent = \" about becoming a member\";\n      learnMoreAboutMemberShipLink.appendChild(srElement);\n    }\n    const learnMoreWelcomeLink = welcomeSection.querySelector(\".section__button a.btn\");\n    if (learnMoreWelcomeLink) {\n      const srElement = createSrOnlyElement();\n      srElement.textContent = \"about the lash lounge\";\n      learnMoreWelcomeLink.appendChild(srElement);\n    }\n    return true;\n  }\n});\n}catch(ex){}\n})();\n\n}catch(ex){}\n})();\n\n</script><style>\n\n</style>","addonAnalytics":true,"blockMeta":false,"blockImages":false,"blockStyles":false,"blockTextSimplifier":false,"widgetSettings":{"consistentHelpData":[],"disableBgProcess":false,"footerHtml":"","hideComponents":[],"hideMobile":false,"hideTrigger":false,"language":"en","leadColor":"#513350","mobile":{"triggerOffsetX":3,"triggerOffsetY":3,"triggerPositionX":"right","triggerPositionY":"center","triggerRadius":"50%","triggerSize":"medium","triggerIcon":"people"},"position":"right","remoteAnalytics":true,"statementLink":"https://www.thelashlounge.com/accessibility-policy/","statementVariant":"default","triggerColor":"#513350","triggerIcon":"people","triggerOffsetX":20,"triggerOffsetY":20,"triggerPositionX":"right","triggerPositionY":"center","triggerRadius":"50%","triggerSize":"medium"},"featureFlags":{"text-simplifier":false}}