1<input type="hidden" id="schCurrency" name="schCurrency" value="usd" /><div id="cartModalContainerWrapper"> 2 <div id="cartModalContainer" data-paypal-ab-decision-surface></div> 3 <div id="saleModalContainer"></div> 4 5 <div id="bundleModalContainer" class="h-position--relative h-index" style="--h-index: 2147483004;"></div> 6 <div id="upgradeModalContainer"></div> 7 <div id="embeddedCheckoutModalContainer"></div> 8 <div id="btnMainBottomCheckoutContainer"></div> 9 <div id="currencyModalContainer"></div> 10 11</div>
12<script> 13 14 var IS_BOT = true; 15 16 console.log('header_utilities loaded') 17 18 // Track page load time for AB test view timing 19 window.abPageLoadTime = Date.now(); 20 21 function ready(callback, caller) { 22 console.log('ready function called', {caller}) 23 // in case the document is already rendered 24 if (document.readyState != 'loading') callback(); 25 // modern browsers 26 else if (document.addEventListener) 27 document.addEventListener('DOMContentLoaded', callback); 28 // IE <= 8 29 else 30 document.attachEvent('onreadystatechange', function () { 31 if (document.readyState == 'complete') callback(); 32 }); 33 } 34 35 36 function base_url(url) { 37 var cookieLanguage = getCookie('language'); 38 // url needs fixing 39 if(cookieLanguage && cookieLanguage != 'en' && !url.includes(`/${cookieLanguage}/`)) { 40 if(url.startsWith(`/`)) { 41 // abs url 42 return `/${cookieLanguage}${url}`; 43 } else { 44 // url with domain 45 return url.replace(`.com/`, `.com/${cookieLanguage}/`); 46 } 47 } 48 // url already fine 49 return url; 50 } 51 52 window.lrModalRegistry = window.lrModalRegistry || {}; 53 54 function lrModalDetachEntry(name, modalEntry) { 55 if (modalEntry && typeof modalEntry._detach === 'function') { 56 try { 57 modalEntry._detach(); 58 } catch (detachError) { 59 console.warn('Failed detaching modal entry', { name, detachError }); 60 } 61 } 62 63 delete window.lrModalRegistry[name]; 64 return false; 65 } 66 67 window.lrModalCleanupCheck = function(name) { 68 if (!name) { 69 Object.keys(window.lrModalRegistry).forEach(function(modalName) { 70 window.lrModalCleanupCheck(modalName); 71 }); 72 return true; 73 } 74 75 var modalEntry = window.lrModalRegistry[name]; 76 if (!modalEntry || typeof modalEntry !== 'object') { 77 return false; 78 } 79 80 if ( 81 modalEntry.modalElement && 82 document.body && 83 !document.body.contains(modalEntry.modalElement) 84 ) { 85 console.warn('Removing stale modal registry entry', { name: name }); 86 return lrModalDetachEntry(name, modalEntry); 87 } 88 89 return true; 90 }; 91 92 window.lrModalRegistryCleanupCheck = window.lrModalCleanupCheck; 93 94 window.lrRegisterModal = function(name, modalApi) { 95 if (!name || typeof name !== 'string') { 96 console.error('Cannot register modal without a valid name', { name: name }); 97 return null; 98 } 99 100 window.lrModalCleanupCheck(); 101 102 var existingEntry = window.lrModalRegistry[name]; 103 if (existingEntry && typeof existingEntry._detach === 'function') { 104 try { 105 existingEntry._detach(); 106 } catch (detachError) { 107 console.warn('Failed detaching previous modal entry', { 108 name: name, 109 detachError: detachError 110 }); 111 } 112 } 113 114 var nextEntry = { name: name }; 115 if (modalApi && typeof modalApi === 'object') { 116 Object.keys(modalApi).forEach(function(key) { 117 nextEntry[key] = modalApi[key]; 118 }); 119 } 120 121 nextEntry.cleanupCheck = function() { 122 return window.lrModalCleanupCheck(name); 123 }; 124 125 window.lrModalRegistry[name] = nextEntry; 126 127 if (typeof document !== 'undefined' && typeof CustomEvent === 'function') { 128 try { 129 document.dispatchEvent( 130 new CustomEvent('lr:modal-registered', { 131 detail: { 132 name: name, 133 modalApi: nextEntry, 134 } 135 }) 136 ); 137 } catch (modalRegisteredEventError) { 138 console.warn('Failed dispatching modal registered event', { 139 name: name, 140 modalRegisteredEventError: modalRegisteredEventError 141 }); 142 } 143 } 144 145 return nextEntry; 146 }; 147 148 // Reason: site videos are narrated in English, so on a translated page the 149 // visitor cannot follow them. Any script that builds a video embed URL should 150 // pass it through here so captions default on in the page language. Vimeo and 151 // YouTube both resolve the base code to their auto-generated track and ignore 152 // the parameter when no such track exists, so this is safe to always apply. 153 // The page language, or '' on English pages where nothing should be forced on. 154 window.lrVideoPageLanguage = function() { 155 try { 156 var documentLanguage = (document.documentElement && 157 document.documentElement.getAttribute('lang')) || ''; 158 documentLanguage = documentLanguage.toLowerCase().replace('_', '-').split('-')[0]; 159 160 return (!documentLanguage || documentLanguage === 'en') ? '' : documentLanguage; 161 } catch (videoLanguageError) { 162 return ''; 163 } 164 }; 165 166 window.lrVideoUrlWithSubtitles = function(videoUrl) { 167 if (!videoUrl || typeof videoUrl !== 'string') { 168 return videoUrl; 169 } 170 171 try { 172 var documentLanguage = (document.documentElement && 173 document.documentElement.getAttribute('lang')) || ''; 174 // Normalize values like "pt-BR" or "pt_br" down to the base language code. 175 documentLanguage = documentLanguage.toLowerCase().replace('_', '-').split('-')[0]; 176 177 if (!documentLanguage || documentLanguage === 'en') { 178 return videoUrl; 179 } 180 181 var isVimeo = videoUrl.indexOf('player.vimeo.com') !== -1; 182 var isYoutube = videoUrl.indexOf('youtube.com/embed') !== -1; 183 if (!isVimeo && !isYoutube) { 184 return videoUrl; 185 } 186 187 // Never overwrite an explicit caption choice already on the URL. 188 if (/[?&](texttrack|cc_lang_pref)=/.test(videoUrl)) { 189 return videoUrl; 190 } 191 192 var separator = videoUrl.indexOf('?') === -1 ? '?' : '&'; 193 var captionParameters = isVimeo 194 ? 'texttrack=' + encodeURIComponent(documentLanguage) 195 : 'cc_load_policy=1&cc_lang_pref=' + encodeURIComponent(documentLanguage) + 196 '&hl=' + encodeURIComponent(documentLanguage); 197 198 return videoUrl + separator + captionParameters; 199 } catch (videoSubtitleError) { 200 // A caption preference must never break video playback. 201 console.warn('Failed adding video subtitles', videoSubtitleError); 202 return videoUrl; 203 } 204 }; 205 206 // Reason: the texttrack URL parameter is applied inconsistently by the Vimeo 207 // player, so any embed that can reach the player API should also enable the
208 // track explicitly. A video with no stored rows is discovered here and posted 209 // to /api/vimeo_tracks/record so later visitors are served from MySQL. 210 // Nothing in here may throw into playback. 211 window.lrApplyVimeoSubtitles = function(iframeElement, vimeoId) { 212 var language = window.lrVideoPageLanguage && window.lrVideoPageLanguage(); 213 if (!language || !iframeElement || !vimeoId) { 214 return; 215 } 216 217 var applyWithPlayer = function() { 218 try { 219 var player = new window.Vimeo.Player(iframeElement); 220 player.ready().then(function() { 221 return player.getTextTracks(); 222 }).then(function(tracks) { 223 if (!tracks || !tracks.length) { 224 return; // If null don't write. 225 } 226 227 var matched = null; 228 var discovered = []; 229 tracks.forEach(function(track) { 230 if (!track || !track.language) { 231 return; 232 } 233 var base = String(track.language).toLowerCase().replace('_', '-').split('-')[0]; 234 if (base === 'iw') { 235 base = 'he'; // Vimeo still reports Hebrew as the legacy code. 236 } 237 if (base === 'en') { 238 return; 239 } 240 discovered.push({ language_code: base, track_name: track.language }); 241 if (base === language) { 242 matched = track.language; 243 } 244 }); 245 246 if (matched) { 247 player.enableTextTrack(matched).catch(function() {}); 248 } 249 if (discovered.length) { 250 window.lrRecordVimeoTracks(vimeoId, discovered); 251 } 252 }).catch(function() {}); 253 } catch (vimeoSubtitleError) { 254 console.warn('Failed enabling video subtitles', vimeoSubtitleError); 255 } 256 }; 257 258 if (window.Vimeo && window.Vimeo.Player) { 259 applyWithPlayer(); 260 } else if (typeof loadScript === 'function') { 261 loadScript('https://player.vimeo.com/api/player.js', applyWithPlayer); 262 } 263 }; 264 265 window.lrRecordVimeoTracks = function(vimeoId, tracks) { 266 try { 267 fetch('/api/vimeo_tracks/record', { 268 method: 'POST', 269 headers: { 'Content-Type': 'application/json' }, 270 body: JSON.stringify({ vimeo_id: String(vimeoId), tracks: tracks }), 271 keepalive: true 272 }).catch(function() {}); 273 } catch (recordTracksError) { 274 // Filling the cache is best effort and must never affect playback. 275 } 276 }; 277 278 window.lrModalUnregister = function(name) { 279 if (!name || !window.lrModalRegistry[name]) { 280 return false; 281 } 282 283 return lrModalDetachEntry(name, window.lrModalRegistry[name]); 284 }; 285 286 window.lrHasModalAction = function(name, action) { 287 if (!name || !action) { 288 return false; 289 } 290 291 window.lrModalCleanupCheck(name); 292 293 var modalEntry = window.lrModalRegistry[name]; 294 return !!(modalEntry && typeof modalEntry[action] === 'function'); 295 }; 296 297 window.lrModalAction = function(name, action) { 298 if (!name || !action) { 299 return false; 300 } 301 302 window.lrModalCleanupCheck(name); 303 304 var modalEntry = window.lrModalRegistry[name]; 305 if (!modalEntry) { 306 console.warn('Modal action requested for unknown modal', { 307 name: name, 308 action: action 309 }); 310 return false; 311 } 312 313 var modalAction = modalEntry[action]; 314 if (typeof modalAction !== 'function') { 315 console.warn('Modal action requested for missing handler', { 316 name: name, 317 action: action 318 }); 319 return false; 320 } 321 322 try { 323 return modalAction.apply( 324 modalEntry, 325 Array.prototype.slice.call(arguments, 2) 326 ); 327 } catch (modalActionError) { 328 console.error('Modal action failed', { 329 name: name, 330 action: action, 331 modalActionError: modalActionError 332 }); 333 return false; 334 } 335 }; 336 337 window.lrBridgeModalGlobals = function(name, actionMap) { 338 if (!name || typeof name !== 'string') { 339 return; 340 } 341 342 var normalizedActionMap = actionMap || { 343 Open: 'open', 344 CloseModal: 'close', 345 GoToStep1: 'goToStep1', 346 RunModalCallback: 'runCallback', 347 }; 348
349 Object.keys(normalizedActionMap).forEach(function(globalSuffix) { 350 var modalActionName = normalizedActionMap[globalSuffix]; 351 window[name + globalSuffix] = function() { 352 return window.lrModalAction.apply( 353 window, 354 [name, modalActionName].concat(Array.prototype.slice.call(arguments)) 355 ); 356 }; 357 }); 358 }; 359 360 window.lrRegisterModalFromConfig = function(modalConfig) { 361 var modalElement = document.getElementById(modalConfig.id); 362 if (!modalElement) { 363 window.lrModalCleanupCheck(modalConfig.name); 364 return null; 365 } 366 367 var openTrigger = document.getElementById(modalConfig.openTriggerId); 368 var backButton = document.getElementById(modalConfig.backButtonId); 369 var closeButton = document.getElementById(modalConfig.primaryButtonId); 370 var closeIconButton = document.getElementById(modalConfig.closeIconId); 371 372 function runModalCallback(callbackCode, callbackLabel) { 373 if (!callbackCode) { 374 return true; 375 } 376 377 if (/<!doctype|<html|<head|<body|
377<script|<style/i.test(callbackCode)) { 378 console.error(callbackLabel + ' contained HTML and was blocked', callbackCode); 379 return false; 380 } 381 382 try { 383 (new Function(callbackCode))(); 384 return true; 385 } catch (callbackError) { 386 console.error(callbackLabel + ' failed', callbackError, callbackCode); 387 return false; 388 } 389 } 390 391 function open() { 392 modalElement.style.display = 'flex'; 393 setTimeout(function() { 394 modalElement.style.opacity = 1; 395 }, 20); 396 397 if (typeof gtag != 'undefined') { 398 gtag_and_microsoft_uet('send', 'pageview', modalConfig.gaView); 399 } 400 401 runModalCallback( 402 modalConfig.openCallbackCode, 403 modalConfig.name + ' open callback' 404 ); 405 406 if (modalConfig.trackFormOpen && typeof gtag != 'undefined') { 407 gtag_and_microsoft_uet('event', 'click', { 408 event_category: 'form_open', 409 event_label: modalConfig.name + 'Opened', 410 transport_type: 'beacon', 411 event_callback: function() { 412 console.log(modalConfig.name + 'Opened tracked'); 413 } 414 }); 415 } 416 417 return true; 418 } 419 420 function close() { 421 if (modalElement.style.display != 'none') { 422 modalElement.style.opacity = 0; 423 modalElement.style.display = 'none'; 424 425 if (typeof gtag != 'undefined') { 426 gtag_and_microsoft_uet('send', 'pageview', window.location.pathname); 427 } 428 } 429 430 runModalCallback( 431 modalConfig.closeCallbackCode, 432 modalConfig.name + ' close callback' 433 ); 434 435 return true; 436 } 437 438 function runPrimaryButtonAction() { 439 if (modalConfig.closeTargetId) { 440 var closeTarget = document.getElementById(modalConfig.closeTargetId); 441 if (!closeTarget) { 442 console.error('Modal close target not found', modalConfig); 443 return false; 444 } 445 446 closeTarget.click(); 447 return true; 448 } 449 450 if (modalConfig.primaryButtonActionCode) { 451 return runModalCallback( 452 modalConfig.primaryButtonActionCode, 453 modalConfig.name + ' primary button callback' 454 ); 455 } 456 457 return close(); 458 } 459 460 function handleBackdropClick(event) { 461 if (event.target.id == modalConfig.id) { 462 close(); 463 } 464 } 465 466 function handleKeydown(evt) { 467 evt = evt || window.event; 468 var isEscape = false;
469 if ('key' in evt) { 470 isEscape = evt.key === 'Escape' || evt.key === 'Esc'; 471 } else { 472 isEscape = evt.keyCode === 27; 473 } 474 475 if (isEscape) { 476 close(); 477 } 478 } 479 480 function handleOpenTriggerClick() { 481 open(); 482 } 483 484 function handleBackButtonClick() { 485 close(); 486 } 487 488 function handleCloseButtonClick() { 489 runPrimaryButtonAction(); 490 } 491 492 function handleCloseIconClick() { 493 close(); 494 } 495 496 if (openTrigger) { 497 openTrigger.addEventListener('click', handleOpenTriggerClick); 498 } 499 500 if (backButton) { 501 backButton.addEventListener('click', handleBackButtonClick); 502 } 503 504 if (closeButton) { 505 closeButton.addEventListener('click', handleCloseButtonClick); 506 } 507 508 if (closeIconButton) { 509 closeIconButton.addEventListener('click', handleCloseIconClick); 510 } 511 512 modalElement.addEventListener('click', handleBackdropClick); 513 document.addEventListener('keydown', handleKeydown); 514 515 var modalApi = window.lrRegisterModal(modalConfig.name, { 516 modalElement: modalElement, 517 openTrigger: openTrigger, 518 backButton: backButton, 519 closeButton: closeButton, 520 closeIconButton: closeIconButton, 521 open: open, 522 close: close 523 }); 524 525 if (typeof window.lrBridgeModalGlobals === 'function') { 526 window.lrBridgeModalGlobals(modalConfig.name); 527 } 528 529 modalApi._detach = function() { 530 document.removeEventListener('keydown', handleKeydown); 531 532 if (openTrigger) { 533 openTrigger.removeEventListener('click', handleOpenTriggerClick); 534 } 535 536 if (backButton) { 537 backButton.removeEventListener('click', handleBackButtonClick); 538 } 539 540 if (closeButton) { 541 closeButton.removeEventListener('click', handleCloseButtonClick); 542 } 543 544 if (closeIconButton) { 545 closeIconButton.removeEventListener('click', handleCloseIconClick); 546 } 547 548 if (modalElement) { 549 modalElement.removeEventListener('click', handleBackdropClick); 550 } 551 }; 552 553 return modalApi; 554 }; 555 556 if (!window.openSupportChat) { 557 window.openSupportChat = function openSupportChat(attempt = 0) { 558 if (attempt === 0 && typeof window.loadChatwootSupportScript === 'function') { 559 window.loadChatwootSupportScript(); 560 } 561 562 if (window.$chatwoot && typeof window.$chatwoot.toggle == 'function') { 563 window.$chatwoot.toggle('open'); 564 return; 565 } 566 567 if (attempt < 10) { 568 setTimeout(function () { 569 window.openSupportChat(attempt + 1); 570 }, 200); 571 return; 572 } 573 574 console.error('Chatwoot widget was not ready after repeated open attempts'); 575 if (typeof window.alert === 'function') { 576 window.alert('Live support is temporarily unavailable. Please try again shortly.'); 577 } 578 }; 579 } 580 581 if (!window.hideSupportChatWidget) { 582 window.hideSupportChatWidget = function hideSupportChatWidget() { 583 if (window.$chatwoot && typeof window.$chatwoot.toggle === 'function') { 584 try { 585 // Reason: toggle only accepts open/close. "hide" toggles a closed 586 // widget open instead of hiding it when the cart renders. 587 window.$chatwoot.toggle('close'); 588 } catch (chatWidgetError) { 589 // Reason: support chat is optional and must never interrupt checkout 590 // or receipt rendering while its SDK is still initializing. 591 console.warn('Unable to hide support chat widget', chatWidgetError); 592 } 593 } 594 }; 595 } 596 597 if (!window.showSupportChatWidget) { 598 window.showSupportChatWidget = function showSupportChatWidget() { 599 if (window.$chatwoot && typeof window.$chatwoot.toggleBubbleVisibility === 'function') { 600 try { 601 window.$chatwoot.toggleBubbleVisibility('show'); 602 } catch (chatWidgetError) { 603 // Reason: a partially loaded Chatwoot bubble must not stop cart or 604 // receipt components from rendering. 605 console.warn('Unable to show support chat widget', chatWidgetError); 606 } 607 } 608 }; 609 } 610 611 if (!window.waitForSupportChatReady) { 612 window.waitForSupportChatReady = function waitForSupportChatReady() { 613 return new Promise(function(resolve) { 614 if (window.chatwootReady && window.$chatwoot) {
615 resolve('chatwoot'); 616 return; 617 } 618 window.addEventListener('chatwoot:ready', function() { 619 resolve('chatwoot'); 620 }, { once: true }); 621 }); 622 }; 623 } 624 </script>
624 625 626 627 628<style> 629 :root { 630 --orange: #E87722; 631 --teal: #6AAEAA; 632 --blue: #53A6C4; 633 --yellow: #FFC600; 634 --gray1: #D9D9D6; 635 --gray2: #A7A8AA; 636 --gray3: #505759; 637 --white1: #F2F2F2; 638 } 639 .bchRolePrices { 640 display: flex; 641 } 642 .c-cart__upgrades--pricing{ 643 display: flex; 644 } 645 646 647</style> 648 649 650 651
652<script>window.MSInputMethodContext && document.documentMode && document.write('
652<script src="https://cdn.jsdelivr.net/gh/nuxodin/[email protected]/ie11CustomProperties.min.js"><\x2fscript>');</script>
652 653 654 655 656 657 658<!-- gatg for blogs --> 659 660
661<script> 662 663 664 //getting the cookie name 665function getCookie(name) { 666 var cookie = document.cookie.match('(^|;) ?' + name + '=([^;]*)(;|$)'); 667 668 669 670 if (cookie) { 671 var cookieValue = cookie[2] || ''; 672 // console.log('getCookie', {name, cookieValue}) 673 if(cookieValue == 'true') { 674 return true; 675 } else if(cookieValue === 'false') { 676 return false; 677 } else if(cookieValue === '1') { 678 return 1; 679 } else if(cookieValue === '-') { 680 return 0; 681 } 682 else if(!!cookieValue) { 683 try { 684 return decodeURIComponent(cookie[2]); 685 } catch (e) { 686 // Reason: Cookie value may be malformed URI-encoded. Return raw value as fallback. 687 console.warn('Failed to decode cookie value:', cookie[2], e); 688 return cookie[2]; 689 } 690 } else { 691 return null 692 } 693 } else { 694 return false; 695 } 696} 697 698function getCookies() { 699 var cookies = {}; 700 701 if (document.cookie && document.cookie != '') { 702 var split = document.cookie.split(';'); 703 for (var i = 0; i < split.length; i++) { 704 var name_value = split[i].split('='); 705 name_value[0] = name_value[0].replace(/^ /, ''); 706 try { 707 var decodedName = decodeURIComponent(name_value[0]); 708 var decodedValue = name_value[1] ? decodeURIComponent(name_value[1]) : ''; 709 cookies[decodedName] = decodedValue; 710 } catch (e) { 711 // Skip malformed cookies rather than breaking the entire getCookies() function. 712 console.warn('Skipping malformed cookie:', name_value[0], e); 713 continue; 714 } 715 } 716 } 717 return cookies; 718} 719 720function getTrackingCookies() { 721 var cookies = typeof getCookies === 'function' ? getCookies() : {}; 722 var allowedCookieNames = [ 723 'WEB_UNIQUE_ID', 724 'last_pages', 725 'previous_page', 726 'is_bot', 727 'is_override', 728 'ignore_tracking', 729 'is_test', 730 'debug_mode', 731 'show_self_booking', 732 'testing_website_domain', 733 'session_id', 734 'client_id', 735 'language', 736 'force_language', 737 'ab_data', 738 'adStorageConsent', 739 'ad_storage', 740 'ad_user_data', 741 'analytics_storage', 742 'lr_vid', 743 'google_non_spam_score', 744 'utm_source', 745 'utm_medium', 746 'utm_content', 747 'utm_campaign', 748 'utm_category', 749 'utm_campaign_name', 750 'utm_term', 751 'keyword', 752 'gclid', 753 'fbclid', 754 'fbclid_long', 755 'ttclid', 756 'msclkid', 757 'gbraid', 758 'wbraid', 759 'cjevent', 760 'entry_url', 761 'entry_url_from_cookie', 762 'orig_referer', 763 'last_paid_visit_date', 764 'last_paid_utm_source', 765 'last_paid_utm_campaign', 766 'last_paid_utm_category', 767 'sch_tcid', 768 'tcid', 769 'matched_tcid', 770 'fl_uuid', 771 'el_UUID', 772 'corporate_uuid', 773 'lr_partner_id', 774 'partner', 775 'custom_store', 776 'sch_discount', 777 'showBarHunt', 778 'showGhostHunt', 779 'last_viewed_hunt_id', 780 'hunt_city_id', 781 'hunt_city_confirmed', 782 'hunt_city_name', 783 'hunt_city_slug', 784 '_ga', 785 '_fbp', 786 '_fbc', 787 ]; 788 var allowedPrefixes = ['AB_', '_ga_', '_gcl_', '_hj']; 789 var allowedCookieLookup = {}; 790 var trackingCookies = {}; 791 792 allowedCookieNames.forEach(function(cookieName) { 793 allowedCookieLookup[cookieName] = true; 794 }); 795 796 Object.keys(cookies).forEach(function(cookieName) { 797 var isAllowed = !!allowedCookieLookup[cookieName]; 798 if (!isAllowed) { 799 isAllowed = allowedPrefixes.some(function(prefix) { 800 return cookieName.indexOf(prefix) === 0; 801 }); 802 } 803 804 if (!isAllowed) { 805 return; 806 } 807 808 var cookieValue = cookies[cookieName] == null ? '' : String(cookies[cookieName]); 809 if (cookieValue.toLowerCase().indexOf('data:image') !== -1 || cookieValue.length > 1200) { 810 return; 811 } 812 813 trackingCookies[cookieName] = getBrowserSafeCookieValue(cookieName, cookieValue); 814 }); 815 816 return trackingCookies; 817} 818 819function getBrowserCookieValueLimit(cname) { 820 var limits = { 821 last_pages: 300, 822 utm_source: 600, 823 utm_medium: 600, 824 utm_content: 600, 825 utm_campaign: 600, 826 utm_category: 600, 827 utm_campaign_name: 700, 828 utm_term: 600, 829 keyword: 600, 830 gclid: 1024, 831 fbclid: 1024, 832 ttclid: 1024, 833 msclkid: 1024, 834 gbraid: 1024, 835 wbraid: 1024, 836 cjevent: 1024, 837 fbclid_long: 1100, 838 session_id: 80, 839 client_id: 120, 840 entry_url: 250,
841 entry_url_from_cookie: 250, 842 orig_referer: 250, 843 previous_page: 250, 844 email: 254, 845 phone: 40, 846 phone_number: 40, 847 name: 160, 848 first_name: 80, 849 last_name: 80, 850 userInfo: 400, 851 ab_data: 1000, 852 }; 853 854 return limits[cname] || null; 855} 856 857function getBrowserSafeUserInfoCookieValue(cValue) { 858 var userInfoLimit = getBrowserCookieValueLimit('userInfo') || 600; 859 var stringValue = cValue == null ? '' : String(cValue); 860 var userInfo = null; 861 862 try { 863 userInfo = JSON.parse(stringValue); 864 } catch (e) { 865 return stringValue.slice(0, userInfoLimit); 866 } 867 868 if (!userInfo || typeof userInfo !== 'object' || Array.isArray(userInfo)) { 869 return stringValue.slice(0, userInfoLimit); 870 } 871 872 var allowedFields = { 873 userId: 24, 874 prepaidJoinCode: 40, 875 easyUserLevelJoinCode: 40, 876 email: 254, 877 contactEmail: 254, 878 contactPhone: 40, 879 firstName: 80, 880 lastName: 80, 881 photoUrl: 180, 882 socialPhotoUrl: 180, 883 coins: 12, 884 level: 12, 885 loggedIn: 8, 886 source: 60, 887 userType: 60, 888 memberReceiptId: 24, 889 memberReceiptTid: 24, 890 stripeCustomerToken: 60, 891 last4Digits: 8, 892 last4CardDigits: 8, 893 countryCode: 8, 894 }; 895 896 var safeUserInfo = {}; 897 Object.keys(allowedFields).forEach(function(fieldName) { 898 if (!Object.prototype.hasOwnProperty.call(userInfo, fieldName)) { 899 return; 900 } 901 902 var fieldValue = userInfo[fieldName]; 903 if (fieldValue == null || fieldValue === '') { 904 return; 905 } 906 907 if (typeof fieldValue === 'boolean' || typeof fieldValue === 'number') { 908 safeUserInfo[fieldName] = fieldValue; 909 return; 910 } 911 912 if (typeof fieldValue === 'object') { 913 return; 914 } 915 916 safeUserInfo[fieldName] = String(fieldValue).slice(0, allowedFields[fieldName]); 917 }); 918 919 var encodedUserInfo = JSON.stringify(safeUserInfo); 920 [ 921 'socialPhotoUrl', 922 'photoUrl', 923 'stripeCustomerToken', 924 'last4Digits', 925 'last4CardDigits', 926 'memberReceiptTid', 927 'memberReceiptId', 928 'easyUserLevelJoinCode', 929 'source', 930 'userType', 931 'level', 932 'coins', 933 'countryCode', 934 ].forEach(function(fieldName) { 935 if (encodedUserInfo.length <= userInfoLimit) { 936 return; 937 } 938 939 delete safeUserInfo[fieldName]; 940 encodedUserInfo = JSON.stringify(safeUserInfo); 941 }); 942 943 if (encodedUserInfo.length > userInfoLimit) { 944 var minimumUserInfo = {}; 945 [ 946 'userId', 947 'prepaidJoinCode', 948 'email', 949 'contactEmail', 950 'contactPhone', 951 'firstName', 952 'lastName', 953 'loggedIn', 954 ].forEach(function(fieldName) { 955 if (Object.prototype.hasOwnProperty.call(safeUserInfo, fieldName)) { 956 minimumUserInfo[fieldName] = safeUserInfo[fieldName]; 957 } 958 }); 959 encodedUserInfo = JSON.stringify(minimumUserInfo); 960 [ 961 'contactEmail', 962 'email', 963 'contactPhone', 964 'lastName', 965 'prepaidJoinCode', 966 ].forEach(function(fieldName) { 967 if (encodedUserInfo.length <= userInfoLimit) { 968 return; 969 } 970 971 delete minimumUserInfo[fieldName]; 972 encodedUserInfo = JSON.stringify(minimumUserInfo); 973 }); 974 } 975 976 return encodedUserInfo.length <= userInfoLimit ? encodedUserInfo : '{}'; 977 } 978 979 function getBrowserSafeAbDataCookieValue(cValue) { 980 var stringValue = cValue == null ? '' : String(cValue); 981 var abData = null; 982 983 try { 984 abData = JSON.parse(stringValue); 985 } catch (e) { 986 return '{}'; 987 } 988 989 if (!abData || typeof abData !== 'object' || Array.isArray(abData)) { 990 return '{}'; 991 } 992 993 var safeAbData = {}; 994 Object.keys(abData).forEach(function(testName) { 995 var testValue = abData[testName]; 996 if (testValue !== null && typeof testValue === 'object') { 997 return; 998 } 999 1000 var safeTestName = String(testName).slice(0, 80); 1001 if (!safeTestName) { 1002 return; 1003 } 1004 1005 var safeTestValue = (typeof testValue === 'boolean' || typeof testValue === 'number') 1006 ? testValue 1007 : String(testValue).slice(0, 40); 1008 var nextAbData = Object.assign({}, safeAbData); 1009 nextAbData[safeTestName] = safeTestValue; 1010 var encodedNextAbData = JSON.stringify(nextAbData); 1011 if (encodedNextAbData.length <= 1000) { 1012 safeAbData = nextAbData; 1013 } 1014 }); 1015 1016 var encodedAbData = JSON.stringify(safeAbData); 1017 return encodedAbData.length <= 1000 ? encodedAbData : '{}'; 1018 } 1019 1020 function getBrowserSafeCookieValue(cname, cValue) { 1021 var limit = getBrowserCookieValueLimit(cname); 1022 var stringValue = cValue == null ? '' : String(cValue); 1023 if (cname === 'userInfo') { 1024 return getBrowserSafeUserInfoCookieValue(stringValue); 1025 } 1026 if (cname === 'ab_data') { 1027 return getBrowserSafeAbDataCookieValue(stringValue); 1028 } 1029 1030 if (!limit || stringValue.length <= limit) { 1031 return stringValue; 1032 } 1033 1034 return stringValue.slice(0, limit); 1035} 1036 1037function shouldUseHostOnlyCookie(cname) { 1038 return false;
1039} 1040 1041function setCookie(cname, cValue) { 1042 // header utilities 1043 console.log(`set cookie fired ${cname}`, { cValue }); 1044 if (cname === 'cart') { 1045 deleteCookie('cart'); 1046 return; 1047 } 1048 1049 var d = new Date(); 1050 if (typeof cValue == 'object') { 1051 cValue = JSON.stringify(cValue); 1052 } 1053 cValue = getBrowserSafeCookieValue(cname, cValue); 1054 if (['sch_cart', 'sch_cy', 'sch_cy_set_by_user'].includes(cname) || shouldUseHostOnlyCookie(cname)) { 1055 deleteCookie(cname); 1056 } 1057 let domain = shouldUseHostOnlyCookie(cname) ? '' : getCookieDomain(); 1058 console.log({ domain }); 1059 console.log('sett cookie fired', { cname, cValue }); 1060 d.setTime(d.getTime() + 120 * 24 * 60 * 60 * 1000); 1061 var expires = d.toUTCString(); 1062 const domainSection = domain ? `;domain=${domain}` : ''; 1063 const secureSection = window.location.protocol === 'https:' ? ';Secure' : ''; 1064 const rawValueCookieNames = ['sch_cart']; 1065 const cookieName = encodeURIComponent(cname); 1066 const cookieValue = rawValueCookieNames.includes(cname) ? cValue : encodeURIComponent(cValue); 1067 const newCookie = `${cookieName}=${cookieValue};expires=${expires};path=/${domainSection};SameSite=Lax${secureSection}`; 1068 console.log({newCookie}) 1069 document.cookie = newCookie; 1070 // Any cart-writing flow can add the first item. Let the shared store loader 1071 // warm Stripe/Quick Pay without coupling every ticket picker to that loader. 1072 if ( 1073 cname === 'sch_cart' && 1074 typeof window.ensurePaymentSdksForPopulatedCart === 'function' 1075 ) { 1076 window.ensurePaymentSdksForPopulatedCart( 1077 cValue, 1078 'cart-cookie-populated' 1079 ); 1080 } 1081} 1082window.setCookie = setCookie; 1083 1084function deleteCookie(cname) { 1085 if (typeof trace === 'function') { 1086 trace('deleteCookie-' + cname); 1087 } 1088 var domain = getCookieDomain(); 1089 console.log({ domain }); 1090 var expires = 'expires=Thu, 01 Jan 1970 00:00:01 GMT'; 1091 document.cookie = cname + '=' + ';' + expires + `;domain=;path=/`; 1092 document.cookie = cname + '=' + ';' + expires + ';path=/'; 1093 if (domain) { 1094 document.cookie = cname + '=' + ';' + expires + `;domain=${domain};path=/`; 1095 document.cookie = 1096 cname + '=' + ';' + expires + `;domain=www.${domain};path=/`; 1097 document.cookie = 1098 cname + '=' + ';' + expires + `;domain=.www.${domain};path=/`; 1099 } 1100 } 1101 1102function compactExistingUserInfoCookie() { 1103 var existingUserInfo = getCookie('userInfo'); 1104 if (!existingUserInfo) { 1105 return; 1106 } 1107 1108 var safeUserInfo = getBrowserSafeCookieValue('userInfo', existingUserInfo); 1109 if (safeUserInfo && safeUserInfo !== existingUserInfo) { 1110 setCookie('userInfo', safeUserInfo); 1111 } 1112} 1113 1114function compactExistingAbDataCookie() { 1115 var existingAbData = getCookie('ab_data'); 1116 if (!existingAbData) { 1117 return; 1118 } 1119 1120 var safeAbData = getBrowserSafeCookieValue('ab_data', existingAbData); 1121 if (safeAbData && safeAbData !== existingAbData) { 1122 setCookie('ab_data', safeAbData); 1123 } 1124} 1125 1126function deleteLegacyCartCookie() { 1127 if (getCookie('cart')) { 1128 deleteCookie('cart'); 1129 } 1130} 1131 1132function deleteLowValueAnalyticsCookies() { 1133 ['cfz_google-analytics_v4', 'cfzs_google-analytics_v4'].forEach(function(cname) { 1134 if (getCookie(cname)) { 1135 deleteCookie(cname); 1136 } 1137 }); 1138} 1139 1140function getCookieDomain() { 1141 var hostname = window.location.hostname; 1142 1143 if ( 1144 hostname === 'localhost' || 1145 hostname.includes('.local.com') 1146 ) { 1147 return ''; 1148 } 1149 1150 var prTestSiteMatch = hostname.match(/^pr-[0-9]+\.test-site\.(letsroam|scavengerhunt|adventurebook)\.com$/); 1151 if (prTestSiteMatch) { 1152 return '.' + prTestSiteMatch[1] + '.com'; 1153 } 1154 1155 return window.location.host 1156 .replace('www.', '.') 1157 .replace('www.', '.') 1158 .replace('test-site.', '.') 1159 .replace(':8888', '') 1160 .replace(':5757', '') 1161 .replace('letsroam.local', '.local'); 1162} 1163 1164compactExistingUserInfoCookie(); 1165compactExistingAbDataCookie(); 1166deleteLegacyCartCookie(); 1167deleteLowValueAnalyticsCookies(); 1168</script>
1168 1169 1170 1171 1172 1173 1174 1175 1176
1177<script> 1178 var GEO_LAT = `41.85003`; 1179 var GEO_LONG = `-87.65005` 1180 var WEBSITE_DOMAIN = `letsroam` 1181 var cy = `usd` 1182 console.log('cy on page load: ' + cy) 1183 var PAGE_VIEW_ID = `1fe3a3931cd3ae695758` 1184 1185 // Google Ads conversion send_to IDs 1186 // google tags 1187 const google_ads_conversions_send_ids = {"purchase":"AW-878770880\/SkyECKP9iYcbEMD1g6MD","lr__lead__team_building":"AW-878770880\/Tb7zCKb9iYcbEMD1g6MD","lr__lead__bachelorette":"AW-878770880\/fFVCCKn9iYcbEMD1g6MD","lr__lead__birthday":"AW-878770880\/wBv6CKz9iYcbEMD1g6MD","lr__lead__charity":"AW-878770880\/MlHzCK_9iYcbEMD1g6MD","lr__lead__b2b_partnerships":"AW-878770880\/s61DCPf9locbEMD1g6MD","lr__self_purchase__birthday":"AW-878770880\/rtWuCPr9locbEMD1g6MD","lr__self_purchase__bach":"AW-878770880\/PjXWCP39locbEMD1g6MD","lr__free_trial__team_building":"AW-878770880\/J1lICID-locbEMD1g6MD","lr__self_purchase__team_building":"AW-878770880\/4oNqCIP-locbEMD1g6MD","test_action":"AW-878770880\/jBu4CMKvjYcbEMD1g6MD","lr__meeting_booked__team_building":"AW-878770880\/rjrRCK6W0LIbEMD1g6MD","lr__meeting_held__team_building":"AW-878770880\/p8ESCIXv5MMcEMD1g6MD","lr__rep_assisted_purchase__team_building":"AW-878770880\/-CWaCP2l5cMcEMD1g6MD","lr__meeting_booked_all_val_team_building":"AW-878770880\/MlJnCI3Bx_QcEMD1g6MD"}; 1188</script>
1188 1189
1190<script> 1191function loadScript(url, callback, type = 'text/javascript', defer = false) { 1192 trace('loadScript-' + url) 1193 // adding the script tag to the head as suggested before 1194 var head = document.getElementsByTagName('head')[0]; 1195 var script = document.createElement('script'); 1196 script.type = type; 1197 script.src = url; 1198 1199 if (defer) { 1200 script.defer = true; 1201 } 1202 1203 // then bind the event to the callback function 1204 // there are several events for cross browser compatibility 1205 script.onreadystatechange = callback; 1206 script.onload = callback; 1207 script.onerror = function() { 1208 console.error('Failed to load script: ' + url); 1209 }; 1210 1211 // fire the loading 1212 head.appendChild(script); 1213 1214 } 1215 1216 window.dataLayer = window.dataLayer || []; 1217 // make sure matches with google_gtag.php 1218 window.isTest = false; 1219 window.LR_CANONICAL_TRACKING = window.LR_CANONICAL_TRACKING || {"gclid":"","fbclid":"","fbclid_long":"","msclkid":"","msclkid_captured_at":null}; 1220 1221 1222 function gtag_and_microsoft_uet() { 1223 1224 1225 var gtag_original_event_name = arguments[1]; 1226 1227 1228 // Check if the first argument is 'event' and URL contains 'test' 1229 if (arguments[0] === 'event' && window.isTest && !window.location.href.includes('tracking')) { 1230 // Modify the second argument 1231 arguments[1] = 'test_' + arguments[1]; 1232 } 1233 1234 var canonicalGclid = window.LR_CANONICAL_TRACKING && window.LR_CANONICAL_TRACKING.gclid; 1235 if(arguments[2] && typeof arguments[2] === 'object' && !arguments[2].gclid && (canonicalGclid || getCookie('gclid'))) { 1236 // Deep copy the original parameters object 1237 arguments[2].gclid = canonicalGclid || getCookie('gclid'); 1238 } 1239 1240 // Automatically inject A/B test data into all events 1241 // This allows GA4 to attribute any conversion to A/B test variants 1242 if (arguments[0] === 'event' && arguments[2] && typeof arguments[2] === 'object') { 1243 try { 1244 var abDataCookie = getCookie('ab_data'); 1245 if (abDataCookie && typeof abDataCookie === 'string') { 1246 var parsedAbData = JSON.parse(abDataCookie); 1247 for (var testName in parsedAbData) { 1248 // Strip AB_ prefix if present to match server-side naming 1249 var cleanName = testName.replace(/^AB_/, ''); 1250 // GA4 parameter names limited to 40 chars, using ab_ prefix 1251 var ga4ParamName = ('ab_' + cleanName).substring(0, 40); 1252 // Only add if not already set (don't override explicit values) 1253 if (arguments[2][ga4ParamName] === undefined) { 1254 arguments[2][ga4ParamName] = parseInt(parsedAbData[testName], 10); 1255 } 1256 } 1257 } 1258 } catch (e) { 1259 console.log_on_production('Error injecting ab_data into gtag event:', e); 1260 } 1261 } 1262 1263 console.log('gtag called', { arguments: arguments, isConvertGTAGToUETFunction: typeof convertGTAGToUET == 'function', isTest: window.isTest }); 1264 1265 // GA4 custom events do not share purchase transaction-ID deduplication. 1266 // These events now have one server owner. The Ads call below remains intact. 1267 var serverOwnedGa4 = arguments[0] === 'event' && [ 1268 'lr__meeting_booked__team_building', 1269 'lr__meeting_booked_all_val_team_building', 1270 'lr__rep_assisted_purchase__team_building', 1271 'sch__rep_assisted_purchase__team_building', 1272 'sch__rep_assisted_purchase_team_building' 1273 ].includes(gtag_original_event_name); 1274 if (!serverOwnedGa4) dataLayer.push(arguments); 1275 1276 // sending data to google ads 1277 try { 1278 var googleAdsLookupName = googleAdsConversionLookupName(gtag_original_event_name); 1279 if (typeof google_ads_conversions_send_ids !== 'undefined' && google_ads_conversions_send_ids[googleAdsLookupName]) { 1280 alsoSendGoogleAdsTagEvent(...arguments); 1281 } 1282 } catch (googleTrackingError) { console.error('Google Ads dispatch failed'); } 1283 1284 // converting events to microsoft uet 1285 // ignore donations page 1286 if (typeof convertGTAGToUET == 'function' && !window.location.href.includes('donations')) { 1287 convertGTAGToUET(...arguments); 1288 } 1289 } 1290 1291 window.recordCorporateServerDeliveries = function(receipts) { 1292 if (!Array.isArray(receipts)) return; 1293 window.corporateServerDeliveries = receipts; 1294 var append = function() {
1295 receipts.forEach(function(receipt) { 1296 if (!receipt || !receipt.log_id || !['received', 'accepted', 'accepted_with_warnings'].includes(receipt.status)) return; 1297 var id = 'corporate-server-delivery-' + receipt.log_id; 1298 if (document.getElementById(id)) return; 1299 var marker = document.createElement('div'); 1300 marker.id = id; 1301 marker.className = 'corporate-server-delivery'; 1302 marker.hidden = true; 1303 ['channel', 'event_name', 'event_id', 'status', 'log_id', 'value', 'currency'].forEach(function(key) { 1304 marker.setAttribute('data-' + key.replaceAll('_', '-'), String(receipt[key] ?? '')); 1305 }); 1306 document.body.appendChild(marker); 1307 }); 1308 }; 1309 if (document.body) append(); 1310 else document.addEventListener('DOMContentLoaded', append, {once: true}); 1311 }; 1312 1313 function googleAdsConversionLookupName(eventName) { 1314 // The approved GA4 name is already at GA4's 40-character limit. SCH keeps 1315 // that same GA4 event name in its own property, while its Ads action uses 1316 // the SCH-prefixed lookup row. Do not remap the original meeting event. 1317 if (WEBSITE_DOMAIN === 'sch' && eventName === 'lr__meeting_booked_all_val_team_building') { 1318 return 'sch__meeting_booked_all_val_team_building'; 1319 } 1320 return eventName; 1321 } 1322 1323 function alsoSendGoogleAdsTagEvent(originalArgs) { 1324 // Create a completely new copy of the arguments array 1325 1326 var gtag_original_event_name = arguments[1].replace('test_', ''); 1327 var canonicalAdsEventName = gtag_original_event_name; 1328 var googleAdsLookupName = googleAdsConversionLookupName(gtag_original_event_name); 1329 1330 var useTestValueForEventName = window.isTest && !getCookie('debug_mode') && !window.location.href.includes('debug'); 1331 if(useTestValueForEventName) { 1332 googleAdsLookupName = 'test_action'; 1333 } 1334 1335 1336 1337 // Create a completely new copy of the arguments array 1338 1339 // Modify the arguments: event, conversion, {original_params + send_to} 1340 arguments[0] = 'event'; 1341 arguments[1] = 'conversion'; 1342 1343 // Create a new parameters object to avoid modifying the original 1344 var newParams = {}; 1345 if(arguments[2] && typeof arguments[2] === 'object') { 1346 // Deep copy the original parameters object 1347 newParams = JSON.parse(JSON.stringify(arguments[2])); 1348 1349 console.log('newParams', {newParams}) 1350 1351 } 1352 1353 // Add send_to to the new parameters object 1354 newParams['send_to'] = google_ads_conversions_send_ids[googleAdsLookupName]; 1355 if (['lr__meeting_booked__team_building','lr__meeting_booked_all_val_team_building','lr__rep_assisted_purchase__team_building','sch__rep_assisted_purchase__team_building'].includes(canonicalAdsEventName) 1356 && !newParams.transaction_id && newParams.event_id) newParams.transaction_id = newParams.event_id; 1357 1358 // Assign the new parameters object to conversionArgs 1359 arguments[2] = newParams; 1360 1361 1362 console.log_on_production('alsoSendGoogleAdsTagEvent', {arguments, gtag_original_event_name, googleAdsLookupName, useTestValueForEventName}) 1363 1364 // Call gtag directly to create proper arguments object 1365 dataLayer.push(arguments); 1366 } 1367 1368 1369 // used for debugging 1370 function findEventNameIsTestOrActual(gtagEventName) { 1371 var actualGTAGName = ''; 1372 dataLayer.map(dataLayerItem => { 1373 if(dataLayerItem[0] == 'event' && dataLayerItem[1].includes(gtagEventName)) { 1374 actualGTAGName = dataLayerItem[1]; 1375 } 1376 }) 1377 return actualGTAGName; 1378 } 1379</script>
1379 1380
1381<script> 1382 // Tippy's UMD bundle still expects Popper 2 to be loaded first. 1383 var tippyPopperUrl = "https://unpkg.com/@popperjs/[email protected]/dist/umd/popper.min.js"; 1384 var tippyBundleUrl = "https://unpkg.com/[email protected]/dist/tippy-bundle.umd.min.js"; 1385 1386 function loadTippyDependencyOnce(url, isReady) { 1387 if(isReady()) { 1388 return Promise.resolve(); 1389 } 1390 1391 window.lrTippyDependencyPromises = window.lrTippyDependencyPromises || {}; 1392 if(window.lrTippyDependencyPromises[url]) { 1393 return window.lrTippyDependencyPromises[url]; 1394 } 1395 1396 window.lrTippyDependencyPromises[url] = new Promise(function(resolve, reject) { 1397 var existingScript = Array.from(document.querySelectorAll('script[src]')).find(function(script) { 1398 return script.src === url; 1399 }); 1400 1401 if(existingScript && existingScript.dataset.lrTippyLoadState !== 'loading') { 1402 existingScript.remove(); 1403 existingScript = null; 1404 } 1405 1406 var script = existingScript || document.createElement('script'); 1407 1408 function discardScript() { 1409 script.dataset.lrTippyLoadState = 'failed'; 1410 script.remove(); 1411 } 1412 1413 function finishLoading() { 1414 if(isReady()) { 1415 script.dataset.lrTippyLoadState = 'loaded'; 1416 resolve(); 1417 } else { 1418 discardScript(); 1419 reject(new Error('Script loaded without its expected global: ' + url)); 1420 } 1421 } 1422 1423 function failLoading() { 1424 discardScript(); 1425 reject(new Error('Failed to load script: ' + url)); 1426 } 1427 1428 script.addEventListener('load', finishLoading, { once: true }); 1429 script.addEventListener('error', failLoading, { once: true }); 1430 1431 if(!existingScript) { 1432 script.dataset.lrTippyLoadState = 'loading'; 1433 script.src = url; 1434 script.async = true; 1435 document.head.appendChild(script); 1436 } 1437 }).catch(function(error) { 1438 delete window.lrTippyDependencyPromises[url]; 1439 throw error; 1440 }); 1441 1442 return window.lrTippyDependencyPromises[url]; 1443 } 1444 1445 function loadTippyBundleOnce() { 1446 if(typeof window.tippy == 'function') { 1447 return Promise.resolve(window.tippy); 1448 } 1449 1450 if(window.lrTippyBundleLoadPromise) { 1451 return window.lrTippyBundleLoadPromise; 1452 } 1453 1454 window.lrTippyBundleLoadPromise = loadTippyDependencyOnce(tippyPopperUrl, function() { 1455 return typeof window.Popper == 'object' && typeof window.Popper.createPopper == 'function'; 1456 }) 1457 .then(function() { 1458 return loadTippyDependencyOnce(tippyBundleUrl, function() { 1459 return typeof window.tippy == 'function'; 1460 }); 1461 }) 1462 .then(function() { 1463 return window.tippy; 1464 }) 1465 .catch(function(error) { 1466 window.lrTippyBundleLoadPromise = null; 1467 throw error; 1468 }); 1469 1470 return window.lrTippyBundleLoadPromise; 1471 } 1472 1473 function safeTippy(options, options2 = {}) { 1474 if(typeof window.tippy == 'function') { 1475 return Promise.resolve(window.tippy(options, options2)); 1476 } 1477 1478 return loadTippyBundleOnce() 1479 .then(function(tippyFunction) { 1480 return tippyFunction(options, options2); 1481 }) 1482 .catch(function(error) { 1483 console.error(error); 1484 return null; 1485 }); 1486 } 1487</script>
1487 1488
1489<script> 1490 var functionTrace = [] 1491 function trace(name = null, params){ 1492 // console.log("trace", {name, params}) 1493 var callingFunctionName= name || (trace.caller ? trace.caller.name : 'unknown'); 1494 functionTrace.unshift(callingFunctionName) 1495 functionTrace = functionTrace.slice(0,10) 1496 } 1497 1498 var fetchWithParams = async (url, params = {}, headers = {}, method = "POST", onFail = null, returnErrorResponse = false) => { 1499 typeof trace != 'undefined' && trace('fetchWithParams3-' + url); 1500 try { 1501 const newHeaders = { 'Content-Type': 'application/json', ...headers } 1502 1503 if(url && url.includes('proxy') ) { 1504 params['Authorization'] = newHeaders['Authorization']; 1505 } 1506 1507 if(getCookie('ignore_tracking')) { 1508 params['ignore_tracking'] = '1'; 1509 } 1510 1511 1512 1513 if(method == 'POST' && typeof getTrackingCookies == 'function' && url && (url.includes('letsroam') || url.includes('scavengerhunt') || url.includes('adventurebook') || url.charAt(0) === '/' )) { 1514 params['cookies'] = getTrackingCookies(); 1515 } 1516 1517 if(method == 'POST' && url && (url.includes('letsroam') || url.includes('scavengerhunt') || url.includes('adventurebook') || url.charAt(0) === '/' )) { 1518 const submissionTime = new Date().toLocaleString("en-US",{timeZone:"America/Denver"}); 1519 params['submission_time'] = submissionTime; 1520 // Use Unix epoch seconds for timezone-safe server-side validation 1521 params['sbt'] = btoa(Math.floor(Date.now() / 1000).toString()); 1522 } 1523 1524 1525 1526 // adding language to the url if it's not the default 1527 const language = getCookie('language'); 1528 if(url.charAt(0) === '/' && language && language != 'en' && !url.includes(language)) { 1529 url = `/${language}${url}`; 1530 } 1531 console.log('fetchWithParams language', { url, language }); 1532 1533 1534 params['WEB_UNIQUE_ID'] = "bot_89be54e802"; 1535 1536 const postOptions = { 1537 method, 1538 headers: newHeaders, 1539 body: method != "GET" ? JSON.stringify({submission_url: window.location.href, ...params}) : undefined, 1540 } 1541 if(url.includes('create_lead_endpoint')) { 1542 postOptions['mode'] = 'cors'; 1543 postOptions['cache'] = 'no-cache'; 1544 postOptions['credentials'] = 'same-origin'; 1545 postOptions['redirect'] = 'follow'; 1546 postOptions['referrerPolicy'] = 'no-referrer'; 1547 } 1548 1549 1550 console.log('doing network request!', { url, newHeaders, params }); 1551 var response = await fetch(url, postOptions); 1552 1553 if (response.status < 300) { 1554 console.log({response}) 1555 const jsonData = await response.json(); 1556 if (url.includes('create_lead_endpoint') && jsonData && !jsonData.error_message && 1557 jsonData.company && typeof window.sendMicrosoftConversion === 'function') { 1558 window.sendMicrosoftConversion(jsonData.company.microsoft_conversion); 1559 } 1560 if ( 1561 url.includes('create_lead_endpoint') && 1562 jsonData && 1563 !jsonData.error_message && 1564 jsonData.company && 1565 (jsonData.company.UUID || jsonData.company.uuid) && 1566 typeof trackGoogleEnhancedLeadFormSubmission === 'function' 1567 ) { 1568 try { 1569 await trackGoogleEnhancedLeadFormSubmission(params, jsonData); 1570 } catch (enhancedLeadTrackingError) { 1571 console.error('Enhanced lead tracking failed', { 1572 enhancedLeadTrackingError, 1573 }); 1574 } 1575 } 1576 return jsonData; 1577 } else if(response.status == 403) { 1578 const xbwHeader = response.headers.get('X-BW'); 1579 if(xbwHeader) { 1580 setCookie('high_risk', '1'); 1581 // alert("Critical Error. The form could not be submitted. Please Call 1(833) 202-ROAM (7626) if you have an inquiry about a team building event."); 1582 // window.location.reload(); 1583 if(returnErrorResponse) { 1584 return { 1585 status: false, 1586 error: { 1587 code: 'high_risk_request_blocked', 1588 message: 'The request was blocked.', 1589 retryable: false, 1590 }, 1591 result: null, 1592 }; 1593 } 1594 return; 1595 } 1596 } 1597 1598 if(returnErrorResponse) { 1599 try { 1600 const errorResponseData = await response.json(); 1601 if(errorResponseData && typeof errorResponseData == 'object') { 1602 return errorResponseData; 1603 } 1604 } catch (errorResponseParseError) { 1605 console.error('Unable to parse API error response', { 1606 errorResponseParseError, 1607 status: response.status, 1608 }); 1609 } 1610 1611 return { 1612 status: false, 1613 error: { 1614 code: 'http_' + response.status, 1615 message: 'The API request did not complete successfully.', 1616 retryable: response.status >= 500, 1617 }, 1618 result: null, 1619 }; 1620 } 1621 1622 throw new Error('api fetch call failed', response); 1623 } catch (fetchWithParamsError) { 1624 console.error(url, { fetchWithParamsError }); 1625 if(typeof onFail == 'function') { 1626 onFail(fetchWithParamsError); 1627 } 1628 // Return error object instead of undefined so calling code can handle it 1629 return { 1630 status: false, 1631 error: fetchWithParamsError?.message || 'Network error occurred', 1632 result: null 1633 }; 1634 } 1635 }; 1636 1637 1638 1639 var getStackTrace = function() { 1640 var obj = {}; 1641 Error.captureStackTrace(obj, getStackTrace) || {}; 1642 return obj.stack || {}; 1643 }; 1644 1645 1646 function logDevError(message, stack) { 1647 const params = { 1648 message: message, 1649 stack: stack + JSON.stringify(getStackTrace()), 1650 type: 'Cloud functions', 1651 full_stack_trace: 'firebase functions: ' + location, 1652 affected_url: 'firebase functions: ' + location, 1653 }; 1654 const jsonParams = JSON.stringify(params); 1655 console.log_on_production('jsonParams', jsonParams); 1656 const url = 1657 'https://www.letsroam.com/api/api_app_notifications_v1/logPhpError'; 1658 if(ENVIRONMENT == 'production') { 1659 fetchWithParams(url, params); 1660 } else { 1661 console.error('Not logging to server because dev but error happened', {message, stack}) 1662 } 1663 1664 } 1665function getAbsoluteHeight(el) { 1666 var el = typeof el === 'string' ? document.querySelector(el) : el; 1667 if (!el) return 0; 1668 var styles = window.getComputedStyle(el); 1669 var margin = 1670 parseFloat(styles['marginTop']) + parseFloat(styles['marginBottom']); 1671 1672 return Math.ceil(el.offsetHeight + margin); 1673} 1674 1675 1676 1677 1678// moved to top since often used in header
1679 function smoothScroll(el, hideHighlight = false, onFail, customOffset = 0) { 1680 console.log({ el }); 1681 el = typeof el === 'string' ? document.querySelector(el) : el; 1682 if (!el) { 1683 if(typeof onFail == 'function') { 1684 onFail() 1685 } 1686 return console.log('could not find smoothScroll el:', el); 1687 } 1688 typeof closeNav != 'undefined' && closeNav(); //set in navheader 1689 var position = el.offsetTop - getAbsoluteHeight('#document-header') - customOffset; 1690 1691 // adusting for no scroll header 1692 var offset = 25; 1693 1694 // console.log({ offset }); 1695 1696 if (Math.abs(window.scrollY - position) < offset) { 1697 //so users have some feedback if they click a button on it 1698 window.scroll({ 1699 top: window.scrollY - offset, 1700 }); 1701 } 1702 if ( 1703 typeof window.scrollTo === 'function' && 1704 Math.abs(window.scrollY - el.offsetTop) < 3000 1705 ) { 1706 window.scrollTo({ 1707 top: position + (document.querySelector('#no_scroll_header') ? 75 : 0), 1708 behavior: 'smooth', 1709 }); 1710 } else { 1711 // position = 1000; 1712 window.scroll({ 1713 top: position, 1714 behavior: 'smooth' 1715 }); 1716 } 1717 1718 // Reason: one correction at 1s missed layout that changes later (a closing 1719 // cart modal, late renders, images) on slow devices and left the visitor 1720 // stranded away from the target. Re-check a few times over a short window, 1721 // and stop as soon as the visitor scrolls, clicks, or types themselves. 1722 var visitorTookOver = false; 1723 var takeOverEvents = ['wheel', 'touchmove', 'keydown', 'mousedown']; 1724 var markVisitorTookOver = function () { visitorTookOver = true; }; 1725 takeOverEvents.forEach(function (type) { 1726 window.addEventListener(type, markVisitorTookOver, { passive: true }); 1727 }); 1728 var correctionDelays = [1000, 2000, 3500]; 1729 correctionDelays.forEach(function (delay, index) { 1730 setTimeout(function () { 1731 if (index === correctionDelays.length - 1) { 1732 takeOverEvents.forEach(function (type) { 1733 window.removeEventListener(type, markVisitorTookOver); 1734 }); 1735 } 1736 if (visitorTookOver || !el.isConnected) return; 1737 var position = el.getBoundingClientRect(); 1738 // checking whether fully visible 1739 if (position.top >= 0 && position.bottom <= window.innerHeight) return; 1740 // Document position, so a positioned ancestor cannot skew the target. 1741 var minScrollHeightToView = position.top + window.scrollY - getAbsoluteHeight('#document-header') - customOffset; 1742 // After the first pass, only correct a real drift, not sub-pixel noise. 1743 if (index > 0 && Math.abs(window.scrollY - minScrollHeightToView) < 60) return; 1744 window.scrollTo(0, minScrollHeightToView); 1745 }, delay); 1746 }); 1747 1748 if(!hideHighlight) { 1749 // if start form we highlight it 1750 el.classList.add('focus-animation'); 1751 setTimeout(() => { 1752 el.classList.remove('focus-animation'); 1753 }, 2000); 1754 } 1755} 1756 1757var smoothScrollToForm = (target) => { 1758 1759 let targetElement = document.querySelector(target); 1760 const elementTop = targetElement.getBoundingClientRect().top; 1761 const windowHeight = window.innerHeight; 1762 const currentScroll = window.pageYOffset; 1763 const scrollDistance = elementTop + currentScroll - ((windowHeight - targetElement.offsetHeight) / 2); 1764 1765 window.scrollTo({ 1766 top: scrollDistance, 1767 behavior: 'smooth' 1768 }); 1769}; 1770 1771var hiddenDebug = function (newDebug) { 1772 var hiddenDebugElement = document.querySelector('#siteVersion') 1773 console.log({newDebug, hiddenDebugElement}) 1774 if(hiddenDebugElement) { 1775 hiddenDebugElement.innerHTML = 'Site Version: ' + newDebug; 1776 } 1777} 1778 1779 1780function smoothScrollToFormModal(selector, scrollableContainer) { 1781 const element = document.querySelector(selector); 1782 if (element) { 1783 const container = document.querySelector(scrollableContainer); 1784 if (container) { 1785 const elementRect = element.getBoundingClientRect(); 1786 const containerRect = container.getBoundingClientRect(); 1787 1788 // Calculate the position to scroll to 1789 const scrollTop = elementRect.top - containerRect.top + container.scrollTop; 1790 1791 // Scroll to the element 1792 container.scrollTo({ top: scrollTop, behavior: 'smooth' }); 1793 } 1794 } 1795} 1796 1797 1798 1799 1800</script>
1800 1801 1802 1803
1803<script> 1804 if ( 1805 ( 1806 !window.location.href.includes("local") && 1807 !window.location.href.includes("show") 1808 ) || 1809 window.location.href.includes("hide") 1810 ) { 1811 console.log("not SHOWING log -- header utilities override"); 1812 console.log_on_production = console.log; 1813 console.log = () => {}; 1814 } else { 1815 console.log_on_production = console.log; 1816 } 1817 </script>
1817 1818
1819<script> 1820 1821 // facebook pixel 1822 var FB_PIXEL = ("335740569214664"); 1823 1824 // adding geolocation 1825 var GEO_LOCATION = ({"actual_data":true,"isoCode":"US","country":"United States","specific_area_name":"Illinois","specific_area_isoCode":"IL","city":"Chicago","postal_code":"60602","lat":"41.85003","long":"-87.65005","ip":"181.215.65.75","isp":"Vultr","likely_wifi":true,"timeZone":"America\/Chicago"}) || {}; 1826 GEO_COUNTRY = `US`; 1827 var LANGUAGE_DEFAULT_COUNTRY = ``; 1828 GEO_HIGH_RISK = 0; 1829 var ENVIRONMENT = `production`; 1830 1831 function fb_track_safe( 1832 type, 1833 conversion_type, 1834 additional_data = {}, 1835 pixelFireData = {}, 1836 retryCount = 0 1837 ) { 1838 1839 // Bots intentionally do not load marketing pixels. Returning here avoids 1840 // scheduling an unbounded retry chain for a resource that will never exist. 1841 if (IS_BOT) { 1842 return; 1843 } 1844 1845 const isTest = (window.location.href.includes('.local') || window.location.href.includes('test-') || window.location.href.includes('staging.')); 1846 1847 let testOrRealEventConversionType = conversion_type; 1848 if(isTest && !window.location.href.includes('tracking') && conversion_type != "335740569214664") { 1849 testOrRealEventConversionType = 'test_' + testOrRealEventConversionType; 1850 } 1851 1852 additional_data.external_id = `BOT_89BE54E802`; 1853 1854 1855 if (typeof fb_track !== 'undefined') { 1856 fb_track(type, testOrRealEventConversionType, additional_data , pixelFireData); 1857 1858 // TikTok pixel tracking (ecommerce events only) 1859 if (typeof ttq !== 'undefined') { 1860 1861 console.log_on_production('TikTok pixel defined') 1862 1863 // Convert Facebook event names to TikTok event names 1864 // Note: PageView is automatically tracked by TikTok pixel on page load 1865 const facebookToTiktokEvents = { 1866 'ViewContent': 'ViewContent', 1867 'AddToCart': 'AddToCart', 1868 'InitiateCheckout': 'InitiateCheckout', 1869 'AddPaymentInfo': 'AddPaymentInfo', 1870 'Purchase': 'Purchase', 1871 'Search': 'Search' 1872 }; 1873 1874 const tiktokEventName = facebookToTiktokEvents[testOrRealEventConversionType]; 1875 1876 console.log_on_production('TikTok pixel event name:', {testOrRealEventConversionType, tiktokEventName}); 1877 1878 // Only track ecommerce events on TikTok 1879 if (tiktokEventName) { 1880 1881 // Build TikTok-specific data structure 1882 const tiktokData = {}; 1883 1884 // Map email and phone to TikTok format 1885 if(additional_data && additional_data.em) { 1886 tiktokData.email = additional_data.em; 1887 } 1888 1889 if(additional_data && additional_data.phone) { 1890 tiktokData.phone_number = additional_data.phone; 1891 } 1892 1893 // Ensure value is a number (TikTok requires numeric value) 1894 if(additional_data && additional_data.value) { 1895 tiktokData.value = parseFloat(additional_data.value); 1896 } 1897 1898 // Add currency (required for Purchase events) 1899 if(additional_data && additional_data.currency) { 1900 tiktokData.currency = additional_data.currency; 1901 } 1902 1903 // For Purchase events, add contents array if available 1904 if(tiktokEventName === 'Purchase' && additional_data && additional_data.content_id) { 1905 tiktokData.contents = [{ 1906 content_id: additional_data.content_id || 'store', 1907 content_type: 'product', 1908 content_name: additional_data.content_name || 'Store Purchase' 1909 }]; 1910 } 1911 1912 // Copy over any other data 1913 Object.keys(additional_data || {}).forEach(function(key) { 1914 if (!tiktokData[key] && key !== 'em' && key !== 'phone') { 1915 tiktokData[key] = additional_data[key]; 1916 } 1917 }); 1918 1919 console.log_on_production('TikTok pixel tracking:', tiktokEventName, tiktokData); 1920 1921 1922 // Track event on TikTok pixel 1923 ttq.track(tiktokEventName, tiktokData); 1924 } 1925 } else { 1926 console.log_on_production('Tiktok pixel not defined') 1927 } 1928 1929 } else if (retryCount < 20) { 1930 setTimeout(function() { 1931 // Pass the canonical event name back through the helper. Test prefixes 1932 // are derived once per attempt and must not accumulate recursively. 1933 fb_track_safe(type, conversion_type, additional_data, pixelFireData, retryCount + 1); 1934 console.log('pixel not loaded', {conversion_type, retryCount}) 1935 }, 500) 1936 } else { 1937 console.log_on_production('pixel not loaded after retry window', {conversion_type, retryCount}) 1938 } 1939 } 1940</script>
1940 1941 1942 1943 1944 1945 1946 1947 1948 1949<!-- ga4 script to log --> 1950<!-- ex. NEW_AB_TEST_NAME -->
1951<script> 1952 var currentCookies = getCookies() 1953 if(currentCookies) { 1954 Object.keys(currentCookies).map(function(newCookieKey) { 1955 if(newCookieKey.startsWith('NEW_')) { 1956 var newCookieValue = currentCookies[newCookieKey]; 1957 console.log({newCookieKey, newCookieValue}) 1958 1959 if (typeof gtag !== 'undefined') { 1960 gtag_and_microsoft_uet('event', 'ab_test_view', { 1961 event_label: `${newCookieKey}-${newCookieValue}`, 1962 }); 1963 } 1964 1965 deleteCookie(newCookieKey) 1966 } 1967 }) 1968 } 1969</script>
1969 1970 1971
1972<script> 1973 // moved cart here to ensure always loaded on page load 1974 //setting the default values for the cart 1975 var cart = { 1976 currency: cy, 1977 cy: cy, 1978 items: [], 1979 total: 0, 1980 editIndex: null, 1981 hasSubscription: 0, 1982 hasTrial: 0, 1983 hasIndividualTickets: 0, 1984 hasAnnualPass: 0, 1985 annualPassCount: 0, 1986 itemCount: 0, 1987 }; 1988 1989 //Attempting to get the previous cart 1990 var previous_cart = getCookie('sch_cart'); 1991 if (window.location.search.includes('no_tickets')) { 1992 previous_cart = null; 1993 document.cookie = 'sch_cart=;expires=Thu, 01 Jan 1970 00:00:00 GMT;path=/'; 1994 document.cookie = 'cart=;expires=Thu, 01 Jan 1970 00:00:00 GMT;path=/'; 1995 } 1996 if (previous_cart && !window.location.href.includes('receipt')) { 1997 try { 1998 var uricart = decodeURIComponent(previous_cart); 1999 cart = JSON.parse(uricart); 2000 2001 console.log('the cart is', cart); 2002 } catch (error) { 2003 console.log('cart could not b parsed', previous_cart); 2004 } 2005 } 2006 2007 if (typeof cy != 'undefined' && cart) { 2008 cart.currency = cy; 2009 cart.cy = cy; 2010 setCookie('sch_cart', cart); 2011 setCookie('cart', cart); 2012 } 2013</script>
2013 2014
2015<script> 2016 function normalizePhoneForGA4(phone, countryCode) { 2017 if (!phone) { 2018 return ''; 2019 } 2020 2021 var phoneValue = String(phone).trim(); 2022 var digits = phoneValue.replace(/\D/g, ''); 2023 var hasExplicitInternationalPrefix = 2024 phoneValue.indexOf('+') === 0 || 2025 phoneValue.indexOf('00') === 0; 2026 2027 // International callers commonly use 00 instead of the E.164 + prefix. 2028 if (phoneValue.indexOf('00') === 0) { 2029 digits = digits.substring(2); 2030 } 2031 2032 var fallbackCountryCode = ''; 2033 if (arguments.length < 2) { 2034 fallbackCountryCode = 2035 ( 2036 typeof GEO_LOCATION !== 'undefined' && 2037 GEO_LOCATION && 2038 GEO_LOCATION.isoCode 2039 ? GEO_LOCATION.isoCode 2040 : '' 2041 ) || 2042 (typeof GEO_COUNTRY !== 'undefined' ? GEO_COUNTRY : 'US'); 2043 } 2044 2045 var normalizedCountryCode = String( 2046 countryCode || fallbackCountryCode || '' 2047 ).trim().toUpperCase(); 2048 if (normalizedCountryCode === 'UK') { 2049 normalizedCountryCode = 'GB'; 2050 } 2051 2052 var countryCallingCodes = { 2053 US: '1', 2054 CA: '1', 2055 GB: '44', 2056 AU: '61', 2057 NZ: '64', 2058 IE: '353', 2059 DE: '49', 2060 FR: '33', 2061 ES: '34', 2062 IT: '39', 2063 NL: '31', 2064 BE: '32', 2065 CH: '41', 2066 AT: '43', 2067 DK: '45', 2068 SE: '46', 2069 NO: '47', 2070 FI: '358', 2071 PT: '351', 2072 MX: '52', 2073 BR: '55', 2074 IN: '91', 2075 SG: '65', 2076 ZA: '27', 2077 AE: '971', 2078 JP: '81', 2079 }; 2080 2081 if (!hasExplicitInternationalPrefix) { 2082 var callingCode = countryCallingCodes[normalizedCountryCode] || ''; 2083 if (!callingCode) { 2084 return ''; 2085 } 2086 2087 if ( 2088 (normalizedCountryCode === 'US' || normalizedCountryCode === 'CA') && 2089 digits.length === 10 2090 ) { 2091 digits = '1' + digits; 2092 } else if ( 2093 normalizedCountryCode !== 'US' && 2094 normalizedCountryCode !== 'CA' 2095 ) { 2096 if (digits.indexOf(callingCode) !== 0) { 2097 // Italy keeps the leading zero in E.164 fixed-line numbers. 2098 if (normalizedCountryCode !== 'IT' && digits.indexOf('0') === 0) { 2099 digits = digits.substring(1); 2100 } 2101 digits = callingCode + digits; 2102 } 2103 } 2104 } 2105 2106 if (digits.length < 10 || digits.length > 15) { 2107 return ''; 2108 } 2109 2110 return '+' + digits; 2111 } 2112 2113 function trackGoogleEnhancedLeadFormSubmission(leadData, returnedData) { 2114 var currentHostname = window.location.hostname.toLowerCase(); 2115 var currentPathname = window.location.pathname.toLowerCase(); 2116 var isPrimaryLetsRoamHostname = 2117 currentHostname === 'letsroam.com' || 2118 currentHostname === 'www.letsroam.com' || 2119 currentHostname === 'letsroam.local.com' || 2120 currentHostname.endsWith('-letsroam.local.com'); 2121 var isLetsRoamWordPressPath = 2122 currentPathname.indexOf('/explorer/') === 0 || 2123 currentPathname.indexOf('/team-building/resources/') === 0; 2124 var isLetsRoamWordPressHostname = 2125 currentHostname === 'letsroam.com' || 2126 currentHostname.endsWith('.letsroam.com') || 2127 currentHostname === 'letsroam.local.com' || 2128 currentHostname.endsWith('-letsroam.local.com'); 2129 var isLetsRoamSite = 2130 (typeof WEBSITE_DOMAIN !== 'undefined' && WEBSITE_DOMAIN === 'letsroam') || 2131 isPrimaryLetsRoamHostname || 2132 (isLetsRoamWordPressHostname && isLetsRoamWordPressPath); 2133 2134 if ( 2135 !isLetsRoamSite || 2136 typeof gtag_and_microsoft_uet !== 'function' || 2137 typeof googleAdsId === 'undefined' || 2138 !googleAdsId 2139 ) { 2140 return Promise.resolve(false); 2141 } 2142 2143 var company = returnedData && returnedData.company 2144 ? returnedData.company 2145 : {}; 2146 var companyUuid = company.UUID || company.uuid || ''; 2147 if (!companyUuid) { 2148 return Promise.resolve(false); 2149 } 2150 2151 leadData = leadData || {}; 2152 var email = String( 2153 company.email || leadData.email || '' 2154 ).trim().toLowerCase(); 2155 var leadCountryCode = 2156 company.geo_country_code || 2157 leadData.country_code || 2158 leadData.country || 2159 ( 2160 typeof GEO_LOCATION !== 'undefined' && 2161 GEO_LOCATION && 2162 GEO_LOCATION.isoCode 2163 ? GEO_LOCATION.isoCode 2164 : '' 2165 ) || 2166 (typeof GEO_COUNTRY !== 'undefined' ? GEO_COUNTRY : ''); 2167 var phone = normalizePhoneForGA4( 2168 company.phone || leadData.phone || leadData.phone_number || '', leadCountryCode 2169 ); 2170 var userData = {}; 2171 2172 if (email) { 2173 userData.email = email; 2174 } 2175 if (phone) { 2176 userData.phone_number = phone; 2177 } 2178 if (!Object.keys(userData).length) { 2179 return Promise.resolve(false); 2180 } 2181 2182 // Google hashes these unhashed first-party values before transmission. 2183 gtag_and_microsoft_uet('set', 'user_data', userData); 2184 2185 var formSubmitData = { 2186 send_to: googleAdsId, 2187 event_id: 'lead_' + companyUuid, 2188 transaction_id: 'lead_' + companyUuid, 2189 transport_type: 'beacon', 2190 }; 2191 2192 return new Promise(function(resolve) { 2193 var trackingFinished = false;
2194 var finishTracking = function() { 2195 if (trackingFinished) { 2196 return; 2197 } 2198 trackingFinished = true; 2199 resolve(true); 2200 }; 2201 2202 formSubmitData.event_callback = finishTracking; 2203 gtag_and_microsoft_uet('event', 'form_submit', formSubmitData); 2204 2205 // Do not block navigation indefinitely when an ad blocker suppresses callbacks. 2206 setTimeout(finishTracking, 1000); 2207 }); 2208 } 2209</script>
2209 2210
2211<script> 2212 var commonTranslationDictionary = {"Scavenger Hunt Party Tickets":"Scavenger Hunt Party Tickets","Instant Digital Delivery":"Instant Digital Delivery","Your Cart":"Your Cart","Free Shipping":"Free Shipping","Free Instant Digital Gift Card":"Free Instant Digital Gift Card","Free Instant Printable Gift Card":"Free Instant Printable Gift Card","Cart Items":"Cart Items","Duties & Fees":"Duties & Fees","Error using quick pay, please use regular checkout":"Error using quick pay, please use regular checkout","There was an error processing quick pay, please try regular checkout - EC1.":"There was an error processing quick pay, please try regular checkout - EC1.","There was an error processing quick pay, please try regular checkout - EC2.":"There was an error processing quick pay, please try regular checkout - EC2.","There was an error processing quick pay, please try regular checkout. - EC3":"There was an error processing quick pay, please try regular checkout. - EC3","could not complete checkout":"could not complete checkout","Your order was not completed. Try your wallet again, or use regular checkout.":"Your order was not completed. Try your wallet again, or use regular checkout.","Your payment is still being confirmed":"Your payment is still being confirmed","Do not try to pay again. Check your email for a receipt, or contact support if it does not arrive.":"Do not try to pay again. Check your email for a receipt, or contact support if it does not arrive.","Payment status could not be confirmed":"Payment status could not be confirmed","Checkout could not start":"Checkout could not start","Event checkout setup failed":"Event checkout setup failed","Checkout connection failed":"Checkout connection failed","Payment could not be confirmed":"Payment could not be confirmed","Checkout page error":"Checkout page error","Wallet could not open":"Wallet could not open","Wallet is not ready":"Wallet is not ready","Secure payment setup failed":"Secure payment setup failed","Payment could not be completed":"Payment could not be completed","This card does not have enough available funds. Please use another payment method.":"This card does not have enough available funds. Please use another payment method.","This card was declined. Please use another payment method or contact your bank.":"This card was declined. Please use another payment method or contact your bank.","Try wallet again":"Try wallet again","Use regular checkout":"Use regular checkout","Reference":"Reference","code":"code","Are you sure you want to duplicate this item?":"Are you sure you want to duplicate this item?","Are you sure you want to remove this item from your cart?":"Are you sure you want to remove this item from your cart?","off all tickets and":"off all tickets and","Flash Ticket Sale":"Flash Ticket Sale","by buying 2+ giftable annual passes":"by buying 2+ giftable annual passes","passes":"passes","until Monday":"until Monday","until Tuesday":"until Tuesday","until Wednesday":"until Wednesday","until Thursday":"until Thursday","until Friday":"until Friday","until Saturday":"until Saturday","until Sunday":"until Sunday","Proceed To Checkout":"Proceed To Checkout","Adding To Cart":"Adding To Cart","Adding To Cart:":"Adding To Cart:","by buying 2+ giftable annual":"by buying 2+ giftable annual","Editing Item":"Editing Item","Edit Item":"Edit Item","Add To Cart":"Add To Cart","Select # of Tickets":"Select # of Tickets","Ticket quantity":"Ticket quantity","Choose Tickets \/ Players":"Choose Tickets \/ Players","Choose Pass Amount":"Choose Pass Amount","Close ticket selector":"Close ticket selector","Save an extra":"Save an extra","Cart Total":"Cart Total","View Cart":"View Cart","Company":"Company","Event Location":"Event Location","See Cart":"See Cart","Checkout":"Checkout","player":"player","pass":"pass","Flash Sale":"Flash Sale","Edit":"Edit","Copy":"Copy","Item(s)":"Item(s)","Remove":"Remove","Player":"Player","Pass":"Pass","Annual":"Annual","annual":"annual","Total":"Total","Up to":"Up to","Monday":"Monday","Tuesday":"Tuesday","Wednesday":"Wednesday","Thursday":"Thursday","Frid
2212ay":"Friday","Saturday":"Saturday","Sunday":"Sunday","until":"until","Start Planning Your Bachelorette Party":"Start Planning Your Bachelorette Party","Work with our event coordinators and hosts to start planning your event.":"Work with our event coordinators and hosts to start planning your event.","What is the bride's name?":"What is the bride's name?","In what city will your event be in?":"In what city will your event be in?","Start Planning Your Birthday Party":"Start Planning Your Birthday Party","Work with our event coordinators and hosts to start planning your party.":"Work with our event coordinators and hosts to start planning your party.","What is the birthday star's name?":"What is the birthday star's name?","Start Planning Your Team Building Event":"Start Planning Your Team Building Event","Buy this again and save":"Buy this again and save","Buy Again & Save":"Buy Again & Save","ends in":"ends in","hours":"hours","minutes":"minutes","seconds":"seconds","hour":"hour","minute":"minute","Add to Cart":"Add to Cart","Add to cart":"Add to cart","Close":"Close","Remove item":"Remove item","Remove?":"Remove?","Yes":"Yes","No":"No","Quantity":"Quantity","Decrease quantity":"Decrease quantity","Increase quantity":"Increase quantity","Your cart is empty":"Your cart is empty","item in your cart":"item in your cart","items in your cart":"items in your cart","Subtotal":"Subtotal","Taxes & Fees":"Taxes & Fees","More payment options":"More payment options","Secure checkout":"Secure checkout","Powered by":"Powered by","Calculated at checkout":"Calculated at checkout","Taxes and fees are calculated at checkout before you pay.":"Taxes and fees are calculated at checkout before you pay.","Date Night Upgrade":"Date Night Upgrade","person":"person","per person":"per person","per player":"per player","per bundle":"per bundle","per month":"per month","bundle":"bundle","Scavenger Hunt Ticket":"Scavenger Hunt Ticket","Extra {{percent}}% off applied":"Extra {{percent}}% off applied","Please add an item on this page to your cart.":"Please add an item on this page to your cart.","Please navigate to a product page and select an item to add to cart, or:":"Please navigate to a product page and select an item to add to cart, or:","See All Ticket \/ Gift Options":"See All Ticket \/ Gift Options","An unexpected error occurred. Please try again.":"An unexpected error occurred. Please try again.","Add 1 more annual pass to save":"Add 1 more annual pass to save","Saving":"Saving","Add 1 more annual pass":"Add 1 more annual pass","on":"on","Get":"Get","off":"off","Amazing! You're saving":"Amazing! You're saving","annual passes":"annual passes","You're saving":"You're saving","You're":"You're","Add another annual pass to save":"Add another annual pass to save","total":"total","saved!":"saved!","Save":"Save","per extra pass":"per extra pass","1 more":"1 more","per extra":"per extra","Annual Pass":"Annual Pass","Another":"Another","another":"another","Add":"Add","Players":"Players","annual pass":"annual pass","Added":"Added","Add 1 more":"Add 1 more","Add 1 more annual":"Add 1 more annual","another annual pass to save":"another annual pass to save","1 more annual pass to save":"1 more annual pass to save","Add another annual":"Add another annual","to save":"to save","Youre saving":"Youre saving","hunt":"hunt","hunts":"hunts","nearby":"nearby","Top Hunt":"Top Hunt","Did you mean?":"Did you mean?","Nearby hunts":"Nearby hunts","Closest supported cities":"Closest supported cities","Popular alternatives":"Popular alternatives","in view":"in view","reviews":"reviews","review":"review","Search anywhere":"Search anywhere","Locate Me":"Locate Me","View Details":"View Details","Get Tickets":"Get Tickets","No hunts found":"No hunts found","New hunt":"New hunt","No reviews yet":"No reviews yet","Loading hunts in view...":"Loading hunts in view...","Loading":"Loading","Searching nearby...":"Searching nearby...","Looking for hunts within ~30 miles":"Looking for hunts within ~30 miles","Showing nearby hunts":"Showing nearby hunts","No hunts in current view, but these are within ~30 miles":"No hunts in current view, but these are within ~30 miles","nearby hunts":"nearby hunts","nearby hunt":"nearby hunt","available":"available","OTHER PLACES":"OTHER PLACES","HUNTS":"HUNTS","N
2212o results found":"No results found","stops":"stops","Duration":"Duration","Distance":"Distance","Go anytime":"Go anytime","View Full Details":"View Full Details","Hours":"Hours","Hour":"Hour","KM":"KM","Mi":"Mi","Unable to get your location":"Unable to get your location","Location permission denied. Please enable location access in your browser settings.":"Location permission denied. Please enable location access in your browser settings.","Location information is unavailable.":"Location information is unavailable.","Location request timed out.":"Location request timed out.","Clear search":"Clear search","Find my location":"Find my location","New":"New","Explore scavenger hunts":"Explore scavenger hunts","Move the map or search for a city to find hunts near you":"Move the map or search for a city to find hunts near you","Previous":"Previous","Next":"Next","Zoom in":"Zoom in","Zoom out":"Zoom out","Reset bearing to north":"Reset bearing to north","More Details":"More Details","Nearby Hunts":"Nearby Hunts","Not in current view, but close by":"Not in current view, but close by","Plan My Event":"Plan My Event","Scavenger Hunt":"Scavenger Hunt","Start planning my event":"Start planning my event","Try zooming out or searching a different area":"Try zooming out or searching a different area","Go back":"Go back","View our Locations":"View our Locations","See The Map":"See The Map","Loading map...":"Loading map...","Interactive store map":"Interactive store map","Interactive outdoor activities map":"Interactive outdoor activities map","See hunts":"See hunts","Click to interact with map":"Click to interact with map","Map active":"Map active","Bundle Now & Save:":"Bundle Now & Save:","Bundle & Save":"Bundle & Save","Bundle another ticket and save 70%!":"Bundle another ticket and save 70%!","Bundle another pass and save 70%!":"Bundle another pass and save 70%!","Scavenger Hunt Tickets":"Scavenger Hunt Tickets","Ticket":"Ticket","Tickets":"Tickets","ticket":"ticket","tickets":"tickets","Passes":"Passes"}; 2213 var pageLanguage = 'en'; 2214 var translationOverridesUseExactPhrases = false; 2215 2216 /** 2217 * Escape regex special characters 2218 */ 2219 function escapeRegExp(string) { 2220 return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); 2221 } 2222 2223 /** 2224 * Translate text using the global common translation dictionary 2225 * @param {string} text - Text to translate 2226 * @returns {string} - Translated text 2227 */ 2228 function translateText(text) { 2229 if (!text || !commonTranslationDictionary) return text; 2230 2231 // Always prefer a complete dictionary phrase before the legacy substring 2232 // loop. This keeps control copy such as "per person" from becoming 2233 // partially translated when a shorter key such as "person" appears first. 2234 if (Object.prototype.hasOwnProperty.call(commonTranslationDictionary, text)) { 2235 return commonTranslationDictionary[text]; 2236 } 2237 2238 // Reviewed TSV rows are complete phrases. Returning only an exact entry 2239 // prevents a later one-word mapping (for example "on") from corrupting a 2240 // phrase that has already been translated. 2241 if (translationOverridesUseExactPhrases) { 2242 // Browser-built HTML can leave formatting whitespace around a complete 2243 // text leaf. Match the trimmed leaf exactly, then restore its original 2244 // spacing; this is still whole-phrase matching, never a substring swap. 2245 const trimmedText = text.trim(); 2246 if ( 2247 trimmedText !== text && 2248 Object.prototype.hasOwnProperty.call(commonTranslationDictionary, trimmedText) 2249 ) { 2250 const leadingWhitespace = text.match(/^\s*/)[0]; 2251 const trailingWhitespace = text.match(/\s*$/)[0]; 2252 return leadingWhitespace + commonTranslationDictionary[trimmedText] + trailingWhitespace; 2253 } 2254 return text; 2255 } 2256 2257 let translatedText = text; 2258 2259 // Replace occurrences of dictionary entries (case sensitive) 2260 for (const [original, translated] of Object.entries(commonTranslationDictionary)) { 2261 if (translatedText.includes(original)) { 2262 translatedText = translatedText.replace( 2263 new RegExp(escapeRegExp(original), 'g'), 2264 translated 2265 ); 2266 } 2267 } 2268 2269 return translatedText; 2270 } 2271 2272 // Product data can already be translated. Resolve the complete plural label 2273 // before building cart HTML instead of adding an English "s" to Korean copy. 2274 function translatedQuantityUnit(unit, quantity) { 2275 unit = unit || 'Ticket'; 2276 const plurals = { Ticket: 'Tickets', ticket: 'tickets', Pass: 'Passe
2276s', pass: 'passes' }; 2277 for (const singular of Object.keys(plurals)) { 2278 if (unit === singular || unit === translateText(singular)) { 2279 return translateText(Number(quantity) === 1 ? singular : plurals[singular]); 2280 } 2281 } 2282 return translateText(unit + (Number(quantity) > 1 ? 's' : '')); 2283 } 2284 2285</script>
2285 2286
2287<script> 2288 var ip_address = "181.215.65.75"; 2289</script>
2289 2290
2291<script> 2292 var CURRENCIES = [{"id":"1","code":"usd","currency_to_usd":"1","title":"US Dollars (USD)","symbol":"$","non_zero_point_currency":"0","last_updated":"2024-08-05 20:26:05","original_currency_to_usd":"1","countries":"Argentina,Aruba,Barbados,Bermuda,Brazil,Cayman Islands,China,Colombia,Costa Rica,Cura\u00e7ao,Dominican Republic,Everywhere,Guatemala,Hong Kong,Indonesia,Israel,Malaysia,Mexico,Philippines,Russia,Singapore,Sint Maarten,Thailand,The Bahamas,Turkey,U.S. Virgin Islands,Ukraine,United Arab Emirates,United States","country_codes":"US"},{"id":"3","code":"aud","currency_to_usd":"0.703344","title":"Australian Dollar (AUD)","symbol":"AU$","non_zero_point_currency":"0","last_updated":"2026-09-23 19:47:53","original_currency_to_usd":"0.68","countries":"Australia","country_codes":"AU"},{"id":"4","code":"gbp","currency_to_usd":"1.3244","title":"British Pound (GBP)","symbol":"\u00a3","non_zero_point_currency":"0","last_updated":"2026-09-24 01:48:50","original_currency_to_usd":"1.23","countries":"England,Isle of Man,Jersey,Scotland,United Kingdom","country_codes":"IM,JE,GB"},{"id":"2","code":"cad","currency_to_usd":"0.708948","title":"Canadian Dollar (CAD)","symbol":"CA$","non_zero_point_currency":"0","last_updated":"2026-09-24 00:18:35","original_currency_to_usd":"0.73","countries":"Canada","country_codes":"CA"},{"id":"5","code":"eur","currency_to_usd":"1.13778","title":"Euro (EUR)","symbol":"\u20ac","non_zero_point_currency":"0","last_updated":"2026-09-24 01:18:46","original_currency_to_usd":"1.06","countries":"Andorra,Austria,Belgium,Croatia,Cyprus,Estonia,Finland,France,Germany,Greece,Ireland,Italy,Kosovo,Latvia,Lithuania,Luxembourg,Malta,Monaco,Montenegro,Netherlands,Portugal,San Marino,Slovakia,Slovenia,Spain,Vatican City","country_codes":"AL,AD,AT,BY,BE,BA,BG,HR,CY,CZ,DK,EE,FI,FR,DE,GR,HU,IS,IE,IT,LV,LI,LT,LU,MT,MC,MD,ME,NL,MK,NO,PL,PT,RO,RU,SM,RS,SK,SI,ES,SE,CH,TR,UA,GB,VA"},{"id":"6","code":"nzd","currency_to_usd":"0.567569","title":"New Zealand Dollar (NZD)","symbol":"NZ$","non_zero_point_currency":"0","last_updated":"2026-09-23 15:17:00","original_currency_to_usd":"0.64","countries":"New Zealand","country_codes":"NZ"},{"id":"64","code":"all","currency_to_usd":"0.0105","title":"Albanian Lek (ALL)","symbol":"L","non_zero_point_currency":"0","last_updated":null,"original_currency_to_usd":"0.0105","countries":"Albania","country_codes":null},{"id":"31","code":"ars","currency_to_usd":"0.005","title":"Argentine Peso (ARS)","symbol":"AR$","non_zero_point_currency":"0","last_updated":"2025-09-19 09:45:31","original_currency_to_usd":"0.005","countries":"Argentina","country_codes":"AR"},{"id":"67","code":"amd","currency_to_usd":"0.0025","title":"Armenian Dram (AMD)","symbol":"\u058f","non_zero_point_currency":"0","last_updated":null,"original_currency_to_usd":"0.0025","countries":"Armenia","country_codes":null},{"id":"68","code":"azn","currency_to_usd":"0.588","title":"Azerbaijani Manat (AZN)","symbol":"\u20bc","non_zero_point_currency":"0","last_updated":null,"original_currency_to_usd":"0.588","countries":"Azerbaijan","country_codes":null},{"id":"32","code":"bzd","currency_to_usd":"0.50","title":"Belize Dollar (BZD)","symbol":"BZ$","non_zero_point_currency":"0","last_updated":"2025-09-19 09:45:31","original_currency_to_usd":"0.50","countries":"Belize","country_codes":"BZ"}
2292,{"id":"33","code":"bob","currency_to_usd":"0.14","title":"Bolivian Boliviano (BOB)","symbol":"Bs","non_zero_point_currency":"0","last_updated":"2025-09-19 09:45:31","original_currency_to_usd":"0.14","countries":"Bolivia","country_codes":"BO"},{"id":"62","code":"bam","currency_to_usd":"0.600","title":"Bosnia and Herzegovina Convertible Mark (BAM)","symbol":"KM","non_zero_point_currency":"0","last_updated":null,"original_currency_to_usd":"0.600","countries":"Bosnia and Herzegovina","country_codes":null},{"id":"34","code":"brl","currency_to_usd":"0.20","title":"Brazilian Real (BRL)","symbol":"R$","non_zero_point_currency":"0","last_updated":"2025-09-19 09:45:31","original_currency_to_usd":"0.20","countries":"Brazil","country_codes":"BR"},{"id":"60","code":"bgn","currency_to_usd":"0.600","title":"Bulgarian Lev (BGN)","symbol":"\u043b\u0432","non_zero_point_currency":"0","last_updated":null,"original_currency_to_usd":"0.600","countries":"Bulgaria","country_codes":null},{"id":"35","code":"clp","currency_to_usd":"0.0012","title":"Chilean Peso (CLP)","symbol":"CL$","non_zero_point_currency":"0","last_updated":"2025-09-19 09:45:31","original_currency_to_usd":"0.0012","countries":"Chile","country_codes":"CL"},{"id":"49","code":"cny","currency_to_usd":"0.024","title":"Chinese Yuan (CNY)","symbol":"\u5143","non_zero_point_currency":"0","last_updated":"2025-09-19 09:45:31","original_currency_to_usd":".14","countries":"China","country_codes":"CN"},{"id":"36","code":"cop","currency_to_usd":"0.00026","title":"Colombian Peso (COP)","symbol":"CO$","non_zero_point_currency":"0","last_updated":"2025-09-19 09:45:31","original_currency_to_usd":"0.00026","countries":"Colombia","country_codes":"CO"},{"id":"37","code":"crc","currency_to_usd":"0.0017","title":"Costa Rican Colon (CRC)","symbol":"CRC","non_zero_point_currency":"0","last_updated":"2025-09-19 09:45:31","original_currency_to_usd":"0.0017","countries":"Costa Rica","country_codes":"CR"},{"id":"57","code":"czk","currency_to_usd":"0.043","title":"Czech Koruna (CZK)","symbol":"K\u010d","non_zero_point_currency":"0","last_updated":null,"original_currency_to_usd":"0.043","countries":"Czech Republic","country_codes":null},{"id":"55","code":"dkk","currency_to_usd":"0.157","title":"Danish Krone (DKK)","symbol":"kr","non_zero_point_currency":"0","last_updated":null,"original_currency_to_usd":"0.157","countries":"Denmark","country_codes":null},{"id":"38","code":"dop","currency_to_usd":"0.017","title":"Dominican Peso (DOP)","symbol":"DO$","non_zero_point_currency":"0","last_updated":"2025-09-19 09:45:31","original_currency_to_usd":"0.017","countries":"Dominican Republic","country_codes":"DO"},{"id":"66","code":"gel","currency_to_usd":"0.370","title":"Georgian Lari (GEL)","symbol":"\u20be","non_zero_point_currency":"0","last_updated":null,"original_currency_to_usd":"0.370","countries":"Georgia","country_codes":null},{"id":"39","code":"gtq","currency_to_usd":"0.13","title":"Guatemalan Quetzal (GTQ)","symbol":"Q","non_zero_point_currency":"0","last_updated":"2025-09-19 09:45:31","original_currency_to_usd":"0.13","countries":"Guatemala","country_codes":"GT"},{"id":"40","code":"hnl","currency_to_usd":"0.039","title":"Honduran Lempira (HNL)","symbol":"L","non_zero_point_currency":"0","last_updated":"2025-09-19 09:45:31","original_currency_to_usd":"0.039","countries":"Honduras","country_codes":"HN"},{"id":"51","code":"huf","currency_to_usd":"0.0030","title":"Hungarian Forint (HUF)","symbol":"Ft","non_zero_point_currency":"0","last_updated":null,"original_currency_to_usd":"0.0030","countries":"Hungary","country_codes":"TR"},{"id":"56","code":"isk","currency_to_usd":"0.022","title":"Icelandic Krona (ISK)","symbol":"kr","non_zero_point_currency":"0","last_updated":null,"original_currency_to_usd":"0.022","countries":"Iceland","country_codes":null},{"id":"10","code":"inr","currency_to_usd":"0.0123","title":"Indian Rupee (INR)","symbol":"\u20b9","non_zero_point_currency":"0","last_updated":null,"original_currency_to_usd":"0.0123","countries":"India","country_codes":"IN"},{"id":"41","code":"jmd","currency_to_usd":"0.0067","title":"Jamaican Dollar (JMD)","symbol":"JM$","non_zero_point_currency":"0","last_updated":"2025-09-19 09:45:31","original_currency_to_usd":"0.0067","countries":"Jamaica","country_codes":"JM"},{"id":"8","code":"jpy","currency_to_usd":"0.0073","title":"Japanese Yen (JPY)","symbol":"\u00a5","non_zero_point_currency":"1","last_updated":"2026-08-12 18:33:27","original_currency_to_usd":"0.0073","countries":"Japan","country_codes":"JP"},{"id":"7","code":"krw","currency_to_usd":"0.00077","title":"Korean Won (KRW)","symbol":"\u20a9","non_zero_point_currency":"1","last_updated":null,"original_currency_to_usd":"0.00077","countries":"South Korea","country_codes":"KR"},{"id":"63","code":"mkd","currency_to_usd":"0.018","title":"Macedonian Denar (MKD)","symbol":"\u0434\u0435\u043d","non_zero_point_currency":"0","last_updated":null,"original_currency_to_usd":"0.018","countries":"North Macedonia","country_codes":null},{"id":"42","code":"mxn","currency_to_usd":"0.055","title":"Mexican Peso (MXN)","symbol":"MX$","non_zero_point_currency":"0","last_updated":"2025-09-19 09:45:31","original_currency_to_usd":"0.055","countries":"Mexico","country_codes":"MX"},{"id":"65","code":"mdl","currency_to_usd":"0.056","title":"Moldovan Leu (MDL)","symbol":"L","non_zero_point_currency":"0","last_updated":null,"original_currency_to_usd":"0.056","countries":"Moldova","country_codes":null},{"id":"43","code":"nio","currency_to_usd":"0.027","title":"Nicaraguan Cordoba (NIO)","symbol":"C$","non_zero_point_currency":"0","last_updated":"2025-09-19 09:45:31","original_currency_to_usd":"0.027","countries":"Nicaragua","country_codes":"NI"},{"id":"53","code":"nok","currency_to_usd":"0.094","title":"Norwegian Krone (NOK)","symbol":"kr","non_zero_point_currency":"0","last_updated":null,"original_currency_to_usd":"0.094","countries":"Norway","country_codes":null},{"id":"44","code":"pab","currency_to_usd":"1.00","title":"Panamanian Balboa (PAB)","symbol":"PAB","non_zero_point_currency":"0","last_updated":"2025-09-19 09:45:31","original_currency_to_usd":"1.00","countries":"Panama","country_codes":"PA"},{"id":"45","code":"pyg","currency_to_usd":"0.00014","title":"Paraguayan Guarani (PYG)","symbol":"PYG","non_zero_point_currency":"0","last_updated":"2025-09-19 09:45:31","original_currency_to_usd":"0.00014","countries":"Paraguay","country_codes":"PY"},{"id":"46","code":"pen","currency_to_usd":"0.26","title":"Peruvian Sol (PEN)","symbol":"S\/.","non_zero_point_currency":"0","last_updated":"2025-09-19 09:45:31","original_currency_to_usd":"0.26","countries":"Peru","country_codes":"PE"},{"id":"47","code":"php","currency_to_usd":"0.018","title":"Philippine Peso (PHP)","symbol":"\u20b1","non_zero_point_currency":"0","last_updated":"2025-09-19 09:45:31","original_currency_to_usd":"0.018","countries":"Philippines","country_codes":"PH"},{"id":"58","code":"pln","currency_to_usd":"0.260","title":"Polish Zloty (PLN)","symbol":"z\u0142","non_zero_point_currency":"0","last_updated":null,"original_currency_to_usd":"0.260","countries":"Poland","country_codes":null},{"id":"59","code":"ron","currency_to_usd":"0.233","title":"Romanian Leu (RON)","symbol":"lei","non_zero_point_currency":"0","last_updated":null,"original_currency_to_usd":"0.233","countries":"Romania","country_codes":null},{"id":"61","code":"rsd","currency_to_usd":"0.0093","title":"Serbian Dinar (RSD)","symbol":"\u0434\u0438\u043d","non_zero_point_currency":"0","last_updated":null,"original_currency_to_usd":"0.0093","countries":"Serbia","country_codes":null},{"id":"9","code":"zar","currency_to_usd":"0.058","title":"South African Rand (ZAR)","symbol":"R","non_zero_point_currency":"0","last_updated":null,"original_currency_to_usd":"0.058","countries":"South Africa","country_codes":"ZA"},{"id":"54","code":"sek","currency_to_usd":"0.096","title":"Swedish Krona (SEK)","symbol":"kr","non_zero_point_currency":"0","last_updated":null,"original_currency_to_usd":"0.096","countries":"Sweden","country_codes":null},{"id":"52","code":"chf","currency_to_usd":"1.21772","title":"Swiss Franc (CHF)","symbol":"Fr","non_zero_point_currency":"0","last_updated":"2026-09-22 12:41:58","original_currency_to_usd":"1.296","countries":"Switzerland,Liechtenstein","country_codes":null},{"id":"50","code":"try","currency_to_usd":"0.023","title":"Turkish Lira (TRY)","symbol":"\u20ba","non_zero_point_currency":"0","last_updated":null,"original_currency_to_usd":"0.023","countries":"Turkey","country_codes":"TR"},{"id":"48","code":"uyu","currency_to_usd":"0.024","title":"Uruguayan Peso (UYU)","symbol":"UY$","non_zero_point_currency":"0","last_updated":"2025-09-19 09:45:31","original_currency_to_usd":"0.024","countries":"Uruguay","country_codes":"UY"}];</script>
2292 2293 2294 2295<!-- test for currency conversion --> 2296<div style="display: none;" class="autoUpdateCurrency" id="currencyBaseUnit" data-price="1"><div id="currencyConversionLoading"></div></div> 2297<!-- store-logic -->
2298<script type="text/javascript"> 2299 2300var childDiscount = 1 - (12.99 / 19.99); 2301 2302// checking if already loaded once 2303if(typeof allBundlesArray != 'undefined') { 2304 if(window.location.href.includes('local.')) { 2305 alert('Error js php data bridge loaded multiple times') 2306 } else { 2307 console.error('Error js php data bridge loaded multiple times') 2308 } 2309} 2310 2311 2312//set var s 2313var COOKIE_DOMAIN = '.letsroam.com'; 2314// Keep wallet diagnostics aligned with the request classifier that chooses 2315// tracking_helper_bot instead of maintaining a second browser-side bot list. 2316window.STORE_QUICK_PAY_DIAGNOSTICS_ENABLED = false; 2317// Bundle Functions 2318// creating an access point for the bundle info 2319var allBundlesArray = [{"id":"1","published":"1","title":"Scavenger Hunt Ticket","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":null,"bullet_description":"[\n\t{\n\t\t\"text\": \"Individualized roles and challenges for everyone (including kids 5+)\"\n\t},\n\t{\n\t\t\"text\": \"Tickets valid in 3,000+ cities\"\n\t},\n\t{\n\t\t\"text\": \"All tickets valid for up to 2 years from date of purchase\"\n\t},\n\n\t{\n\t\t\"text\": \"Consider creating a <a href='javascript: navigateToBundle(getBundleInfo(26))' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href=\\\"javascript:openGenericCreateLeadModal('team-building')\\\" style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='javascript: navigateToBundle(getBundleInfo(2))' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\",\n\t\t\"info\": \"You need 1 ticket per person per hunt for outdoor hunts.\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Requires ticket for each player (5 & older)\", \"Tickets must be used together on any ONE of our outdoor scavenger hunts in 3,000+ cities\"]","initial_rid":"1","initial_quantity":"4","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"1","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city. Get instant printable gift cards or get a gift card mailed to you. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"date-for-two.jpeg","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[4]","last_updated_at":"2026-03-06 13:16:48","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"hunt-tickets.png","photo_image":"hunt-tickets.png","st_patricks_photo_image":"st-pats-hunt-tickets.jpg","cherry_blossom_photo_image":"cherry-blossom-hunt-tickets.jpg","easter_photo_image":"easter-eggs-side.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"2","published":"1","title":"Bachelorette Party","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":"129.95","bullet_description":"[\n\t{ \n\t\t\"text\": \"Choose from in-home or outside activities\",\n\t\t\"info\": \"Our writers can create fun activities for you and the girls to do, even if you all can't get together right now\"\n\t},\n\t{ \n\t\t\"text\": \" Up to 10 players \",\n\t\t\"info\": \"Not sure how many people will be attending the party yet? With this bundle, get up to 10 people for a flat fee when you purchase now! Everyone will get unique roles and challenges as you race to complete this bachelorette themed hunt.\"\n\t},\n\t{ \n\t\t\"text\": \"Individualized roles and challenges per person\",\n\"info\": \"Each player will have a specific role in the hunt, and they will receive unique trivia and photo challenges along the way!\"\n\t},\n\t{ \n\t\t\"text\": \"An interactive and memorable Bachelorette Party Experience\",\n\t\t\"info\": \"Visit landmarks and noteworthy locations while solving challenges, taking epic photos, and creating lasting memories through this 4.8+ star rated experience with over 3200+ reviews.\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":null,"initial_rid":"5","initial_quantity":"10","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"1","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"51","popular_label":null,"short_description":"Bride-tribe meets epic scavenger hunt.","long_description":"Gather the bride tribe for an unforgettable bachelorette scavenger hunt. Eac
2319h person in your party will receive an interactive wedding-themed role, so everyone's in on the fun. Make the experience as crazy or as relaxed as you'd like. Connect, explore and celebrate with your I-do crew! Requires 5 business days of advanced purchase.","bullet_other_options":null,"image":"icon_bach_tickets.png","image_characters":"bach.png","gift_card_image":"default.png","params":"{\"product\":\"1\",\"quantity\":\"20\",\"roles\":\"5\"}","created_at":"2017-11-21 12:40:53","order":"10","url_slug":"bachelorette","straight_to_checkout":"0","special_event":"1","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[22,6,23]","possible_role_upgrades":null,"last_updated_at":"2025-08-20 08:01:23","free_gift_card":"0","force_open_lead_form":"bachelorette","us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"4","published":"1","title":"Date Night Scavenger Hunt Tickets","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":null,"bullet_description":"[\n\t{ \n\t\t\"text\": \"Bonus photo-and-trivia questions designed to bring closer together\"\n\t},\n\t{ \n\t\t\"text\": \"Perfect for a first date or 50th anniversary\"\n\t},\n\t{ \n\t\t\"text\": \"Create memories through cute bonus photo challenges\",\n\t\t\"class\": \"desktopOnly\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Requires ticket for each player (5 & older)\", \"Tickets must be used together on any one of our outdoor scavenger hunts in 3,000+ cities\"]","initial_rid":"4","initial_quantity":"2","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"1","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":null,"short_description":"Epic upgraded date challenges designed for couples.","long_description":"Learn about your city and your date with on a couple\u2019s only scavenger hunt. Date night roles are designed to help both new and long-time couples better connect with each other and explore together. This package includes bonus photo and trivia questions, hand-selected by our team to make sure you have the most fun with that special someone. ","bullet_other_options":null,"image":"icon_date_tickets.png","image_characters":"date.png","gift_card_image":"default.png","params":"{\"product\":\"1\",\"quantity\":\"2\",\"roles\":\"4\"}","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"date","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":null,"possible_role_upgrades":null,"last_updated_at":"2024-11-06 10:17:07","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":"date-night-scavenger-hunt.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"14","published":"1","title":"Couple\u2019s Annual Pass","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":"69.99","bullet_description":"[\n\t{ \n\t\t\"text\": \"Valid for one year for two players\",\n\t\t\"info\": \"All players must go at the same time and this voucher cannot be split\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{ \n\t\t\"text\": \"Unlimited indoor & outdoor scavenger hunts & more\",\n\t\t\"info\": \"Can be used for any scavenger hunt, in-home activity, bar hunt, and ghost hunt!\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{ \n\t\t\"text\": \"Use in any of our 3,000+ cities\",\n\t\t\"info\": \"Many cities have 3+ activites. We have a scavenger hunt in every large city in the United States, Europe, Australia, and Asia.\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{ \n\t\t\"text\": \"Includes upgraded date challenges\",\n\t\t\"info\": \"These bonus challenges make the hunt more fun for couples with bonus photo challenges and location challenges.\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{ \n\t\t\"text\": \"Includes printable gift card\",\n\t\t\"info\": \"Choose from numerous gift printing options after purchase, so that you can still give the perfect present before or on Christmas.\",\n\t\t\"class\": \"extra10\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Valid for one year for one couple playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with date theme\"]","initial_rid":"4","initial_quantity":"1","season_pass_tickets":"2","season_pass_length":"12","
2319initial_product_id":"3","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"26","popular_label":"Most Popular","short_description":"Epic date-themed hunts for one year from redemption.","long_description":"Learn about your city and your date with a couple\u2019s only scavenger hunt. Date night roles are designed to help both new and long-time couples better connect with each other and explore together. This package includes bonus photo and trivia questions, hand-selected by our team to make sure you have the most fun with that special someone. ","bullet_other_options":null,"image":"icon_date_tickets.png","image_characters":"date.png","gift_card_image":"default.png","params":"{\"product\":\"1\",\"quantity\":\"2\",\"roles\":\"4\"}","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"couple_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":null,"possible_role_upgrades":null,"last_updated_at":"2026-03-06 13:17:35","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":"general-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"26","published":"1","title":"Birthday Party Scavenger Hunt","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":"129.95","bullet_description":"[\n\t{ \n\t\t\"text\": \" Up to 10 players \",\n\t\t\"info\": \"Not sure how many people will be attending the party yet? With this bundle, get up to 10 people for a flat fee when you purchase now! Everyone will get unique roles and challenges as you race to complete this birthday themed hunt.\"\n\t},\n\t{ \n\t\t\"text\": \"Individualized roles and challenges per person\",\n\"info\": \"Each player will have a specific role in the hunt, and they will receive unique trivia and photo challenges along the way!\"\n\t},\n\t{ \n\t\t\"text\": \"An interactive and memorable Birthday Party Experience\",\n\t\t\"info\": \"Visit landmarks and noteworthy locations while solving challenges, taking epic photos, and creating lasting memories through this 4.8+ star rated experience with over 3200+ reviews.\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":null,"initial_rid":"3","initial_quantity":"10","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"1","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"51","popular_label":null,"short_description":"Let\u2019s get this party started with birthday hunt options.","long_description":"Gather the birthday crew for an unforgettable birthday party scavenger hunt. Each person in your party will receive an interactive birthday-themed role, so everyone's in on the fun. Make the experience as crazy or as relaxed as you'd like. Connect, explore and celebrate together! Requires 5 business days of advanced purchase.","bullet_other_options":null,"image":"icon_birthday_tickets.png","image_characters":"birthday.png","gift_card_image":"default.png","params":"{\"product\":\"1\",\"quantity\":\"6\",\"roles\":\"5\"}","created_at":"2017-11-21 12:40:53","order":"10","url_slug":"birthday_party","straight_to_checkout":"0","special_event":"1","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[22,11,23]","possible_role_upgrades":null,"last_updated_at":"2024-12-19 08:15:24","free_gift_card":"0","force_open_lead_form":"birthday","us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"49","published":"1","title":"Virtual Game Night Subscription (16 Players): 7-Day Free Trial","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":"19.99","bullet_description":"[ \n\n {\n \"text\": \"Host unlimited Virtual Game Nights per month\",\n \"info\": \"Stay connected with friends and keep the fun going all month long!\"\n },\n{\n \"text\": \"Start with a 7-day free trial \",\n \"info\": \"Your card will not be charged until after 7days\"\n }, \n{\n \"text\": \"Access to new games, features, and categories added weekly\",\n \"info\": \"Every Virtual Game Night is different! Don\u2019t miss out on cool new features.\"\n },\n{\n \"text\": \"Perfect for larger groups of friends\/big families looking to connect and play\",\n \"info\": \"Virtual Game Nights include 5 rounds of fun games and epic trivia.\"\n },\n\n {\n \"text\": \"Embedded video chat and live scoring\",\n \"info\": \"Video chat technology is fully integrated into the gameplay. Live scoring means you\u2019ll always know who\u2019s on top - try to get that high score!\"\n },\n {\n \"text\": \"Access your Virtual Game night through your unique URL\",\n \"info\": \"Invite friends\/family using your URL. Get URL through our login portal.\"\n }\n\n]\n","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":null,"initial_rid":"8","initial_quantity":"1","season_pass_tickets":"16","season_pass_length":null,"initial_product_id":"26","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"45","popular_label":null,"short_description":"Perfect for large groups of friends\/families. Host a virtual game night unlimited times a month.","long_description":"Challenge your friends and family to a Scavenger Hunt Competition that can span households, states, and even countries. Perfect for virtual celebrations and multi-household connections!","bullet_other_options":null,"image":"icon_birthday_tickets.png","image_characters":"birthday.png","gift_card_image":"default.png","params":"{\"product\":\"1\",\"quantity\":\"6\",\"roles\":\"5\"}","created_at":"2017-11-21 12:40:53","order":"10","url_slug":"virtual_game_night_subscription_8_week_free_trial_ultimate","straight_to_checkout":"1","special_event":"0","virtual_trivia_special_event":"1","force_redirect":null,"possible_addons":null,"possible_role_upgrades":null,"last_updated_at":"2024-11-06 10:17:12","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"59","published":"1","title":"Family Edition: Adventures From Scratch","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":null,"bullet_description":"[{\n\t\t\"text\": \"50+ scratch-off adventures\",\n\t\t\"info\": \"Uncover these hidden challenges with your family. When you\u2019re ready for an adventure, scratch it off (like a lottery ticket) and go.\"\n\t},\n\t{\n\t\t\"text\": \"The perfect present\",\n\t\t\"info\": \"Gift it to any family (yes, even your own). It already comes in an awesome box!\"\n\t},\n{\n\t\t\"text\": \"Includes on-the-go adventures, family fun starters, and more. \" \t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":null,"initial_rid":"1","initial_quantity":"1","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"28","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"Family Edition","short_description":"Get your family thinking, talking, connecting, and having fun. These 50+ scratch-off challenges are designed to bring your family together.","long_description":"","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"afs_family.jpg","image_characters":"afs_family.png","gift_card_image":"default.png","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[43]","possible_role_upgrades":null,"last_updated_at":"2024-11-06 10:17:19","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"60","published":"1","title":"Date Edition: Adventures From Scratch","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":null,"bullet_description":"[{\n\t\t\"text\": \"50+ scratch-off adventures\",\n\t\t\"info\": \"Uncover hidden challenges as a couple. When you\u2019re ready for an adventurous date, scratch it off (like a lottery ticket) and go.\"\n\t},\n\t{\n\t\t\"text\": \"The perfect present!\",\n\t\t\"info\": \"Designed to be gifted to your favorite couple or your significant other.\"\n\t},\n{\n\t\t\"text\": \"Includes On-the-go adventures, conversation starters, and more. \"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":null,"initial_rid":"1","initial_quantity":"1","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"27","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"Date Edition","short_description":"Enjoy a fresh and creative approach to getting closer to your partner. These 50+ scratch-off challenges are purpose-built for all-ages date night fun!","long_description":"","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"afs_date.jpg","image_characters":"afs_date.png","gift_card_image":"default.png","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[43]","possible_role_upgrades":null,"last_updated_at":"2024-11-06 10:17:25","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"64","published":"1","title":"6 Player Annual Pass","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":"79.99","bullet_description":"[\n\t{ \n\t\t\"text\": \"Unlimited scavenger hunts, ghost hunts, zoo tours, bar hunts, and in-home activities for one group.\"\n\t},\n\t{ \n\t\t\"text\": \"Valid for 1 year from the activation (not purchase) date.\"\n\t},\n\t{ \n\t\t\"text\": \"Tickets work for any of our outdoor scavenger hunts in 3,000+ cities.\"\n\t},\n\t{ \n\t\t\"text\": \"Free access to date, holiday and family themes.\"\n\t},\n\t{ \n\t\t\"text\": \"Instant printable gift certificate.\"\n\t},\n\t{ \n\t\t\"text\": \"2021 City Guide.\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":null,"initial_rid":"1","initial_quantity":"1","season_pass_tickets":"6","season_pass_length":"12","
2319initial_product_id":"3","initial_addons":null,"bundle_price_override":"79.99","bundle_price_id":null,"popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on a birthday adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"gift_bundles\/6_person_annual.png","image_characters":"10pack.png","gift_card_image":"default.png","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":null,"last_updated_at":"2024-12-19 08:17:08","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"79","published":"1","title":"Family\/Friends Annual Pass","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":"79.99","bullet_description":"[\n\t{ \n\t\t\"text\": \"Valid for one year for 6 players\",\n\t\t\"info\": \"All players must go at the same time and this voucher cannot be split\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{ \n\t\t\"text\": \"Unlimited scavenger hunts & more\",\n\t\t\"info\": \"Can be used for any scavenger hunt, bar hunt, art walk, and ghost hunt!\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{ \n\t\t\"text\": \"Use in any of our 3,000+ cities\",\n\t\t\"info\": \"Many cities have 3+ activites. We have a scavenger hunt in every large city in the United States, Europe, Australia, and Asia.\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{ \n\t\t\"text\": \"Premium gift printing options\",\n\t\t\"info\": \"Choose from numerous gift printing options after purchase, so that you can still give the perfect present before or on Christmas.\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{ \n\t\t\"text\": \"2021 City Exploration Guide\",\n\t\t\"info\": \"Uncover the best way to explore your city with our 2021 Exploration Guide. Available after ticket redemption.\",\n\t\t\"class\": \"desktop100\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":null,"initial_rid":"1","initial_quantity":"1","season_pass_tickets":"6","season_pass_length":"12","initial_product_id":"3","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Family Special","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on a birthday adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"default.png","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":null,"possible_role_upgrades":null,"last_updated_at":"2026-03-06 13:17:35","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"80","published":"1","title":"Couple\u2019s Annual Pass","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":"69.99","bullet_description":"[\n\t{ \n\t\t\"text\": \"Valid for one year for two players\",\n\t\t\"info\": \"All players must go at the same time and this voucher cannot be split\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{ \n\t\t\"text\": \"Unlimited indoor & outdoor scavenger hunts & more\",\n\t\t\"info\": \"Can be used for any scavenger hunt, in-home activity, bar hunt, art walk, and ghost hunt!\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{ \n\t\t\"text\": \"Use in any of our 3,000+ cities\",\n\t\t\"info\": \"Many cities have 3+ activites. We have a scavenger hunt in every large city in the United States, Europe, Australia, and Asia.\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{ \n\t\t\"text\": \"Includes upgraded date challenges\",\n\t\t\"info\": \"These bonus challenges make the hunt more fun for couples with bonus photo challenges and location challenges.\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{ \n\t\t\"text\": \"Premium gift printing options\",\n\t\t\"info\": \"Choose from numerous gift printing options after purchase, so that you can still give the perfect present before or on Christmas.\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{ \n\t\t\"text\": \"2021 City Date Guide\",\n\t\t\"info\": \"Uncover the best way to explore your city with our 2021 date guide. Available after ticket redemption.\",\n\t\t\"class\": \"desktop100 extra10\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":null,"initial_rid":"4","initial_quantity":"1","season_pass_tickets":"4","season_pass_length":"12","
2319initial_product_id":"3","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"26","popular_label":"Date Pass","short_description":"Epic date-themed hunts for one year from redemption.","long_description":"Learn about your city and your date with on a couple\u2019s only scavenger hunt. Date night roles are designed to help both new and long-time couples better connect with each other and explore together. This package includes bonus photo and trivia questions, hand-selected by our team to make sure you have the most fun with that special someone. ","bullet_other_options":null,"image":"icon_date_tickets.png","image_characters":"date.png","gift_card_image":"default.png","params":"{\"product\":\"1\",\"quantity\":\"2\",\"roles\":\"4\"}","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"couple_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":null,"possible_role_upgrades":null,"last_updated_at":"2026-03-06 13:17:35","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"86","published":"1","title":"In-Home\/Outdoor Scavenger Hunt Ticket","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":null,"bullet_description":"[\n\t{\n\t\t\"text\": \"Individualized roles and challenges for everyone (including kids 5+)\"\n\t},\n\t{\n\t\t\"text\": \"Tickets valid for outdoor scavenger hunts in 3,000+ cities\"\n\t},\n\t{\n\t\t\"text\": \"All tickets valid for up to 2 years from date of purchase\"\n\t},\n\n\t{\n\t\t\"text\": \"Consider creating a <a href='javascript: navigateToBundle(getBundleInfo(26))' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href=\\\"javascript:openGenericCreateLeadModal('team-building')\\\" style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='javascript: navigateToBundle(getBundleInfo(2))' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\",\n\t\t\"info\": \"You need 1 ticket per person per hunt for outdoor hunts.\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":null,"initial_rid":"1","initial_quantity":"4","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"33","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city. Get instant printable gift cards or get a gift card mailed to you. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"default.png","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[4]","last_updated_at":"2024-11-21 16:30:42","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"87","published":"1","title":"In-Home\/Outdoor Scavenger Hunt Ticket","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":null,"bullet_description":"[\n\t{\n\t\t\"text\": \"Individualized roles and challenges for everyone (including kids 5+)\"\n\t},\n\t{\n\t\t\"text\": \"Tickets valid for outdoor scavenger hunts in 3,000+ cities\"\n\t},\n\t{\n\t\t\"text\": \"All tickets valid for up to 2 years from date of purchase\"\n\t},\n\n\t{\n\t\t\"text\": \"Consider creating a <a href='javascript: navigateToBundle(getBundleInfo(26))' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href=\\\"javascript:openGenericCreateLeadModal('team-building')\\\" style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='javascript: navigateToBundle(getBundleInfo(2))' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\",\n\t\t\"info\": \"You need 1 ticket per person per hunt for outdoor hunts.\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":null,"initial_rid":"1","initial_quantity":"4","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"63","initial_addons":null,"bundle_price_override":"28.87","bundle_price_id":null,"popular_label":"","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city. Get instant printable gift cards or get a gift card mailed to you. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"default.png","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[4]","last_updated_at":"2024-12-19 08:15:03","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"91","published":"1","title":"Explorer Pass 7 Day Trial","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":"19.99","bullet_description":"[ \n {\n \"text\": \"Unlimited pass covers you and your friends!\",\n \"info\": \"Let's Roam has over 1,000+ activities around the US & world!\"\n }, {\n \"text\": \"Unlimited activities in 1,000+ locations (10+ per city)\",\n \"info\": \"Let's Roam has over 1,000+ activities around the US & world!\"\n },{\n \"text\": \"Unlimited Indoor and Outdoor Scavenger Hunts\",\n \"info\": \"Explore your hometown, new neighborhoods, and attractions all over the world\"\n },\n{\n \"text\": \"Unlimited Art Walks, Ghost Tours, Brewery Crawls, and & Daily Challenges\",\n \"info\": \"Every city has tens of activities to do each month\"\n }, \n{\n \"text\": \"Unlimited Virtual Game Nights per months\",\n \"info\": \"Play with with up to 16 people with our built in video calls included with your memebership!\"\n },\n{\n \"text\": \"Includes 5 friends for outdoors, and 15 for virtual activities\",\n \"info\": \"Brewery crawls are a fun way to explore pubs in different neighboorhoods.\"\n }\n\n]\n","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":null,"initial_rid":"8","initial_quantity":"1","season_pass_tickets":"10","season_pass_length":null,"initial_product_id":"40","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"45","popular_label":"Unlimited Adventure","short_description":"One single pass that allows for you and your friends to do all of our 1000+ adventures!","long_description":"Challenge your friends and family to a Scavenger Hunt Competition that can span households, states, and even countries. Perfect for virtual celebrations and multi-household connections!","bullet_other_options":null,"image":"icon_birthday_tickets.png","image_characters":"birthday.png","gift_card_image":"default.png","params":"{\"product\":\"1\",\"quantity\":\"6\",\"roles\":\"5\"}","created_at":"2017-11-21 12:40:53","order":"10","url_slug":"all","straight_to_checkout":"1","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":null,"possible_role_upgrades":null,"last_updated_at":"2024-11-11 05:41:51","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"95","published":"1","title":"Family\/Friends Annual Pass","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":"79.99","bullet_description":"[\n\t{ \n\t\t\"text\": \"Valid for one year for 6 players\",\n\t\t\"info\": \"Year starts after first redemption. All players must go at the same time and this voucher cannot be split\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{ \n\t\t\"text\": \"Unlimited scavenger hunts & more\",\n\t\t\"info\": \"Can be used for any scavenger hunt, bar hunt, and ghost hunt!\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{ \n\t\t\"text\": \"Use in any of our 3,000+ cities\",\n\t\t\"info\": \"Many cities have 3+ activites. We have a scavenger hunt in every large city in the United States, Europe, Australia, and Asia.\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{ \n\t\t\"text\": \"Includes printable gift card\",\n\t\t\"info\": \"Choose from numerous gift printing options after purchase, so that you can still give the perfect present before or on Christmas.\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{ \n\t\t\"text\": \"Printable character cut-outs\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Valid for one year for up to 6 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"6","season_pass_length":"12","
2319initial_product_id":"3","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on a birthday adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"default.png","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[26, 27]","possible_role_upgrades":null,"last_updated_at":"2026-03-06 13:17:35","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"96","published":"1","title":"Couple\u2019s Annual Pass","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":"69.99","bullet_description":"[\n\t{ \n\t\t\"text\": \"Valid for one year for two players\",\n\t\t\"info\": \"Year starts after first redemption. All players must go at the same time and this voucher cannot be split.\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{ \n\t\t\"text\": \"Unlimited indoor & outdoor scavenger hunts & more\",\n\t\t\"info\": \"Can be used for any scavenger hunt, in-home activity, bar hunt, and ghost hunt!\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{ \n\t\t\"text\": \"Use in any of our 3,000+ cities\",\n\t\t\"info\": \"Many cities have three or more activites. We have a scavenger hunt in every major city in the United States, Europe, Australia, and Asia.\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{ \n\t\t\"text\": \"Includes upgraded date challenges\",\n\t\t\"info\": \"These bonus challenges make the hunt more fun for couples with bonus photo challenges and location challenges.\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{ \n\t\t\"text\": \"Includes printable gift card\",\n\t\t\"info\": \"Choose from numerous gift printing options after purchase, so that you can still give the perfect present.\",\n\t\t\"class\": \"extra10\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Valid for one year for one couple playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with date theme\"]","initial_rid":"4","initial_quantity":"1","season_pass_tickets":"2","season_pass_length":"12","initial_product_id":"3","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"26","popular_label":"Most Popular","short_description":"Epic date-themed hunts for one year from redemption.","long_description":"Learn about your city and your date with on a couple\u2019s only scavenger hunt. Date night roles are designed to help both new and long-time couples better connect with each other and explore together. This package includes bonus photo and trivia questions, hand-selected by our team to make sure you have the most fun with that special someone. ","bullet_other_options":null,"image":"icon_date_tickets.png","image_characters":"date.png","gift_card_image":"couples_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"2\",\"roles\":\"4\"}","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"couple_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[28, 29]","possible_role_upgrades":null,"last_updated_at":"2024-11-20 07:19:03","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"couples-annual-pass.png","photo_image":"couples-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"97","published":"1","title":"Family\/Friends Annual Pass","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":"79.99","bullet_description":"[\n\t{ \n\t\t\"text\": \"Valid for one year for 6 players\",\n\t\t\"info\": \"Year starts after first redemption. All players must go at the same time and this voucher cannot be split.\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{ \n\t\t\"text\": \"Unlimited scavenger hunts & more\",\n\t\t\"info\": \"Can be used for any scavenger hunt, bar hunt, and ghost hunt!\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{ \n\t\t\"text\": \"Use in any of our 3000+ cities\",\n\t\t\"info\": \"Many cities have 3+ activites. We have a scavenger hunt in every large city in the United States, Europe, Australia, and Asia.\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{ \n\t\t\"text\": \"Includes printable gift card\",\n\t\t\"info\": \"Choose from numerous gift printing options after purchase, so that you can still give the perfect present before or on Christmas.\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{ \n\t\t\"text\": \"Printable character cut-outs\"\n\t}\n]","bundle_callout":"Most Popular","sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Valid for one year for up to 6 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"6","season_pass_length":"12","
2319initial_product_id":"3","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on a birthday adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[28, 29]","possible_role_upgrades":null,"last_updated_at":"2024-11-22 05:57:38","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"family-annual-pass.png","photo_image":"family-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":"cherry-blossom-family-pass.jpg","easter_photo_image":"easter-eggs-top.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"120","published":"1","title":"Indoor \/ Outdoor Scavenger Hunt Tickets","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":null,"bullet_description":"[\n\t{\n\t\t\"text\": \"Individualized roles and challenges for everyone (including kids 5+)\"\n\t},\n\t{\n\t\t\"text\": \"Tickets valid for up to 2 years for 3,000+ outdoor scavenger hunts\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Requires ticket for each player (5 & older)\", \"Tickets must be used together on any ONE of our 3,000+ outdoor scavenger hunts\"]","initial_rid":"1","initial_quantity":"4","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"1","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"","short_description":"Individualized roles & challenges for players aged 5+ for any 1 hunt","long_description":"See all the best sights and hidden treasures in your city. Get an instant printable gift card. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"date-for-two.jpeg","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[4]","last_updated_at":"2024-11-06 10:17:41","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"hunt-tickets.png","photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"}
2319,{"id":"125","published":"1","title":"Date Scavenger Hunt For 2","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":"39.96","bullet_description":"[\n\t{\n\t\t\"text\": \"One ticket for two people\"\n\t},\n\t{\n\t\t\"text\": \"Tickets valid for 3,000+ activities around the globe or 20+ in-home activity themes\"\n\t},\n\t{ \n\t\t\"text\": \"Includes our Date Night theme upgrade and bonus challenges\",\n\t\t\"info\": \"This add-on makes the hunt more fun for couples with bonus photo challenges and location challenges designed around intimacy and affection.\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{\n\t\t\"text\": \"All tickets valid for up to 2 years from date of purchase.\"\n\t},\n\t{\n\t\t\"text\": \"Tickets are not activated until the voucher code is redeemed in the Let's Roam app.\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Date or Date Holiday Themed Tickets and roles for any one of our outdoor scavenger hunts in 3,000+ cities\"]","initial_rid":"11","initial_quantity":"2","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"1","initial_addons":null,"bundle_price_override":"44.99","bundle_price_id":null,"popular_label":"","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city through an interactive, app-guided experience with your special someone.","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"icon_date.png","image_characters":"date.png","gift_card_image":"date-for-two.jpeg","params":"{\"product\":\"1\",\"quantity\":\"2\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[64]","possible_role_upgrades":null,"last_updated_at":"2024-12-19 08:13:32","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"129","published":"1","title":"Adventure Travel Journal","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":null,"bullet_description":"[{\n\t\t\"text\": \"A travel journal to remember\",\n\t\t\"info\": \"Explore your world from home or abroad while you log your adventures\"\n\t},\n\t{\n\t\t\"text\": \"The perfect present!\",\n\t\t\"info\": \"Designed to be gifted to age groups of all size.\"\n\t},\n{\n\t\t\"text\": \"Includes tons of prompts and activities \"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":null,"initial_rid":"1","initial_quantity":"1","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"45","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"Perfect Gift","short_description":"Created for all who adventure, by adventurers. Fun for solo travelers, couples, or the whole family to complete together. ","long_description":"","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"adventure_book_cover.jpg","image_characters":"adventure_book_cover.jpg","gift_card_image":"default.png","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2022-05-04 12:40:53","order":"2","url_slug":"adventure_travel_journal","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[43]","possible_role_upgrades":null,"last_updated_at":"2024-11-06 10:18:30","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"}
2319,{"id":"134","published":"1","title":"Friends Edition: Adventures From Scratch","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":"39.99","bullet_description":"[{\n\t\t\"text\": \"50+ scratch-off adventures\",\n\t\t\"info\": \"Uncover these hidden challenges with your friends. When you\u2019re ready for an adventure, scratch it off (like a lottery ticket) and go.\"\n\t},\n\t{\n\t\t\"text\": \"The perfect present\",\n\t\t\"info\": \"Gift it to any friends. It already comes in an awesome box!\"\n\t},\n{\n\t\t\"text\": \"Includes on-the-go adventures, family fun starters, and more. \" \t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":null,"initial_rid":"1","initial_quantity":"1","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"51","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"Friends Edition","short_description":"","long_description":"","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"afs_friends.jpg","image_characters":"afs_family.png","gift_card_image":"default.png","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[43]","possible_role_upgrades":null,"last_updated_at":"2024-12-09 14:08:17","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"150","published":"1","title":"Family Book + Date Book Bundle (Extra $10 Off + Free Shipping)","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":"69.99","bullet_description":"[\"1 Copy of Adventures From Scratch: Date Edition and 1 Copy of Adventures From Scratch: Family Edition\", \"Do epic dates with you SO and go on fun adventures with your family\", \"Free shipping plus an extra $20 off\"]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"1","bullet_description_short":"[\"1 Copy of Adventures From Scratch: Date Edition and 1 Copy of Adventures From Scratch: Family Edition\", \"Do epic dates with you SO and go on fun adventures with your family\", \"Free shipping plus an extra $10 off\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"27","initial_addons":"{\n\t\"51\": true\n}","bundle_price_override":null,"bundle_price_id":null,"popular_label":"Date Edition","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city. Get instant printable gift cards or get a gift card mailed to you. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"afs_date.jpg","image_characters":"afs_date.png","gift_card_image":"default.png","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":null,"last_updated_at":"2024-12-09 13:44:27","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"}
2319,{"id":"151","published":"1","title":"Ultimate Date Bundle: Date Book + Adventure Journal + Couple's Annual Pass","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":"99.99","bullet_description":"[ \"Two tickets to any one of our 3,000+ date-night scavenger hunts through the Let\u2019s Roam app\",\n \"Adventures from Scratch: Date Edition\"\n]","bundle_callout":"Most Popular","sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"1","bullet_description_short":"[\n \"Valid for one year for one couple playing together\",\n \"Unlimited scavenger hunts & more with date theme in 1000+ cities through our sister site, scavengerhunt.com\",\n \"Copy of Adventures From Scratch: Date Edition\",\n \"Copy of an Adventure Journal to log your adventures\"\n]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"27","initial_addons":"{\n\t\"43\": true,\n\t\"49\": true\n}","bundle_price_override":null,"bundle_price_id":null,"popular_label":"Date Edition","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city. Get instant printable gift cards or get a gift card mailed to you. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"afs_date.jpg","image_characters":"afs_date.png","gift_card_image":"default.png","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":null,"last_updated_at":"2024-12-09 17:40:44","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":"ultimate-date-bundle.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"152","published":"1","title":"2 Date Book Bundle (Extra $10 Off + Free Shipping)","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":"69.99","bullet_description":"[\"Two copies of Adventures from Scratch: Date Edition\", \"Free shipping, plus an extra $5 off\", \"Perfect for gifting a book to a friend or loved one\"]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"1","bullet_description_short":"[\"Two copies of Adventures from Scratch: Date Edition\", \"Free shipping, plus an extra $10 off\", \"Perfect for gifting a book to a friend or loved one\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"27","initial_addons":"{\n\t\"52\": true\n}","bundle_price_override":null,"bundle_price_id":null,"popular_label":"Date Edition","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city. Get instant printable gift cards or get a gift card mailed to you. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"afs_date.jpg","image_characters":"afs_date.png","gift_card_image":"default.png","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":null,"last_updated_at":"2024-12-09 13:44:37","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"}
2319,{"id":"158","published":"1","title":"Friends Annual Pass","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":"79.99","bullet_description":"[\"Valid for one year for one pass holder & up to 3 friends\", \"Unlimited scavenger hunts, bar crawls, food tours, art walks, and more\"]","bundle_callout":"Most Popular","sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Valid for one year for one pass holder & up to 3 friends\", \"Unlimited scavenger hunts, bar crawls, food tours, art walks, and more\"]","initial_rid":"4","initial_quantity":"1","season_pass_tickets":"3","season_pass_length":"12","initial_product_id":"3","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"26","popular_label":"Most Popular","short_description":"Epic date-themed hunts for one year from redemption.","long_description":"Learn about your city and your date with on a couple\u2019s only scavenger hunt. Date night roles are designed to help both new and long-time couples better connect with each other and explore together. This package includes bonus photo and trivia questions, hand-selected by our team to make sure you have the most fun with that special someone. ","bullet_other_options":null,"image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"default.png","params":"{\"product\":\"1\",\"quantity\":\"2\",\"roles\":\"4\"}","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"couple_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[71,70,72]","possible_role_upgrades":null,"last_updated_at":"2026-04-01 00:21:13","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"159","published":"1","title":"Couple\u2019s Annual Pass","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":"69.99","bullet_description":"[\"Valid for one year for one couple playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with date theme\"]","bundle_callout":"Great For Couples","sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Valid for one year for one couple playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with date theme\"]","initial_rid":"4","initial_quantity":"1","season_pass_tickets":"2","season_pass_length":"12","initial_product_id":"3","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"26","popular_label":"Most Popular","short_description":"Epic date-themed hunts for one year from redemption.","long_description":"Learn about your city and your date with on a couple\u2019s only scavenger hunt. Date night roles are designed to help both new and long-time couples better connect with each other and explore together. This package includes bonus photo and trivia questions, hand-selected by our team to make sure you have the most fun with that special someone. ","bullet_other_options":null,"image":"icon_date_tickets.png","image_characters":"date.png","gift_card_image":"default.png","params":"{\"product\":\"1\",\"quantity\":\"2\",\"roles\":\"4\"}","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"couple_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[71,70,72]","possible_role_upgrades":null,"last_updated_at":"2024-11-22 05:44:41","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"}
2319,{"id":"160","published":"1","title":"Family Annual Pass","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":"89.99","bullet_description":"[\"Valid for one year for one pass holder & up to 5 family members\", \"Unlimited family friendly indoor & ourdoor hunts\", \"Bonus family & holiday content, activities & more!\"]","bundle_callout":"Cyber Week Family Deal","sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Valid for one year for one pass holder & up to 5 family members\", \"Unlimited family friendly indoor & ourdoor hunts\", \"Bonus family & holiday content, activities & more!\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"6","season_pass_length":"12","initial_product_id":"3","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on a birthday adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"default.png","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[71,70,72]","possible_role_upgrades":null,"last_updated_at":"2024-11-22 05:44:48","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"189","published":"1","title":"Family\/Friends Scavenger Hunt for 4","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":"51.96","bullet_description":"[\n{\n\t\t\"text\": \"One ticket up to 4 people\"\n\t},\n\t{\n\t\t\"text\": \"Tickets valid for 3,000+ activities around the globe or 20+ in-home activity themes\"\n\t},\n\t{\n\t\t\"text\": \"All tickets valid for up to 2 years from date of purchase.\"\n\t},\n\t{\n\t\t\"text\": \"Tickets are not activated until the voucher code is redeemed in the Let's Roam app.\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Unlocks access to ONE of our outdoor scavenger hunts in over 600 cities worldwide (city selectable after purchase)\", \"Additional scavenger hunts, role upgrades, and themes require an additional purchase\",\"Use any 1 time within 2 years with up to a 4 person group\"]","initial_rid":"1","initial_quantity":"4","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"52","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city through an interactive, app-guided experience with your closest family and friends.","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"family_and_friends_for_four.jpeg","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[64]","possible_role_upgrades":null,"last_updated_at":"2024-12-19 08:16:49","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"}
2319,{"id":"192","published":"1","title":"Couple\u2019s Annual Pass","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":"69.99","bullet_description":"[\n\t{\n\t\t\"text\": \"Annual pass for up to 2 players\",\n\t\t\"info\": \"All tickets valid for up to 2 years from date of purchase. Tickets are not activated until the voucher code is redeemed in the Let's Roam app. Whoever redeems the voucher must be present at each activity; the other player may differ.\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{ \n\t\t\"text\": \"Provides unlimited access to activities in over 3,000+ cities worldwide and 20+ in-home activities\"\n\t},\n\t{ \n\t\t\"text\": \"Includes our Date Night theme upgrade and bonus challenges\",\n\t\t\"info\": \"This add-on makes the hunt more fun for couples with bonus photo challenges and location challenges designed around intimacy and affection.\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{\n\t\t\"text\": \"All passes valid for up to 2 years from date of purchase.\"\n\t},\n\t{\n\t\t\"text\": \"Passes are not activated until the voucher code is redeemed in the Let's Roam app.\"\n\t},\n\t{\n\t\t\"text\": \"Whoever redeems the pass must be present at each activity; the other player may differ.\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Valid for one year for one couple playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with date theme\"]","initial_rid":"4","initial_quantity":"1","season_pass_tickets":"2","season_pass_length":"12","initial_product_id":"3","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"26","popular_label":"Most Popular","short_description":"Epic date-themed hunts for one year from redemption.","long_description":"Learn about your city and your date on a couple\u2019s only scavenger hunt. Date night roles are designed to help both new and long-time couples better connect with each other and explore together. This package includes bonus photo and trivia questions, hand-selected by our team to make sure you have the most fun with that special someone. ","bullet_other_options":null,"image":"icon_date_tickets.png","image_characters":"date.png","gift_card_image":"couples_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"2\",\"roles\":\"4\"}","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"couple_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[79,80]","possible_role_upgrades":null,"last_updated_at":"2024-11-22 17:19:30","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"couples-annual-pass.png","photo_image":"couple-annual-pass.png","st_patricks_photo_image":"st-pats-couple-tickets.jpg","cherry_blossom_photo_image":"cherry-blossom-couple-pass.jpg","easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"205","published":"1","title":"Family\/Friends Annual Pass","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a 1 year pass for unlimited scavenger hunts for all our locations locations for up to 6 players playing together. Perfect for friends and family.","bundle_price":"79.99","bullet_description":"[\n\t{ \n\t\t\"text\": \"Valid for one year for 6 players\",\n\t\t\"info\": \"Year starts after first redemption. All players must go at the same time and this voucher cannot be split.\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{ \n\t\t\"text\": \"Unlimited scavenger hunts & more\",\n\t\t\"info\": \"Can be used for any scavenger hunt, bar hunt, and ghost hunt!\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{ \n\t\t\"text\": \"Use in any of our 3,000+ cities\",\n\t\t\"info\": \"Many cities have 3+ activites. We have a scavenger hunt in every large city in the United States, Europe, Australia, and Asia.\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{ \n\t\t\"text\": \"Includes printable gift card\",\n\t\t\"info\": \"Choose from numerous gift printing options after purchase, so that you can still give the perfect present before or on Christmas.\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{ \n\t\t\"text\": \"Printable character cut-outs\"\n\t}\n]","bundle_callout":"Most Popular","sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Valid for one year for up to 6 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"6","season_pass_length":"12","
2319initial_product_id":"3","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on a birthday adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[79,80]","possible_role_upgrades":null,"last_updated_at":"2026-03-06 13:17:35","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":"family.jpg","icon":"assets\/images\/store\/bundles\/modal\/icons\/orange-group.svg","display_color":"var(--orange)","subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"206","published":"1","title":"Couple\u2019s Annual Pass","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a 1 year pass for unlimited scavenger hunts for all our locations for up to 2 players playing together. Perfect for couples playing together.","bundle_price":"69.99","bullet_description":"[\n\t{ \n\t\t\"text\": \"Valid for one year for two players\",\n\t\t\"info\": \"Year starts after first redemption. All players must go at the same time and this voucher cannot be split.\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{ \n\t\t\"text\": \"Unlimited indoor & outdoor scavenger hunts & more\",\n\t\t\"info\": \"Can be used for any scavenger hunt, in-home activity, bar hunt, and ghost hunt!\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{ \n\t\t\"text\": \"Use in any of our 3,000+ cities\",\n\t\t\"info\": \"Many cities have 3+ activites. We have a scavenger hunt in every large city in the United States, Europe, Australia, and Asia.\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{ \n\t\t\"text\": \"Includes upgraded date challenges\",\n\t\t\"info\": \"These bonus challenges make the hunt more fun for couples with bonus photo challenges and location challenges.\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{ \n\t\t\"text\": \"Includes printable gift card\",\n\t\t\"info\": \"Choose from numerous gift printing options after purchase, so that you can still give the perfect present before or on Christmas.\",\n\t\t\"class\": \"extra10\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Valid for one year for one couple playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with date theme\"]","initial_rid":"4","initial_quantity":"1","season_pass_tickets":"2","season_pass_length":"12","initial_product_id":"3","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"26","popular_label":"Most Popular","short_description":"Epic date-themed hunts for one year from redemption.","long_description":"Learn about your city and your date with on a couple\u2019s only scavenger hunt. Date night roles are designed to help both new and long-time couples better connect with each other and explore together. This package includes bonus photo and trivia questions, hand-selected by our team to make sure you have the most fun with that special someone. ","bullet_other_options":null,"image":"icon_date_tickets.png","image_characters":"date.png","gift_card_image":"couples_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"2\",\"roles\":\"4\"}","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"couple_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[79,80]","possible_role_upgrades":null,"last_updated_at":"2026-03-06 13:17:35","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":"couple.jpg","icon":"assets\/images\/store\/bundles\/modal\/icons\/teal-heart.svg","display_color":"var(--teal)","subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"211","published":"1","title":"Unlimited Monthly Membership","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":"12.99","bullet_description":"[\n\t{ \n\t\t\"text\": \"Monthly membership allowing for unlimited scavenger hunts with 6 players playing together\"\n\t},\n\t{ \n\t\t\"text\": \"Unlimited scavenger hunts & more\",\n\t\t\"info\": \"Can be used for any scavenger hunt, audio tour, bar hunt, and ghost hunt!\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{ \n\t\t\"text\": \"Use in any of our 3,000+ cities\",\n\t\t\"info\": \"Many cities have 3+ activites. We have a scavenger hunt in every large city in the United States, Europe, Australia, and Asia.\",\n\t\t\"class\": \"extra10\"\n\t}\n]","bundle_callout":"Best Value","sold_out":"0","upgrade_bundle_id":"219","upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Additional 50%:<\/strong> With an annual membership for only $79.99. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Monthly membership for unlimited scavenger hunts (and other activities!)\", \"Unlimited for up to 6 players playing together in 3,000+ locations around the world\", \"Unlimited access to audio tours, ghost tours, bar crawls, and scavenger hunts\"]","initial_rid":"8","initial_quantity":"1","season_pass_tickets":"6","season_pass_length":"1","initial_product_id":"75","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"45","popular_label":"Free Trial Of Unlimited Adventure","short_description":"One single pass that allows for you and your friends to do all of our 3000+ adventures!","long_description":"Challenge your friends and family to a Scavenger Hunt Competition that can span households, states, and even countries. Perfect for virtual celebrations and multi-household connections!","bullet_other_options":null,"image":"icon_birthday_tickets.png","image_characters":"birthday.png","gift_card_image":"default.png","params":"{\"product\":\"1\",\"quantity\":\"6\",\"roles\":\"5\"}","created_at":"2017-11-21 12:40:53","order":"10","url_slug":"all","straight_to_checkout":"1","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":null,"possible_role_upgrades":null,"last_updated_at":"2024-11-06 10:17:56","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"216","published":"1","title":"Giftable 1 Year Pass","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":"89.99","bullet_description":"[\n\t{ \n\t\t\"text\": \"Valid for one year for 6 players\",\n\t\t\"info\": \"Year starts after first redemption. All players must go at the same time and this voucher cannot be split.\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{ \n\t\t\"text\": \"Unlimited scavenger hunts & more\",\n\t\t\"info\": \"Can be used for any scavenger hunt, bar hunt, and ghost hunt!\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{ \n\t\t\"text\": \"Use in any of our 3000+ cities\",\n\t\t\"info\": \"Many cities have 3+ activites. We have a scavenger hunt in every large city in the United States, Europe, Australia, and Asia.\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{ \n\t\t\"text\": \"Includes printable gift card\",\n\t\t\"info\": \"Choose from numerous gift printing options after purchase, so that you can give the perfect present.\",\n\t\t\"class\": \"extra10\"\n\t}\n]","bundle_callout":"A Great Gift","sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra 10%:<\/strong> With an annual membership for only $79.99. Zero commitments - cancel anytime.'","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Valid for one year from redemption for up to 6 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"6","season_pass_length":"12","
2319initial_product_id":"79","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on an adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[28, 29]","possible_role_upgrades":null,"last_updated_at":"2024-12-16 19:38:10","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"family-annual-pass.png","photo_image":"family-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":"cherry-blossom-family-pass.jpg","easter_photo_image":"easter-eggs-top.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"217","published":"1","title":"Unlimited Monthly Membership - Up to 6 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Lock in discounted pricing and unlimited scavenger hunts for all our locations for up to 6 players playing together. Cancel anytime.","bundle_price":"19.99","bullet_description":"[\n {\"text\": \"Unlimited scavenger hunts, bar crawls, audio tours, and ghost tours for up to 6 players playing together.\"},\n {\"text\": \"Cancel anytime, no-commitment monthly recurring charge just $19.99 per month.\"},\n {\"text\": \"Access premium themes including date nights, family fun, and holiday-themed adventures.\"},\n {\"text\": \"<b>Note: does not include printable gift cards.<\/b> This ticket cannot be split. Primary ticketholder must always be present.\"}\n]","bundle_callout":"Bring Your Friends For Free","sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra $[[savings]]:<\/strong> With an unlimited membership for only $12.99 \/ month. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\n \"Unlimited scavenger hunts, bar crawls, audio tours, and ghost tours for up to 6 players playing together.\",\n \"Cancel anytime, no-commitment monthly recurring charge just $14.99 per month.\",\n \"Access premium themes including date nights, family fun, and holiday-themed adventures.\",\n \"<b>Note: does not include printable gift cards<\/b>\",\n \"This ticket cannot be split. Primary ticketholder must always be present.\"\n]","initial_rid":"8","initial_quantity":"1","season_pass_tickets":"6","season_pass_length":"1","initial_product_id":"85","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"45","popular_label":"Free Trial Of Unlimited Adventure","short_description":"One single pass that allows for you and your friends to do all of our 1000+ adventures!","long_description":"Challenge your friends and family to a Scavenger Hunt Competition that can span households, states, and even countries. Perfect for virtual celebrations and multi-household connections!","bullet_other_options":null,"image":"sch-membership.jpg","image_characters":"birthday.png","gift_card_image":"default.png","params":"{\"product\":\"1\",\"quantity\":\"6\",\"roles\":\"5\"}","created_at":"2017-11-21 12:40:53","order":"10","url_slug":"all","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":null,"possible_role_upgrades":null,"last_updated_at":"2025-12-03 16:15:18","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"218","published":"1","title":"Scavenger Hunt Ticket","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":null,"bullet_description":"[\n\t{\n\t\t\"text\": \"Individualized roles and challenges for everyone (including kids 5+)\"\n\t},\n\t{\n\t\t\"text\": \"Tickets valid in 3,000+ cities\"\n\t},\n\t{\n\t\t\"text\": \"All tickets valid for up to 2 years from date of purchase\"\n\t},\n\n\t{\n\t\t\"text\": \"Consider creating a <a href='javascript: navigateToBundle(getBundleInfo(26))' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href=\\\"javascript:openGenericCreateLeadModal('team-building')\\\" style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='javascript: navigateToBundle(getBundleInfo(2))' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\",\n\t\t\"info\": \"You need 1 ticket per person per hunt for outdoor hunts.\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra $[[savings]]:<\/strong> With an unlimited membership for only $12.99 \/ month. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Requires ticket for each player (5 & older)\", \"Tickets must be used together on any ONE of our outdoor scavenger hunts\"]","initial_rid":"1","initial_quantity":"4","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"77","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city. Get instant printable gift cards or get a gift card mailed to you. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"date-for-two.jpeg","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[4]","last_updated_at":"2026-03-06 13:16:48","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"hunt-tickets.png","photo_image":"hunt-tickets.png","st_patricks_photo_image":"st-pats-hunt-tickets.jpg","cherry_blossom_photo_image":"cherry-blossom-hunt-tickets.jpg","easter_photo_image":"easter-eggs-side.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"219","published":"1","title":"Let's Roam+ Annual Membership","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":"79.99","bullet_description":"[ \n {\n \"text\": \"Unlimited access to scavenger hunts, bar crawls, ghost hunts, art walks, and more in over 3,500 locations worldwide\",\n \"info\": \"Let's Roam has over 1,000+ activities around the US & world!\"\n }, {\n \"text\": \"Bring up to 5 friends with your for free on every adventure\",\n \"info\": \"Let's Roam has over 1,000+ activities around the US & world!\"\n },{\n \"text\": \"Your own personal travel assistant to help you find things to do, places to
2319see, and more\",\n \"info\": \"Explore your hometown, new neighborhoods, and attractions all over the world\"\n },\n{\n \"text\": \"Access to thousands of incredible Let's Roam Local Guide recommendations\",\n \"info\": \"Every city has tens of activities to do each month\"\n }, \n{\n \"text\": \"Enjoy curated Wanderlists, like playlists for travel experiences\",\n \"info\": \"Play with with up to 16 people with our built in video calls included with your memebership!\"\n }\n]\n","bundle_callout":"Bundle And Save","sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Requires ticket for each player (5 & older)\", \"Tickets must be used together on any ONE of our outdoor scavenger hunts in 3,000+ cities\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"6","season_pass_length":"12","initial_product_id":"78","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on a birthday adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"default.png","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[76]","possible_role_upgrades":null,"last_updated_at":"2024-11-20 07:19:03","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":"general-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"220","published":"1","title":"Scavenger Hunt Ticket","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":null,"bullet_description":"[\n\t{\n\t\t\"text\": \"Individualized roles and challenges for everyone (including kids 5+)\"\n\t},\n\t{\n\t\t\"text\": \"Tickets valid in 3,000+ cities\"\n\t},\n\t{\n\t\t\"text\": \"All tickets valid for up to 2 years from date of purchase\"\n\t},\n\n\t{\n\t\t\"text\": \"Consider creating a <a href='javascript: navigateToBundle(getBundleInfo(26))' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href=\\\"javascript:openGenericCreateLeadModal('team-building')\\\" style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='javascript: navigateToBundle(getBundleInfo(2))' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\",\n\t\t\"info\": \"You need 1 ticket per person per hunt for outdoor hunts.\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra $[[savings]]:<\/strong> With an unlimited membership for only $12.99 \/ month. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Requires ticket for each player (5 & older)\", \"Tickets must be used together on any ONE of our outdoor scavenger hunts\"]","initial_rid":"1","initial_quantity":"4","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"80","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city. Get instant printable gift cards or get a gift card mailed to you. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"date-for-two.jpeg","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[4]","last_updated_at":"2026-03-06 13:16:48","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"hunt-tickets.png","photo_image":"hunt-tickets.png","st_patricks_photo_image":"st-pats-hunt-tickets.jpg","cherry_blossom_photo_image":"cherry-blossom-hunt-tickets.jpg","easter_photo_image":"easter-eggs-side.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"224","published":"1","title":"Scavenger Hunt Ticket","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a single scavenger hunt experience in any of our locations.","bundle_price":null,"bullet_description":"[\n\t{\n\t\t\"text\": \"Individualized roles and challenges for everyone (including kids 5+)\"\n\t},\n\t{\n\t\t\"text\": \"Tickets valid in 3,000+ cities\"\n\t},\n\t{\n\t\t\"text\": \"All tickets valid for up to 2 years from date of purchase\"\n\t},\n\n\t{\n\t\t\"text\": \"Consider creating a <a href='javascript: navigateToBundle(getBundleInfo(26))' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href=\\\"javascript:openGenericCreateLeadModal('team-building')\\\" style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='javascript: navigateToBundle(getBundleInfo(2))' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\",\n\t\t\"info\": \"You need 1 ticket per person per hunt for outdoor hunts.\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Requires ticket for each player (5 & older)\", \"Tickets must be used together on any ONE of our outdoor scavenger hunts in 3,000+ cities\"]","initial_rid":"1","initial_quantity":"4","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"1","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city. Get instant printable gift cards or get a gift card mailed to you. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"date-for-two.jpeg","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[4]","last_updated_at":"2026-03-06 13:16:48","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"hunt-tickets.png","photo_image":"hunt-tickets.png","st_patricks_photo_image":"st-pats-hunt-tickets.jpg","cherry_blossom_photo_image":"cherry-blossom-hunt-tickets.jpg","easter_photo_image":"easter-eggs-side.jpg","modal_image":"group.jpg","
2319icon":"assets\/images\/store\/bundles\/modal\/icons\/ticket.svg","display_color":"var(--blue)","subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"226","published":"1","title":"Scavenger Hunt Group Ticket","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a single scavenger hunt experience in any of our locations with a group of up to six players.","bundle_price":"49.99","bullet_description":"[\n\t{\n\t\t\"text\": \"Valid for one scavenger hunt in any of our 3,000+ locations.\"\n\t},\n\t{\n\t\t\"text\": \"Perfect for couples, families, or friends to explore and have fun together.\"\n\t},\n\t{\n\t\t\"text\": \"Solve challenges, discover landmarks, and create unforgettable memories.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra $[[savings]]:<\/strong> With an unlimited membership for only $12.99 \/ month. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Valid for up to 6 players playing together on one team\", \"Tickets must be used together on any ONE of our outdoor scavenger hunts\"]","initial_rid":"1","initial_quantity":"6","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"77","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city. Get instant printable gift cards or get a gift card mailed to you. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"date-for-two.jpeg","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[]","last_updated_at":"2025-12-30 11:08:28","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"hunt-tickets.png","photo_image":"hunt-tickets.png","st_patricks_photo_image":"st-pats-hunt-tickets.jpg","cherry_blossom_photo_image":"cherry-blossom-hunt-tickets.jpg","easter_photo_image":"easter-eggs-side.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"1"},{"id":"227","published":"1","title":"Giftable 1 Year Pass","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Gift (or keep!) exploration with unlimited scavenger hunts for a full year in any of our 3,000+ locations for up to 6 players. Buy 2+ and enjoy an extra $20 off each additional giftable pass. Adventure is better when shared!","bundle_price":"89.99","bullet_description":"[\n\t{\n\t\t\"text\": \"Valid for one year for up to 6 players in each activity. Year starts after the first redemption. Primary ticketholder must always be present (but can bring different people); this ticket cannot be split.\"\n\t},\n\t{\n\t\t\"text\": \"Unlimited scavenger hunts, bar crawls, audio tours, and ghost tours with ANY theme.\"\n\t},\n\t{\n\t\t\"text\": \"Use in any of our 3,000+ cities, including options in the U.S., Europe, Australia, and Asia. Many cities have multiple activities.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}\n]\n","bundle_callout":"A Great Gift","sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra 10%:<\/strong> With an annual membership for only $69.99. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Giftable one year annual pass for unlimited scavenger hunts (or any of our activities!)\",\"One time purchase valid for one year from redemption for up to 6 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"6","season_pass_length":"12","
2319initial_product_id":"79","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on an adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[86]","possible_role_upgrades":null,"last_updated_at":"2024-12-16 19:36:25","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"family-annual-pass.png","photo_image":"family-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":"cherry-blossom-family-pass.jpg","easter_photo_image":"easter-eggs-top.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"228","published":"1","title":"Unlimited Monthly Membership","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"A flexible membership for unlimited scavenger hunts and more\u2014perfect for explorers and puzzle lovers! Only one can be bought at a time. ","bundle_price":"12.99","bullet_description":"[\n\t{\n\t\t\"text\": \"Unlimited for up to 6 players playing together in 3,000+ locations around the world. Primary ticketholder must always be present (but can bring different people); this ticket cannot be split.\"\n\t},\n\t{\n\t\t\"text\": \"This ticket cannot be split.\"\n\t},\n\t{\n\t\t\"text\": \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}\n]\n","bundle_callout":"Best Value","sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Additional 50%:<\/strong> With an annual membership for only $69.99. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Monthly membership for unlimited scavenger hunts (and other activities!)\", \"Unlimited for up to 6 players playing together in 3,000+ locations around the world\", \"Unlimited access to audio tours, ghost tours, bar crawls, and scavenger hunts\"]","initial_rid":"8","initial_quantity":"1","season_pass_tickets":"6","season_pass_length":"1","initial_product_id":"75","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"45","popular_label":"Free Trial Of Unlimited Adventure","short_description":"One single pass that allows for you and your friends to do all of our 3000+ adventures!","long_description":"Challenge your friends and family to a Scavenger Hunt Competition that can span households, states, and even countries. Perfect for virtual celebrations and multi-household connections!","bullet_other_options":null,"image":"icon_birthday_tickets.png","image_characters":"birthday.png","gift_card_image":"default.png","params":"{\"product\":\"1\",\"quantity\":\"6\",\"roles\":\"5\"}","created_at":"2017-11-21 12:40:53","order":"10","url_slug":"all","straight_to_checkout":"1","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":null,"possible_role_upgrades":null,"last_updated_at":"2024-12-16 19:36:26","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"230","published":"1","title":"Giftable 1 Year Pass (2 Pack)","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Buy one 1-year giftable pass and get the second for $20 off! Each pass includes unlimited scavenger hunts for a full year in 3,000+ locations, with up to 6 players per activity. Adventure awaits!","bundle_price":"149.99","bullet_description":"[\n {\n \"text\": \"Two 1-Year Passes for the Price of One: Perfect for gifting! Each pass is valid for up to 6 players in every activity. The year starts after the first redemption. The primary ticketholder must always be present but can bring a different group each time. Passes cannot be split.\"\n },\n {\n \"text\": \"Unlimited fun: Enjoy unlimited scavenger hunts, bar crawls, audio tours, and ghost tours with ANY theme.\"\n },\n {\n \"text\": \"Explore over 3,000 cities: Use in locations across the U.S., Europe, Australia, and Asia. Many cities have multiple activities to discover.\"\n },\n {\n \"text\": \"Ready to gift: Includes printable gift card options\u2014perfect for sharing the adventure with someone special this holiday season!\"\n }\n]\n","bundle_callout":"A Great Gift","sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra 10%:<\/strong> With an annual membership for only $69.99. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"1","bullet_description_short":"[\"Giftable one year annual pass for unlimited scavenger hunts (or any of our activities!)\",\"One time purchase valid for one year from redemption for up to 6 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"6","season_pass_length":"12","
2319initial_product_id":"79","initial_addons":"{\"86\": true}","bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on an adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[86]","possible_role_upgrades":null,"last_updated_at":"2024-12-16 19:36:28","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"family-annual-pass.png","photo_image":"family-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":"cherry-blossom-family-pass.jpg","easter_photo_image":"easter-eggs-top.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"231","published":"1","title":"Single Use Group Ticket - Up To 2 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":"upsell_231","short_card_description":"Enjoy a single scavenger hunt experience in any of our locations with a group of up to 2 players. Perfect for couples playing together.","bundle_price":"29.99","bullet_description":"[\n\t{\n\t\t\"text\": \"Valid for one scavenger hunt in any of our 3,000+ locations.\"\n\t},\n\t{\n\t\t\"text\": \"Perfect for couples, families, or friends to explore and have fun together.\"\n\t},\n\t{\n\t\t\"text\": \"Solve challenges, discover landmarks, and create unforgettable memories.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra $[[savings]]:<\/strong> With an unlimited membership for only $12.99 \/ month. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Valid for up to 2 players playing together on one team\", \"Tickets must be used together on any ONE of our outdoor scavenger hunts\"]","initial_rid":"1","initial_quantity":"2","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"77","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city. Get instant printable gift cards or get a gift card mailed to you. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"date-for-two.jpeg","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[]","last_updated_at":"2025-12-30 11:08:28","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"hunt-tickets.png","photo_image":"hunt-tickets.png","st_patricks_photo_image":"st-pats-hunt-tickets.jpg","cherry_blossom_photo_image":"cherry-blossom-hunt-tickets.jpg","easter_photo_image":"easter-eggs-side.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"1"},{"id":"232","published":"1","title":"Single Use Group Ticket - Up to 6 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":"upsell_232","short_card_description":"Enjoy a single scavenger hunt experience in any of our locations with a group of up to 6 players playing together.","bundle_price":"49.99","bullet_description":"[\n\t{\n\t\t\"text\": \"Valid for one scavenger hunt in any of our 3,000+ locations.\"\n\t},\n\t{\n\t\t\"text\": \"Perfect for couples, families, or friends to explore and have fun together.\"\n\t}
2319,\n\t{\n\t\t\"text\": \"Solve challenges, discover landmarks, and create unforgettable memories.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra $[[savings]]:<\/strong> With an unlimited membership for only $12.99 \/ month. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Valid for up to 6 players playing together on one team\", \"Tickets must be used together on any ONE of our outdoor scavenger hunts\"]","initial_rid":"1","initial_quantity":"6","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"77","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city. Get instant printable gift cards or get a gift card mailed to you. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"date-for-two.jpeg","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[]","last_updated_at":"2025-12-30 11:08:28","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"hunt-tickets.png","photo_image":"hunt-tickets.png","st_patricks_photo_image":"st-pats-hunt-tickets.jpg","cherry_blossom_photo_image":"cherry-blossom-hunt-tickets.jpg","easter_photo_image":"easter-eggs-side.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"1"},{"id":"233","published":"1","title":"Giftable Annual Pass - Up to 2 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":"upsell_233","short_card_description":"Enjoy a 1 year pass for unlimited scavenger hunts for all our locations for up to 2 players playing together.","bundle_price":"69.99","bullet_description":"[\n\t{\n\t\t\"text\": \"Valid for one year for up to 2 players in each activity. Year starts after the first redemption. Primary ticketholder must always be present (but can bring different people); this ticket cannot be split.\"\n\t},\n\t{\n\t\t\"text\": \"Unlimited scavenger hunts, bar crawls, audio tours, and ghost tours with ANY theme.\"\n\t},\n\t{\n\t\t\"text\": \"Use in any of our 3,000+ cities, including options in the U.S., Europe, Australia, and Asia. Many cities have multiple activities.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}\n]\n","bundle_callout":"A Great Gift","sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra 10%:<\/strong> With an annual membership for only $69.99. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Giftable one year annual pass for unlimited scavenger hunts (or any of our activities!)\",\"One time purchase valid for one year from redemption for up to 2 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"2","season_pass_length":"12","
2319initial_product_id":"79","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on an adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[86]","possible_role_upgrades":null,"last_updated_at":"2025-11-17 12:53:26","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"family-annual-pass.png","photo_image":"family-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":"cherry-blossom-family-pass.jpg","easter_photo_image":"easter-eggs-top.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"234","published":"1","title":"Giftable Annual Pass - Up to 6 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":"upsell_234","short_card_description":"Enjoy a 1 year pass for unlimited scavenger hunts for all our locations for up to 6 players playing together.","bundle_price":"89.99","bullet_description":"[\n\t{\n\t\t\"text\": \"Valid for one year for up to 6 players in each activity. Year starts after the first redemption. Primary ticketholder must always be present (but can bring different people); this ticket cannot be split.\"\n\t},\n\t{\n\t\t\"text\": \"Unlimited scavenger hunts, bar crawls, audio tours, and ghost tours with ANY theme.\"\n\t},\n\t{\n\t\t\"text\": \"Use in any of our 3,000+ cities, including options in the U.S., Europe, Australia, and Asia. Many cities have multiple activities.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}\n]\n","bundle_callout":"A Great Gift","sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra 10%:<\/strong> With an annual membership for only $69.99. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Giftable one year annual pass for unlimited scavenger hunts (or any of our activities!)\",\"One time purchase valid for one year from redemption for up to 6 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"6","season_pass_length":"12","initial_product_id":"79","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on an adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[86]","possible_role_upgrades":null,"last_updated_at":"2025-12-03 14:14:41","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"family-annual-pass.png","photo_image":"family-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":"cherry-blossom-family-pass.jpg","easter_photo_image":"easter-eggs-top.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"235","published":"1","title":"Unlimited Monthly Membership - Up to 2 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Unlimited scavenger hunts for all locations for up to 2 player playing together.","bundle_price":"12.99","bullet_description":"[\n {\"text\": \"Unlimited scavenger hunts, bar crawls, audio tours, and ghost tours.\"},\n {\"text\": \"Cancel anytime, no-commitment monthly recurring charge just $12.99 per month.\"},\n {\"text\": \"Access premium themes including date nights, family fun, and holiday-themed adventures.\"},\n {\"text\": \"<b>Note: does not include printable gift cards<\/b>\"},\n {\"text\": \"This ticket cannot be split. Primary ticketholder must always be present.\"}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra $[[savings]]:<\/strong> With an unlimited membership for only $12.99 \/ month. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\n \"Unlimited scavenger hunts, bar crawls, audio tours, and ghost tours.\",\n \"Cancel anytime, no-commitment monthly recurring charge just $12.99 per month.\",\n \"Access premium themes including date nights, family fun, and holiday-themed adventures.\",\n \"<b>Note: does not include printable gift cards<\/b>\",\n \"This ticket cannot be split. Primary ticketholder must always be present.\"\n]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"82","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city. Get instant printable gift cards or get a gift card mailed to you. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"date-for-two.jpeg","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[]","last_updated_at":"2024-12-16 19:36:34","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"hunt-tickets.png","photo_image":"hunt-tickets.png","st_patricks_photo_image":"st-pats-hunt-tickets.jpg","cherry_blossom_photo_image":"cherry-blossom-hunt-tickets.jpg","easter_photo_image":"easter-eggs-side.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"236","published":"1","title":"Unlimited Monthly Pass - Up to 6 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Unlimited scavenger hunts for all locations for up to 6 player playing together.","bundle_price":"14.99","bullet_description":"[ {\"text\": \"Unlimited scavenger hunts, bar crawls, audio tours, and ghost tours for up to 6 players playing together.\"}, {\"text\": \"Cancel anytime, no-commitment monthly recurring charge just $14.99 per month.\"}, {\"text\": \"Access premium themes including date nights, family fun, and holiday-themed adventures.\"} ]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra $[[savings]]:<\/strong> With an unlimited membership for only $12.99 \/ month. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\n \"Unlimited scavenger hunts, bar crawls, audio tours, and ghost tours for up to 6 players playing together.\",\n \"Cancel anytime, no-commitment monthly recurring charge just $14.99 per month.\",\n \"Access premium themes including date nights, family fun, and holiday-themed adventures.\",\n \"<b>Note: does not include printable gift cards<\/b>\",\n \"This ticket cannot be split. Primary ticketholder must always be present.\"\n]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"83","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city. Get instant printable gift cards or get a gift card mailed to you. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"date-for-two.jpeg","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[]","last_updated_at":"2026-02-04 10:33:25","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"hunt-tickets.png","photo_image":"hunt-tickets.png","st_patricks_photo_image":"st-pats-hunt-tickets.jpg","cherry_blossom_photo_image":"cherry-blossom-hunt-tickets.jpg","easter_photo_image":"easter-eggs-side.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"237","published":"1","title":"Single Use Group Ticket - Up To 2 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a single scavenger hunt experience in any of our locations with a group of up to 2 players. Perfect for couples playing together.","bundle_price":"29.99","bullet_description":"[\n\t{\n\t\t\"text\": \"Valid for one scavenger hunt in any of our 3,000+ locations.\"\n\t},\n\t{\n\t\t\"text\": \"Perfect for couples, families, or friends to explore and have fun together.\"\n\t}
2319,\n\t{\n\t\t\"text\": \"Solve challenges, discover landmarks, and create unforgettable memories.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}\n]","bundle_callout":null,"sold_out":"1","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra $[[savings]]:<\/strong> With an unlimited membership for only $12.99 \/ month. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Valid for up to 2 players playing together on one team\", \"Tickets must be used together on any ONE of our outdoor scavenger hunts\"]","initial_rid":"1","initial_quantity":"2","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"77","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city. Get instant printable gift cards or get a gift card mailed to you. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"date-for-two.jpeg","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[]","last_updated_at":"2024-12-16 19:36:37","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"hunt-tickets.png","photo_image":"hunt-tickets.png","st_patricks_photo_image":"st-pats-hunt-tickets.jpg","cherry_blossom_photo_image":"cherry-blossom-hunt-tickets.jpg","easter_photo_image":"easter-eggs-side.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"238","published":"1","title":"Single Use Group Ticket - Up To 2 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a single scavenger hunt experience in any of our locations with a group of up to 2 players. Perfect for couples playing together.","bundle_price":"44.99","bullet_description":"[\n\t{\n\t\t\"text\": \"Valid for one scavenger hunt in any of our 3,000+ locations.\"\n\t},\n\t{\n\t\t\"text\": \"Perfect for couples, families, or friends to explore and have fun together.\"\n\t},\n\t{\n\t\t\"text\": \"Solve challenges, discover landmarks, and create unforgettable memories.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra $[[savings]]:<\/strong> With an unlimited membership for only $12.99 \/ month. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Valid for up to 2 players playing together on one team\", \"Tickets must be used together on any ONE of our outdoor scavenger hunts\"]","initial_rid":"1","initial_quantity":"2","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"77","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city. Get instant printable gift cards or get a gift card mailed to you. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"date-for-two.jpeg","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[]","last_updated_at":"2024-12-16 19:36:38","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"hunt-tickets.png","photo_image":"hunt-tickets.png","st_patricks_photo_image":"st-pats-hunt-tickets.jpg","cherry_blossom_photo_image":"cherry-blossom-hunt-tickets.jpg","easter_photo_image":"easter-eggs-side.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"239","published":"1","title":"Single Use Group Ticket - Up to 6 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a single scavenger hunt experience in any of our locations with a group of up to 6 players playing together.","bundle_price":"49.99","bullet_description":"[\n\t{\n\t\t\"text\": \"Valid for one scavenger hunt in any of our 3,000+ locations.\"\n\t},\n\t{\n\t\t\"text\": \"Perfect for couples, families, or friends to explore and have fun together.\"\n\t}
2319,\n\t{\n\t\t\"text\": \"Solve challenges, discover landmarks, and create unforgettable memories.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":"244","upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra $[[savings]]:<\/strong> With an unlimited membership for only $12.99 \/ month. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Valid for up to 6 players playing together on one team\", \"Tickets must be used together on any ONE of our outdoor scavenger hunts\"]","initial_rid":"1","initial_quantity":"6","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"77","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city. Get instant printable gift cards or get a gift card mailed to you. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"date-for-two.jpeg","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[]","last_updated_at":"2024-12-17 15:36:29","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"hunt-tickets.png","photo_image":"hunt-tickets.png","st_patricks_photo_image":"st-pats-hunt-tickets.jpg","cherry_blossom_photo_image":"cherry-blossom-hunt-tickets.jpg","easter_photo_image":"easter-eggs-side.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"240","published":"1","title":"Giftable Annual Pass (Without Grand Prize Contest Entry) - Up to 6 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a 1 year pass for unlimited scavenger hunts for all our locations locations for up to 6 players playing together.","bundle_price":"89.99","bullet_description":"[\n\t{\n\t\t\"text\": \"Valid for one year for up to 6 players in each activity. Year starts after the first redemption. Primary ticketholder must always be present (but can bring different people); this ticket cannot be split.\"\n\t},\n\t{\n\t\t\"text\": \"Unlimited scavenger hunts, bar crawls, audio tours, and ghost tours with ANY theme.\"\n\t},\n\t{\n\t\t\"text\": \"Use in any of our 3,000+ cities, including options in the U.S., Europe, Australia, and Asia. Many cities have multiple activities.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}\n]\n","bundle_callout":"A Great Gift","sold_out":"0","upgrade_bundle_id":"244","upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra 10%:<\/strong> With an annual membership for only $69.99. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Giftable one year annual pass for unlimited scavenger hunts (or any of our activities!)\",\"One time purchase valid for one year from redemption for up to 6 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"6","season_pass_length":"12","
2319initial_product_id":"79","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on an adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[86]","possible_role_upgrades":null,"last_updated_at":"2024-12-17 17:37:06","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"family-annual-pass.png","photo_image":"family-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":"cherry-blossom-family-pass.jpg","easter_photo_image":"easter-eggs-top.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"241","published":"1","title":"Single Use Group Ticket - Up To 2 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a single scavenger hunt experience in any of our locations with a group of up to 2 players. Perfect for couples playing together.","bundle_price":"29.99","bullet_description":"[\n\t{\n\t\t\"text\": \"Valid for one scavenger hunt in any of our 3,000+ locations.\"\n\t},\n\t{\n\t\t\"text\": \"Perfect for couples, families, or friends to explore and have fun together.\"\n\t},\n\t{\n\t\t\"text\": \"Solve challenges, discover landmarks, and create unforgettable memories.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":"243","upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra $[[savings]]:<\/strong> With an unlimited membership for only $12.99 \/ month. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Valid for up to 2 players playing together on one team\", \"Tickets must be used together on any ONE of our outdoor scavenger hunts\"]","initial_rid":"1","initial_quantity":"2","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"77","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city. Get instant printable gift cards or get a gift card mailed to you. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"date-for-two.jpeg","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[]","last_updated_at":"2024-12-17 15:13:38","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"hunt-tickets.png","photo_image":"hunt-tickets.png","st_patricks_photo_image":"st-pats-hunt-tickets.jpg","cherry_blossom_photo_image":"cherry-blossom-hunt-tickets.jpg","easter_photo_image":"easter-eggs-side.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"242","published":"1","title":"Giftable Annual Pass (Without Grand Prize Contest Entry) - Up to 2 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a 1 year pass for unlimited scavenger hunts for all our locations for up to 2 players playing together.","bundle_price":"69.99","bullet_description":"[\n\t{\n\t\t\"text\": \"Valid for one year for up to 2 players in each activity. Year starts after the first redemption. Primary ticketholder must always be present (but can bring different people); this ticket cannot be split.\"\n\t},\n\t{\n\t\t\"text\": \"Unlimited scavenger hunts, bar crawls, audio tours, and ghost tours with ANY theme.\"\n\t},\n\t{\n\t\t\"text\": \"Use in any of our 3,000+ cities, including options in the U.S., Europe, Australia, and Asia. Many cities have multiple activities.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}\n]\n","bundle_callout":"A Great Gift","sold_out":"0","upgrade_bundle_id":"243","upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra 10%:<\/strong> With an annual membership for only $69.99. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Giftable one year annual pass for unlimited scavenger hunts (or any of our activities!)\",\"One time purchase valid for one year from redemption for up to 2 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"2","season_pass_length":"12","
2319initial_product_id":"79","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on an adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[86]","possible_role_upgrades":null,"last_updated_at":"2024-12-17 17:36:56","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"family-annual-pass.png","photo_image":"family-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":"cherry-blossom-family-pass.jpg","easter_photo_image":"easter-eggs-top.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"243","published":"1","title":"Giftable Annual Pass (With Grand Prize Contest Entry) - Up to 2 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a 1-year pass for unlimited scavenger hunts (up to 2 players) and upgrade with entry for up to 2 players into the Great American Scavenger Hunt 2025 Contest \u2014 a nationwide contest to win up to $10,000 in prizes by completing hunts and fun challenges.","bundle_price":"99.99","bullet_description":"[\n\t{\"text\":\"Ability to compete in the 2025 Great American Scavenger Hunt contest - earn points for prizes by completing scavenger hunts, doing tasks, and solving riddles as a team.\"},{\n\t\t\"text\": \"Valid for one year for up to 2 players in each activity. Year starts after the first redemption. Primary ticketholder must always be present (but can bring different people); this ticket cannot be split.\"\n\t},\n\t{\n\t\t\"text\": \"Unlimited scavenger hunts, bar crawls, audio tours, and ghost tours with ANY theme.\"\n\t},\n\t{\n\t\t\"text\": \"Use in any of our 3,000+ cities, including options in the U.S., Europe, Australia, and Asia. Many cities have multiple activities.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t},{\n\t\t\"text\": \"Terms apply see contest rules in terms and conditions.\"\n\t}\n]\n","bundle_callout":"A Great Gift","sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra 10%:<\/strong> With an annual membership for only $69.99. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Giftable one year annual pass for unlimited scavenger hunts (or any of our activities!)\",\"One time purchase valid for one year from redemption for up to 2 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"2","season_pass_length":"12","initial_product_id":"79","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on an adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[86]","possible_role_upgrades":null,"last_updated_at":"2024-12-17 17:41:52","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"family-annual-pass.png","photo_image":"family-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":"cherry-blossom-family-pass.jpg","easter_photo_image":"easter-eggs-top.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"244","published":"1","title":"Giftable Annual Pass (With Grand Prize Contest Entry) - Up to 6 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a 1-year pass for unlimited scavenger hunts (up to 6 players) and upgrade with entry for up to 6 players into the Great American Scavenger Hunt 2025 Contest \u2014 a nationwide contest to win up to $10,000 in prizes by completing hunts and fun challenges.","bundle_price":"119.99","bullet_description":"[ {\"text\":\"Ability to compete in the 2025 Great American Scavenger Hunt contest - earn points for prizes by completing scavenger hunts, doing tasks, and solving riddles as a team.\"},\n\t{\n\t\t\"text\": \"Valid for one year for up to 6 players in each activity. Year starts after the first redemption. Primary ticketholder must always be present (but can bring different people); this ticket cannot be split.\"\n\t},\n\t{\n\t\t\"text\": \"Unlimited scavenger hunts, bar crawls, audio tours, and ghost tours with ANY theme.\"\n\t},\n\t{\n\t\t\"text\": \"Use in any of our 3,000+ cities, including options in the U.S., Europe, Australia, and Asia. Many cities have multiple activities.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}, {\n\t\t\"text\": \"Terms apply see contest rules in terms and conditions.\"\n\t}\n]\n","bundle_callout":"A Great Gift","sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra 10%:<\/strong> With an annual membership for only $69.99. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Giftable one year annual pass for unlimited scavenger hunts (or any of our activities!)\",\"One time purchase valid for one year from redemption for up to 2 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"6","season_pass_length":"12","
2319initial_product_id":"79","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on an adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[86]","possible_role_upgrades":null,"last_updated_at":"2024-12-18 14:06:40","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"family-annual-pass.png","photo_image":"family-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":"cherry-blossom-family-pass.jpg","easter_photo_image":"easter-eggs-top.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"246","published":"1","title":"Single Use Group Ticket - Up to 6 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a single scavenger hunt experience in any of our locations with a group of up to 6 players playing together.","bundle_price":"39.99","bullet_description":"[\n {\n \"text\": \"<b style='font-weight: 700'>Valid for one scavenger hunt<\/b> for up to 6 people in any of our 3,000+ locations.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Perfect for couples, families, or friends<\/b> to explore and have fun together.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Solve challenges, discover landmarks<\/b>, and create unforgettable memories.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Includes printable gift card options<\/b> for a gift that's ready in minutes.\"\n }\n]\n","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":"244","upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra $[[savings]]:<\/strong> With an unlimited membership for only $12.99 \/ month. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Valid for up to 6 players playing together on one team\", \"Tickets must be used together on any ONE of our outdoor scavenger hunts\"]","initial_rid":"1","initial_quantity":"6","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"77","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city. Get instant printable gift cards or get a gift card mailed to you. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"date-for-two.jpeg","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[]","last_updated_at":"2024-12-19 09:52:38","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"hunt-tickets.png","photo_image":"hunt-tickets.png","st_patricks_photo_image":"st-pats-hunt-tickets.jpg","cherry_blossom_photo_image":"cherry-blossom-hunt-tickets.jpg","easter_photo_image":"easter-eggs-side.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"247","published":"1","title":"Giftable Annual Pass - Up to 6 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a 1 year pass for unlimited scavenger hunts for all our locations locations for up to 6 players playing together.","bundle_price":"89.99","bullet_description":"[\n {\n \"text\": \"<b style='font-weight: 700'>Valid for one year<\/b> for up to 6 players in each activity. The year begins after the first redemption. The primary ticketholder must always be present (but can bring different people); this ticket cannot be split.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Unlimited access<\/b> to scavenger hunts, bar crawls, audio tours, and ghost tours with ANY theme.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Explore 3,000+ cities<\/b> across the U.S., Europe, Australia, and Asia \u2014 many cities have multiple activities to enjoy.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Printable gift card options<\/b> included, making it a perfect gift for any occasion.\"\n }\n]\n","bundle_callout":"A Great Gift","sold_out":"0","upgrade_bundle_id":"244","upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra 10%:<\/strong> With an annual membership for only $69.99. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Giftable one year annual pass for unlimited scavenger hunts (or any of our activities!)\",\"One time purchase valid for one year from redemption for up to 6 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"6","season_pass_length":"12","
2319initial_product_id":"79","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on an adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[86]","possible_role_upgrades":null,"last_updated_at":"2024-12-18 12:12:48","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"family-annual-pass.png","photo_image":"family-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":"cherry-blossom-family-pass.jpg","easter_photo_image":"easter-eggs-top.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"248","published":"1","title":"Giftable Annual Pass (With VIP Upgrades & Themes) - Up to 6 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a 1-year pass for unlimited scavenger hunts (up to 6 players) \u2014 supercharged with VIP perks! Theme your adventure with fun challenges like date night missions, holiday scavenger hunts, and birthday bonanzas. Unlock exclusive local guides, join exciting nationwide monthly contests, and discover even more surprises along the way!","bundle_price":"99.99","bullet_description":"[\n {\n \"text\": \"<b style='font-weight: 700'>Supercharged with VIP perks<\/b> like exclusive themes, local guides, and access to nationwide monthly contests. Customize every scavenger hunt with themed player challenges for any occasion \u2014 from date nights and birthday celebrations to holiday adventures and team-building fun.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Valid for one year<\/b> for up to 6 players in each activity. The year begins after the first redemption. The primary ticketholder must always be present (but can bring different people); this ticket cannot be split.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Unlimited access<\/b> to scavenger hunts, bar crawls, audio tours, and ghost tours with ANY theme.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Explore 3,000+ cities<\/b> across the U.S., Europe, Australia, and Asia \u2014 many cities have multiple activities to enjoy.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Printable gift card options<\/b> included, making it a perfect gift for any occasion.\"\n }\n]\n","bundle_callout":"A Great Gift","sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra 10%:<\/strong> With an annual membership for only $69.99. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Giftable one year annual pass for unlimited scavenger hunts (or any of our activities!)\",\"One time purchase valid for one year from redemption for up to 2 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"6","season_pass_length":"12","initial_product_id":"79","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on an adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and s
2319olve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[86]","possible_role_upgrades":null,"last_updated_at":"2024-12-18 13:59:01","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"family-annual-pass.png","photo_image":"family-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":"cherry-blossom-family-pass.jpg","easter_photo_image":"easter-eggs-top.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"249","published":"1","title":"Single Use Group Ticket - Up To 2 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a single scavenger hunt experience in any of our locations with a group of up to 2 players. Perfect for couples playing together.","bundle_price":"39.99","bullet_description":"[\n {\n \"text\": \"Valid for one scavenger hunt for up to 2 people in any of our 3,000+ locations.\"\n },\n {\n \"text\": \"Perfect for couples, families, or friends to explore and have fun together.\"\n },\n {\n \"text\": \"Solve challenges, discover landmarks, and create unforgettable memories.\"\n },\n {\n \"text\": \"Includes printable gift card options for a gift that's ready in minutes.\"\n }\n]\n","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":"243","upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra $[[savings]]:<\/strong> With an unlimited membership for only $12.99 \/ month. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Valid for up to 2 players playing together on one team\", \"Tickets must be used together on any ONE of our outdoor scavenger hunts\"]","initial_rid":"1","initial_quantity":"2","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"77","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city. Get instant printable gift cards or get a gift card mailed to you. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"date-for-two.jpeg","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[]","last_updated_at":"2026-02-04 10:34:30","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"hunt-tickets.png","photo_image":"hunt-tickets.png","st_patricks_photo_image":"st-pats-hunt-tickets.jpg","cherry_blossom_photo_image":"cherry-blossom-hunt-tickets.jpg","easter_photo_image":"easter-eggs-side.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"250","published":"1","title":"Giftable Annual Pass - Up to 2 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a 1 year pass for unlimited scavenger hunts for all our locations for up to 2 players playing together.","bundle_price":"69.99","bullet_description":"[\n {\n \"text\": \"<b style='font-weight: 700'>Valid for one year<\/b> for up to 2 players in each activity. The year begins after the first redemption. The primary ticketholder must always be present (but can bring different people); this ticket cannot be split.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Unlimited access<\/b> to scavenger hunts, bar crawls, audio tours, and ghost tours with ANY theme.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Explore 3,000+ cities<\/b> across the U.S., Europe, Australia, and Asia \u2014 many cities have multiple activities to enjoy.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Printable gift card options<\/b> included, making it a perfect gift for any occasion.\"\n }\n]\n","bundle_callout":"A Great Gift","sold_out":"0","upgrade_bundle_id":"243","upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra 10%:<\/strong> With an annual membership for only $69.99. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Giftable one year annual pass for unlimited scavenger hunts (or any of our activities!)\",\"One time purchase valid for one year from redemption for up to 2 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"2","season_pass_length":"12","
2319initial_product_id":"79","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on an adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[86]","possible_role_upgrades":null,"last_updated_at":"2024-12-18 12:13:51","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"family-annual-pass.png","photo_image":"family-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":"cherry-blossom-family-pass.jpg","easter_photo_image":"easter-eggs-top.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"251","published":"1","title":"Giftable Annual Pass (With VIP Upgrades & Themes) - Up to 2 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a 1-year pass for unlimited scavenger hunts (up to 2 players) \u2014 supercharged with VIP perks! Theme your adventure with fun challenges like date night missions, holiday scavenger hunts, and birthday bonanzas. Unlock exclusive local guides, join exciting nationwide monthly contests, and discover even more surprises along the way!","bundle_price":"79.99","bullet_description":"[\n {\n \"text\": \"<b style='font-weight: 700'>Supercharged with VIP perks<\/b> like exclusive themes, local guides, and access to nationwide monthly contests. Customize every scavenger hunt with themed player challenges for any occasion \u2014 from date nights and birthday celebrations to holiday adventures and team-building fun.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Valid for one year<\/b> for up to 2 players in each activity. The year begins after the first redemption. The primary ticketholder must always be present (but can bring different people); this ticket cannot be split.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Unlimited access<\/b> to scavenger hunts, bar crawls, audio tours, and ghost tours with ANY theme.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Explore 3,000+ cities<\/b> across the U.S., Europe, Australia, and Asia \u2014 many cities have multiple activities to enjoy.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Printable gift card options<\/b> included, making it a perfect gift for any occasion.\"\n }\n]\n","bundle_callout":"A Great Gift","sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra 10%:<\/strong> With an annual membership for only $69.99. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Giftable one year annual pass for unlimited scavenger hunts (or any of our activities!)\",\"One time purchase valid for one year from redemption for up to 2 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"2","season_pass_length":"12","initial_product_id":"79","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on an adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and s
2319olve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[86]","possible_role_upgrades":null,"last_updated_at":"2024-12-18 12:14:05","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"family-annual-pass.png","photo_image":"family-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":"cherry-blossom-family-pass.jpg","easter_photo_image":"easter-eggs-top.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"252","published":"1","title":"Single Use Group Ticket - Up to 6 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a single scavenger hunt experience in any of our locations with a group of up to 6 players playing together.","bundle_price":"59.99","bullet_description":"[\n\t{\n\t\t\"text\": \"Valid for one scavenger hunt in any of our 3,000+ locations.\"\n\t},\n\t{\n\t\t\"text\": \"Perfect for couples, families, or friends to explore and have fun together.\"\n\t},\n\t{\n\t\t\"text\": \"Solve challenges, discover landmarks, and create unforgettable memories.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":"244","upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra $[[savings]]:<\/strong> With an unlimited membership for only $12.99 \/ month. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Valid for up to 6 players playing together on one team\", \"Tickets must be used together on any ONE of our outdoor scavenger hunts\"]","initial_rid":"1","initial_quantity":"6","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"77","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city. Get instant printable gift cards or get a gift card mailed to you. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"date-for-two.jpeg","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[]","last_updated_at":"2024-12-19 18:24:43","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"hunt-tickets.png","photo_image":"hunt-tickets.png","st_patricks_photo_image":"st-pats-hunt-tickets.jpg","cherry_blossom_photo_image":"cherry-blossom-hunt-tickets.jpg","easter_photo_image":"easter-eggs-side.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"253","published":"1","title":"Giftable Annual Pass - Up to 6 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a 1 year pass for unlimited scavenger hunts for all our locations locations for up to 6 players playing together. Pays for itself after only 2 uses. ","bundle_price":"89.99","bullet_description":"[\n {\n \"text\": \"<b style='font-weight: 700'>Valid for one year<\/b> for up to 6 players in each activity. The year begins after the first redemption. The primary ticketholder must always be present (but can bring different people); this ticket cannot be split.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Unlimited access<\/b> to scavenger hunts, bar crawls, audio tours, and ghost tours with ANY theme.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Explore 3,000+ cities<\/b> across the U.S., Europe, Australia, and Asia \u2014 many cities have multiple activities to enjoy.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Printable gift card options<\/b> included, making it a perfect gift for any occasion.\"\n }\n]\n","bundle_callout":"\ud83c\udfc6 Best Value For Families ","sold_out":"0","upgrade_bundle_id":"244","upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra 10%:<\/strong> With an annual membership for only $69.99. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Giftable one year annual pass for unlimited scavenger hunts (or any of our activities!)\",\"One time purchase valid for one year from redemption for up to 6 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"6","season_pass_length":"12","
2319initial_product_id":"79","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on an adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[86]","possible_role_upgrades":null,"last_updated_at":"2024-12-19 18:32:44","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"family-annual-pass.png","photo_image":"family-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":"cherry-blossom-family-pass.jpg","easter_photo_image":"easter-eggs-top.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"254","published":"1","title":"Giftable Annual Pass (With VIP Upgrades & Themes) - Up to 6 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a 1-year pass for unlimited scavenger hunts (up to 6 players) \u2014 supercharged with VIP perks! Theme your adventure with fun challenges like date night missions, holiday scavenger hunts, and birthday bonanzas. Unlock exclusive local guides, join exciting nationwide monthly contests, and discover even more surprises along the way!","bundle_price":"99.99","bullet_description":"[\n {\n \"text\": \"<b style='font-weight: 700'>Supercharged with VIP perks<\/b> like exclusive themes, local guides, and access to nationwide monthly contests. Customize every scavenger hunt with themed player challenges for any occasion \u2014 from date nights and birthday celebrations to holiday adventures and team-building fun.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Valid for one year<\/b> for up to 6 players in each activity. The year begins after the first redemption. The primary ticketholder must always be present (but can bring different people); this ticket cannot be split.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Unlimited access<\/b> to scavenger hunts, bar crawls, audio tours, and ghost tours with ANY theme.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Explore 3,000+ cities<\/b> across the U.S., Europe, Australia, and Asia \u2014 many cities have multiple activities to enjoy.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Printable gift card options<\/b> included, making it a perfect gift for any occasion.\"\n }\n]\n","bundle_callout":"\ud83d\udd25 Most Popular Gift For Families ","sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra 10%:<\/strong> With an annual membership for only $69.99. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Giftable one year annual pass for unlimited scavenger hunts (or any of our activities!)\",\"One time purchase valid for one year from redemption for up to 2 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"6","season_pass_length":"12","initial_product_id":"79","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on an adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and s
2319olve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[86]","possible_role_upgrades":null,"last_updated_at":"2024-12-19 18:32:37","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"family-annual-pass.png","photo_image":"family-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":"cherry-blossom-family-pass.jpg","easter_photo_image":"easter-eggs-top.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"256","published":"1","title":"Giftable Annual Pass - Up to 2 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a 1 year pass for unlimited scavenger hunts for all our locations for up to 2 players playing together. Pays for itself after only 2 uses.","bundle_price":"69.99","bullet_description":"[\n {\n \"text\": \"<b style='font-weight: 700'>Valid for one year<\/b> for up to 2 players in each activity. The year begins after the first redemption. The primary ticketholder must always be present (but can bring different people); this ticket cannot be split.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Unlimited access<\/b> to scavenger hunts, bar crawls, audio tours, and ghost tours with ANY theme.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Explore 3,000+ cities<\/b> across the U.S., Europe, Australia, and Asia \u2014 many cities have multiple activities to enjoy.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Printable gift card options<\/b> included, making it a perfect gift for any occasion.\"\n }\n]\n","bundle_callout":"\ud83c\udfc6 Best Value For Couples ","sold_out":"0","upgrade_bundle_id":"243","upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra 10%:<\/strong> With an annual membership for only $69.99. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Giftable one year annual pass for unlimited scavenger hunts (or any of our activities!)\",\"One time purchase valid for one year from redemption for up to 2 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"2","season_pass_length":"12","initial_product_id":"79","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on an adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[86]","possible_role_upgrades":null,"last_updated_at":"2024-12-19 18:32:29","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"family-annual-pass.png","photo_image":"family-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":"cherry-blossom-family-pass.jpg","easter_photo_image":"easter-eggs-top.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"257","published":"1","title":"Giftable Annual Pass (With VIP Upgrades & Themes) - Up to 2 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a 1-year pass for unlimited scavenger hunts (up to 2 players) \u2014 supercharged with VIP perks! Theme your adventure with fun challenges like date night missions, holiday scavenger hunts, and birthday bonanzas. Unlock exclusive local guides, join exciting nationwide monthly contests, and discover even more surprises along the way!","bundle_price":"79.99","bullet_description":"[\n {\n \"text\": \"<b style='font-weight: 700'>Supercharged with VIP perks<\/b> like exclusive themes, local guides, and access to nationwide monthly contests. Customize every scavenger hunt with themed player challenges for any occasion \u2014 from date nights and birthday celebrations to holiday adventures and team-building fun.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Valid for one year<\/b> for up to 2 players in each activity. The year begins after the first redemption. The primary ticketholder must always be present (but can bring different people); this ticket cannot be split.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Unlimited access<\/b> to scavenger hunts, bar crawls, audio tours, and ghost tours with ANY theme.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Explore 3,000+ cities<\/b> across the U.S., Europe, Australia, and Asia \u2014 many cities have multiple activities to enjoy.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Printable gift card options<\/b> included, making it a perfect gift for any occasion.\"\n }\n]\n","bundle_callout":"\ud83d\udd25 Most Popular Gift For Couples ","sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra 10%:<\/strong> With an annual membership for only $69.99. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Giftable one year annual pass for unlimited scavenger hunts (or any of our activities!)\",\"One time purchase valid for one year from redemption for up to 2 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"2","season_pass_length":"12","
2319initial_product_id":"79","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on an adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[86]","possible_role_upgrades":null,"last_updated_at":"2024-12-19 18:32:17","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"family-annual-pass.png","photo_image":"family-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":"cherry-blossom-family-pass.jpg","easter_photo_image":"easter-eggs-top.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"261","published":"1","title":"Giftable 2 Year Annual Pass - Up to 6 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a 2 year pass for unlimited scavenger hunts for all our locations locations for up to 6 players playing together plus exclusive VIP perks.","bundle_price":"179.98","bullet_description":"[\n\t{\n\t\t\"text\": \"Valid for two years for up to 6 players in each activity. Year starts after the first redemption. Primary ticketholder must always be present (but can bring different people); this ticket cannot be split.\"\n\t},\n\t{\n\t\t\"text\": \"Unlimited scavenger hunts, bar crawls, audio tours, and ghost tours with ANY theme. Plus exclusive perks for 2 year pass holders.\"\n\t},\n\t{\n\t\t\"text\": \"Use in any of our 3,000+ cities, including options in the U.S., Europe, Australia, and Asia. Many cities have multiple activities.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}\n]\n","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra 10%:<\/strong> With an annual membership for only $69.99. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Giftable two year annual pass for unlimited scavenger hunts (or any of our activities!)\",\"One time purchase valid for one year from redemption for up to 6 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"6","season_pass_length":"12","initial_product_id":"79","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on an adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[86]","possible_role_upgrades":null,"last_updated_at":"2024-12-19 15:47:47","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"family-annual-pass.png","photo_image":"family-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":"cherry-blossom-family-pass.jpg","easter_photo_image":"easter-eggs-top.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"262","published":"1","title":"Single Use Group Ticket - Up To 2 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a single scavenger hunt experience in any of our locations with a group of up to 2 players. Perfect for couples playing together.","bundle_price":"39.99","bullet_description":"[\n {\n \"text\": \"<b style='font-weight: 700'>Valid for one scavenger hunt<\/b> for up to 2 people in any of our 3,000+ locations.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Perfect for couples, families, or friends<\/b> to explore and have fun together.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Solve challenges, discover landmarks<\/b>, and create unforgettable memories.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Includes printable gift card options<\/b> for a gift that's ready in minutes.\"\n }\n]\n","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":"243","upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra $[[savings]]:<\/strong> With an unlimited membership for only $12.99 \/ month. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Valid for up to 2 players playing together on one team\", \"Tickets must be used together on any ONE of our outdoor scavenger hunts\"]","initial_rid":"1","initial_quantity":"2","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"77","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city. Get instant printable gift cards or get a gift card mailed to you. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"date-for-two.jpeg","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[]","last_updated_at":"2024-12-19 18:29:51","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"hunt-tickets.png","photo_image":"hunt-tickets.png","st_patricks_photo_image":"st-pats-hunt-tickets.jpg","cherry_blossom_photo_image":"cherry-blossom-hunt-tickets.jpg","easter_photo_image":"easter-eggs-side.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"263","published":"1","title":"Single Use Group Ticket","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a single scavenger hunt experience in any of our locations with a group of up to 6 players playing together.","bundle_price":"49.99","bullet_description":"[\n {\n \"text\": \"<b style='font-weight: 700'>Valid for one scavenger hunt<\/b> for up to 6 people in any of our 3,000+ locations.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Perfect for couples, families, or friends<\/b> to explore and have fun together.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Solve challenges, discover landmarks<\/b>, and create unforgettable memories.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Includes printable gift card options<\/b> for a gift that's ready in minutes.\"\n }\n]\n","bundle_callout":"\ud83c\udfab Try Out An Adventure","sold_out":"0","upgrade_bundle_id":"244","upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra $[[savings]]:<\/strong> With an unlimited membership for only $12.99 \/ month. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Valid for up to 6 players playing together on one team\", \"Tickets must be used together on any ONE of our outdoor scavenger hunts\"]","initial_rid":"1","initial_quantity":"6","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"77","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city. Get instant printable gift cards or get a gift card mailed to you. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"date-for-two.jpeg","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[]","last_updated_at":"2024-12-19 22:26:13","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"hunt-tickets.png","photo_image":"hunt-tickets.png","st_patricks_photo_image":"st-pats-hunt-tickets.jpg","cherry_blossom_photo_image":"cherry-blossom-hunt-tickets.jpg","easter_photo_image":"easter-eggs-side.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"264","published":"1","title":"Giftable Unlimited Pass - 3 Month Membership","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a 3 month for unlimited scavenger hunts for all our locations locations for up to 6 players playing together.","bundle_price":"79.99","bullet_description":"[\n {\n \"text\": \"<b style='font-weight: 700'>Valid for 3 months<\/b> for up to 6 players in each activity. The year begins after the first redemption. The primary ticketholder must always be present (but can bring different people); this ticket cannot be split.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Unlimited access<\/b> to scavenger hunts, bar crawls, audio tours, and ghost tours with ANY theme.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Explore 3,000+ cities<\/b> across the U.S., Europe, Australia, and Asia \u2014 many cities have multiple activities to enjoy.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Printable gift card options<\/b> included, making it a perfect gift for any occasion.\"\n }\n]\n","bundle_callout":"\ud83d\uddfa\ufe0f Start Your Global Adventures","sold_out":"0","upgrade_bundle_id":"244","upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra 10%:<\/strong> With an annual membership for only $69.99. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Giftable one year annual pass for unlimited scavenger hunts (or any of our activities!)\",\"One time purchase valid for one year from redemption for up to 6 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"6","season_pass_length":"12","
2319initial_product_id":"79","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on an adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[86]","possible_role_upgrades":null,"last_updated_at":"2024-12-19 22:30:18","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"family-annual-pass.png","photo_image":"family-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":"cherry-blossom-family-pass.jpg","easter_photo_image":"easter-eggs-top.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"265","published":"1","title":"Giftable Unlimited Pass - 1 Year Membership","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a 1 year pass for unlimited scavenger hunts for all our locations locations for up to 6 players playing together.","bundle_price":"99.99","bullet_description":"[\n {\n \"text\": \"<b style='font-weight: 700'>Valid for one year<\/b> for up to 6 players in each activity. The year begins after the first redemption. The primary ticketholder must always be present (but can bring different people); this ticket cannot be split.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Unlimited access<\/b> to scavenger hunts, bar crawls, audio tours, and ghost tours with ANY theme.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Explore 3,000+ cities<\/b> across the U.S., Europe, Australia, and Asia \u2014 many cities have multiple activities to enjoy.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Printable gift card options<\/b> included, making it a perfect gift for any occasion.\"\n }\n]\n","bundle_callout":"\ud83c\udf81 Most Popular Gift For Adventures","sold_out":"0","upgrade_bundle_id":"244","upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra 10%:<\/strong> With an annual membership for only $69.99. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Giftable one year annual pass for unlimited scavenger hunts (or any of our activities!)\",\"One time purchase valid for one year from redemption for up to 6 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"6","season_pass_length":"12","initial_product_id":"79","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on an adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[86]","possible_role_upgrades":null,"last_updated_at":"2024-12-19 22:29:44","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"family-annual-pass.png","photo_image":"family-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":"cherry-blossom-family-pass.jpg","easter_photo_image":"easter-eggs-top.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"266","published":"1","title":"Giftable Unlimited Pass - 2 Year Membership","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a 2 year pass for unlimited scavenger hunts for all our locations locations for up to 6 players playing together. ","bundle_price":"129.99","bullet_description":"[\n {\n \"text\": \"<b style='font-weight: 700'>Valid for two years<\/b> for up to 6 players in each activity. The year begins after the first redemption. The primary ticketholder must always be present (but can bring different people); this ticket cannot be split.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Unlimited access<\/b> to scavenger hunts, bar crawls, audio tours, and ghost tours with ANY theme.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Explore 3,000+ cities<\/b> across the U.S., Europe, Australia, and Asia \u2014 many cities have multiple activities to enjoy.\"\n },\n {\n \"text\": \"<b style='font-weight: 700'>Printable gift card options<\/b> included, making it a perfect gift for any occasion.\"\n }\n]\n","bundle_callout":"\ud83d\udc8e 2 Years Of Epic Adventure Awaits","sold_out":"0","upgrade_bundle_id":"244","upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra 10%:<\/strong> With an annual membership for only $69.99. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Giftable one year annual pass for unlimited scavenger hunts (or any of our activities!)\",\"One time purchase valid for one year from redemption for up to 6 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"6","season_pass_length":"12","
2319initial_product_id":"79","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on an adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[86]","possible_role_upgrades":null,"last_updated_at":"2024-12-19 22:40:05","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"family-annual-pass.png","photo_image":"family-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":"cherry-blossom-family-pass.jpg","easter_photo_image":"easter-eggs-top.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"269","published":"1","title":"Giftable 2 Month Pass - Up to 6 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a 2 month pass for unlimited scavenger hunts for all our locations locations for up to 6 players playing together.","bundle_price":"79.99","bullet_description":"[\n\t{\n\t\t\"text\": \"Valid for 2 months for up to 6 players in each activity. Year starts after the first redemption. Primary ticketholder must always be present (but can bring different people); this ticket cannot be split.\"\n\t},\n\t{\n\t\t\"text\": \"Unlimited scavenger hunts, bar crawls, audio tours, and ghost tours with ANY theme.\"\n\t},\n\t{\n\t\t\"text\": \"Use in any of our 3,000+ cities, including options in the U.S., Europe, Australia, and Asia. Many cities have multiple activities.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}\n]\n","bundle_callout":"A Great Gift","sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra 10%:<\/strong> With an annual membership for only $69.99. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Giftable one year annual pass for unlimited scavenger hunts (or any of our activities!)\",\"One time purchase valid for one year from redemption for up to 6 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"6","season_pass_length":"12","initial_product_id":"79","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on an adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[86]","possible_role_upgrades":null,"last_updated_at":"2024-12-21 15:24:53","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"family-annual-pass.png","photo_image":"family-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":"cherry-blossom-family-pass.jpg","easter_photo_image":"easter-eggs-top.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"270","published":"1","title":"Single Use Group Budget Ticket - Up To 2 Players (No VIP Role Upgrades)","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a single scavenger hunt experience in any of our locations with a group of up to 2 players\u2014perfect for couples playing together for just <span class=\"autoUpdateCurrency\" data-price=\"39.95\">$39.95<\/span>. Does not include role upgrades. For even more fun, we recommend the unlimited giftable pass!","bundle_price":"39.95","bullet_description":"[\n\t{\n\t\t\"text\": \"Valid for one scavenger hunt in any of our 3,000+ locations.\"\n\t},\n\t{\n\t\t\"text\": \"Perfect for couples, families, or friends to explore and have fun together.\"\n\t}
2319,\n\t{\n\t\t\"text\": \"Solve challenges, discover landmarks, and create unforgettable memories.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra $[[savings]]:<\/strong> With an unlimited membership for only $12.99 \/ month. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Valid for up to 2 players playing together on one team\", \"Tickets must be used together on any ONE of our outdoor scavenger hunts\"]","initial_rid":"1","initial_quantity":"2","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"77","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city. Get instant printable gift cards or get a gift card mailed to you. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"date-for-two.jpeg","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[]","last_updated_at":"2024-12-21 23:59:09","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"hunt-tickets.png","photo_image":"hunt-tickets.png","st_patricks_photo_image":"st-pats-hunt-tickets.jpg","cherry_blossom_photo_image":"cherry-blossom-hunt-tickets.jpg","easter_photo_image":"easter-eggs-side.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"271","published":"1","title":"Single Use Group VIP Ticket - Up to 6 Players (With VIP Role Upgrades)","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a single scavenger hunt experience in any of our locations with a group of up to 6 players for just <span class=\"autoUpdateCurrency\" data-price=\"59.95\">$59.95<\/span>. Perfect for couples or groups, this pass includes VIP role upgrades and lets you theme your adventure with exciting challenges like date night missions, festive holiday hunts, or unforgettable birthday bonanzas. For endless adv","bundle_price":"59.95","bullet_description":"[\n\t{\n\t\t\"text\": \"Valid for one scavenger hunt in any of our 3,000+ locations.\"\n\t},\n\t{\n\t\t\"text\": \"Perfect for couples, families, or friends to explore and have fun together.\"\n\t},\n\t{\n\t\t\"text\": \"Solve challenges, discover landmarks, and create unforgettable memories.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra $[[savings]]:<\/strong> With an unlimited membership for only $12.99 \/ month. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Valid for up to 6 players playing together on one team\", \"Tickets must be used together on any ONE of our outdoor scavenger hunts\"]","initial_rid":"1","initial_quantity":"6","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"77","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city. Get instant printable gift cards or get a gift card mailed to you. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"date-for-two.jpeg","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[]","last_updated_at":"2024-12-22 00:02:45","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"hunt-tickets.png","photo_image":"hunt-tickets.png","st_patricks_photo_image":"st-pats-hunt-tickets.jpg","cherry_blossom_photo_image":"cherry-blossom-hunt-tickets.jpg","easter_photo_image":"easter-eggs-side.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"}
2319,{"id":"272","published":"1","title":"Giftable Annual VIP Pass - Up to 2 Players (With VIP Role Upgrades)","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a full year of unlimited scavenger hunts at all our locations for up to 2 players for just <span class=\"autoUpdateCurrency\" data-price=\"79.95\">$79.95<\/span>! This pass includes exclusive VIP role upgrades, making every adventure even more exciting!","bundle_price":"79.95","bullet_description":"[\n\t{\n\t\t\"text\": \"Valid for one year for up to 2 players in each activity. Year starts after the first redemption. Primary ticketholder must always be present (but can bring different people); this ticket cannot be split.\"\n\t},\n\t{\n\t\t\"text\": \"Unlimited scavenger hunts, bar crawls, audio tours, and ghost tours with ANY theme.\"\n\t},\n\t{\n\t\t\"text\": \"Use in any of our 3,000+ cities, including options in the U.S., Europe, Australia, and Asia. Many cities have multiple activities.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}\n]\n","bundle_callout":"A Great Gift","sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra 10%:<\/strong> With an annual membership for only $69.99. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Giftable one year annual pass for unlimited scavenger hunts (or any of our activities!)\",\"One time purchase valid for one year from redemption for up to 2 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"2","season_pass_length":"12","initial_product_id":"79","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on an adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[86]","possible_role_upgrades":null,"last_updated_at":"2024-12-22 00:02:51","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"family-annual-pass.png","photo_image":"family-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":"cherry-blossom-family-pass.jpg","easter_photo_image":"easter-eggs-top.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"273","published":"1","title":"Giftable Annual VIP Pass - Up to 6 Players (With VIP Role Upgrades)","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a full year of unlimited scavenger hunts at all our locations for up to 6 players for just <span class=\"autoUpdateCurrency\" data-price=\"99.95\">$99.95<\/span>! This pass includes exclusive VIP role upgrades, making every adventure even more exciting!","bundle_price":"99.95","bullet_description":"[\n\t{\n\t\t\"text\": \"Valid for one year for up to 6 players in each activity. Year starts after the first redemption. Primary ticketholder must always be present (but can bring different people); this ticket cannot be split.\"\n\t},\n\t{\n\t\t\"text\": \"Unlimited scavenger hunts, bar crawls, audio tours, and ghost tours with ANY theme.\"\n\t},\n\t{\n\t\t\"text\": \"Use in any of our 3,000+ cities, including options in the U.S., Europe, Australia, and Asia. Many cities have multiple activities.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}\n]\n","bundle_callout":"A Great Gift","sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra 10%:<\/strong> With an annual membership for only $69.99. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Giftable one year annual pass for unlimited scavenger hunts (or any of our activities!)\",\"One time purchase valid for one year from redemption for up to 6 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"6","season_pass_length":"12","
2319initial_product_id":"79","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on an adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[86]","possible_role_upgrades":null,"last_updated_at":"2024-12-22 00:02:56","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"family-annual-pass.png","photo_image":"family-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":"cherry-blossom-family-pass.jpg","easter_photo_image":"easter-eggs-top.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"274","published":"1","title":"Giftable Annual VIP Pass - Up to 10 Players (With VIP Role Upgrades)","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a full year of unlimited scavenger hunts at all our locations for up to 10 players for just <span class=\"autoUpdateCurrency\" data-price=\"119.95\">$119.95<\/span>! This pass includes exclusive VIP role upgrades, making every adventure even more exciting!","bundle_price":"119.95","bullet_description":"[\n\t{\n\t\t\"text\": \"Valid for one year for up to 10 players in each activity. Year starts after the first redemption. Primary ticketholder must always be present (but can bring different people); this ticket cannot be split.\"\n\t},\n\t{\n\t\t\"text\": \"Unlimited scavenger hunts, bar crawls, audio tours, and ghost tours with ANY theme.\"\n\t},\n\t{\n\t\t\"text\": \"Use in any of our 3,000+ cities, including options in the U.S., Europe, Australia, and Asia. Many cities have multiple activities.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}\n]\n","bundle_callout":"A Great Gift","sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra 10%:<\/strong> With an annual membership for only $69.99. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Giftable one year annual pass for unlimited scavenger hunts (or any of our activities!)\",\"One time purchase valid for one year from redemption for up to 6 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"6","season_pass_length":"12","initial_product_id":"79","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on an adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[86]","possible_role_upgrades":null,"last_updated_at":"2024-12-22 00:02:59","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"family-annual-pass.png","photo_image":"family-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":"cherry-blossom-family-pass.jpg","easter_photo_image":"easter-eggs-top.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"275","published":"1","title":"Bachelorette Party Scavenger Hunt \u2013 Up to 5 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"An unforgettable, laughter-filled adventure that\u2019s all about celebrating the bride-to-be!","bundle_price":"59.99","bullet_description":"[\n\t{ \n\t\t\"text\": \"Explore the city with a custom scavenger hunt, featuring hilarious bridal-themed challenges, trivia, and photo missions designed for smaller groups.\",\n\t\t\"info\": \"Our writers can create fun activities for you and the girls to do, even if you all can't get together right now\"\n\t},\n\t{ \n\t\t\"text\": \"Play in any of 3,000+ locations worldwide, including major U.S. and international cities.\",\n\t\t\"info\": \"Not sure how many people will be attending the party yet? With this bundle, get up to 10 people for a flat fee when you purchase now! Everyone will get unique roles and challenges as you race to complete this bachelorette themed hunt.\"\n\t},\n\t{ \n\t\t\"text\": \"Personalized bridal trivia to test who knows the bride best!\",\n\"info\": \"Each player will have a specific role in the hunt, and they will receive unique trivia and photo challenges along the way!\"\n\t},\n\t{ \n\t\t\"text\": \"Self-guided & app-powered \u2013 start when you're ready, no guide needed.\",\n\t\t\"info\": \"Visit landmarks and noteworthy locations while solving challenges, taking epic photos, and creating lasting memories through this 4.8+ star rated experience with over 3200+ reviews.\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Explore the city with a custom bachelorette scavenger hunt for smaller groups up to 5 people.\",\"Play in any of 3,000+ locations worldwide, including major U.S. and international cities. Pick city after purchase.\"]","initial_rid":"5","initial_quantity":"5","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"1","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"51","popular_label":"Small Group","short_description":"Bride-tribe meets epic scavenger hunt.","long_description":"Gather the bride tribe for an unforgettable bachelorette scavenger hunt. Eac
2319h person in your party will receive an interactive wedding-themed role, so everyone's in on the fun. Make the experience as crazy or as relaxed as you'd like. Connect, explore and celebrate with your I-do crew! Requires 5 business days of advanced purchase.","bullet_other_options":null,"image":"icon_bach_tickets.png","image_characters":"bach.png","gift_card_image":"default.png","params":"{\"product\":\"1\",\"quantity\":\"20\",\"roles\":\"5\"}","created_at":"2017-11-21 12:40:53","order":"10","url_slug":"bachelorette","straight_to_checkout":"0","special_event":"1","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":null,"last_updated_at":"2025-01-31 17:18:44","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"1","is_group_ticket_bundle":"0"},{"id":"276","published":"1","title":"Bachelorette Party Scavenger Hunt \u2013 Up to 20 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"The ultimate bachelorette adventure for groups who love competition, laughs, and unforgettable memories.","bundle_price":"79.99","bullet_description":"[\n\t{ \n\t\t\"text\": \"A high-energy, team-based scavenger hunt where groups compete in outrageous bridal-themed challenges.\",\n\t\t\"info\": \"Our writers can create fun activities for you and the girls to do, even if you all can't get together right now\"\n\t},\n\t{ \n\t\t\"text\": \"Customizable challenges focused on the bride, the couple, and wedding-themed fun!\",\n\t\t\"info\": \"Not sure how many people will be attending the party yet? With this bundle, get up to 10 people for a flat fee when you purchase now! Everyone will get unique roles and challenges as you race to complete this bachelorette themed hunt.\"\n\t},\n\t{ \n\t\t\"text\": \"Personalized bridal trivia to test who knows the bride best!\",\n\"info\": \"Each player will have a specific role in the hunt, and they will receive unique trivia and photo challenges along the way!\"\n\t},\n\t{ \n\t\t\"text\": \"Includes VIP customer support and a dedicated event coordinator for easy planning.\",\n\t\t\"info\": \"Visit landmarks and noteworthy locations while solving challenges, taking epic photos, and creating lasting memories through this 4.8+ star rated experience with over 3200+ reviews.\"\n\t},\n{ \n\t\t\"text\": \"Hassle-free & flexible \u2013 works in any city at any time with just a smartphone!\",\n\t\t\"info\": \"Visit landmarks and noteworthy locations while solving challenges, taking epic photos, and creating lasting memories through this 4.8+ star rated experience with over 3200+ reviews.\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Explore the city with a custom bachelorette scavenger hunt for larger groups up to 20 people.\",\"Play in any of 3,000+ locations worldwide, including major U.S. and international cities. Pick city after purchase.\"]","initial_rid":"5","initial_quantity":"20","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"1","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"51","popular_label":"Large Group","short_description":"Bride-tribe meets epic scavenger hunt.","long_description":"Gather the bride tribe for an unforgettable bachelorette scavenger hunt. Each person in your party will receive an interactive wedding-themed role, so everyone's in on the fun. Make the experience as crazy or as relaxed as you'd like. Connect, explore and celebrate with your I-do crew! Requires 5 business days of advanced purchase.","bullet_other_options":null,"image":"icon_bach_tickets.png","image_characters":"bach.png","gift_card_image":"default.png","params":"{\"product\":\"1\",\"quantity\":\"20\",\"roles\":\"5\"}","created_at":"2017-11-21 12:40:53","order":"10","url_slug":"bachelorette","straight_to_checkout":"0","special_event":"1","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":null,"last_updated_at":"2025-01-31 17:19:14","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"1","is_group_ticket_bundle":"0"},{"id":"277","published":"1","title":"Bachelorette Bar Crawl \u2013 Big Group (Up to 20 Players)","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"The ultimate bachelorette celebration \u2013 drinks, dares, and non-stop fun with your closest friends! Go along a route of great bars hand-picked by our writers.","bundle_price":"89.99","bullet_description":"[\n\t{ \n\t\t\"text\": \"Visit top bars and hidden gems while completing hilarious, bride-themed challenges.\",\n\t\t\"info\": \"Our writers can create fun activities for you and the girls to do, even if you all can't get together right now\"\n\t},\n\t{ \n\t\t\"text\": \"Team-based competition \u2013 race to complete outrageous photo\/video dares and trivia about the bride!\",\n\t\t\"info\": \"Not sure how many people will be attending the party yet? With this bundle, get up to 10 people for a flat fee when you purchase now! Everyone will get unique roles and challenges as you race to complete this bachelorette themed hunt.\"\n\t},\n\t{ \n\t\t\"text\": \"Customize the experience with inside jokes, wedding-themed questions, and fun surprises.\",\n\"info\": \"Each player will have a specific role in the hunt, and they will receive unique trivia and photo challenges along the way!\"\n\t},\n\t{ \n\t\t\"text\": \"Self-guided & app-powered \u2013 start and move at your own pace with no fixed schedule.\",\n\t\t\"info\": \"Visit landmarks and noteworthy locations while solving challenges, taking epic photos, and creating lasting memories through this 4.8+ star rated experience with over 3200+ reviews.\"\n\t},\n\t{ \n\t\t\"text\": \"VIP customer support to make planning a breeze.\",\n\t\t\"info\": \"Visit landmarks and noteworthy locations while solving challenges, taking epic photos, and creating lasting memories through this 4.8+ star rated experience with over 3200+ reviews.\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":null,"initial_rid":"5","initial_quantity":"20","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"1","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"51","popular_label":null,"short_description":"Bride-tribe meets epic scavenger hunt.","long_description":"Gather the bride tribe for an unforgettable bachelorette scavenger hunt. Eac
2319h person in your party will receive an interactive wedding-themed role, so everyone's in on the fun. Make the experience as crazy or as relaxed as you'd like. Connect, explore and celebrate with your I-do crew! Requires 5 business days of advanced purchase.","bullet_other_options":null,"image":"icon_bach_tickets.png","image_characters":"bach.png","gift_card_image":"default.png","params":"{\"product\":\"1\",\"quantity\":\"20\",\"roles\":\"5\"}","created_at":"2017-11-21 12:40:53","order":"10","url_slug":"bachelorette","straight_to_checkout":"0","special_event":"1","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":null,"last_updated_at":"2025-01-31 16:58:06","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"1","is_group_ticket_bundle":"0"},{"id":"278","published":"1","title":"Birthday Party Scavenger Hunt \u2013 Up to 5 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"A fun-filled, unforgettable birthday adventure packed with laughs, challenges, and surprises!","bundle_price":"59.99","bullet_description":"[\n\t{ \n\t\t\"text\": \"Explore the city with a custom scavenger hunt, featuring exciting birthday-themed challenges, trivia, and photo missions.\",\n\t\t\"info\": \"Our writers can create fun activities for you and your friends to do, even if you all can't get together right now\"\n\t},\n\t{ \n\t\t\"text\": \"Play in any of 3,000+ locations worldwide, including major U.S. and international cities.\"\n\t},\n\t{ \n\t\t\"text\": \"Personalized birthday trivia to test who knows the birthday VIP best!\"\n\t},\n\t{ \n\t\t\"text\": \"Self-guided & app-powered \u2013 start whenever you're ready, no guide needed.\"\n\t},\n\t{ \n\t\t\"text\": \"Instant access with a printable or digital invitation.\"\n\t}\n]\n","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Explore the city with a custom birthday scavenger hunt for smaller groups up to 5 people.\",\"Play in any of 3,000+ locations worldwide, including major U.S. and international cities. Pick after purchase.\"]","initial_rid":"3","initial_quantity":"5","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"1","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"51","popular_label":"Small Group","short_description":"Let\u2019s get this party started with birthday hunt options.","long_description":"Go on a birthday adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"icon_birthday_tickets.png","image_characters":"birthday.png","gift_card_image":"default.png","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"birthday","straight_to_checkout":"0","special_event":"1","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":null,"last_updated_at":"2025-01-31 17:19:27","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"279","published":"1","title":"Birthday Party Scavenger Hunt \u2013Up to 20 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"The perfect birthday experience for groups who love c
2319ompetition, adventure, and unforgettable memories!","bundle_price":"79.99","bullet_description":"[\n\t{ \n\t\t\"text\": \"A high-energy, team-based scavenger hunt where groups compete in outrageous birthday-themed challenges.\",\n\t\t\"info\": \"Our writers can create fun activities for you and your friends to do, even if you all can't get together right now\"\n\t},\n\t{ \n\t\t\"text\": \"Customize the experience with inside jokes, birthday trivia, and fun surprises.\"\n\t},\n\t{ \n\t\t\"text\": \"Includes VIP customer support and a dedicated event coordinator for easy planning.\"\n\t},\n\t{ \n\t\t\"text\": \"Hassle-free & flexible \u2013 works in any city at any time with just a smartphone!\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Explore the city with a custom birthday scavenger hunt for larger groups up to 20 people.\",\"Play in any of 3,000+ locations worldwide, including major U.S. and international cities. Pick after purchase.\"]","initial_rid":"3","initial_quantity":"20","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"1","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"51","popular_label":"Large Group","short_description":"Let\u2019s get this party started with birthday hunt options.","long_description":"Go on a birthday adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"icon_birthday_tickets.png","image_characters":"birthday.png","gift_card_image":"default.png","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"birthday","straight_to_checkout":"0","special_event":"1","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":null,"last_updated_at":"2025-01-31 17:19:44","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"280","published":"1","title":"Birthday Bar Crawl \u2013 Big Group (Up to 20 Players)","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"The ultimate birthday celebration \u2013 drinks, dares, and non-stop fun with your closest friends! Go along a route of great bars hand-picked by our writers.","bundle_price":"89.99","bullet_description":"[\n\t{ \n\t\t\"text\": \"Visit top bars and hidden gems, completing hilarious birthday-themed challenges along the way.\",\n\t\t\"info\": \"Our writers can create fun activities for you and your friends to do, even if you all can't get together right now\"\n\t},\n\t{ \n\t\t\"text\": \"Team-based competition \u2013 race to complete outrageous photo\/video dares and test how well your friends know the birthday star!\"\n\t},\n\t{ \n\t\t\"text\": \"Customize the experience with inside jokes, birthday trivia, and fun surprises.\"\n\t},\n\t{ \n\t\t\"text\": \"Self-guided & app-powered \u2013 explore at your own pace, no strict schedule.\"\n\t},\n\t{ \n\t\t\"text\": \"VIP customer support to ensure a seamless, stress-free celebration.\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":null,"initial_rid":"3","initial_quantity":"20","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"1","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"51","popular_label":null,"short_description":"Let\u2019s get this party started with birthday hunt options.","long_description":"Go on a birthday adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and s
2319olve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"icon_birthday_tickets.png","image_characters":"birthday.png","gift_card_image":"default.png","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"birthday","straight_to_checkout":"0","special_event":"1","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":null,"last_updated_at":"2025-01-31 16:57:32","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"281","published":"1","title":"Scavenger Hunt Ticket","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a single scavenger hunt experience in any of our locations.","bundle_price":null,"bullet_description":"[\n {\n\t\t\"text\": \"Individualized roles and challenges for everyone (including kids 5+)\"\n\t},\n {\n\t\t\"text\": \"Summer Sale: Children age 5-17 are only <span class='autoUpdateCurrency' data-price='12.99' style='font-weight: bold !important;'>$12.99<\/span> \/ player. Kids 4 and under are free.\"\n\t},\n\t{\n\t\t\"text\": \"Tickets valid for outdoor scavenger hunts in 3,000+ cities & indoor activites\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Children age 5-17 are only <span class=\"autoUpdateCurrency\" data-price=\"12.99\" style=\"font-weight: bold !important;\">$12.99<\/span>. Kids 4 and under are free.\", \"\", \"Tickets must be used together on any ONE of our outdoor scavenger hunts in 3,000+ cities\"]","initial_rid":"1","initial_quantity":"4","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"84","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city. Get instant printable gift cards or get a gift card mailed to you. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"date-for-two.jpeg","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[4]","last_updated_at":"2025-09-04 21:22:09","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"hunt-tickets.png","photo_image":"hunt-tickets.png","st_patricks_photo_image":"st-pats-hunt-tickets.jpg","cherry_blossom_photo_image":"cherry-blossom-hunt-tickets.jpg","easter_photo_image":"easter-eggs-side.jpg","modal_image":"group.jpg","
2319icon":"assets\/images\/store\/bundles\/modal\/icons\/ticket.svg","display_color":"var(--blue)","subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"282","published":"1","title":"Giftable 3 Month Pass - Up to 6 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":"upsell_234","short_card_description":"Enjoy a 3 month pass for unlimited scavenger hunts for all our locations for up to 6 players playing together. ","bundle_price":"69.99","bullet_description":"[\n\t{\n\t\t\"text\": \"Valid for 3 months for up to 6 players in each activity. The 3 months start after the first redemption. Primary ticketholder must always be present (but can bring different people); this ticket cannot be split.\"\n\t},\n\t{\n\t\t\"text\": \"Unlimited scavenger hunts, bar crawls, audio tours, and ghost tours with ANY theme.\"\n\t},\n\t{\n\t\t\"text\": \"Use in any of our 3,000+ cities, including options in the U.S., Europe, Australia, and Asia. Many cities have multiple activities.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}\n]\n","bundle_callout":"A Great Gift","sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra 10%:<\/strong> With an annual membership for only $69.99. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Giftable Explorer Pass - 3 Months pass for unlimited scavenger hunts (or any of our activities!)\",\"One time purchase valid for 3 months from redemption for up to 6 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"6","season_pass_length":"3","initial_product_id":"79","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on an adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[86]","possible_role_upgrades":null,"last_updated_at":"2025-12-03 14:38:52","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"family-annual-pass.png","photo_image":"family-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":"cherry-blossom-family-pass.jpg","easter_photo_image":"easter-eggs-top.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"283","published":"1","title":"Giftable Annual Pass - Up to 6 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":"upsell_234","short_card_description":"Enjoy a 12 month pass for unlimited scavenger hunts for all our locations for up to 6 players playing together. ","bundle_price":"99.99","bullet_description":"[\n\t{\n\t\t\"text\": \"Valid for 12 months for up to 6 players in each activity. The 12 months start after the first redemption. Primary ticketholder must always be present (but can bring different people); this ticket cannot be split.\"\n\t},\n\t{\n\t\t\"text\": \"Unlimited scavenger hunts, bar crawls, audio tours, and ghost tours with ANY theme.\"\n\t},\n\t{\n\t\t\"text\": \"Use in any of our 3,000+ cities, including options in the U.S., Europe, Australia, and Asia. Many cities have multiple activities.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}\n]\n","bundle_callout":"A Great Gift","sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra 10%:<\/strong> With an annual membership for only $69.99. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Giftable 12 month pass for unlimited scavenger hunts (or any of our activities!)\",\"One time purchase valid for 12 months from redemption for up to 6 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"6","season_pass_length":"12","
2319initial_product_id":"79","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on an adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[86]","possible_role_upgrades":null,"last_updated_at":"2025-12-03 14:32:36","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"family-annual-pass.png","photo_image":"family-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":"cherry-blossom-family-pass.jpg","easter_photo_image":"easter-eggs-top.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"284","published":"1","title":"Giftable 2 Year Pass - Up to 6 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":"upsell_234","short_card_description":"Enjoy a 2 year pass for unlimited scavenger hunts for all our locations for up to 6 players playing together. ","bundle_price":"139.99","bullet_description":"[\n\t{\n\t\t\"text\": \"Valid for 24 months for up to 6 players in each activity. 24 months start after the first redemption. Primary ticketholder must always be present (but can bring different people); this ticket cannot be split.\"\n\t},\n\t{\n\t\t\"text\": \"Unlimited scavenger hunts, bar crawls, audio tours, and ghost tours with ANY theme.\"\n\t},\n\t{\n\t\t\"text\": \"Use in any of our 3,000+ cities, including options in the U.S., Europe, Australia, and Asia. Many cities have multiple activities.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}\n]\n","bundle_callout":"A Great Gift","sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra 10%:<\/strong> With an annual membership for only $69.99. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Giftable 24 month pass for unlimited scavenger hunts (or any of our activities!)\",\"One time purchase valid for 12 months from redemption for up to 6 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"6","season_pass_length":"24","initial_product_id":"79","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on an adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[86]","possible_role_upgrades":null,"last_updated_at":"2025-12-03 14:33:28","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"family-annual-pass.png","photo_image":"family-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":"cherry-blossom-family-pass.jpg","easter_photo_image":"easter-eggs-top.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"285","published":"1","title":"Giftable State Adventure Pass \u2013 All Hunts in One State (Up to 6 Players)","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Get two years of state-wide adventures\u2014no need to decide the state at checkout. The state is chosen in the app when the pass is redeemed, unlocking unlimited scavenger hunts (and more) for up to 6 players in every eligible city\u2014perfect for families and friend groups who love exploring close to home.","bundle_price":"99.99","bullet_description":"[\n\t{\n\t\t\"text\": \"Valid for 24 months for up to 6 players in each activity, in a single U.S. state of your choice. 24 months start after the first redemption. Primary ticketholder must always be present (but can bring different people); this ticket cannot be split.\"\n\t},\n\t{\n\t\t\"text\": \"Unlimited scavenger hunts, bar crawls, audio tours, and ghost tours with ANY theme in y
2319our chosen state.\"\n\t},\n\t{\n\t\t\"text\": \"Use in every participating city in that state\u2014many cities include multiple activities to explore again and again.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}\n]\n","bundle_callout":"A Great Gift","sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra 10%:<\/strong> With an annual membership for only $69.99. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Giftable 24 month pass for unlimited scavenger hunts (or any of our activities!)\",\"One time purchase valid for 12 months from redemption for up to 6 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"6","season_pass_length":"24","initial_product_id":"79","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on an adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[86]","possible_role_upgrades":null,"last_updated_at":"2025-12-04 07:40:01","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"family-annual-pass.png","photo_image":"family-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":"cherry-blossom-family-pass.jpg","easter_photo_image":"easter-eggs-top.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"286","published":"1","title":"Giftable Global Adventure Pass \u2013 Unlimited Worldwide Hunts (Up to 6 Players)","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Give the ultimate travel-friendly gift: two years of unlimited adventures for up to 6 players in 3,000+ cities worldwide. From hometown hunts to bucket-list cities, this pass turns every trip into an experience.","bundle_price":"129.99","bullet_description":"[\n\t{\n\t\t\"text\": \"Valid for 24 months for up to 6 players in each activity. 24 months start after the first redemption. Primary ticketholder must always be present (but can bring different people); this ticket cannot be split.\"\n\t},\n\t{\n\t\t\"text\": \"Unlimited scavenger hunts, bar crawls, audio tours, and ghost tours with ANY theme\u2013great for weekends at home or trips abroad.\"\n\t},\n\t{\n\t\t\"text\": \"Use in 3,000+ cities across the U.S., Europe, Australia, Asia, and more. Many cities have multiple activities and themes to choose from.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}\n]\n","bundle_callout":"A Great Gift","sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra 10%:<\/strong> With an annual membership for only $69.99. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Giftable 24 month pass for unlimited scavenger hunts (or any of our activities!)\",\"One time purchase valid for 12 months from redemption for up to 6 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"6","season_pass_length":"24","initial_product_id":"79","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on an adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and s
2319olve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[86]","possible_role_upgrades":null,"last_updated_at":"2025-12-04 07:24:54","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"family-annual-pass.png","photo_image":"family-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":"cherry-blossom-family-pass.jpg","easter_photo_image":"easter-eggs-top.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"287","published":"1","title":"Single Use Group Ticket - Up to 6 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":"upsell_234","short_card_description":"Enjoy a single scavenger hunt experience in any of our locations with a group of up to 6 players playing together.","bundle_price":"39.99","bullet_description":"[\n\t{\n\t\t\"text\": \"Valid for one scavenger hunt in any of our 3,000+ locations.\"\n\t},\n\t{\n\t\t\"text\": \"Perfect for couples, families, or friends to explore and have fun together.\"\n\t},\n\t{\n\t\t\"text\": \"Solve challenges, discover landmarks, and create unforgettable memories.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}\n]\n","bundle_callout":"A Great Gift","sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra 10%:<\/strong> With an annual membership for only $69.99. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Giftable 24 month pass for unlimited scavenger hunts (or any of our activities!)\",\"One time purchase valid for 12 months from redemption for up to 6 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":null,"season_pass_length":"24","initial_product_id":"79","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on an adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[86]","possible_role_upgrades":null,"last_updated_at":"2025-12-30 11:08:28","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"family-annual-pass.png","photo_image":"family-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":"cherry-blossom-family-pass.jpg","easter_photo_image":"easter-eggs-top.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"1"},{"id":"288","published":"1","title":"Single Use Group Ticket - Up to 6 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":"upsell_232","short_card_description":"Enjoy a single scavenger hunt experience in any of our locations with a group of up to 6 players playing together.","bundle_price":"39.99","bullet_description":"[\n\t{\n\t\t\"text\": \"Valid for one scavenger hunt in any of our 3,000+ locations.\"\n\t},\n\t{\n\t\t\"text\": \"Perfect for couples, families, or friends to explore and have fun together.\"\n\t}
2319,\n\t{\n\t\t\"text\": \"Solve challenges, discover landmarks, and create unforgettable memories.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra $[[savings]]:<\/strong> With an unlimited membership for only $12.99 \/ month. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Valid for up to 6 players playing together on one team\", \"Tickets must be used together on any ONE of our outdoor scavenger hunts\"]","initial_rid":"1","initial_quantity":"6","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"77","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city. Get instant printable gift cards or get a gift card mailed to you. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"date-for-two.jpeg","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[]","last_updated_at":"2025-12-03 15:20:39","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"hunt-tickets.png","photo_image":"hunt-tickets.png","st_patricks_photo_image":"st-pats-hunt-tickets.jpg","cherry_blossom_photo_image":"cherry-blossom-hunt-tickets.jpg","easter_photo_image":"easter-eggs-side.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"289","published":"1","title":"Single Use Group Ticket - Up to 6 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a single scavenger hunt experience in any of our locations with a group of up to 6 players playing together.","bundle_price":"49.99","bullet_description":"[\n\t{\n\t\t\"text\": \"Valid for one scavenger hunt in any of our 3,000+ locations.\"\n\t},\n\t{\n\t\t\"text\": \"Perfect for couples, families, or friends to explore and have fun together.\"\n\t},\n\t{\n\t\t\"text\": \"Solve challenges, discover landmarks, and create unforgettable memories.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra $[[savings]]:<\/strong> With an unlimited membership for only $12.99 \/ month. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Valid for up to 6 players playing together on one team\", \"Tickets must be used together on any ONE of our outdoor scavenger hunts\"]","initial_rid":"1","initial_quantity":"6","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"77","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city. Get instant printable gift cards or get a gift card mailed to you. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"date-for-two.jpeg","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[]","last_updated_at":"2025-12-03 15:26:10","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"hunt-tickets.png","photo_image":"hunt-tickets.png","st_patricks_photo_image":"st-pats-hunt-tickets.jpg","cherry_blossom_photo_image":"cherry-blossom-hunt-tickets.jpg","easter_photo_image":"easter-eggs-side.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"290","published":"1","title":"Giftable Annual Pass - Up to 6 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":"upsell_234","short_card_description":"Enjoy a 12 month pass for unlimited scavenger hunts for all our locations for up to 6 players playing together. With the annual pass, you unlimited adventure for only an extra <span class=\"autoUpdateCurrency\" data-price=\"30\">$30<\/span>.","bundle_price":"79.99","bullet_description":"[\n\t{\n\t\t\"text\": \"Valid for 12 months for up to 6 players in each activity. The 12 months start after the first redemption. Primary ticketholder must always be present (but can bring different people); this ticket cannot be split.\"\n\t},\n\t{\n\t\t\"text\": \"Unlimited scavenger hunts, bar crawls, audio tours, and ghost tours with ANY theme.\"\n\t},\n\t{\n\t\t\"text\": \"Use in any of our 3,000+ cities, including options in the U.S., Europe, Australia, and Asia. Many cities have multiple activities.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}\n]\n","bundle_callout":"A Great Gift","sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra 10%:<\/strong> With an annual membership for only $69.99. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Giftable 12 month pass for unlimited scavenger hunts (or any of our activities!)\",\"One time purchase valid for 12 months from redemption for up to 6 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"6","season_pass_length":"12","
2319initial_product_id":"79","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on an adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[86]","possible_role_upgrades":null,"last_updated_at":"2025-12-03 22:09:09","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"family-annual-pass.png","photo_image":"family-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":"cherry-blossom-family-pass.jpg","easter_photo_image":"easter-eggs-top.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"291","published":"1","title":"Giftable 2 Year Pass - Up to 6 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":"upsell_234","short_card_description":"Enjoy a 2 year pass for unlimited scavenger hunts for all our locations for up to 6 players playing together. With the 2 year pass, you get an year of adventure for only an extra <span class=\"autoUpdateCurrency\" data-price=\"20\">$20<\/span>. ","bundle_price":"99.99","bullet_description":"[\n\t{\n\t\t\"text\": \"Valid for 24 months for up to 6 players in each activity. 24 months start after the first redemption. Primary ticketholder must always be present (but can bring different people); this ticket cannot be split.\"\n\t},\n\t{\n\t\t\"text\": \"Unlimited scavenger hunts, bar crawls, audio tours, and ghost tours with ANY theme.\"\n\t},\n\t{\n\t\t\"text\": \"Use in any of our 3,000+ cities, including options in the U.S., Europe, Australia, and Asia. Many cities have multiple activities.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}\n]\n","bundle_callout":"A Great Gift","sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra 10%:<\/strong> With an annual membership for only $69.99. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Giftable 24 month pass for unlimited scavenger hunts (or any of our activities!)\",\"One time purchase valid for 12 months from redemption for up to 6 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"6","season_pass_length":"24","initial_product_id":"79","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on an adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[86]","possible_role_upgrades":null,"last_updated_at":"2025-12-03 22:21:33","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"family-annual-pass.png","photo_image":"family-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":"cherry-blossom-family-pass.jpg","easter_photo_image":"easter-eggs-top.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"292","published":"1","title":"Single Use Group Ticket - Up to 6 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":"upsell_234","short_card_description":"Enjoy a single scavenger hunt experience in any of our locations with a group of up to 6 players playing together.","bundle_price":"49.99","bullet_description":"[\n\t{\n\t\t\"text\": \"Valid for one scavenger hunt in any of our 3,000+ locations.\"\n\t},\n\t{\n\t\t\"text\": \"Perfect for couples, families, or friends to explore and have fun together.\"\n\t}
2319,\n\t{\n\t\t\"text\": \"Solve challenges, discover landmarks, and create unforgettable memories.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}\n]\n","bundle_callout":"A Great Gift","sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra 10%:<\/strong> With an annual membership for only $69.99. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Giftable 24 month pass for unlimited scavenger hunts (or any of our activities!)\",\"One time purchase valid for 12 months from redemption for up to 6 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"6","season_pass_tickets":null,"season_pass_length":"24","initial_product_id":"79","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on an adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[86]","possible_role_upgrades":null,"last_updated_at":"2025-12-04 07:28:51","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"family-annual-pass.png","photo_image":"family-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":"cherry-blossom-family-pass.jpg","easter_photo_image":"easter-eggs-top.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"293","published":"1","title":"Single Use Group Ticket - Up to 8 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":"upsell_232","short_card_description":"Enjoy a single scavenger hunt experience in any of our locations with a group of up to 8 players playing together.","bundle_price":"39.99","bullet_description":"[\n\t{\n\t\t\"text\": \"Valid for one scavenger hunt in any of our 3,000+ locations.\"\n\t},\n\t{\n\t\t\"text\": \"Perfect for couples, families, or friends to explore and have fun together.\"\n\t},\n\t{\n\t\t\"text\": \"Solve challenges, discover landmarks, and create unforgettable memories.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra $[[savings]]:<\/strong> With an unlimited membership for only $12.99 \/ month. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Valid for up to 6 players playing together on one team\", \"Tickets must be used together on any ONE of our outdoor scavenger hunts\"]","initial_rid":"1","initial_quantity":"8","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"77","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city. Get instant printable gift cards or get a gift card mailed to you. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"date-for-two.jpeg","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[]","last_updated_at":"2025-12-30 11:08:28","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"hunt-tickets.png","photo_image":"hunt-tickets.png","st_patricks_photo_image":"st-pats-hunt-tickets.jpg","cherry_blossom_photo_image":"cherry-blossom-hunt-tickets.jpg","easter_photo_image":"easter-eggs-side.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"1"},{"id":"294","published":"1","title":"Giftable Annual Pass - Up to 8 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":"upsell_234","short_card_description":"Enjoy a 1 year pass for unlimited scavenger hunts for all our locations for up to 8 players playing together.","bundle_price":"89.99","bullet_description":"[\n\t{\n\t\t\"text\": \"Valid for one year for up to 8 players in each activity. Year starts after the first redemption. Primary ticketholder must always be present (but can bring different people); this ticket cannot be split.\"\n\t},\n\t{\n\t\t\"text\": \"Unlimited scavenger hunts, bar crawls, audio tours, and ghost tours with ANY theme.\"\n\t},\n\t{\n\t\t\"text\": \"Use in any of our 3,000+ cities, including options in the U.S., Europe, Australia, and Asia. Many cities have multiple activities.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}\n]\n","bundle_callout":"A Great Gift","sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra 10%:<\/strong> With an annual membership for only $69.99. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Giftable one year annual pass for unlimited scavenger hunts (or any of our activities!)\",\"One time purchase valid for one year from redemption for up to 6 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"8","season_pass_tickets":"6","season_pass_length":"12","
2319initial_product_id":"79","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on an adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[86]","possible_role_upgrades":null,"last_updated_at":"2025-12-04 12:22:17","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"family-annual-pass.png","photo_image":"family-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":"cherry-blossom-family-pass.jpg","easter_photo_image":"easter-eggs-top.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"295","published":"1","title":"Single Use Group Ticket - Up to 6 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":"upsell_232","short_card_description":"Enjoy a single scavenger hunt experience in any of our locations with a group of up to 6 players playing together.","bundle_price":"49.99","bullet_description":"[\n\t{\n\t\t\"text\": \"Valid for one scavenger hunt in any of our 3,000+ locations.\"\n\t},\n\t{\n\t\t\"text\": \"Perfect for couples, families, or friends to explore and have fun together.\"\n\t},\n\t{\n\t\t\"text\": \"Solve challenges, discover landmarks, and create unforgettable memories.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra $[[savings]]:<\/strong> With an unlimited membership for only $12.99 \/ month. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Valid for up to 6 players playing together on one team\", \"Tickets must be used together on any ONE of our outdoor scavenger hunts\"]","initial_rid":"1","initial_quantity":"6","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"77","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city. Get instant printable gift cards or get a gift card mailed to you. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"date-for-two.jpeg","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[]","last_updated_at":"2025-11-17 12:53:20","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"hunt-tickets.png","photo_image":"hunt-tickets.png","st_patricks_photo_image":"st-pats-hunt-tickets.jpg","cherry_blossom_photo_image":"cherry-blossom-hunt-tickets.jpg","easter_photo_image":"easter-eggs-side.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"296","published":"1","title":"Single Use Group Ticket - Up to 6 Players","bullet_description_ultra_short":"[\"Use on any one hunt\", \"Up to 6 players\", \"Giftable\", \"Less than $10 per player\"]","upsell_stripe_price_id":"upsell_232","short_card_description":"Enjoy a single scavenger hunt experience \u2014 or gift it \u2014 in any of our locations for up to 6 players. With the sale, it\u2019s less than <span class=\"autoUpdateCurrency\" data-price=\"10\">$10<\/span> per person.","bundle_price":"59.99","bullet_description":"[\n\t{\n\t\t\"text\": \"Valid for one scavenger hunt for up to 6 people in any of our 3,000+ locations.\"\n\t},\n\t{\n\t\t\"text\": \"Perfect for couples, families, or friends to explore and have fun together.\"\n\t}
2319,\n\t{\n\t\t\"text\": \"Solve challenges, discover landmarks, and create unforgettable memories.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options for a gift that's ready in minutes.\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra $[[savings]]:<\/strong> With an unlimited membership for only $12.99 \/ month. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Valid for up to 6 players playing together on one team\", \"Tickets must be used together on any ONE of our outdoor scavenger hunts\"]","initial_rid":"1","initial_quantity":"6","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"77","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city. Get instant printable gift cards or get a gift card mailed to you. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"date-for-two.jpeg","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[]","last_updated_at":"2026-02-04 10:35:56","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"hunt-tickets.png","photo_image":"hunt-tickets.png","st_patricks_photo_image":"st-pats-hunt-tickets.jpg","cherry_blossom_photo_image":"cherry-blossom-hunt-tickets.jpg","easter_photo_image":"easter-eggs-side.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"297","published":"1","title":"Giftable Season Pass - Up to 6 Players","bullet_description_ultra_short":"[\"Unlimited Scavenger Hunts\", \"Use in 3000+ cities\", \"Up to 6 players\", \"Giftable\", \"Less than $17 per player\"]","upsell_stripe_price_id":"upsell_234","short_card_description":"Enjoy a full year of unlimited scavenger hunts \u2014 or gift it \u2014 across all our locations for up to 6 players. With the sale, it\u2019s less than <span class=\"autoUpdateCurrency\" data-price=\"17\">$17<\/span> per person \u2014 only a little more than a single adventure, but with unlimited experiences all year.","bundle_price":"99.99","bullet_description":"[\n\t{\n\t\t\"text\": \"Valid for one year for up to 6 players in each activity. Year starts after the first redemption. Primary ticketholder must always be present (but can bring different people); this ticket cannot be split.\"\n\t},\n\t{\n\t\t\"text\": \"Unlimited scavenger hunts, bar crawls, audio tours, and ghost tours with ANY theme.\"\n\t},\n\t{\n\t\t\"text\": \"Use in any of our 3,000+ cities, including options in the U.S., Europe, Australia, and Asia. Many cities have multiple activities.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}\n]\n","bundle_callout":"A Great Gift","sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra 10%:<\/strong> With an annual membership for only $69.99. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Giftable one year annual pass for unlimited scavenger hunts (or any of our activities!)\",\"One time purchase valid for one year from redemption for up to 6 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"6","season_pass_length":"12","
2319initial_product_id":"79","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on an adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[86]","possible_role_upgrades":null,"last_updated_at":"2025-12-05 12:55:51","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"family-annual-pass.png","photo_image":"family-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":"cherry-blossom-family-pass.jpg","easter_photo_image":"easter-eggs-top.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"298","published":"1","title":"Single Use Group Ticket - Up To 2 Players","bullet_description_ultra_short":"[\"Use on any one hunt\", \"Up to 6 players\", \"giftable\", \"Less than $10 per player\"]","upsell_stripe_price_id":"upsell_231","short_card_description":"Enjoy a single scavenger hunt experience \u2014 or gift it \u2014 in any of our locations for up to 2 players. With the sale, it\u2019s less than <span class=\"autoUpdateCurrency\" data-price=\"20\">$20<\/span> per person.","bundle_price":"39.99","bullet_description":"[\n\t{\n\t\t\"text\": \"Valid for one scavenger hunt in any of our 3,000+ locations.\"\n\t},\n\t{\n\t\t\"text\": \"Perfect for couples, families, or friends to explore and have fun together.\"\n\t},\n\t{\n\t\t\"text\": \"Solve challenges, discover landmarks, and create unforgettable memories.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra $[[savings]]:<\/strong> With an unlimited membership for only $12.99 \/ month. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Valid for up to 2 players playing together on one team\", \"Tickets must be used together on any ONE of our outdoor scavenger hunts\"]","initial_rid":"1","initial_quantity":"2","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"77","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city. Get instant printable gift cards or get a gift card mailed to you. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"date-for-two.jpeg","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[]","last_updated_at":"2025-12-05 12:55:58","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"hunt-tickets.png","photo_image":"hunt-tickets.png","st_patricks_photo_image":"st-pats-hunt-tickets.jpg","cherry_blossom_photo_image":"cherry-blossom-hunt-tickets.jpg","easter_photo_image":"easter-eggs-side.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"299","published":"1","title":"Giftable Annual Pass - Up to 2 Players","bullet_description_ultra_short":"[\"Use on any one hunt\", \"Up to 6 players\", \"giftable\", \"Less than $10 per player\"]","upsell_stripe_price_id":"upsell_233","short_card_description":"Enjoy a full year of unlimited scavenger hunts \u2014 or gift it \u2014 across all our locations for up to 2 players. With the sale, it\u2019s less than <span class=\"autoUpdateCurrency\" data-price=\"40\">$40<\/span> per person \u2014 only a little more than a single adventure, but with unlimited experiences all year.","bundle_price":"79.99","bullet_description":"[\n\t{\n\t\t\"text\": \"Valid for one year for up to 2 players in each activity. Year starts after the first redemption. Primary ticketholder must always be present (but can bring different people); this ticket cannot be split.\"\n\t},\n\t{\n\t\t\"text\": \"Unlimited scavenger hunts, bar crawls, audio tours, and ghost tours with ANY theme.\"\n\t},\n\t{\n\t\t\"text\": \"Use in any of our 3,000+ cities, including options in the U.S., Europe, Australia, and Asia. Many cities have multiple activities.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}\n]\n","bundle_callout":"A Great Gift","sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra 10%:<\/strong> With an annual membership for only $69.99. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Giftable one year annual pass for unlimited scavenger hunts (or any of our activities!)\",\"One time purchase valid for one year from redemption for up to 2 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"2","season_pass_length":"12","
2319initial_product_id":"79","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on an adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":"7","url_slug":"family_season_0","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[86]","possible_role_upgrades":null,"last_updated_at":"2025-12-05 12:29:15","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"family-annual-pass.png","photo_image":"family-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":"cherry-blossom-family-pass.jpg","easter_photo_image":"easter-eggs-top.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"300","published":"1","title":"Giftable Single Use Group Ticket - Up to 6 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":"upsell_232","short_card_description":"Enjoy a single scavenger hunt experience in any of our locations with a group of up to 6 players playing together.","bundle_price":"49.99","bullet_description":"[\n\t{\n\t\t\"text\": \"Valid for one scavenger hunt in any of our 3,000+ locations.\"\n\t},\n\t{\n\t\t\"text\": \"Perfect for couples, families, or friends to explore and have fun together.\"\n\t},\n\t{\n\t\t\"text\": \"Solve challenges, discover landmarks, and create unforgettable memories.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra $[[savings]]:<\/strong> With an unlimited membership for only $12.99 \/ month. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Valid for up to 6 players playing together on one team\", \"Tickets must be used together on any ONE of our outdoor scavenger hunts\"]","initial_rid":"1","initial_quantity":"6","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"77","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city. Get instant printable gift cards or get a gift card mailed to you. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"date-for-two.jpeg","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[]","last_updated_at":"2025-11-17 12:53:20","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"hunt-tickets.png","photo_image":"hunt-tickets.png","st_patricks_photo_image":"st-pats-hunt-tickets.jpg","cherry_blossom_photo_image":"cherry-blossom-hunt-tickets.jpg","easter_photo_image":"easter-eggs-side.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"301","published":"1","title":"Giftable Single Use Group Ticket - Up To 2 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":"upsell_231","short_card_description":"Enjoy a single scavenger hunt experience in any of our locations with a group of up to 2 players. Perfect for couples playing together.","bundle_price":"29.99","bullet_description":"[\n\t{\n\t\t\"text\": \"Valid for one scavenger hunt in any of our 3,000+ locations.\"\n\t},\n\t{\n\t\t\"text\": \"Perfect for couples, families, or friends to explore and have fun together.\"\n\t}
2319,\n\t{\n\t\t\"text\": \"Solve challenges, discover landmarks, and create unforgettable memories.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra $[[savings]]:<\/strong> With an unlimited membership for only $12.99 \/ month. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Valid for up to 2 players playing together on one team\", \"Tickets must be used together on any ONE of our outdoor scavenger hunts\"]","initial_rid":"1","initial_quantity":"2","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"77","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city. Get instant printable gift cards or get a gift card mailed to you. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"date-for-two.jpeg","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[]","last_updated_at":"2025-11-17 12:53:24","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"hunt-tickets.png","photo_image":"hunt-tickets.png","st_patricks_photo_image":"st-pats-hunt-tickets.jpg","cherry_blossom_photo_image":"cherry-blossom-hunt-tickets.jpg","easter_photo_image":"easter-eggs-side.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"302","published":"1","title":"Bachelorette Party Scavenger Hunt \u2013 Up to 4 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"An unforgettable, laughter-filled adventure that\u2019s all about celebrating the bride-to-be!","bundle_price":"49.99","bullet_description":"[\n\t{ \n\t\t\"text\": \"Explore the city with a custom scavenger hunt, featuring hilarious bridal-themed challenges, trivia, and photo missions designed for smaller groups.\",\n\t\t\"info\": \"Our writers can create fun activities for you and the girls to do, even if you all can't get together right now\"\n\t},\n\t{ \n\t\t\"text\": \"Play in any of 3,000+ locations worldwide, including major U.S. and international cities.\",\n\t\t\"info\": \"Not sure how many people will be attending the party yet? With this bundle, get up to 10 people for a flat fee when you purchase now! Everyone will get unique roles and challenges as you race to complete this bachelorette themed hunt.\"\n\t},\n\t{ \n\t\t\"text\": \"Personalized bridal trivia to test who knows the bride best!\",\n\"info\": \"Each player will have a specific role in the hunt, and they will receive unique trivia and photo challenges along the way!\"\n\t},\n\t{ \n\t\t\"text\": \"Self-guided & app-powered \u2013 start when you're ready, no guide needed.\",\n\t\t\"info\": \"Visit landmarks and noteworthy locations while solving challenges, taking epic photos, and creating lasting memories through this 4.8+ star rated experience with over 3200+ reviews.\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Explore the city with a custom bachelorette scavenger hunt for smaller groups up to 4 people.\",\"Play in any of 3,000+ locations worldwide, including major U.S. and international cities. Pick city after purchase.\"]","initial_rid":"5","initial_quantity":"4","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"1","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"51","popular_label":"Small Group","short_description":"Bride-tribe meets epic scavenger hunt.","long_description":"Gather the bride tribe for an unforgettable bachelorette scavenger hunt. Eac
2319h person in your party will receive an interactive wedding-themed role, so everyone's in on the fun. Make the experience as crazy or as relaxed as you'd like. Connect, explore and celebrate with your I-do crew! Requires 5 business days of advanced purchase.","bullet_other_options":null,"image":"icon_bach_tickets.png","image_characters":"bach.png","gift_card_image":"default.png","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"4\"}","created_at":"2025-12-19 12:40:53","order":"10","url_slug":"bachelorette","straight_to_checkout":"0","special_event":"1","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":null,"last_updated_at":"2026-01-08 19:05:39","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"1","is_group_ticket_bundle":"1"},{"id":"303","published":"1","title":"Bachelorette Party Scavenger Hunt \u2013 Up to 20 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"An unforgettable, laughter-filled adventure that\u2019s all about celebrating the bride-to-be!","bundle_price":"79.99","bullet_description":"[\n\t{ \n\t\t\"text\": \"Explore the city with a custom scavenger hunt, featuring hilarious bridal-themed challenges, trivia, and photo missions designed for smaller groups.\",\n\t\t\"info\": \"Our writers can create fun activities for you and the girls to do, even if you all can't get together right now\"\n\t},\n\t{ \n\t\t\"text\": \"Play in any of 3,000+ locations worldwide, including major U.S. and international cities.\",\n\t\t\"info\": \"Not sure how many people will be attending the party yet? With this bundle, get up to 10 people for a flat fee when you purchase now! Everyone will get unique roles and challenges as you race to complete this bachelorette themed hunt.\"\n\t},\n\t{ \n\t\t\"text\": \"Personalized bridal trivia to test who knows the bride best!\",\n\"info\": \"Each player will have a specific role in the hunt, and they will receive unique trivia and photo challenges along the way!\"\n\t},\n\t{ \n\t\t\"text\": \"Self-guided & app-powered \u2013 start when you're ready, no guide needed.\",\n\t\t\"info\": \"Visit landmarks and noteworthy locations while solving challenges, taking epic photos, and creating lasting memories through this 4.8+ star rated experience with over 3200+ reviews.\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Explore the city with a custom bachelorette scavenger hunt for smaller groups up to 20 people.\",\"Play in any of 3,000+ locations worldwide, including major U.S. and international cities. Pick city after purchase.\"]","initial_rid":"5","initial_quantity":"20","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"1","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"51","popular_label":"Small Group","short_description":"Bride-tribe meets epic scavenger hunt.","long_description":"Gather the bride tribe for an unforgettable bachelorette scavenger hunt. Each person in your party will receive an interactive wedding-themed role, so everyone's in on the fun. Make the experience as crazy or as relaxed as you'd like. Connect, explore and celebrate with your I-do crew! ","bullet_other_options":null,"image":"icon_bach_tickets.png","image_characters":"bach.png","gift_card_image":"default.png","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"4\"}","created_at":"2025-12-19 12:40:53","order":"10","url_slug":"bachelorette","straight_to_checkout":"0","special_event":"1","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":null,"last_updated_at":"2026-01-08 19:05:44","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"1","is_group_ticket_bundle":"1"},{"id":"304","published":"1","title":"Birthday Party Scavenger Hunt \u2013 Up to 4 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"A fun-filled, unforgettable birthday adventure packed with laughs, challenges, and surprises!","bundle_price":"49.99","bullet_description":"[\n\t{ \n\t\t\"text\": \"Explore the city with a custom scavenger hunt, featuring exciting birthday-themed challenges, trivia, and photo missions.\",\n\t\t\"info\": \"Our writers can create fun activities for you and your friends to do, even if you all can't get together right now\"\n\t},\n\t{ \n\t\t\"text\": \"Play in any of 3,000+ locations worldwide, including major U.S. and international cities.\"\n\t},\n\t{ \n\t\t\"text\": \"Personalized birthday trivia to test who knows the birthday V
2319IP best!\"\n\t},\n\t{ \n\t\t\"text\": \"Self-guided & app-powered \u2013 start whenever you're ready, no guide needed.\"\n\t},\n\t{ \n\t\t\"text\": \"Instant access with a printable or digital invitation.\"\n\t}\n]\n","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Explore the city with a custom birthday scavenger hunt for smaller groups up to 4 people.\",\"Play in any of 3,000+ locations worldwide, including major U.S. and international cities. Pick after purchase.\"]","initial_rid":"3","initial_quantity":"4","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"1","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"51","popular_label":"Small Group","short_description":"Let\u2019s get this party started with birthday hunt options.","long_description":"Go on a birthday adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"icon_birthday_tickets.png","image_characters":"birthday.png","gift_card_image":"default.png","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"3\"}","created_at":"2025-12-22 12:40:53","order":"7","url_slug":"birthday","straight_to_checkout":"0","special_event":"1","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":null,"last_updated_at":"2026-01-08 19:05:48","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"1"},{"id":"305","published":"1","title":"Birthday Party Scavenger Hunt \u2013Up to 20 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"The perfect birthday experience for groups who love competition, adventure, and unforgettable memories!","bundle_price":"79.99","bullet_description":"[\n\t{ \n\t\t\"text\": \"A high-energy, team-based scavenger hunt where groups compete in outrageous birthday-themed challenges.\",\n\t\t\"info\": \"Our writers can create fun activities for you and your friends to do, even if you all can't get together right now\"\n\t},\n\t{ \n\t\t\"text\": \"Customize the experience with inside jokes, birthday trivia, and fun surprises.\"\n\t},\n\t{ \n\t\t\"text\": \"Includes VIP customer support and a dedicated event coordinator for easy planning.\"\n\t},\n\t{ \n\t\t\"text\": \"Hassle-free & flexible \u2013 works in any city at any time with just a smartphone!\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Explore the city with a custom birthday scavenger hunt for larger groups up to 20 people.\",\"Play in any of 3,000+ locations worldwide, including major U.S. and international cities. Pick after purchase.\"]","initial_rid":"3","initial_quantity":"20","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"1","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"51","popular_label":"Large Group","short_description":"Let\u2019s get this party started with birthday hunt options.","long_description":"Go on a birthday adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"icon_birthday_tickets.png","image_characters":"birthday.png","gift_card_image":"default.png","params":"{\"product\":\"1\",\"quantity\":\"20\",\"roles\":\"3\"}","created_at":"2025-12-22 12:40:53","order":"7","url_slug":"birthday","straight_to_checkout":"0","special_event":"1","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":null,"last_updated_at":"2026-01-08 19:05:52","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"1"},{"id":"306","published":"1","title":"Single Use Group Ticket - Up To 2 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a single scavenger hunt experience in any of our locations with a group of up to 2 players. Perfect for couples playing together.","bundle_price":"29.99","bullet_description":"[\n{\n\"text\": \"One ticket covers both players (up to 2) \u2014 perfect for a couples\u2019 date night.\"\n},\n{\n\"text\": \"Valid for one scavenger hunt in any of our 3,000+ locations \u2014 choose your city when you\u2019re ready.\"\n}
2319,\n{\n\"text\": \"Solve challenges, discover landmarks, and create unforgettable memories together.\"\n},\n{\n\"text\": \"Play your way: use two phones with fun roles, or share one device.\"\n},\n{\n\"text\": \"Fully giftable: vouchers are transferable and include printable gift card options.\"\n}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra $[[savings]]:<\/strong> With an unlimited membership for only $12.99 \/ month. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Valid for up to 2 players playing together on one team\", \"Tickets must be used together on any ONE of our outdoor scavenger hunts\"]","initial_rid":"1","initial_quantity":"2","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"77","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city. Get instant printable gift cards or get a gift card mailed to you. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"date-for-two.jpeg","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2025-12-22 15:53:41","order":"2","url_slug":"scavenger_hunt-variant","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[]","last_updated_at":"2025-12-22 16:17:28","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"hunt-tickets.png","photo_image":"hunt-tickets.png","st_patricks_photo_image":"st-pats-hunt-tickets.jpg","cherry_blossom_photo_image":"cherry-blossom-hunt-tickets.jpg","easter_photo_image":"easter-eggs-side.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"307","published":"1","title":"Single Use Group Ticket - Up to 6 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a single scavenger hunt experience in any of our locations with a group of up to 6 players playing together.","bundle_price":"49.99","bullet_description":"[\n{\n\"text\": \"One ticket covers your whole team (up to 6 players) \u2014 no per-person purchases needed.\"\n},\n{\n\"text\": \"Valid for one scavenger hunt in any of our 3,000+ locations \u2014 pick your city during redemption in app.\"\n},\n{\n\"text\": \"Perfect for families and friend groups \u2014 solve challenges, discover landmarks, and make memories together.\"\n},\n{\n\"text\": \"Children 5 and under are free and don\u2019t count toward your 6-player limit.\"\n},\n{\n\"text\": \"Fully giftable: vouchers are transferable and include printable gift card options.\"\n}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra $[[savings]]:<\/strong> With an unlimited membership for only $12.99 \/ month. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Valid for up to 6 players playing together on one team\", \"Tickets must be used together on any ONE of our outdoor scavenger hunts\"]","initial_rid":"1","initial_quantity":"6","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"77","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city. Get instant printable gift cards or get a gift card mailed to you. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"date-for-two.jpeg","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2025-12-22 15:53:41","order":"2","url_slug":"scavenger_hunt-variant","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[]","last_updated_at":"2025-12-22 16:26:23","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"hunt-tickets.png","photo_image":"hunt-tickets.png","st_patricks_photo_image":"st-pats-hunt-tickets.jpg","cherry_blossom_photo_image":"cherry-blossom-hunt-tickets.jpg","easter_photo_image":"easter-eggs-side.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"308","published":"1","title":"Annual Pass - Up to 2 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a 1 year pass for unlimited scavenger hunts for all our locations for up to 2 players playing together.","bundle_price":"69.99","bullet_description":"[\n{\n\"text\": \"Use in any of our 3,000+ locations worldwide \u2014 travel-friendly and flexible.\"\n},\n{\n\"text\": \"The 1-year clock starts when you first play \u2014 ideal for gifting now and activating later.\"\n},\n{\n\"text\": \"One-time purchase, not a subscription \u2014 no auto-renew or surprise charges.\"\n},\n{\n\"text\": \"Fully giftable: transferable vouchers and printable gift card options included.\"\n}\n]","bundle_callout":"A Great Gift","sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra 10%:<\/strong> With an annual membership for only $69.99. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Giftable one year annual pass for unlimited scavenger hunts (or any of our activities!)\",\"One time purchase valid for one year from redemption for up to 2 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"2","season_pass_length":"12","
2319initial_product_id":"79","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on an adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2025-12-22 15:53:41","order":"7","url_slug":"family_season_0-variant","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[86]","possible_role_upgrades":null,"last_updated_at":"2026-02-26 14:44:58","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"family-annual-pass.png","photo_image":"family-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":"cherry-blossom-family-pass.jpg","easter_photo_image":"easter-eggs-top.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"309","published":"1","title":"Annual Pass - Up to 6 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a 1 year pass for unlimited scavenger hunts for all our locations for up to 6 players playing together.","bundle_price":"89.99","bullet_description":"[\n{\n\"text\": \"Includes scavenger hunts, bar crawls, ghost tours, and more across 3,000+ locations worldwide.\"\n},\n{\n\"text\": \"The 1-year clock starts when you first play \u2014 great for gifting now and activating later.\"\n},\n{\n\"text\": \"One-time purchase, not a subscription \u2014 no auto-renew or surprise charges.\"\n},\n{\n\"text\": \"Fully giftable: transferable vouchers and printable gift card options included.\"\n}\n]","bundle_callout":"A Great Gift","sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra 10%:<\/strong> With an annual membership for only $69.99. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Giftable one year annual pass for unlimited scavenger hunts (or any of our activities!)\",\"One time purchase valid for one year from redemption for up to 6 players playing together\", \"Unlimited indoor & outdoor scavenger hunts & more with ANY theme\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"6","season_pass_length":"12","initial_product_id":"79","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":"Most Savings","short_description":"Scavenger hunts for the whole family for one year from redemption.","long_description":"Go on an adventure with your friends. Our self-guided scavenger hunt adventures will show you all the best sights and hidden treasures. Each person will have an interactive role in the scavenger hunt so they can answer riddles and solve photo challenges with the group. The customized birthday roles will make the birthday boy or girl the center of attention.","bullet_other_options":null,"image":"4-family.png","image_characters":"4-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2025-12-22 15:53:41","order":"7","url_slug":"family_season_0-variant2","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[86]","possible_role_upgrades":null,"last_updated_at":"2026-02-26 14:44:46","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"family-annual-pass.png","photo_image":"family-annual-pass.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":"cherry-blossom-family-pass.jpg","easter_photo_image":"easter-eggs-top.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"310","published":"1","title":"Date Night Scavenger Hunt Tickets","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a romantic scavenger hunt experience in any of our locations.","bundle_price":null,"bullet_description":"[\n {\n \"text\": \"Use in any of our 3,000+ cities\",\n \"info\": \"Many cities have 3+ activities. We have a scavenger hunt in every large city in the United States, Europe, Australia, and Asia.\",\n \"class\": \"extra10\"\n },\n {\n \"text\": \"Unlimited indoor & outdoor scavenger hunts and more\",\n \"info\": \"Can be used for any scavenger hunt, in-home activity, bar hunt, and ghost hunt!\",\n \"class\": \"extra10\"\n },\n {\n \"text\": \"Includes upgraded date challenges\",\n \"info\": \"These bonus challenges add fun for couples with themed photo prompts and location-based moments.\",\n \"class\": \"extra10\"\n }\n]\n","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Perfect for couples (2 players)\", \"Includes romantic Date Night challenges\"]","initial_rid":"4","initial_quantity":"2","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"1","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city. Get instant printable gift cards or get a gift card mailed to you. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"icon_explorer.png","image_characters":"date.png","gift_card_image":"date-for-two.jpeg","params":"{\"product\":\"1\",\"quantity\":\"2\",\"roles\":\"2\"}","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":null,"last_updated_at":"2026-01-13 16:38:08","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"hunt-tickets.png","photo_image":"hunt-tickets.png","st_patricks_photo_image":"st-pats-hunt-tickets.jpg","cherry_blossom_photo_image":"cherry-blossom-hunt-tickets.jpg","easter_photo_image":"easter-eggs-side.jpg","modal_image":"group.jpg","
2319icon":"assets\/images\/store\/bundles\/modal\/icons\/ticket.svg","display_color":"#d63625","subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"311","published":"1","title":null,"bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":null,"bullet_description":null,"bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":null,"initial_rid":null,"initial_quantity":null,"season_pass_tickets":null,"season_pass_length":null,"initial_product_id":null,"initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":null,"short_description":null,"long_description":null,"bullet_other_options":null,"image":null,"image_characters":null,"gift_card_image":null,"params":null,"created_at":null,"order":null,"url_slug":null,"straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":null,"possible_role_upgrades":null,"last_updated_at":null,"free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"312","published":"1","title":null,"bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":null,"bullet_description":null,"bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":null,"initial_rid":null,"initial_quantity":null,"season_pass_tickets":null,"season_pass_length":null,"initial_product_id":null,"initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":null,"short_description":null,"long_description":null,"bullet_other_options":null,"image":null,"image_characters":null,"gift_card_image":null,"params":null,"created_at":null,"order":null,"url_slug":null,"straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":null,"possible_role_upgrades":null,"last_updated_at":null,"free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"313","published":"1","title":"Unlimited Monthly Pass - Up to 6 Players (7-day free trial)","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Unlimited scavenger hunts for all locations for up to 6 player playing together.","bundle_price":"14.99","bullet_description":"[ {\"text\": \"Unlimited scavenger hunts, bar crawls, audio tours, and ghost tours for up to 6 players playing together.\"}, {\"text\": \"Cancel anytime, no-commitment monthly recurring charge just $14.99 per month.\"}, {\"text\": \"Access premium themes including date nights, family fun, and holiday-themed adventures.\"} ]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra $[[savings]]:<\/strong> With an unlimited membership for only $12.99 \/ month. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\n \"Unlimited scavenger hunts, bar crawls, audio tours, and ghost tours for up to 6 players playing together.\",\n \"Cancel anytime, no-commitment monthly recurring charge just $14.99 per month.\",\n \"Access premium themes including date nights, family fun, and holiday-themed adventures.\",\n \"<b>Note: does not include printable gift cards<\/b>\",\n \"This ticket cannot be split. Primary ticketholder must always be present.\"\n]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"86","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city. Get instant printable gift cards or get a gift card mailed to you. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"date-for-two.jpeg","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[]","last_updated_at":"2026-02-04 15:10:01","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"hunt-tickets.png","photo_image":"hunt-tickets.png","st_patricks_photo_image":"st-pats-hunt-tickets.jpg","cherry_blossom_photo_image":"cherry-blossom-hunt-tickets.jpg","easter_photo_image":"easter-eggs-side.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"314","published":"1","title":"Scavenger Hunt Ticket","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a single scavenger hunt experience in any of our locations.","bundle_price":null,"bullet_description":"[\n\t{\n\t\t\"text\": \"Individualized roles and challenges for everyone (including kids 5+)\"\n\t},\n\t{\n\t\t\"text\": \"Tickets valid in 3,000+ cities\"\n\t},\n\t{\n\t\t\"text\": \"All tickets valid for up to 2 years from date of purchase\"\n\t},\n\n\t{\n\t\t\"text\": \"Consider creating a <a href='javascript: navigateToBundle(getBundleInfo(26))' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href=\\\"javascript:openGenericCreateLeadModal('team-building')\\\" style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='javascript: navigateToBundle(getBundleInfo(2))' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\",\n\t\t\"info\": \"You need 1 ticket per person per hunt for outdoor hunts.\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Requires ticket for each player (5 & older)\", \"Tickets must be used together on any ONE of our outdoor scavenger hunts in 3,000+ cities\"]","initial_rid":"1","initial_quantity":"4","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"34","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city. Get instant printable gift cards or get a gift card mailed to you. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"date-for-two.jpeg","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[4]","last_updated_at":"2026-06-18 10:53:10","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"hunt-tickets.png","photo_image":"hunt-tickets.png","st_patricks_photo_image":"st-pats-hunt-tickets.jpg","cherry_blossom_photo_image":"cherry-blossom-hunt-tickets.jpg","easter_photo_image":"easter-eggs-side.jpg","modal_image":"group.jpg","
2319icon":"assets\/images\/store\/bundles\/modal\/icons\/ticket.svg","display_color":"var(--blue)","subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"315","published":"1","title":"Scavenger Hunt Ticket","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Enjoy a single scavenger hunt experience in any of our locations.","bundle_price":null,"bullet_description":"[\n\t{\n\t\t\"text\": \"Individualized roles and challenges for everyone (including kids 5+)\"\n\t},\n\t{\n\t\t\"text\": \"Tickets valid in 3,000+ cities\"\n\t},\n\t{\n\t\t\"text\": \"All tickets valid for up to 2 years from date of purchase\"\n\t},\n\n\t{\n\t\t\"text\": \"Consider creating a <a href='javascript: navigateToBundle(getBundleInfo(26))' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href=\\\"javascript:openGenericCreateLeadModal('team-building')\\\" style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='javascript: navigateToBundle(getBundleInfo(2))' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\",\n\t\t\"info\": \"You need 1 ticket per person per hunt for outdoor hunts.\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Requires ticket for each player (5 & older)\", \"Tickets must be used together on any ONE of our outdoor scavenger hunts in 3,000+ cities\"]","initial_rid":"1","initial_quantity":"4","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"87","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":"","short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city. Get instant printable gift cards or get a gift card mailed to you. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"date-for-two.jpeg","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2017-11-21 12:40:53","order":"2","url_slug":"scavenger_hunt_14_99_test","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[4]","last_updated_at":"2026-06-23 15:26:11","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"hunt-tickets.png","photo_image":"hunt-tickets.png","st_patricks_photo_image":"st-pats-hunt-tickets.jpg","cherry_blossom_photo_image":"cherry-blossom-hunt-tickets.jpg","easter_photo_image":"easter-eggs-side.jpg","modal_image":"group.jpg","icon":"assets\/images\/store\/bundles\/modal\/icons\/ticket.svg","display_color":"var(--blue)","subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"316","published":"1","title":"Adventure Subscription - Up to 2 Players (Monthly)","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Every hunt, tour & crawl in 3,000+ cities \u2014 whenever you two want.","bundle_price":"12.99","bullet_description":"[{\"text\":\"Unlimited hunts, bar crawls, audio & ghost tours\"},{\"text\":\"Multiple activities per city \u2014 3,000+ cities worldwide\"},{\"text\":\"Cancel anytime \u00b7 gift a year in one go\"},{\"text\":\"Includes a printable gift card option\"}]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":null,"initial_rid":"1","initial_quantity":"1","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"88","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":null,"short_description":null,"long_description":null,"bullet_other_options":null,"image":null,"image_characters":null,"gift_card_image":null,"params":null,"created_at":"2026-07-02 21:02:50","order":"2","url_slug":"claude_sub_monthly_small","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":null,"possible_role_upgrades":null,"last_updated_at":null,"free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"317","published":"1","title":"Adventure Subscription - Up to 6 Players (Monthly)","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"One pass, endless plans \u2014 unlimited adventures for your whole crew.","bundle_price":"19.99","bullet_description":"[{\"text\":\"Unlimited hunts, bar crawls, audio & ghost tours\"},{\"text\":\"Multiple activities per city \u2014 3,000+ cities worldwide\"},{\"text\":\"Bring different people each time \u2014 just be there yourself\"},{\"text\":\"Cancel anytime \u00b7 gift a year in one go\"},{\"text\":\"Includes a printable gift card option\"}]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":null,"initial_rid":"8","initial_quantity":"1","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"89","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":null,"short_description":null,"long_description":null,"bullet_other_options":null,"image":null,"image_characters":null,"gift_card_image":null,"params":null,"created_at":"2026-07-02 21:02:50","order":"2","url_slug":"claude_sub_monthly_large","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":null,"possible_role_upgrades":null,"last_updated_at":null,"free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"318","published":"1","title":"Adventure Subscription - Up to 2 Players (Yearly)","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Every hunt, tour & crawl in 3,000+ cities \u2014 whenever you two want.","bundle_price":"77.94","bullet_description":"[{\"text\":\"Unlimited hunts, bar crawls, audio & ghost tours\"},{\"text\":\"Multiple activities per city \u2014 3,000+ cities worldwide\"},{\"text\":\"Cancel anytime \u00b7 gift a year in one go\"},{\"text\":\"Includes a printable gift card option\"}]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":null,"initial_rid":"1","initial_quantity":"1","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"9
23190","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":null,"short_description":null,"long_description":null,"bullet_other_options":null,"image":null,"image_characters":null,"gift_card_image":null,"params":null,"created_at":"2026-07-02 21:02:50","order":"2","url_slug":"claude_sub_yearly_small","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":null,"possible_role_upgrades":null,"last_updated_at":null,"free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"319","published":"1","title":"Adventure Subscription - Up to 6 Players (Yearly)","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"One pass, endless plans \u2014 unlimited adventures for your whole crew.","bundle_price":"119.94","bullet_description":"[{\"text\":\"Unlimited hunts, bar crawls, audio & ghost tours\"},{\"text\":\"Multiple activities per city \u2014 3,000+ cities worldwide\"},{\"text\":\"Bring different people each time \u2014 just be there yourself\"},{\"text\":\"Cancel anytime \u00b7 gift a year in one go\"},{\"text\":\"Includes a printable gift card option\"}]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":null,"initial_rid":"8","initial_quantity":"1","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"91","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":null,"short_description":null,"long_description":null,"bullet_other_options":null,"image":null,"image_characters":null,"gift_card_image":null,"params":null,"created_at":"2026-07-02 21:02:50","order":"2","url_slug":"claude_sub_yearly_large","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":null,"possible_role_upgrades":null,"last_updated_at":null,"free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"320","published":"1","title":"Single Hunt Pass","bullet_description_ultra_short":"[\"Use on any one hunt\",\"Switch hunts after purchase\"]","upsell_stripe_price_id":null,"short_card_description":"Use on your selected hunt or any one hunt picked after purchase.","bundle_price":null,"bullet_description":"[{\"text\":\"Use on any one hunt in any city\"},{\"text\":\"Switch hunts after purchase\"},{\"text\":\"Valid up to 2 years\"}]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":"Single Hunt Pass","pass_product_options":null,"price_per_unit":"1","is_multi_product_bundle":"0","bullet_description_short":"[\"Use on any one hunt in any city\",\"Switch hunts after purchase\",\"Valid up to 2 years\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"0","season_pass_length":null,"initial_product_id":"92","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":null,"short_description":"One flexible scavenger hunt pass for one player.","long_description":"Pick any scavenger hunt after purchase. Your ticket stays flexible, giftable, and valid for 2 years.","bullet_other_options":null,"image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"date-for-two.jpeg","params":"{\"product\":\"92\",\"quantity\":\"1\",\"roles\":\"1\"}","created_at":null,"order":"2","url_slug":null,"straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":null,"possible_role_upgrades":null,"last_updated_at":null,"free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"hunt-tickets.png","photo_image":"hunt-tickets.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":"group.jpg","
2319icon":"assets\/images\/store\/bundles\/modal\/icons\/ticket.svg","display_color":"var(--blue)","subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"321","published":"1","title":"City Pass","bullet_description_ultra_short":"[\"Use every hunt in one city\",\"Pays for itself by hunt #2\"]","upsell_stripe_price_id":null,"short_card_description":"City Pass","bundle_price":null,"bullet_description":"[{\"text\":\"Use on every hunt in one city\"},{\"text\":\"Switch to another city after purchase\"},{\"text\":\"Pays for itself by hunt #2\"}]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":"City Pass","pass_product_options":null,"price_per_unit":"1","is_multi_product_bundle":"0","bullet_description_short":"[\"Use on every hunt in one city\",\"Switch to another city after purchase\",\"Pays for itself by hunt #2\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"0","season_pass_length":null,"initial_product_id":"93","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":null,"short_description":"Unlimited hunts in one selected city.","long_description":"Unlock every scavenger hunt in one selected city or area and keep the flexibility to switch after purchase.","bullet_other_options":null,"image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"date-for-two.jpeg","params":"{\"product\":\"93\",\"quantity\":\"1\",\"roles\":\"1\"}","created_at":null,"order":"2","url_slug":null,"straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":null,"possible_role_upgrades":null,"last_updated_at":null,"free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"hunt-tickets.png","photo_image":"hunt-tickets.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":"group.jpg","icon":"assets\/images\/store\/bundles\/modal\/icons\/ticket.svg","display_color":"var(--blue)","subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"322","published":"1","title":"Season Pass","bullet_description_ultra_short":"[\"Unlimited hunts in 3,000+ cities\",\"Valid for 12 months\"]","upsell_stripe_price_id":null,"short_card_description":"Season Pass","bundle_price":null,"bullet_description":"[{\"text\":\"Unlimited hunts in 3,000+ cities\"},{\"text\":\"Valid for 12 months\"},{\"text\":\"Pays for itself by hunt #2\"}]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":"Season Pass","pass_product_options":null,"price_per_unit":"1","is_multi_product_bundle":"0","bullet_description_short":"[\"Unlimited hunts in 3,000+ cities\",\"Valid for 12 months\",\"Pays for itself by hunt #2\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"0","season_pass_length":"365","initial_product_id":"94","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":null,"short_description":"Unlimited hunts for 12 months.","long_description":"Enjoy unlimited scavenger hunts, tours, and crawls in 3,000+ cities for 12 months.","bullet_other_options":null,"image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"date-for-two.jpeg","params":"{\"product\":\"94\",\"quantity\":\"1\",\"roles\":\"1\"}","created_at":null,"order":"2","url_slug":null,"straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":null,"possible_role_upgrades":null,"last_updated_at":null,"free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"hunt-tickets.png","photo_image":"hunt-tickets.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":"group.jpg","icon":"assets\/images\/store\/bundles\/modal\/icons\/ticket.svg","display_color":"var(--blue)","subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"345","published":"1","title":"Date Scavenger Hunt","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":"Two tickets with the Date Night Theme included.","bundle_price":"25.98","bullet_description":"[\n\t{ \n\t\t\"text\": \"Bonus photo-and-trivia questions designed to bring closer together\"\n\t},\n\t{ \n\t\t\"text\": \"Perfect for a first date or 50th anniversary\"\n\t},\n\t{ \n\t\t\"text\": \"Create memories through cute bonus photo challenges\",\n\t\t\"class\": \"desktopOnly\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":"Date Scavenger Hunt","pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Date Night Theme included ($13.98 value)\", \"Includes tickets for two peo
2319ple\", \"Valid for one outdoor scavenger hunt in 3,000+ cities\"]","initial_rid":"4","initial_quantity":"2","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"1","initial_addons":null,"bundle_price_override":"25.98","bundle_price_id":null,"popular_label":null,"short_description":"Epic upgraded date challenges designed for couples.","long_description":"Learn about your city and your date with on a couple\u2019s only scavenger hunt. Date night roles are designed to help both new and long-time couples better connect with each other and explore together. This package includes bonus photo and trivia questions, hand-selected by our team to make sure you have the most fun with that special someone. ","bullet_other_options":null,"image":"icon_date_tickets.png","image_characters":"date.png","gift_card_image":"default.png","params":"{\"product\":\"1\",\"quantity\":\"2\",\"roles\":\"4\"}","created_at":"2026-08-18 16:32:08","order":"2","url_slug":"date_scavenger_hunt_2_people_2598","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":null,"possible_role_upgrades":null,"last_updated_at":"2026-08-18 10:35:15","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":"date-night-scavenger-hunt.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"349","published":"1","title":"Birthday Small Party Pass - Up to 6 Players","bullet_description_ultra_short":"[\"Up to 6 players playing together\",\"Birthday-themed photo challenges included\",\"Personalized trivia about the birthday star\"]","upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":"59.99","bullet_description":"[{\"text\":\"Up to 6 players playing together\"},{\"text\":\"Birthday-themed photo challenges included\"},{\"text\":\"Personalized trivia about the birthday star\"},{\"text\":\"One self-guided scavenger hunt\"},{\"text\":\"Choose your hunt and date after purchase\"},{\"text\":\"Tickets valid for up to 2 years\"}]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":"Birthday Small Party Pass - Up to 6 Players","pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Up to 6 players playing together\",\"Birthday-themed photo challenges included\",\"Personalized trivia about the birthday star\",\"One self-guided scavenger hunt\",\"Choose your hunt and date after purchase\",\"Tickets valid for up to 2 years\"]","initial_rid":"3","initial_quantity":"6","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"1","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"51","popular_label":null,"short_description":"One birthday scavenger hunt for up to 6 players.","long_description":"Celebrate with a self-guided birthday scavenger hunt for up to 6 players, including custom trivia and photo challenges.","bullet_other_options":null,"image":"icon_birthday_tickets.png","image_characters":"birthday.png","gift_card_image":"default.png","params":"{\"product\":\"1\",\"quantity\":\"6\",\"roles\":\"3\"}","created_at":null,"order":null,"url_slug":"occasion-birthday-small","straight_to_checkout":"0","special_event":"1","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[]","last_updated_at":"2026-09-17 11:20:39","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"icon_birthday_tickets.png","photo_image":"..\/bundle_characters\/birthday.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":"..\/..\/bundle_characters\/birthday.png","icon":"assets\/images\/store\/bundles\/modal\/icons\/ticket.svg","display_color":"var(--orange)","subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"1"},{"id":"350","published":"1","title":"Birthday Large Party Pass - Up to 25 Players","bullet_description_ultra_short":"[\"Up to 25 players playing together\",\"Birthday-themed photo challenges included\",\"Personalized trivia about the birthday star\"]","upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":"99.99","bullet_description":"[{\"text\":\"Up to 25 players playing together\"},{\"text\":\"Birthday-themed photo challenges included\"},{\"text\":\"Personalized trivia about the birthday star\"},{\"text\":\"One self-guided scavenger hunt\"},{\"text\":\"Choose your hunt and date after purchase\"},{\"text\":\"Tickets valid for up to 2 years\"}]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":"Birthday Large Party Pass - Up to 25 Players","pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Up to 25 players playing together\",\"Birthday-themed photo challenges included\",\"Personalized trivia about the birthday star\",\"One self-guided scavenger hunt\",\"Choose your hunt and date after purchase\",\"Tickets valid for up to 2 years\"]","initial_rid":"3","initial_quantity":"25","
2319season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"1","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"51","popular_label":null,"short_description":"One birthday scavenger hunt for up to 25 players.","long_description":"Celebrate with a self-guided birthday scavenger hunt for up to 25 players, including custom trivia and photo challenges.","bullet_other_options":null,"image":"icon_birthday_tickets.png","image_characters":"birthday.png","gift_card_image":"default.png","params":"{\"product\":\"1\",\"quantity\":\"25\",\"roles\":\"3\"}","created_at":null,"order":null,"url_slug":"occasion-birthday-large","straight_to_checkout":"0","special_event":"1","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[]","last_updated_at":"2026-09-17 11:20:39","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"icon_birthday_tickets.png","photo_image":"..\/bundle_characters\/birthday.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":"..\/..\/bundle_characters\/birthday.png","icon":"assets\/images\/store\/bundles\/modal\/icons\/ticket.svg","display_color":"var(--orange)","subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"1"},{"id":"351","published":"1","title":"Bachelorette Small Party Pass - Up to 6 Players","bullet_description_ultra_short":"[\"Up to 6 players playing together\",\"Bachelorette-themed photo challenges included\",\"Personalized trivia about the bride\"]","upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":"59.99","bullet_description":"[{\"text\":\"Up to 6 players playing together\"},{\"text\":\"Bachelorette-themed photo challenges included\"},{\"text\":\"Personalized trivia about the bride\"},{\"text\":\"One self-guided scavenger hunt\"},{\"text\":\"Choose your hunt and date after purchase\"},{\"text\":\"Tickets valid for up to 2 years\"}]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":"Bachelorette Small Party Pass - Up to 6 Players","pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Up to 6 players playing together\",\"Bachelorette-themed photo challenges included\",\"Personalized trivia about the bride\",\"One self-guided scavenger hunt\",\"Choose your hunt and date after purchase\",\"Tickets valid for up to 2 years\"]","initial_rid":"5","initial_quantity":"6","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"1","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"51","popular_label":null,"short_description":"One bachelorette scavenger hunt for up to 6 players.","long_description":"Celebrate with a self-guided bachelorette scavenger hunt for up to 6 players, including custom trivia and photo challenges.","bullet_other_options":null,"image":"icon_bach_tickets.png","image_characters":"bach.png","gift_card_image":"default.png","params":"{\"product\":\"1\",\"quantity\":\"6\",\"roles\":\"5\"}","created_at":null,"order":null,"url_slug":"occasion-bachelorette-small","straight_to_checkout":"0","special_event":"1","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[]","last_updated_at":"2026-09-17 11:20:40","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"icon_bach_tickets.png","photo_image":"..\/bundle_characters\/bach.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":"..\/..\/bundle_characters\/bach.png","icon":"assets\/images\/store\/bundles\/modal\/icons\/ticket.svg","display_color":"var(--orange)","subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"1"},{"id":"352","published":"1","title":"Bachelorette Large Party Pass - Up to 20 Players","bullet_description_ultra_short":"[\"Up to 20 players playing together\",\"Bachelorette-themed photo challenges included\",\"Personalized trivia about the bride\"]","upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":"99.99","bullet_description":"[{\"text\":\"Up to 20 players playing together\"},{\"text\":\"Bachelorette-themed photo challenges included\"},{\"text\":\"Personalized trivia about the bride\"},{\"text\":\"One self-guided scavenger hunt\"},{\"text\":\"Choose your hunt and date after purchase\"},{\"text\":\"Tickets valid for up to 2 years\"}]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":"Bachelorette Large Party Pass - Up to 20 Players","pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Up to 20 players playing together\",\"Bachelorette-themed photo challenges included\",\"Personalized trivia about the bride\",\"One self-guided scavenger hunt\",\"Choose your hunt and date after purchase\",\"Tickets valid for up to 2 years\"]","initial_rid":"5","initial_quantity":"20","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"1","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"51","popular_label":null,"short_description":"One bachelorette scavenger hunt for up to 20 players.","long_description":"Celebrate with a self-guided bachelorette scavenger hunt for up to 20 players, including custom trivia and photo challenges.","bullet_other_options":null,"image":"icon_bach_tickets.png","image_characters":"bach.png","gift_card_image":"default.png","params":"{\"product\":\"1\",\"quantity\":\"20\",\"roles\":\"5\"}","created_at":null,"order":null,"url_slug":"occasion-bachelorette-large","straight_to_checkout":"0","special_event":"1","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[]","last_updated_at":"2026-09-17 11:20:40","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"icon_bach_tickets.png","photo_image":"..\/bundle_characters\/bach.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":"..\/..\/bundle_characters\/bach.png","icon":"assets\/images\/store\/bundles\/modal\/icons\/ticket.svg","display_color":"var(--orange)","subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"1"},{"id":"353","published":"1","title":"Birthday Scavenger Hunt Tickets","bullet_description_ultra_short":"[\"Birthday-themed photo challenges included\",\"One hunt per player\"]","upsell_stripe_price_id":null,"short_card_description":"One birthday scavenger hunt per player, with birthday-themed challenges included. Pick your hunt and date after purchase. Tickets are valid for up to two years.","bundle_price":null,"bullet_description":"[{\"text\":\"1 ticket per player (ages 5 and up)\"},{\"text\":\"Birthday-themed photo challenges included\"},{\"text\":\"One self-guided scavenger hunt\"},{\"text\":\"Choose your hunt and date after purchase\"},{\"text\":\"Tickets valid for up to 2 years\"}]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"1 ticket per player (ages 5 and up)\",\"Birthday-themed photo challenges included\",\"One self-guided scavenger hunt\",\"Choose your hunt and date after purchase\",\"Tickets valid for up to 2 years\"]","initial_rid":"3","initial_quantity":"4","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"95","initial_addons":"{}","bundle_price_override":null,"bundle_price_id":null,"popular_label":null,"short_description":"One birthday scavenger hunt per player, with birthday-themed challenges included. Pick your hunt and date after purchase. Tickets are valid for up to two years.","long_description":"One birthday scavenger hunt per player, with birthday-themed challenges included. Pick your hunt and date after purchase. Tickets are valid for up to two years.","bullet_other_options":"[]","image":"icon_birthday_tickets.png","image_characters":"birthday.png","gift_card_image":"default.png","params":"{\"product\":\"95\",\"quantity\":\"4\",\"roles\":\"3\"}","created_at":"2026-09-17 11:20:38","order":"12","url_slug":"occasion-birthday-tickets","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[]","last_updated_at":null,"free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"icon_birthday_tickets.png","photo_image":"..\/bundle_characters\/birthday.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":"..\/..\/bundle_characters\/birthday.png","icon":null,"display_color":"var(--blue)","subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"354","published":"1","title":"Bachelorette Scavenger Hunt Tickets","bullet_description_ultra_short":"[\"Bachelorette-themed photo challenges included\",\"One hunt per player\"]","upsell_stripe_price_id":null,"short_card_description":"One bachelorette scavenger hunt per player, with bachelorette-themed challenges included. Pick your hunt and date after purchase. Tickets are valid for up to two years.","bundle_price":null,"bullet_description":"[{\"text\":\"1 ticket per player (ages 5 and up)\"},{\"text\":\"Bachelorette-themed photo challenges included\"},{\"text\":\"One self-guided scavenger hunt\"},{\"text\":\"Choose your hunt and date after purchase\"},{\"text\":\"Tickets valid for up to 2 years\"}]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"1 ticket per player (ages 5 and up)\",\"Bachelorette-themed photo challenges included\",\"One self-guided scavenger hunt\",\"Choose your hunt and date after purchase\",\"Tickets valid for up to 2 years\"]","initial_rid":"5","initial_quantity":"4","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"96","initial_addons":"{}","bundle_price_override":null,"bundle_price_id":null,"popular_label":null,"short_description":"One bachelorette scavenger hunt per player, with bachelorette-themed challenges included. Pick your hunt and date after purchase. Tickets are valid for up to two years.","long_description":"One bachelorette scavenger hunt per player, with bachelorette-themed challenges included. Pick your hunt and date after purchase. Tickets are valid for up to two years.","bullet_other_options":"[]","image":"icon_bach_tickets.png","image_characters":"bach.png","gift_card_image":"default.png","params":"{\"product\":\"96\",\"quantity\":\"4\",\"roles\":\"5\"}","created_at":"2026-09-17 11:20:39","order":"12","url_slug":"occasion-bachelorette-tickets","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[]","last_updated_at":null,"free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"icon_bach_tickets.png","photo_image":"..\/bundle_characters\/bach.png","st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":"..\/..\/bundle_characters\/bach.png","icon":null,"display_color":"var(--blue)","subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"355","published":"1","title":"Explorer Annual Pass for Two","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":"49.99","bullet_description":"[{\"text\":\"Annual pass for two players playing together\",\"info\":\"The pass holder must be present for each activity.\"},{\"text\":\"Unlimited hunts across our locations\",\"info\":\"Explore here and in our other cities. This pass is not limited to one city.\"},{\"text\":\"One year of access after activation\"},{\"text\":\"Classic scavenger hunt challenges\",\"info\":\"Choose the Date Night Annual Pass for upgraded couples challenges.\"}]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":"Explorer Annual Pass for Two","pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Annual access for two players playing together\",\"Unlimited hunts across our locations\",\"Classic scavenger hunt challenges\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"2","season_pass_length":"12","
2319initial_product_id":"3","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":null,"short_description":"Explore together for one year with unlimited hunts across our locations for two players.","long_description":"Start close to home and explore our other cities together. This annual pass covers two players, with classic scavenger hunt challenges, for one year after activation. Choose the Date Night Annual Pass for upgraded couples challenges.","bullet_other_options":null,"image":"icon_date_tickets.png","image_characters":"date.png","gift_card_image":"couples_pass.jpg","params":"{\"product\":\"3\",\"quantity\":\"1\",\"roles\":\"1\"}","created_at":"2026-09-17 19:23:14","order":null,"url_slug":"sch_occasion_explorer_annual_two","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":null,"last_updated_at":null,"free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":"couple.jpg","icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"}] || [] //this is how I can retrieve the variable from serverside 2320var lookupOnlyBundlesArray = [{"id":"209","published":"0","title":"Family\/Friends Annual Pass - Up to 10 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":"79.99","bullet_description":"[\n\t{\n\t\t\"text\": \"Annual pass for up to 6 players\",\n\t\t\"info\": \"All tickets valid for up to 2 years from date of purchase. Tickets are not activated until the voucher code is redeemed in the Let's Roam app. Whoever redeems the voucher must be present at each activity; the other 5 players may differ.\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{ \n\t\t\"text\": \"Provides unlimited access to activities in over 3,050+ cities worldwide and 20+ in-home activities\"\n\t},\n\t{\n\t\t\"text\": \"All passes valid for up to 2 years from date of purchase.\"\n\t},\n\t{\n\t\t\"text\": \"Whoever redeems the pass must be present at each activity; the other 5 players may differ.\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Annual pass for scavenger hunts for up to 6 people playing together, one-time payment\", \"Perfect present for families, friends, or couples\", \"EXTRA 55% savings compared to the monthly option\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"10","season_pass_length":"12","initial_product_id":"3","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":null,"short_description":"Scavenger hunts for the whole family for one year from redemption for up to 6 people.","long_description":"Learn about your city and your loved ones on a family\/friends scavenger hunt. Hilarious photo challenges, engaging trivia, and tricky riddles are sure to help you and your group better connect with each other and explore together. ","bullet_other_options":null,"image":"6-family.png","image_characters":"6-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2017-11-21 12:40:53","order":null,"url_slug":"pcv1_annual_10","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[80]","possible_role_upgrades":null,"last_updated_at":"2026-08-19 10:00:51","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"346","published":"0","title":"Single Use Group Ticket - Up to 10 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":"upsell_232","short_card_description":"Enjoy a single scavenger hunt experience in any of our locations with a group of up to 8 players playing together.","bundle_price":"39.99","bullet_description":"[\n\t{\n\t\t\"text\": \"Valid for one scavenger hunt in any of our 3,000+ locations.\"\n\t},\n\t{\n\t\t\"text\": \"Perfect for couples, families, or friends to explore and have fun together.\"\n\t}
2320,\n\t{\n\t\t\"text\": \"Solve challenges, discover landmarks, and create unforgettable memories.\"\n\t},\n\t{\n\t\t\"text\": \"Includes printable gift card options.\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":"<strong style=\"font-family: \\'Traverse-Bold\\'\">Save An Extra $[[savings]]:<\/strong> With an unlimited membership for only $12.99 \/ month. Zero commitments - cancel anytime.","name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Valid for up to 6 players playing together on one team\", \"Tickets must be used together on any ONE of our outdoor scavenger hunts\"]","initial_rid":"1","initial_quantity":"10","season_pass_tickets":null,"season_pass_length":null,"initial_product_id":"77","initial_addons":null,"bundle_price_override":null,"bundle_price_id":null,"popular_label":null,"short_description":"Explore the world on an epic adventure! Hunts in 3,000+ cities worldwide, accessible at any time. Tickets valid for 2 years. Gift cards available.","long_description":"See all the best sights and hidden treasures in your city. Get instant printable gift cards or get a gift card mailed to you. Use your tickets and gifts on the same day or up to two years later. ","bullet_other_options":"[{\n\t\t\"text\": \"Bundle & save with the <a href='\/type\/couple_season' style='color: #37556f; text-decoration: underline;' >Couple<\/a> or the <a href='\/type\/family_season' style='color: #37556f; text-decoration: underline;'>Family Annual Pass<\/a>\"\n\t}, \n{\n\t\t\"text\": \"Or create a <a href='\/type\/birthday_party' style='color: #37556f; text-decoration: underline;' >birthday<\/a>, <a href='https:\/\/www.letsroam.com\/team_building_activities' style='color: #37556f; text-decoration: underline;'>team-building<\/a>, or <a href='\/type\/bachelorette' style='color: #37556f; text-decoration: underline;'>bachelorette<\/a> event\"\n\t}]","image":"icon_explorer.png","image_characters":"base.png","gift_card_image":"date-for-two.jpeg","params":"{\"product\":\"1\",\"quantity\":\"4\",\"roles\":\"1\" }","created_at":"2026-08-19 10:06:56","order":null,"url_slug":"pcv1_single_hunt_10","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[]","possible_role_upgrades":"[]","last_updated_at":"2026-08-19 10:06:56","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":"hunt-tickets.png","photo_image":"hunt-tickets.png","st_patricks_photo_image":"st-pats-hunt-tickets.jpg","cherry_blossom_photo_image":"cherry-blossom-hunt-tickets.jpg","easter_photo_image":"easter-eggs-side.jpg","modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"1"},{"id":"347","published":"0","title":"City Pass - Up To 2 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":"49.99","bullet_description":"[\n\t{\n\t\t\"text\": \"Annual pass for up to 6 players\",\n\t\t\"info\": \"All tickets valid for up to 2 years from date of purchase. Tickets are not activated until the voucher code is redeemed in the Let's Roam app. Whoever redeems the voucher must be present at each activity; the other 5 players may differ.\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{ \n\t\t\"text\": \"Provides unlimited access to activities in over 3,050+ cities worldwide and 20+ in-home activities\"\n\t},\n\t{\n\t\t\"text\": \"All passes valid for up to 2 years from date of purchase.\"\n\t},\n\t{\n\t\t\"text\": \"Whoever redeems the pass must be present at each activity; the other 5 players may differ.\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Annual pass for scavenger hunts for up to 6 people playing together, one-time payment\", \"Perfect present for families, friends, or couples\", \"EXTRA 55% savings compared to the monthly option\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"2","season_pass_length":"12","
2320initial_product_id":"3","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":null,"short_description":"Scavenger hunts for the whole family for one year from redemption for up to 6 people.","long_description":"Learn about your city and your loved ones on a family\/friends scavenger hunt. Hilarious photo challenges, engaging trivia, and tricky riddles are sure to help you and your group better connect with each other and explore together. ","bullet_other_options":null,"image":"6-family.png","image_characters":"6-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2026-08-19 10:16:47","order":null,"url_slug":"pcv1_city_pass_2","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[80]","possible_role_upgrades":null,"last_updated_at":"2026-08-19 10:16:47","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"},{"id":"348","published":"0","title":"City Pass - Up To 10 Players","bullet_description_ultra_short":null,"upsell_stripe_price_id":null,"short_card_description":null,"bundle_price":"59.99","bullet_description":"[\n\t{\n\t\t\"text\": \"Annual pass for up to 6 players\",\n\t\t\"info\": \"All tickets valid for up to 2 years from date of purchase. Tickets are not activated until the voucher code is redeemed in the Let's Roam app. Whoever redeems the voucher must be present at each activity; the other 5 players may differ.\",\n\t\t\"class\": \"extra10\"\n\t},\n\t{ \n\t\t\"text\": \"Provides unlimited access to activities in over 3,050+ cities worldwide and 20+ in-home activities\"\n\t},\n\t{\n\t\t\"text\": \"All passes valid for up to 2 years from date of purchase.\"\n\t},\n\t{\n\t\t\"text\": \"Whoever redeems the pass must be present at each activity; the other 5 players may differ.\"\n\t}\n]","bundle_callout":null,"sold_out":"0","upgrade_bundle_id":null,"upgrade_bundle_message":null,"name":null,"pass_product_options":null,"price_per_unit":"0","is_multi_product_bundle":"0","bullet_description_short":"[\"Annual pass for scavenger hunts for up to 6 people playing together, one-time payment\", \"Perfect present for families, friends, or couples\", \"EXTRA 55% savings compared to the monthly option\"]","initial_rid":"1","initial_quantity":"1","season_pass_tickets":"10","season_pass_length":"12","initial_product_id":"3","initial_addons":null,"bundle_price_override":null,"bundle_price_id":"27","popular_label":null,"short_description":"Scavenger hunts for the whole family for one year from redemption for up to 6 people.","long_description":"Learn about your city and your loved ones on a family\/friends scavenger hunt. Hilarious photo challenges, engaging trivia, and tricky riddles are sure to help you and your group better connect with each other and explore together. ","bullet_other_options":null,"image":"6-family.png","image_characters":"6-family.png","gift_card_image":"family_pass.jpg","params":"{\"product\":\"1\",\"quantity\":\"5\",\"roles\":\"3\"}","created_at":"2026-08-19 10:16:47","order":null,"url_slug":"pcv1_city_pass_10","straight_to_checkout":"0","special_event":"0","virtual_trivia_special_event":"0","force_redirect":null,"possible_addons":"[80]","possible_role_upgrades":null,"last_updated_at":"2026-08-19 10:17:36","free_gift_card":"0","force_open_lead_form":null,"us_only":"0","alternate_image":null,"photo_image":null,"st_patricks_photo_image":null,"cherry_blossom_photo_image":null,"easter_photo_image":null,"modal_image":null,"icon":null,"display_color":null,"subscription_length":null,"is_corp":"0","is_group_ticket_bundle":"0"}] || [] 2321var allBundles = {} 2322allBundlesArray.map(function(bundle) { 2323 bundle.is_multi_product_bundle = bundle.is_multi_product_bundle != '0' 2324 allBundles[bundle.id] = bundle 2325}) 2326lookupOnlyBundlesArray.map(function(bundle) { 2327 // The live catalogue wins when it already has the record; this only fills gaps. 2328 if (allBundles[bundle.id]) { 2329 return 2330 } 2331 bundle.is_multi_product_bundle = bundle.is_multi_product_bundle != '0' 2332 allBundles[bundle.id] = bundle 2333}) 2334function getBundleInfo(bundleId, options) { 2335 options = options || {}; 2336 var bundle = allBundles[bundleId] 2337 // console.log('getBundleInfo', {bundleId, bundle}) 2338 var suppressMissingLog = options.suppressMissingLog || window.location.pathname.indexOf('/store/receipt/') !== -1; 2339 if(!bundle && !suppressMissingLog) { 2340 logDevError(`bundle not found: bundleId-${bundleId}`); 2341 } 2342 return bundle 2343} 2344 2345// Bundle Functions 2346// creating an access point for the bundle info 2347var currenciesArray = [{"id":"1","code":"usd","currency_to_usd":"1","title":"US Dollars (USD)","symbol":"$","non_zero_point_currency":"0","last_updated":"2024-08-05 20:26:05","original_currency_to_usd":"1","countries":"Argentina,Aruba,Barbados,Bermuda,Brazil,Cayman Islands,China,Colombia,Costa Rica,Cura\u00e7ao,Dominican Republic,Everywhere,Guatemala,Hong Kong,Indonesia,Israel,Malaysia,Mexico,Philippines,Russia,Singapore,Sint Maarten,Thailand,The Bahamas,Turkey,U.S. Virgin Islands,Ukraine,United Arab Emirates,United States","country_codes":"US"},{"id":"3","code":"aud","currency_to_usd":"0.703344","title":"Australian Dollar (AUD)","symbol":"AU$","non_zero_point_currency":"0","last_updated":"2026-09-23 19:47:53","original_currency_to_usd":"0.68","countries":"Australia","country_codes":"AU"},{"id":"4","code":"gbp","currency_to_usd":"1.3244","title":"British Poun
2347d (GBP)","symbol":"\u00a3","non_zero_point_currency":"0","last_updated":"2026-09-24 01:48:50","original_currency_to_usd":"1.23","countries":"England,Isle of Man,Jersey,Scotland,United Kingdom","country_codes":"IM,JE,GB"},{"id":"2","code":"cad","currency_to_usd":"0.708948","title":"Canadian Dollar (CAD)","symbol":"CA$","non_zero_point_currency":"0","last_updated":"2026-09-24 00:18:35","original_currency_to_usd":"0.73","countries":"Canada","country_codes":"CA"},{"id":"5","code":"eur","currency_to_usd":"1.13778","title":"Euro (EUR)","symbol":"\u20ac","non_zero_point_currency":"0","last_updated":"2026-09-24 01:18:46","original_currency_to_usd":"1.06","countries":"Andorra,Austria,Belgium,Croatia,Cyprus,Estonia,Finland,France,Germany,Greece,Ireland,Italy,Kosovo,Latvia,Lithuania,Luxembourg,Malta,Monaco,Montenegro,Netherlands,Portugal,San Marino,Slovakia,Slovenia,Spain,Vatican City","country_codes":"AL,AD,AT,BY,BE,BA,BG,HR,CY,CZ,DK,EE,FI,FR,DE,GR,HU,IS,IE,IT,LV,LI,LT,LU,MT,MC,MD,ME,NL,MK,NO,PL,PT,RO,RU,SM,RS,SK,SI,ES,SE,CH,TR,UA,GB,VA"},{"id":"6","code":"nzd","currency_to_usd":"0.567569","title":"New Zealand Dollar (NZD)","symbol":"NZ$","non_zero_point_currency":"0","last_updated":"2026-09-23 15:17:00","original_currency_to_usd":"0.64","countries":"New Zealand","country_codes":"NZ"},{"id":"64","code":"all","currency_to_usd":"0.0105","title":"Albanian Lek (ALL)","symbol":"L","non_zero_point_currency":"0","last_updated":null,"original_currency_to_usd":"0.0105","countries":"Albania","country_codes":null},{"id":"31","code":"ars","currency_to_usd":"0.005","title":"Argentine Peso (ARS)","symbol":"AR$","non_zero_point_currency":"0","last_updated":"2025-09-19 09:45:31","original_currency_to_usd":"0.005","countries":"Argentina","country_codes":"AR"},{"id":"67","code":"amd","currency_to_usd":"0.0025","title":"Armenian Dram (AMD)","symbol":"\u058f","non_zero_point_currency":"0","last_updated":null,"original_currency_to_usd":"0.0025","countries":"Armenia","country_codes":null},{"id":"68","code":"azn","currency_to_usd":"0.588","title":"Azerbaijani Manat (AZN)","symbol":"\u20bc","non_zero_point_currency":"0","last_updated":null,"original_currency_to_usd":"0.588","countries":"Azerbaijan","country_codes":null},{"id":"32","code":"bzd","currency_to_usd":"0.50","title":"Belize Dollar (BZD)","symbol":"BZ$","non_zero_point_currency":"0","last_updated":"2025-09-19 09:45:31","original_currency_to_usd":"0.50","countries":"Belize","country_codes":"BZ"}
2347,{"id":"33","code":"bob","currency_to_usd":"0.14","title":"Bolivian Boliviano (BOB)","symbol":"Bs","non_zero_point_currency":"0","last_updated":"2025-09-19 09:45:31","original_currency_to_usd":"0.14","countries":"Bolivia","country_codes":"BO"},{"id":"62","code":"bam","currency_to_usd":"0.600","title":"Bosnia and Herzegovina Convertible Mark (BAM)","symbol":"KM","non_zero_point_currency":"0","last_updated":null,"original_currency_to_usd":"0.600","countries":"Bosnia and Herzegovina","country_codes":null},{"id":"34","code":"brl","currency_to_usd":"0.20","title":"Brazilian Real (BRL)","symbol":"R$","non_zero_point_currency":"0","last_updated":"2025-09-19 09:45:31","original_currency_to_usd":"0.20","countries":"Brazil","country_codes":"BR"},{"id":"60","code":"bgn","currency_to_usd":"0.600","title":"Bulgarian Lev (BGN)","symbol":"\u043b\u0432","non_zero_point_currency":"0","last_updated":null,"original_currency_to_usd":"0.600","countries":"Bulgaria","country_codes":null},{"id":"35","code":"clp","currency_to_usd":"0.0012","title":"Chilean Peso (CLP)","symbol":"CL$","non_zero_point_currency":"0","last_updated":"2025-09-19 09:45:31","original_currency_to_usd":"0.0012","countries":"Chile","country_codes":"CL"},{"id":"49","code":"cny","currency_to_usd":"0.024","title":"Chinese Yuan (CNY)","symbol":"\u5143","non_zero_point_currency":"0","last_updated":"2025-09-19 09:45:31","original_currency_to_usd":".14","countries":"China","country_codes":"CN"},{"id":"36","code":"cop","currency_to_usd":"0.00026","title":"Colombian Peso (COP)","symbol":"CO$","non_zero_point_currency":"0","last_updated":"2025-09-19 09:45:31","original_currency_to_usd":"0.00026","countries":"Colombia","country_codes":"CO"},{"id":"37","code":"crc","currency_to_usd":"0.0017","title":"Costa Rican Colon (CRC)","symbol":"CRC","non_zero_point_currency":"0","last_updated":"2025-09-19 09:45:31","original_currency_to_usd":"0.0017","countries":"Costa Rica","country_codes":"CR"},{"id":"57","code":"czk","currency_to_usd":"0.043","title":"Czech Koruna (CZK)","symbol":"K\u010d","non_zero_point_currency":"0","last_updated":null,"original_currency_to_usd":"0.043","countries":"Czech Republic","country_codes":null},{"id":"55","code":"dkk","currency_to_usd":"0.157","title":"Danish Krone (DKK)","symbol":"kr","non_zero_point_currency":"0","last_updated":null,"original_currency_to_usd":"0.157","countries":"Denmark","country_codes":null},{"id":"38","code":"dop","currency_to_usd":"0.017","title":"Dominican Peso (DOP)","symbol":"DO$","non_zero_point_currency":"0","last_updated":"2025-09-19 09:45:31","original_currency_to_usd":"0.017","countries":"Dominican Republic","country_codes":"DO"},{"id":"66","code":"gel","currency_to_usd":"0.370","title":"Georgian Lari (GEL)","symbol":"\u20be","non_zero_point_currency":"0","last_updated":null,"original_currency_to_usd":"0.370","countries":"Georgia","country_codes":null},{"id":"39","code":"gtq","currency_to_usd":"0.13","title":"Guatemalan Quetzal (GTQ)","symbol":"Q","non_zero_point_currency":"0","last_updated":"2025-09-19 09:45:31","original_currency_to_usd":"0.13","countries":"Guatemala","country_codes":"GT"},{"id":"40","code":"hnl","currency_to_usd":"0.039","title":"Honduran Lempira (HNL)","symbol":"L","non_zero_point_currency":"0","last_updated":"2025-09-19 09:45:31","original_currency_to_usd":"0.039","countries":"Honduras","country_codes":"HN"},{"id":"51","code":"huf","currency_to_usd":"0.0030","title":"Hungarian Forint (HUF)","symbol":"Ft","non_zero_point_currency":"0","last_updated":null,"original_currency_to_usd":"0.0030","countries":"Hungary","country_codes":"TR"},{"id":"56","code":"isk","currency_to_usd":"0.022","title":"Icelandic Krona (ISK)","symbol":"kr","non_zero_point_currency":"0","last_updated":null,"original_currency_to_usd":"0.022","countries":"Iceland","country_codes":null},{"id":"10","code":"inr","currency_to_usd":"0.0123","title":"Indian Rupee (INR)","symbol":"\u20b9","non_zero_point_currency":"0","last_updated":null,"original_currency_to_usd":"0.0123","countries":"India","country_codes":"IN"},{"id":"41","code":"jmd","currency_to_usd":"0.0067","title":"Jamaican Dollar (JMD)","symbol":"JM$","non_zero_point_currency":"0","last_updated":"2025-09-19 09:45:31","original_currency_to_usd":"0.0067","countries":"Jamaica","country_codes":"JM"},{"id":"8","code":"jpy","currency_to_usd":"0.0073","title":"Japanese Yen (JPY)","symbol":"\u00a5","non_zero_point_currency":"1","last_updated":"2026-08-12 18:33:27","original_currency_to_usd":"0.0073","countries":"Japan","country_codes":"JP"},{"id":"7","code":"krw","currency_to_usd":"0.00077","title":"Korean Won (KRW)","symbol":"\u20a9","non_zero_point_currency":"1","last_updated":null,"original_currency_to_usd":"0.00077","countries":"South Korea","country_codes":"KR"},{"id":"63","code":"mkd","currency_to_usd":"0.018","title":"Macedonian Denar (MKD)","symbol":"\u0434\u0435\u043d","non_zero_point_currency":"0","last_updated":null,"original_currency_to_usd":"0.018","countries":"North Macedonia","country_codes":null},{"id":"42","code":"mxn","currency_to_usd":"0.055","title":"Mexican Peso (MXN)","symbol":"MX$","non_zero_point_currency":"0","last_updated":"2025-09-19 09:45:31","original_currency_to_usd":"0.055","countries":"Mexico","country_codes":"MX"},{"id":"65","code":"mdl","currency_to_usd":"0.056","title":"Moldovan Leu (MDL)","symbol":"L","non_zero_point_currency":"0","last_updated":null,"original_currency_to_usd":"0.056","countries":"Moldova","country_codes":null},{"id":"43","code":"nio","currency_to_usd":"0.027","title":"Nicaraguan Cordoba (NIO)","symbol":"C$","non_zero_point_currency":"0","last_updated":"2025-09-19 09:45:31","original_currency_to_usd":"0.027","countries":"Nicaragua","country_codes":"NI"},{"id":"53","code":"nok","currency_to_usd":"0.094","title":"Norwegian Krone (NOK)","symbol":"kr","non_zero_point_currency":"0","last_updated":null,"original_currency_to_usd":"0.094","countries":"Norway","country_codes":null},{"id":"44","code":"pab","currency_to_usd":"1.00","title":"Panamanian Balboa (PAB)","symbol":"PAB","non_zero_point_currency":"0","last_updated":"2025-09-19 09:45:31","original_currency_to_usd":"1.00","countries":"Panama","country_codes":"PA"},{"id":"45","code":"pyg","currency_to_usd":"0.00014","title":"Paraguayan Guarani (PYG)","symbol":"PYG","non_zero_point_currency":"0","last_updated":"2025-09-19 09:45:31","original_currency_to_usd":"0.00014","countries":"Paraguay","country_codes":"PY"},{"id":"46","code":"pen","currency_to_usd":"0.26","title":"Peruvian Sol (PEN)","symbol":"S\/.","non_zero_point_currency":"0","last_updated":"2025-09-19 09:45:31","original_currency_to_usd":"0.26","countries":"Peru","country_codes":"PE"},{"id":"47","code":"php","currency_to_usd":"0.018","title":"Philippine Peso (PHP)","symbol":"\u20b1","non_zero_point_currency":"0","last_updated":"2025-09-19 09:45:31","original_currency_to_usd":"0.018","countries":"Philippines","country_codes":"PH"},{"id":"58","code":"pln","currency_to_usd":"0.260","title":"Polish Zloty (PLN)","symbol":"z\u0142","non_zero_point_currency":"0","last_updated":null,"original_currency_to_usd":"0.260","countries":"Poland","country_codes":null},{"id":"59","code":"ron","currency_to_usd":"0.233","title":"Romanian Leu (RON)","symbol":"lei","non_zero_point_currency":"0","last_updated":null,"original_currency_to_usd":"0.233","countries":"Romania","country_codes":null},{"id":"61","code":"rsd","currency_to_usd":"0.0093","title":"Serbian Dinar (RSD)","symbol":"\u0434\u0438\u043d","non_zero_point_currency":"0","last_updated":null,"original_currency_to_usd":"0.0093","countries":"Serbia","country_codes":null},{"id":"9","code":"zar","currency_to_usd":"0.058","title":"South African Rand (ZAR)","symbol":"R","non_zero_point_currency":"0","last_updated":null,"original_currency_to_usd":"0.058","countries":"South Africa","country_codes":"ZA"},{"id":"54","code":"sek","currency_to_usd":"0.096","title":"Swedish Krona (SEK)","symbol":"kr","non_zero_point_currency":"0","last_updated":null,"original_currency_to_usd":"0.096","countries":"Sweden","country_codes":null},{"id":"52","code":"chf","currency_to_usd":"1.21772","title":"Swiss Franc (CHF)","symbol":"Fr","non_zero_point_currency":"0","last_updated":"2026-09-22 12:41:58","original_currency_to_usd":"1.296","countries":"Switzerland,Liechtenstein","country_codes":null},{"id":"50","code":"try","currency_to_usd":"0.023","title":"Turkish Lira (TRY)","symbol":"\u20ba","non_zero_point_currency":"0","last_updated":null,"original_currency_to_usd":"0.023","countries":"Turkey","country_codes":"TR"},{"id":"48","code":"uyu","currency_to_usd":"0.024","title":"Uruguayan Peso (UYU)","symbol":"UY$","non_zero_point_currency":"0","last_updated":"2025-09-19 09:45:31","original_currency_to_usd":"0.024","countries":"Uruguay","country_codes":"UY"}] || [] //this is how I can retrieve the variable from serverside 2348var checkoutCurrencyQuoteToken = "v1:1790249100:225fae8c08e2ea552786c25c4d3dd27a57fcfb001b5ef1f7f1d70cf008640994" || '' 2349var currencies = {} 2350currenciesArray.map(function(currency) { 2351 currencies[currency.code] = currency 2352}) 2353function getCurrencyInfo(code) { 2354 var currency = currencies[code] || currencies['usd']; 2355 // console.log('getBundleInfo', {bundleId, bundle}) 2356 if(!currency) { 2357 logDevError(`currency not found: currency-${code}`); 2358 } 2359 return currency 2360} 2361 2362// function to get a bundle from a url 2363function getBundleFromSlug() { 2364typeof trace == 'function' && trace(); 2365 var bundle = false; //will be set if we get data 2366 var path = location.pathname.toLowerCase() //getting the user name 2367 2368 //scan data from current bundles to see if it matches our url 2369 allBundlesArray.map(function (testBundle) { 2370 if(path.includes('type/'+testBundle.url_slug)) { 2371 bundle = testBundle 2372 } 2373 }); 2374 2375 //set cookies based on special instances; needs to be refactored to be faster 2376 if (path.includes("ghost")) { 2377 setCookie("showGhostHunt", "true") 2378 } else if (path.includes("bar")) { 2379 setCookie("showBarHunt", "true") 2380 } else if (path.includes("dining")) { 2381 setCookie("showDining", "true") 2382 } 2383 // console.log(bundle ? `bundle found` : `no bundle found`, bundle) 2384 return bundle; 2385} 2386 2387 2388// Product Functions 2389// creating an access point for the product info (multi day adventure passes, and more) 2390var allProductsArray = [{"id":"1","published":"1","cid":"1,2","product_price":"12.99","name":"Single Hunt Pass","description":"Your team can go on one of our 400+ hunts around the world. Tickets are valid for 2 years!","sku":"SCH001","price_id":"1","plan_id":null,"photo_url":null,"img_thumb":"default.jpg","params":"[]","related":"[]","role_upgrades":"[]","addons":"[]","created_at":"2017-10-17 13:16:52","updated_at":"2024-11-06 10:27:28","passport":"0","subscription_length":null,"trial_period_days":null,"brand_ambassador":"0","use_limit":"1","physical_product":"0","unit":"Ticket","warehouse":null,"shipping_options":null,"prize_description":null,"product_price_low":null,"product_price_high":null,"has_initial_charge":"0"},{"id":"3","published":"1","cid":"1,2","product_price":"24.99","name":"Season Pass","description":"Unlimited activities for one device one for 365 days.","sku":"SCH003","price_id":"3","plan_id":null,"photo_url":"assets\/images\/addons\/Season.jpg","
2390img_thumb":"default.jpg","params":"[]","related":"[]","role_upgrades":"[]","addons":"[]","created_at":"2017-10-17 13:20:43","updated_at":"2024-11-06 10:27:38","passport":"0","subscription_length":null,"trial_period_days":null,"brand_ambassador":"0","use_limit":"Unlimited","physical_product":"0","unit":null,"warehouse":null,"shipping_options":null,"prize_description":null,"product_price_low":null,"product_price_high":null,"has_initial_charge":"0"},{"id":"26","published":"1","cid":"1,2","product_price":"19.99","name":"VGN 16 Person Trial","description":"Each month you can create unlimited virtual games. In each of these games you can have up to 16 people.","sku":"LR001","price_id":"47","plan_id":"lr_vgn_1999","photo_url":"default.jpg","img_thumb":"default.jpg","params":"[]","related":"[]","role_upgrades":"[]","addons":"[]","created_at":null,"updated_at":"2024-11-06 10:27:59","passport":"1","subscription_length":"1","trial_period_days":"7","brand_ambassador":"0","use_limit":"Unlimited","physical_product":"0","unit":null,"warehouse":null,"shipping_options":null,"prize_description":null,"product_price_low":null,"product_price_high":null,"has_initial_charge":"0"},{"id":"27","published":"1","cid":"1,2","product_price":"39.99","name":"Adventures From Scratch: Date Edition","description":"Each month you can create unlimited virtual games. In each of these games you can have up to 16 people.","sku":"lr_scratch_date2","price_id":"68","plan_id":null,"photo_url":"assets\/images\/store\/bundles\/afs_date.jpg","img_thumb":"default.jpg","params":"[]","related":"[]","role_upgrades":"[]","addons":"[]","created_at":null,"updated_at":"2024-11-25 15:50:00","passport":"1","subscription_length":null,"trial_period_days":null,"brand_ambassador":"0","use_limit":"1","physical_product":"1","unit":"Activity Book","warehouse":"shipmonk","shipping_options":"[{\n\t\t\"published\": \"1\",\n\t\t\"title\": \"Standard Shipping (2 business days)\",\n\t\t\"shipping_description\": \"Standard Shipping\",\n\t\t\"tooltip\": \"Will arrive in 2 days typically. Shipped from California.\",\n\t\t\"shipping_map\": \"standard\",\n\t\t\"price\": \"0\",\n\t\t\"discount_after_physical_product_count\": \"2\",\n\t\t\"product_count_discount\": \"1\",\n\t\t\"selected\": \"1\"\n\t},\n\t{\n\t\t\"published\": \"1\",\n\t\t\"hidden_on_load\": \"1\",\n\t\t\"title\": \"<span>Expedited Shipping <span style='color:green'>Fastest<\/span><\/span> \",\n\t\t\"shipping_description\": \"1 Day Shipping\",\n\t\t\"tooltip\": \"Will arrive in 1 day.\",\n\t\t\"shipping_map\": \"2day\",\n\t\t\"price\": \"19.99\"\n\t}\n]","prize_description":"New members get a free copy of adventures from scratch","product_price_low":null,"product_price_high":null,"has_initial_charge":"0"},{"id":"28","published":"1","cid":"1,2","product_price":"39.99","name":"Adventures From Scratch: Family Edition","description":"Each month you can create unlimited virtual games. In each of these games you can have up to 16 people.","sku":"lr_scratch_family1","price_id":"68","plan_id":null,"photo_url":"assets\/images\/store\/bundles\/afs_family.jpg","img_thumb":"default.jpg","params":"[]","related":"[]","role_upgrades":"[]","addons":"[]","created_at":null,"updated_at":"2024-11-25 15:50:03","passport":"1","subscription_length":null,"trial_period_days":null,"brand_ambassador":"0","use_limit":"1","physical_product":"1","unit":"Activity Book","warehouse":"shipmonk","shipping_options":"[{\n\t\t\"published\": \"1\",\n\t\t\"title\": \"Standard Shipping (2 business days)\",\n\t\t\"shipping_description\": \"Standard Shipping\",\n\t\t\"tooltip\": \"Will arrive in 2 days typically. Shipped from California.\",\n\t\t\"shipping_map\": \"standard\",\n\t\t\"price\": \"0\",\n\t\t\"discount_after_physical_product_count\": \"2\",\n\t\t\"product_count_discount\": \"1\",\n\t\t\"selected\": \"1\"\n\t},\n\t{\n\t\t\"published\": \"1\",\n\t\t\"hidden_on_load\": \"1\",\n\t\t\"title\": \"<span>Expedited Shipping <span style='color:green'>Fastest<\/span><\/span> \",\n\t\t\"shipping_description\": \"1 Day Shipping\",\n\t\t\"tooltip\": \"Will arrive in 1 day.\",\n\t\t\"shipping_map\": \"2day\",\n\t\t\"price\": \"19.99\"\n\t}\n]","prize_description":"New members get a free copy of adventures from scratch","product_price_low":null,"product_price_high":null,"has_initial_charge":"0"},{"id":"29","published":"1","cid":"1,2","product_price":"19.99","name":"Unlimited In-Home \/ Outdoor Scavenger Hunts","description":"Each month you can create unlimited virtual games. In each of these games you can have up to 16 people.","sku":"LR001","price_id":"47","plan_id":"lr_season_1999","photo_url":"default.jpg","img_thumb":"default.jpg","params":"[]","related":"[]","role_upgrades":"[]","addons":"[]","created_at":null,"updated_at":"2024-11-06 10:28:17","passport":"1","subscription_length":"1","trial_period_days":null,"brand_ambassador":"0","use_limit":"Unlimited","physical_product":"0","unit":null,"warehouse":null,"shipping_options":null,"prize_description":null,"product_price_low":null,"product_price_high":null,"has_initial_charge":"0"},{"id":"33","published":"1","cid":"1,2","product_price":"16.99","name":"Single Hunt Pass","description":"Your team can go on one of our 400+ hunts around the world. Tickets are valid for 2 years!","sku":"SCH001","price_id":"1","plan_id":null,"photo_url":null,"img_thumb":"default.jpg","params":"[]","related":"[]","role_upgrades":"[]","addons":"[]","created_at":"2017-10-17 13:16:52","updated_at":"2024-11-21 16:31:42","passport":"0","subscription_length":null,"trial_period_days":null,"brand_ambassador":"0","use_limit":"1","physical_product":"0","unit":"Ticket","warehouse":null,"shipping_options":null,"prize_description":null,"product_price_low":null,"product_price_high":null,"has_initial_charge":"0"},{"id":"34","published":"1","cid":"1,2","product_price":"13.99","name":"Single Hunt Pass +$1 Test","description":"Your team can go on one of our 400+ hunts around the world. Tickets are valid for 2 years!","sku":"SCH001","price_id":"75","plan_id":null,"photo_url":null,"img_thumb":"default.jpg","params":"[]","related":"[]","role_upgrades":"[]","addons":"[]","created_at":"2017-10-17 13:16:52","updated_at":"2026-06-18 11:05:40","passport":"0","subscription_length":null,"trial_period_days":null,"brand_ambassador":"0","use_limit":"1","physical_product":"0","unit":"Ticket","warehouse":null,"shipping_options":null,"prize_description":null,"product_price_low":null,"product_price_high":null,"has_initial_charge":"0"},{"id":"40","published":"1","cid":"1,2","product_price":"19.99","name":"Unlimited In-Home \/ Outdoor Scavenger Hunts Trial","description":"Each month you can create unlimited virtual games. In each of these games you can have up to 16 people.","sku":"LR001","price_id":"47","plan_id":"lr_season_1999","photo_url":"default.jpg","img_thumb":"default.jpg","params":"[]","related":"[]","role_upgrades":"[]","addons":"[]","created_at":null,"updated_at":"2024-11-11 17:50:13","passport":"1","subscription_length":"1","trial_period_days":"7","brand_ambassador":"0","use_limit":"Unlimited","physical_product":"0","unit":null,"warehouse":null,"shipping_options":null,"prize_description":null,"product_price_low":null,"product_price_high":null,"has_initial_charge":"0"},{"id":"45","published":"1","cid":"1,2","product_price":"19.99","name":"Adventure Travel Journ
2390al","description":"Each month you can create unlimited virtual games. In each of these games you can have up to 16 people.","sku":"lr_travel_journal","price_id":"68","plan_id":null,"photo_url":"assets\/images\/store\/bundles\/afs_date.jpg","img_thumb":"default.jpg","params":"[]","related":"[]","role_upgrades":"[]","addons":"[]","created_at":null,"updated_at":"2024-11-06 10:28:56","passport":"1","subscription_length":null,"trial_period_days":null,"brand_ambassador":"0","use_limit":"1","physical_product":"1","unit":"Activity Book","warehouse":"shipmonk","shipping_options":"[{\n\t\t\"published\": \"1\",\n\t\t\"title\": \"Standard Shipping (3-5 business days)\",\n\t\t\"shipping_description\": \"Standard Shipping\",\n\t\t\"tooltip\": \"Will arrive in 5-7 days typically. Shipped from California.\",\n\t\t\"shipping_map\": \"standard\",\n\t\t\"price\": \"0\",\n\t\t\"discount_after_physical_product_count\": \"2\",\n\t\t\"product_count_discount\": \"1\",\n\t\t\"selected\": \"1\"\n\t},\n\t{\n\t\t\"published\": \"1\",\n\t\t\"hidden_on_load\": \"1\",\n\t\t\"title\": \"<span>Expedited Shipping <span style='color:green'>Fastest<\/span><\/span> \",\n\t\t\"shipping_description\": \"2 Day Shipping\",\n\t\t\"tooltip\": \"Will arrive in 2-7 days.\",\n\t\t\"shipping_map\": \"2day\",\n\t\t\"price\": \"3.99\"\n\t}\n]","prize_description":"New members get a free copy of adventures from scratch","product_price_low":null,"product_price_high":null,"has_initial_charge":"0"},{"id":"51","published":"1","cid":"1,2","product_price":"19.99","name":"Adventures From Scratch: Friends Edition","description":"Each month you can create unlimited virtual games. In each of these games you can have up to 16 people.","sku":"lr_scratch_friends1","price_id":"68","plan_id":null,"photo_url":"assets\/images\/store\/bundles\/afs_friends.jpg","img_thumb":"default.jpg","params":"[]","related":"[]","role_upgrades":"[]","addons":"[]","created_at":"2022-11-23 23:00:47","updated_at":"2024-11-19 10:01:30","passport":"1","subscription_length":null,"trial_period_days":null,"brand_ambassador":"0","use_limit":"1","physical_product":"1","unit":"Activity Book","warehouse":"shipmonk","shipping_options":"[{\n\t\t\"published\": \"1\",\n\t\t\"title\": \"Standard Shipping (2 business days)\",\n\t\t\"shipping_description\": \"Standard Shipping\",\n\t\t\"tooltip\": \"Will arrive in 2 days typically. Shipped from California.\",\n\t\t\"shipping_map\": \"standard\",\n\t\t\"price\": \"0\",\n\t\t\"discount_after_physical_product_count\": \"2\",\n\t\t\"product_count_discount\": \"1\",\n\t\t\"selected\": \"1\"\n\t},\n\t{\n\t\t\"published\": \"1\",\n\t\t\"hidden_on_load\": \"1\",\n\t\t\"title\": \"<span>Expedited Shipping <span style='color:green'>Fastest<\/span><\/span> \",\n\t\t\"shipping_description\": \"1 Day Shipping\",\n\t\t\"tooltip\": \"Will arrive in 1 day.\",\n\t\t\"shipping_map\": \"2day\",\n\t\t\"price\": \"19.99\"\n\t}\n]","prize_description":null,"product_price_low":null,"product_price_high":null,"has_initial_charge":"0"},{"id":"75","published":"1","cid":"1,2","product_price":"12.99","name":"Unlimited In-Home \/ Outdoor Scavenger Hunts","description":"Each month you can play unlimited scavenger hunts in our 5,000+ locations. In each of these games you can bring up to 5 family \/ friends.","sku":"LR001","price_id":"47","plan_id":"lr_season_1299","photo_url":"default.jpg","img_thumb":"default.jpg","params":"[]","related":"[]","role_upgrades":"[]","addons":"[]","created_at":null,"updated_at":"2024-11-06 10:27:47","passport":"1","subscription_length":"1","trial_period_days":null,"brand_ambassador":"0","use_limit":"Unlimited","physical_product":"0","unit":null,"warehouse":null,"shipping_options":null,"prize_description":null,"product_price_low":null,"product_price_high":null,"has_initial_charge":"0"},{"id":"76","published":"1","cid":"1,2","product_price":"19.99","name":"Unlimited In-Home \/ Outdoor Scavenger Hunts","description":"Each month you can create unlimited virtual games. In each of these games you can have up to 16 people.","sku":"LR001","price_id":"73","plan_id":"lr_season_1999","photo_url":"default.jpg","img_thumb":"default.jpg","params":"[]","related":"[]","role_upgrades":"[]","addons":"[]","created_at":null,"updated_at":"2025-12-03 14:28:25","passport":"1","subscription_length":"1","trial_period_days":"30","brand_ambassador":"0","use_limit":"Unlimited","physical_product":"0","unit":null,"warehouse":null,"shipping_options":null,"prize_description":null,"product_price_low":null,"product_price_high":null,"has_initial_charge":"1"},{"id":"77","published":"1","cid":"1,2","product_price":"14.99","name":"Single Hunt Pass","description":"Your team can go on one of our 400+ hunts around the world. Tickets are valid for 2 years!","sku":"SCH001","price_id":"1","plan_id":null,"photo_url":null,"img_thumb":"default.jpg","params":"[]","related":"[]","role_upgrades":"[]","addons":"[]","created_at":"2017-10-17 13:16:52","updated_at":"2024-11-06 10:27:33","passport":"0","subscription_length":null,"trial_period_days":null,"brand_ambassador":"0","use_limit":"1","physical_product":"0","unit":"Ticket","warehouse":null,"shipping_options":null,"prize_description":null,"product_price_low":null,"product_price_high":null,"has_initial_charge":"0"},{"id":"78","published":"1","cid":"1,2","product_price":"79.99","name":"Unlimited In-Home \/ Outdoor Scavenger Hunts","description":"Each month you can create unlimited virtual games. In each of these games you can have up to 16 people.","sku":"LR001","price_id":"74","plan_id":"lr_12_7999","photo_url":"default.jpg","img_thumb":"default.jpg","params":"[]","related":"[]","role_upgrades":"[]","addons":"[]","created_at":null,"updated_at":"2024-11-06 10:27:43","passport":"1","subscription_length":"12","trial_period_days":null,"brand_ambassador":"0","use_limit":"Unlimited","physical_product":"0","unit":null,"warehouse":null,"shipping_options":null,"prize_description":null,"product_price_low":null,"product_price_high":null,"has_initial_charge":"0"},{"id":"79","published":"1","cid":"1,2","product_price":"89.99","name":"Season Pass","description":"Unlimited activities for one device one for 365 days.","sku":"SCH003","price_id":"3","plan_id":null,"photo_url":"assets\/images\/addons\/Season.jpg","
2390img_thumb":"default.jpg","params":"[]","related":"[]","role_upgrades":"[]","addons":"[]","created_at":"2017-10-17 13:20:43","updated_at":"2024-11-06 10:28:05","passport":"0","subscription_length":null,"trial_period_days":null,"brand_ambassador":"0","use_limit":"Unlimited","physical_product":"0","unit":null,"warehouse":null,"shipping_options":null,"prize_description":null,"product_price_low":null,"product_price_high":null,"has_initial_charge":"0"},{"id":"82","published":"1","cid":"1,2","product_price":"12.99","name":"Unlimited In-Home \/ Outdoor Scavenger Hunts","description":"Each month you can play unlimited scavenger hunts in our 5,000+ locations. In each of these games you can bring up to 5 family \/ friends.","sku":"LR001","price_id":"47","plan_id":"lr_unlimited_1299","photo_url":"default.jpg","img_thumb":"default.jpg","params":"[]","related":"[]","role_upgrades":"[]","addons":"[]","created_at":null,"updated_at":"2024-12-06 18:14:14","passport":"1","subscription_length":"1","trial_period_days":null,"brand_ambassador":"0","use_limit":"Unlimited","physical_product":"0","unit":null,"warehouse":null,"shipping_options":null,"prize_description":null,"product_price_low":null,"product_price_high":null,"has_initial_charge":"0"},{"id":"83","published":"1","cid":"1,2","product_price":"12.99","name":"Unlimited In-Home \/ Outdoor Scavenger Hunts","description":"Each month you can play unlimited scavenger hunts in our 5,000+ locations. In each of these games you can bring up to 5 family \/ friends.","sku":"LR001","price_id":"47","plan_id":"lr_unlimited_1499","photo_url":"default.jpg","img_thumb":"default.jpg","params":"[]","related":"[]","role_upgrades":"[]","addons":"[]","created_at":null,"updated_at":"2026-02-04 15:06:17","passport":"1","subscription_length":"1","trial_period_days":null,"brand_ambassador":"0","use_limit":"Unlimited","physical_product":"0","unit":null,"warehouse":null,"shipping_options":null,"prize_description":null,"product_price_low":null,"product_price_high":null,"has_initial_charge":"0"},{"id":"84","published":"1","cid":"1,2","product_price":"19.99","name":"Single Hunt Pass","description":"Your team can go on one of our 400+ hunts around the world. Tickets are valid for 2 years!","sku":"SCH001","price_id":"1","plan_id":null,"photo_url":null,"img_thumb":"default.jpg","params":"[]","related":"[]","role_upgrades":"[]","addons":"[]","created_at":"2017-10-17 13:16:52","updated_at":"2025-09-04 20:56:51","passport":"0","subscription_length":null,"trial_period_days":null,"brand_ambassador":"0","use_limit":"1","physical_product":"0","unit":"Ticket","warehouse":null,"shipping_options":null,"prize_description":null,"product_price_low":null,"product_price_high":null,"has_initial_charge":"0"},{"id":"85","published":"1","cid":"1,2","product_price":"19.99","name":"Unlimited In-Home \/ Outdoor Scavenger Hunts","description":"Each month you can create unlimited virtual games. In each of these games you can have up to 16 people.","sku":"LR001","price_id":"73","plan_id":"price_1SaO0jFDtlJLguHd1SGqgTSJ","photo_url":"default.jpg","img_thumb":"default.jpg","params":"[]","related":"[]","role_upgrades":"[]","addons":"[]","created_at":null,"updated_at":"2025-12-03 16:05:54","passport":"1","subscription_length":"1","trial_period_days":null,"brand_ambassador":"0","use_limit":"Unlimited","physical_product":"0","unit":null,"warehouse":null,"shipping_options":null,"prize_description":null,"product_price_low":null,"product_price_high":null,"has_initial_charge":"1"},{"id":"86","published":"1","cid":"1,2","product_price":"12.99","name":"Unlimited In-Home \/ Outdoor Scavenger Hunts","description":"Each month you can play unlimited scavenger hunts in our 5,000+ locations. In each of these games you can bring up to 5 family \/ friends.","sku":"LR001","price_id":"47","plan_id":"lr_unlimited_1499","photo_url":"default.jpg","img_thumb":"default.jpg","params":"[]","related":"[]","role_upgrades":"[]","addons":"[]","created_at":null,"updated_at":"2026-02-04 15:06:17","passport":"1","subscription_length":"1","trial_period_days":"7","brand_ambassador":"0","use_limit":"Unlimited","physical_product":"0","unit":null,"warehouse":null,"shipping_options":null,"prize_description":null,"product_price_low":null,"product_price_high":null,"has_initial_charge":"0"},{"id":"87","published":"1","cid":"1,2","product_price":"14.99","name":"Single Hunt Pass +$2 Test","description":"Your team can go on one of our 400+ hunts around the world. Tickets are valid for 2 years!","sku":"SCH001","price_id":"76","plan_id":null,"photo_url":null,"img_thumb":"default.jpg","params":"[]","related":"[]","role_upgrades":"[]","addons":"[]","created_at":"2017-10-17 13:16:52","updated_at":null,"passport":"0","subscription_length":null,"trial_period_days":null,"brand_ambassador":"0","use_limit":"1","physical_product":"0","unit":"Ticket","warehouse":null,"shipping_options":null,"prize_description":null,"product_price_low":null,"product_price_high":null,"has_initial_charge":"0"},{"id":"88","published":"1","cid":"1,2","product_price":"12.99","name":"Adventure Subscription - Small Group (Monthly)","description":"Monthly adventure subscription for up to 2 players. Unlimited scavenger hunts, bar crawls, audio and ghost tours in 3,000+ cities. Cancel anytime.","sku":"LR001","price_id":null,"plan_id":"lr_unlimited_1299","photo_url":null,"img_thumb":null,"params":null,"related":null,"role_upgrades":null,"addons":null,"created_at":"2026-07-02 21:02:50","updated_at":null,"passport":"0","subscription_length":"1","trial_period_days":null,"brand_ambassador":"0","use_limit":"Unlimited","physical_product":"0","unit":null,"warehouse":null,"shipping_options":null,"prize_description":null,"product_price_low":null,"product_price_high":null,"has_initial_charge":"0"},{"id":"89","published":"1","cid":"1,2","product_price":"19.99","name":"Adventure Subscription - Large Group (Monthly)","description":"Monthly adventure subscription for up to 6 players. Unlimited scavenger hunts, bar crawls, audio and ghost tours in 3,000+ cities. Cancel anytime.","sku":"LR001","price_id":null,"plan_id":"price_1SaO0jFDtlJLguHd1SGqgTSJ","photo_url":null,"img_thumb":null,"params":null,"related":null,"role_upgrades":null,"addons":null,"created_at":"2026-07-02 21:02:50","updated_at":null,"passport":"0","subscription_length":"1","trial_period_days":null,"brand_ambassador":"0","use_limit":"Unlimited","physical_product":"0","unit":null,"warehouse":null,"shipping_options":null,"prize_description":null,"product_price_low":null,"product_price_high":null,"has_initial_charge":"1"},{"id":"90","published":"1","cid":"1,2","product_price":"77.94","name":"Adventure Subscription - Small Group (Yearly)","description":"Yearly adventure subscription for up to 2 players, billed yearly at $77.94 ($6.50\/mo). Unlimited scavenger hunts, bar crawls, audio and ghost tours in 3,000+ cities. Cancel anytime.","sku":"LR001","price_id":null,"plan_id":"sch_claude_sub_yearly_7794","photo_url":null,"img_thumb":null,"params":null,"related":null,"role_upgrades":null,"addons":null,"created_at":"2026-07-02 21:02:50","updated_at":"2026-07-02 16:38:36","passport":"0","subscription_length":"12","trial_period_days":null,"brand_ambassador":"0","use_limit":"Unlimited","physical_product":"0","unit":null,"warehouse":null,"shipping_options":null,"prize_description":null,"product_price_low":null,"product_price_high":null,"has_initial_charge":"0"},{"id":"91","published":"1","cid":"1,2","product_price":"119.94","name":"Adventure Subscription - Large Group (Yearly)","description":"Yearly adventure subscription for up to 6 players, billed yearly at $119.94 ($9.99\/mo). Unlimited scavenger hunts, bar crawls, audio and ghost tours in 3,000+ cities. Cancel anytime.","sku":"LR001","price_id":null,"plan_id":"sch_claude_sub_yearly_11994","photo_url":null,"img_thumb":null,"params":null,"related":null,"role_upgrades":null,"addons":null,"created_at":"2026-07-02 21:02:50","updated_at":"2026-07-02 16:38:36","passport":"0","subscription_length":"12","trial_period_days":null,"brand_ambassador":"0","use_limit":"Unlimited","physical_product":"0","unit":null,"warehouse":null,"shipping_options":null,"prize_description":null,"product_price_low":null,"product_price_high":null,"has_initial_charge":"0"},{"id":"92","published":"1","cid":"1,2","product_price":"12.99","name":"Single Hunt Pass","description":"One scavenger hunt of your choice, for one player. Switch to any hunt or city anytime.","sku":"SCHIC-SINGLE","price_id":null,"plan_id":null,"photo_url":null,"img_thumb":null,"params":"[]","related":"[]","role_upgrades":"[]","addons":"[]","created_at":null,"updated_at":"2026-07-08 12:39:57","passport":"0","subscription_length":null,"trial_period_days":null,"brand_ambassador":"0","use_limit":"1","physical_product":"0","unit":"Player","warehouse":null,"shipping_options":null,"prize_description":null,"product_price_low":null,"product_price_high":null,"has_initial_charge":"0"},{"id":"93","published":"1","cid":"1,2","product_price":"15.99","name":"Unlimited Local Season Pass","description":"Every scavenger hunt in your city, for one player. Pays for itself by hunt #2.","sku":"SCHIC-CITY","price_id":null,"plan_id":null,"photo_url":null,"img_thumb":null,"params":"[]","related":"[]","role_upgrades":"[]","addons":"[]","created_at":null,"updated_at":"2026-07-08 12:40:04","passport":"0","subscription_length":null,"trial_period_days":null,"brand_ambassador":"0","use_limit":"Unlimited","physical_product":"0","unit":"Player","warehouse":null,"shipping_options":null,"prize_description":null,"product_price_low":null,"product_price_high":null,"has_initial_charge":"0"},{"id":"94","published":"1","cid":"1,2","product_price":"19.99","name":"Unlimited Global Season Pass","description":"Unlimited scavenger hunts in 3,000+ cities for 12 months, for one player.","sku":"SCHIC-SEASON","price_id":null,"plan_id":null,"photo_url":null,"img_thumb":null,"params":"[]","related":"[]","role_upgrades":"[]","addons":"[]","created_at":null,"updated_at":"2026-07-08 12:44:07","passport":"0","subscription_length":null,"trial_period_days":null,"brand_ambassador":"0","use_limit":"Unlimited","physical_product":"0","unit":"Player","warehouse":null,"shipping_options":null,"prize_description":null,"product_price_low":null,"product_price_high":null,"has_initial_charge":"0"},{"id":"95","published":"1","cid":"1,2","product_price":"8.94","name":"Birthday Scavenger Hunt Tickets","description":"One birthday scavenger hunt per player, with birthday-themed challenges included. Pick your hunt and date after purchase. Tickets are valid for up to two years.","sku":"SCH-OCCASION-BIRTHDAY","price_id":null,"plan_id":null,"photo_url":null,"img_thumb":null,"params":"[]","related":"[]","role_upgrades":"[]","addons":"[]","created_at":"2026-09-17 11:20:15","updated_at":null,"passport":"0","subscription_length":null,"trial_period_days":null,"brand_ambassador":"0","use_limit":"1","physical_product":"0","unit":"Ticket","warehouse":null,"shipping_options":null,"prize_description":null,"product_price_low":null,"product_price_high":null,"has_initial_charge":"0"},{"id":"96","published":"1","cid":"1,2","product_price":"8.94","name":"Bachelorette Scavenger Hunt Tickets","description":"One bachelorette scavenger hunt per player, with bachelorette-themed challenges included. Pick your hunt and date after purchase. Tickets are valid for up to two years.","sku":"SCH-OCCASION-BACHELORETTE","price_id":null,"plan_id":null,"photo_url":null,"img_thumb":null,"params":"[]","related":"[]","role_upgrades":"[]","addons":"[]","created_at":"2026-09-17 11:20:15","updated_at":null,"passport":"0","subscription_length":null,"trial_period_days":null,"brand_ambassador":"0","use_limit":"1","physical_product":"0","unit":"Ticket","warehouse":null,"shipping_options":null,"prize_description":null,"product_price_low":null,"product_price_high":null,"has_initial_charge":"0"}] || [] //this is how I can retrieve the variable from serverside 2391var allProducts = {} 2392 allProductsArray.map(function(product) { 2393 allProducts[product.id] = product 2394}) 2395function getProductInfo(productId, options) { 2396 options = options || {}; 2397 var product = allProducts[productId] 2398 console.log('getProductInfo', {product, productId}) 2399 var suppressMissingLog = options.suppressMissingLog || window.location.pathname.indexOf('/store/receipt/') !== -1; 2400 if(!product && !suppressMissingLog) { 2401 logDevError(`product not found: productId-${productId}`); 2402 } 2403 return product 2404} 2405 2406 2407 2408 2409 2410 2411// Roles functions 2412// creating an access point for the product info (multi day adventure passes, and more) 2413var allRolesArray = [{"id":"1","name":"Standard","role_price":"0","theme":"Standard","corporate_lead_role_name":"Standard","corporate_customization_slug":"standard","possible_addons":"[8]","short_description":"Great for everyone","long_description":"Great for everyone: kids, friends, coworkers, and more!","price_id":"4","published":"1","image":null,"alternate_image":null,"icon":null},{"id":"2","name":"Holiday Upgrade","role_price":"7","theme":"Holiday","corporate_lead_role_name":"Holiday","corporate_customization_slug":"holiday","possible_addons":"[8]","short_description":"Holiday challenges and games","long_description":"Add bonus holiday challenges to your hunt to make it extra special. Available until Jan 15th. After that time you can use them for other holiday upgrades like Valentine's Day, Easter, and Halloween.","price_id":"5","published":"1","image":"assets\/images\/addons\/holiday.png","alternate_image":null,"icon":null},{"id":"3","name":"Birthday","role_price":"4.05","theme":"Birthday","corporate_lead_role_name":"Birthday","corporate_customization_slug":"birthday","possible_addons":"[11, 12, 14]","short_description":null,"long_description":"Scavenger hunt party roles complete with birthday-themed challenges perfect for someone\u2019s special day. Great for all ages.","price_id":"6","published":"1","image":"assets\/images\/addons\/birthday.png","alternate_image":null,"icon":null},{"id":"4","name":"Date Upgrade","role_price":"6.99","theme":"Date Night","corporate_lead_role_name":"Date","corporate_customization_slug":"date","possible_addons":"[4, 8, 9]","short_description":"Designed for c
2413ouples to connect and explore","long_description":"Add bonus date themed challenges to your hunt to make it extra special. These fun activities and challenges designed to help couples connect better with each other whether it's the first date or 10th anniversary. Includes holiday challenges.","price_id":"9","published":"1","image":"assets\/images\/addons\/date.png","alternate_image":"assets\/images\/addons\/date-heart.png","icon":"assets\/images\/store\/bundles\/modal\/icons\/blue-heart.svg"},{"id":"5","name":"Bachelorette","role_price":"4.05","theme":"Bachelorette","corporate_lead_role_name":"Bachelorette","corporate_customization_slug":"bachelorette","possible_addons":"[5, 6, 7]","short_description":null,"long_description":"Add adult themed challenges and roles for a proud bride-to-be. Package complete with embarrassing photos.","price_id":"10","published":"1","image":"assets\/images\/addons\/bach.png","alternate_image":null,"icon":null},{"id":"6","name":"Upgraded","role_price":"3.15","theme":"Holiday","corporate_lead_role_name":"Holiday","corporate_customization_slug":"holiday","possible_addons":"[8]","short_description":"Holiday challenges and games","long_description":"Add bonus holiday challenges to your hunt to make it extra special. Available until Jan 15th. After that time you can use them for other holiday upgrades like Easter and Halloween.","price_id":"37","published":"1","image":"assets\/images\/addons\/holiday.png","alternate_image":null,"icon":null},{"id":"7","name":"Roam From Home","role_price":"7","theme":"In-Home","corporate_lead_role_name":"In-Home","corporate_customization_slug":"in_home","possible_addons":"[]","short_description":"At home adventures","long_description":null,"price_id":"57","published":"1","image":null,"alternate_image":null,"icon":null},{"id":"8","name":"Explorer Pass Tickets","role_price":"1.96","theme":"In-Home","corporate_lead_role_name":"trivia","corporate_customization_slug":"trivia","possible_addons":"[]","short_description":"At home adventures","long_description":null,"price_id":"40","published":"1","image":null,"alternate_image":null,"icon":null},{"id":"9","name":"Virtual Birthday","role_price":"4.05","theme":"Birthday","corporate_lead_role_name":"Birthday","corporate_customization_slug":"birthday","possible_addons":"[17,18,19]","short_description":null,"long_description":"Scavenger hunt party roles complete with birthday-themed challenges perfect for someone\u2019s special day. Great for all ages.","price_id":"6","published":"1","image":"assets\/images\/addons\/birthday.png","alternate_image":null,"icon":null},{"id":"10","name":"Family Holiday Upgrade","role_price":"4.99","theme":"Holiday","corporate_lead_role_name":"Holiday","corporate_customization_slug":"holiday","possible_addons":"[8]","short_description":"Holiday challenges and games","long_description":"Add bonus holiday challenges to your hunt to make it extra special. Available until Feb 1st. After that time you can use them for other holiday upgrades like Easter and Halloween or convert them into credits for other hunts.","price_id":"5","published":"1","image":"assets\/images\/addons\/holiday.png","alternate_image":null,"icon":null},{"id":"11","name":"Date Upgrade","role_price":"7","theme":"Date Night","corporate_lead_role_name":"Date","corporate_customization_slug":"date","possible_addons":"[4, 8, 9]","short_description":"Designed for couples to connect and explore","long_description":"Add bonus date themed challenges to your hunt to make it extra special. These fun activities and challenges designed to help couples connect better with each other whether it's the first date or 10th anniversary. Includes holiday date challenges.","price_id":"9","published":"1","image":"assets\/images\/addons\/date.png","alternate_image":null,"icon":null},{"id":"12","name":"Corporate Tickets","role_price":"7","theme":"Corporate","corporate_lead_role_name":"Corporate","corporate_customization_slug":"corporate","possible_addons":"[]","short_description":"Corporate scavenger hunt tickets.","long_description":"Corporate scavenger hunt tickets.","price_id":"9","published":"1","image":"assets\/images\/addons\/birthday.png","alternate_image":null,"icon":null}
2413,{"id":"13","name":"Date Upgrade","role_price":"9.99","theme":"Date Night","corporate_lead_role_name":"Date","corporate_customization_slug":"date","possible_addons":"[4, 8, 9]","short_description":"Designed for couples to connect and explore","long_description":"Add bonus date themed challenges to your hunt to make it extra special. These fun activities and challenges designed to help couples connect better with each other whether it's the first date or 10th anniversary. Includes holiday challenges.","price_id":"9","published":"1","image":"assets\/images\/addons\/date.png","alternate_image":null,"icon":null},{"id":"14","name":"Holiday Upgrade","role_price":"9.99","theme":"Holiday","corporate_lead_role_name":"Holiday","corporate_customization_slug":"holiday","possible_addons":"[8]","short_description":"Holiday challenges and games","long_description":"Add bonus holiday challenges to your hunt to make it extra special. Available until Jan 15th. After that time you can use them for other holiday upgrades like Valentine's Day, Easter, and Halloween.","price_id":"5","published":"1","image":"assets\/images\/addons\/holiday.png","alternate_image":null,"icon":null},{"id":"15","name":"Date Upgrade","role_price":"4.99","theme":"Date Night","corporate_lead_role_name":"Date","corporate_customization_slug":"date","possible_addons":"[4, 8, 9]","short_description":"Designed for couples to connect and explore","long_description":"Add bonus date themed challenges to your hunt to make it extra special. These fun activities and challenges designed to help couples connect better with each other whether it's the first date or 10th anniversary. Includes holiday challenges.","price_id":"9","published":"1","image":"assets\/images\/addons\/date.png","alternate_image":null,"icon":null},{"id":"16","name":"Holiday Upgrade","role_price":"2.99","theme":"Holiday","corporate_lead_role_name":"Holiday","corporate_customization_slug":"holiday","possible_addons":"[8]","short_description":"Holiday challenges and games","long_description":"Add bonus holiday challenges to your hunt to make it extra special. Available until Jan 15th. After that time you can use them for other holiday upgrades like Valentine's Day, Easter, and Halloween.","price_id":"5","published":"1","image":"assets\/images\/addons\/holiday.png","alternate_image":null,"icon":null}] || [] //this is how I can retrieve the variable from serverside 2414 2415var allRoles = {} 2416 allRolesArray.map(function(role) { 2417 allRoles[role.id] = role 2418}) 2419function getRoleInfo(roleId) { 2420 var role = allRoles[roleId] 2421 // console.log('getRoleInfo', {role, roleId}) 2422 // Reason: cart items priced by bundle carry no roleId, and calculateItemTotal 2423 // looks one up for every item. An absent id means there was nothing to look 2424 // up, which is expected, so only a real unmatched id is a data error worth 2425 // logging. 2426 var roleIdWasProvided = roleId !== undefined && roleId !== null && roleId !== ''; 2427 if(!role && roleIdWasProvided) { 2428 logDevError(`role not found: roleId-${roleId}`); 2429 } 2430 return role 2431} 2432 2433 2434// Addon Functions 2435// creating an access point for the addon info 2436var allAddonsArray = [{"id":"1","addon_price":"0","name":"Printable Gift Certificate","short_description":null,"long_description":"By clicking this box, after you check out you can make a customized gift card that you can print yourself for free.","price_id":"7","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/Printable_certificate.jpg","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":null,"additional_bundle":null,"only_one_addon_allowed":"0"},{"id":"2","addon_price":"129.99","name":"Customized Bachelorette Hunt","short_description":"Go all out","long_description":"Go all out on your epic event. With this package, you get customized challenges written about the bride and you can change the starting or ending location. Best of all, you get our event planner to help make sure your event is fabulous! Customizations can take up to 2 weeks.","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":null,"alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":null,"additional_bundle":null,"only_one_addon_allowed":"0"},{"id":"3","addon_price":"199.99","name":"Customized Birthday","short_description":"Go all out","long_description":"Go all out on your epic event. With this package, you get customized challenges to make your birthday extra special. Best of all, you get our event planners to help make sure your event goes perfectly!","price_id":"18","published":"1","priority":null,"custom_event":"1","photo_url":"assets\/images\/addons\/Custom_birthday.jpg","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":null,"additional_bundle":null,"only_one_addon_allowed":"0"},{"id":"4","addon_price":"199.99","name":"Customized Proposal","short_description":"Go all out","long_description":"Are you ready to pop the question? With this package, you get customized challenges written to help you propose. Best of all, you get our event planners to help make sure your proposal goes off WITH a hitch.","price_id":"18","published":"1","priority":null,"custom_event":"1","photo_url":"assets\/images\/addons\/Custom_proposal.jpg","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":null,"additional_bundle":null,"only_one_addon_allowed":"0"},{"id":"5","addon_price":"34.99","name":"Add Drink Pit Stop","short_description":null,"long_description":"Our writers will add a fun bar or restaurant to your hunt, along with additional challenges. We will work with you to find a place with a good vibe, cheap drinks, and a happy hour. Requires 3 business days of advanced purchase and drinks are not included. ","price_id":"19","published":"1","priority":null,"custom_event":"1","photo_url":"assets\/images\/addons\/Drink_pit_stop.jpg","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":null,"additional_bundle":null,"only_one_addon_allowed":"0"},{"id":"6","addon_price":"44.99","name":"Custom Bride Trivia","short_description":null,"long_description":"Add your own questions about the bride to the hunt to really make it personal and fun! Requires 3 business days of advanced notice. ","price_id":"20","published":"1","priority":null,"custom_event":"1","photo_url":"assets\/images\/addons\/Bride_trivia.jpg","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":null,"additional_bundle":null,"only_one_addon_allowed":"0"},{"id":"7","addon_price":"99.99","name":"Customized Route","short_description":null,"long_description":"Work with our team to modify any of our exisiting hunts to make it the best experience possible. Our writers can end the hunt at a bar or restuarant to keep the celebrations going! Additionally, we can modify the starting\/ending locations (up to one mile from the current route).","price_id":"21","published":"1","priority":null,"custom_event":"1","photo_url":"assets\/images\/addons\/Custom_route.jpg","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":null,"additional_bundle":null,"only_one_addon_allowed":"0"},{"id":"8","addon_price":"6.99","name":"Physical Gift Card","short_description":"Send A Gift Card","long_description":"Upgrade to a premium gift card that is perfect for a stocking stuffer or gift. Free 5-7 day shipping to US Addresses only. One gift card per voucher, not per player.","price_id":"24","published":"1","priority":"5","custom_event":"0","photo_url":"assets\/images\/addons\/Gift_card.jpg","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"1","has_gift_card":"0","additional_tickets":null,"additional_bundle":null,"only_one_addon_allowed":"0"}
2436,{"id":"10","addon_price":"19.99","name":"Premium Upgrade","short_description":"Send A Gift Card","long_description":"Shipping takes 3-5 days. The message is added to the scavenger hunt. You can change your message after purchase.","price_id":"28","published":"1","priority":"5","custom_event":"0","photo_url":"assets\/images\/addons\/Gift_card.jpg","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":null,"additional_bundle":null,"only_one_addon_allowed":"0"},{"id":"11","addon_price":"44.99","name":"Custom Birthday Trivia","short_description":null,"long_description":"Go all out on your epic event. With this package, you get customized challenges to make your birthday extra special. Best of all, you get our event planners to help make sure your event goes perfectly!","price_id":"20","published":"1","priority":null,"custom_event":"1","photo_url":"assets\/images\/addons\/Bride_trivia.jpg","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":null,"additional_bundle":null,"only_one_addon_allowed":"0"},{"id":"12","addon_price":"99.99","name":"Customized Route","short_description":null,"long_description":"Work with our team to modify any of our exisiting hunts to make it the best experience possible. Our writers can end the hunt at a bar or restuarant to keep the celebrations going! Additionally, we can modify the starting\/ending locations (up to one mile from the current route).","price_id":"21","published":"1","priority":null,"custom_event":"1","photo_url":"assets\/images\/addons\/Custom_route.jpg","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":null,"additional_bundle":null,"only_one_addon_allowed":"0"},{"id":"14","addon_price":"34.99","name":"Pit Stop","short_description":null,"long_description":"Our writers will work with you to find a place that fits your group of kids or adults to add a restaurant, bar, or ice-cream stop along your hunt. Requires 3 business days of advanced purchase and drinks\/food are not included.","price_id":"19","published":"1","priority":null,"custom_event":"1","photo_url":"assets\/images\/addons\/Gift_card.jpg","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":null,"additional_bundle":null,"only_one_addon_allowed":"0"},{"id":"18","addon_price":"79.99","name":"Big Party (32 players)","short_description":null,"long_description":"Invite more virtual guests. Get access for up to 32 total players.","price_id":"72","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/Gift_card.jpg","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":null,"additional_bundle":null,"only_one_addon_allowed":"0"},{"id":"19","addon_price":"99.99","name":"Hilarious Host","short_description":null,"long_description":"Our fun host will guide you and your guests through your party experience.","price_id":"71","published":"1","priority":null,"custom_event":"1","photo_url":"assets\/images\/addons\/Custom_route.jpg","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":null,"additional_bundle":null,"only_one_addon_allowed":"0"},{"id":"20","addon_price":"49.99","name":"Surprise Party","short_description":null,"long_description":"Work with our event planners to help you host a surprise party! Trick the birthday star onto our game and when they least expect it, everyone will connect with video. ","price_id":"70","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/Custom_birthday.jpg","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":null,"additional_bundle":null,"only_one_addon_allowed":"0"},{"id":"21","addon_price":"79.99","name":"Scavenger Hunt Annual Pass Upgrade","short_description":null,"long_description":"Get 1 Year of Scavenger Hunts.","price_id":"69","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/Season.jpg","alternate_photo_url":null,"icon":null,"per_unit":"1","us_only":"0","has_gift_card":"0","additional_tickets":null,"additional_bundle":null,"only_one_addon_allowed":"0"},{"id":"22","addon_price":"39.99","name":"Big Party (32 players)","short_description":null,"long_description":"Invite more people and optionally break up into multiple teams. Get access for up to 32 total players.","price_id":"72","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/Drink_pit_stop.jpg","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":null,"additional_bundle":null,"only_one_addon_allowed":"0"},{"id":"23","addon_price":"29.99","name":"Surprise Party","short_description":null,"long_description":"We will help you host a surprise party! Trick the birthday star onto our game and when they least expect it. We will provide the key info like starting location, simple suggestions & ideas, and more.","price_id":"70","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/Custom_birthday.jpg","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":null,"additional_bundle":null,"only_one_addon_allowed":"0"},{"id":"24","addon_price":"29.99","name":"Ultimate Date Present Upgrade (Unlock Double Dates & Gift Packaging)","short_description":"Give The Ultimate Gift","long_description":"Go all out on your present. With this upgrade, your loved one bring an extra 2 friends on all their scavenger hunts (perfect for double dates). Also get a gift card & present envolope, free date \/ christmas themes for all hunts, and up to 10 post hunt photo postcards. All in all a $70 value.\n","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/Gift_card.jpg","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"1","has_gift_card":"0","additional_tickets":"2","additional_bundle":null,"only_one_addon_allowed":"0"},{"id":"25","addon_price":"29.99","name":"Ultimate Family Present Upgrade (Unlock Large Group & Gift Packaging)","short_description":"Give The Ultimate Gift","long_description":"Go all out on your epic event. With this upgrade, your loved one bring an extra 2 friends on all their scavenger hunts (perfect for double dates). Also get a gift card & present envolope, free date \/ christmas themes for all hunts, and up to 10 post hunt photo postcards. All in all a $70 value.\n","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/Gift_card.jpg","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"1","has_gift_card":"0","additional_tickets":"4","additional_bundle":null,"only_one_addon_allowed":"0"},{"id":"26","addon_price":"29.99","name":"2nd Couples Explorer Pass (Extra 50% Off!)","short_description":"Give The Ultimate Gift","long_description":"Get your second full couples explorer pass for an extra 50% off!","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/date.png","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"1","has_gift_card":"0","additional_tickets":"0","additional_bundle":"94","only_one_addon_allowed":"0"},{"id":"27","addon_price":"34.99","name":"2nd Family Explorer Pass (Extra 50% Off!)","short_description":"Get an additional annual pass for an extra $30 off! The perfect present for another explorer, couple or family. ","long_description":"Get your second full family explorer pass for an extra 50% off!","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/holiday.png","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"1","has_gift_card":"0","additional_tickets":"0","additional_bundle":"95","only_one_addon_allowed":"0"},{"id":"28","addon_price":"49.99","name":"2nd Couples Explorer Pass (Extra <span class=\"autoUpdateCurrency\" data-price=\"20\">$20<\/span> Off!)","short_description":"The perfect present for another couple.","long_description":"Get your second full couples explorer pass for an extra $20 off! The perfect present for a second couple!","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/date.png","alternate_photo_url":"assets\/images\/addons\/second-couples-annual-pass.png","icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":"0","additional_bundle":"96","only_one_addon_allowed":"0"},{"id":"29","addon_price":"59.99","name":"2nd Families Explorer Pass (Extra <span class=\"autoUpdateCurrency\" data-price=\"20\">$20<\/span> Off!)","short_description":"The perfect present for another family.","long_description":"Get your second full family explorer pass for an extra $20 off! The perfect present for a second family!","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/holiday.png","alternate_photo_url":"assets\/images\/addons\/second-family-annual-pass.png","icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":"0","additional_bundle":"97","only_one_addon_allowed":"0"},{"id":"30","addon_price":"69.99","name":"2nd Couples Explorer Pass (Extra $40 Off!)","short_description":"Give The Ultimate Gift","long_description":"Get your second full couples explorer pass for an extra $40 off! The perfect present for a second couple!","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/date.png","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":"0","additional_bundle":"94","only_one_addon_allowed":"0"},{"id":"31","addon_price":"79.99","name":"2nd Family Explorer Pass (Extra $40 Off!)","short_description":"Give The Ultimate Gift","long_description":"Get your second full family explorer pass for an extra $40 off! The perfect present for a second family!","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/holiday.png","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":"0","additional_bundle":"95","only_one_addon_allowed":"0"},{"id":"32","addon_price":"49.99","name":"2nd Couples Explorer Pass (Extra $40 Off!)","short_description":"Give The Ultimate Gift","long_description":"Get your second full couples explorer pass for an extra $40 off! The perfect present for a second couple!","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/date.png","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":"0","additional_bundle":"94","only_one_addon_allowed":"0"},{"id":"33","addon_price":"89.99","name":"2nd Family Explorer Pass (Extra $40 Off!)","short_description":"Give The Ultimate Gift","long_description":"Get your second full family explorer pass for an extra $40 off! The perfect present for a second family!","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/holiday.png","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":"0","additional_bundle":"95","only_one_addon_allowed":"0"},{"id":"34","addon_price":"49.99","name":"2nd Couples Explorer Pass (Extra $20 Off!)","short_description":"Give The Ultimate Gift","long_description":"Get your second full couples explorer pass for an extra $20 off! The perfect present for a second couple!","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/date.png","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":"0","additional_bundle":"94","only_one_addon_allowed":"0"},{"id":"35","addon_price":"79.99","name":"2nd Family Explorer Pass (Extra $20 Off!)","short_description":"Give The Ultimate Gift","long_description":"Get your second full family explorer pass for an extra $20 off! The perfect present for a second family!","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/holiday.png","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":"0","additional_bundle":"95","only_one_addon_allowed":"0"},{"id":"37","addon_price":"39.99","name":"2nd Solo Explorer Pass (Extra $20 Off!)","short_description":"Give The Ultimate Gift","long_description":"Get your second full family explorer pass for an extra $20 off! The perfect present for a second family!","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/Gift_card.jpg","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":"0","additional_bundle":"114","only_one_addon_allowed":"0"},{"id":"38","addon_price":"0","name":"Physical Gift Card (Free With Season Pass)","short_description":"Send A Gift Card","long_description":"Upgrade to a premium gift card that is perfect for a stocking stuffer or gift. Free 5-7 day shipping to US Addresses only. One gift card per voucher, not per player.","price_id":"24","published":"1","priority":"5","custom_event":"0","photo_url":"assets\/images\/addons\/Gift_card.jpg","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"1","has_gift_card":"0","additional_tickets":null,"additional_bundle":null,"only_one_addon_allowed":"0"},{"id":"39","addon_price":"49.99","name":"2nd Couples Explorer Pass (Extra $30 Off!)","short_description":"Give The Ultimate Gift","long_description":"Get your second full couples explorer pass for an extra $30 off! The perfect present for a second couple!","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/date.png","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"1","has_gift_card":"0","additional_tickets":"0","additional_bundle":"94","only_one_addon_allowed":"0"},{"id":"40","addon_price":"69.99","name":"2nd Family Explorer Pass (Extra $30 Off!)","short_description":"Give The Ultimate Gift","long_description":"Get your second full family explorer pass for an extra $30 off! The perfect present for a second family!","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/holiday.png","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":"0","additional_bundle":"95","only_one_addon_allowed":"0"},{"id":"41","addon_price":"0","name":"2nd Couples Explorer Pass (Free!)","short_description":"Give The Ultimate Gift","long_description":"Get your second full couples explorer pass for free! he perfect present for a second couple!","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/date.png","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"1","has_gift_card":"0","additional_tickets":"0","additional_bundle":"94","only_one_addon_allowed":"1"},{"id":"42","addon_price":"0","name":"2nd Family Explorer Pass (Free!)","short_description":"Give The Ultimate Gift","long_description":"Get your second full family explorer pass for free! The perfect present for a second family!","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/holiday.png","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":"0","additional_bundle":"95","only_one_addon_allowed":"1"},{"id":"43","addon_price":"59.99","name":"Year Of Scavenger Hunts","short_description":"Give The Ultimate Gift","long_description":"Get unlimited indoor & outdoor scavenger hunts with ANY theme for 1 year","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/Gift_card.jpg","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":"0","additional_bundle":"94","only_one_addon_allowed":"0"},{"id":"44","addon_price"
2436:"99.99","name":"Big Party (Up to 50 players)","short_description":null,"long_description":"Invite more people and optionally break up into multiple teams. Get access for up to 32 total players.","price_id":"72","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/Drink_pit_stop.jpg","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":null,"additional_bundle":null,"only_one_addon_allowed":"0"},{"id":"45","addon_price":null,"name":null,"short_description":null,"long_description":null,"price_id":null,"published":"1","priority":null,"custom_event":"0","photo_url":null,"alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":null,"additional_bundle":null,"only_one_addon_allowed":"0"},{"id":"46","addon_price":"99.99","name":"Custom Bride Trivia","short_description":null,"long_description":"Add your own questions about the bride to the hunt to really make it personal and fun! Requires 3 business days of advanced notice. ","price_id":"20","published":"1","priority":null,"custom_event":"1","photo_url":"assets\/images\/addons\/Bride_trivia.jpg","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":null,"additional_bundle":null,"only_one_addon_allowed":"0"},{"id":"47","addon_price":"39.99","name":"Adventures From Scratch Family Edition","short_description":"Give The Ultimate Gift","long_description":"Get your second full family explorer pass for an extra 50% off!","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/afs_family.jpg","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"1","has_gift_card":"0","additional_tickets":"0","additional_bundle":"59","only_one_addon_allowed":"0"},{"id":"48","addon_price":"39.99","name":"Adventures From Scratch Date Edition","short_description":"Give The Ultimate Gift","long_description":"Get your second full family explorer pass for an extra 50% off!","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/afs_date.jpg","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"1","has_gift_card":"0","additional_tickets":"0","additional_bundle":"60","only_one_addon_allowed":"0"},{"id":"49","addon_price":"19.99","name":"Additional Travel Journal","short_description":"Give The Ultimate Gift","long_description":"Add an adventure journal to your order!","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/date.png","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"1","has_gift_card":"0","additional_tickets":"0","additional_bundle":"129","only_one_addon_allowed":"0"},{"id":"50","addon_price":"19.99","name":"Ultimate Holiday Upgrade","short_description":null,"long_description":"By clicking this box, after you check out you can make a customized gift card that you can print yourself for free.","price_id":"7","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/Gift_card.jpg","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":null,"additional_bundle":null,"only_one_addon_allowed":"0"},{"id":"51","addon_price":"29.99","name":"Adventures From Scratch Family Edition","short_description":"Give The Ultimate Gift","long_description":"Get your second full family explorer pass for an extra 50% off!","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/afs_family.jpg","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"1","has_gift_card":"0","additional_tickets":"0","additional_bundle":"59","only_one_addon_allowed":"0"},{"id":"52","addon_price":"29.99","name":"Additional Adventures From Scratch Date Edition","short_description":"Give The Ultimate Gift","long_description":"Get your second full family explorer pass for an extra 50% off!","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/afs_date.jpg","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"1","has_gift_card":"0","additional_tickets":"0","additional_bundle":"60","only_one_addon_allowed":"0"},{"id":"53","addon_price":"4.99","name":"Additional Adventures From Scratch Date Edition","short_description":"Give The Ultimate Gift","long_description":"Get your second full family explorer pass for an extra 50% off!","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/afs_date.jpg","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"1","has_gift_card":"0","additional_tickets":"0","additional_bundle":"60","only_one_addon_allowed":"0"},{"id":"54","addon_price":"99.99","name":"2nd Couples Explorer Pass (Extra $20 Off!)","short_description":"Get an additional annual pass for an extra $30 off! The perfect present for another explorer, couple or family. ","long_description":"Get your second full couples explorer pass for an extra $20 off! The perfect present for a second couple!","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/date.png","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":"0","additional_bundle":"94","only_one_addon_allowed":"0"},{"id":"55","addon_price":"129.99","name":"2nd Family Explorer Pass (Extra $20 Off!)","short_description":"Get an additional annual pass for an extra $30 off! The perfect present for another explorer, couple or family. ","long_description":"Get your second full family explorer pass for an extra $20 off! The perfect present for a second family!","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/holiday.png","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":"0","additional_bundle":"95","only_one_addon_allowed":"0"},{"id":"56","addon_price":"19.99","name":"Scavenger Hunt Annual Pass Upgrade","short_description":null,"long_description":"Get 1 Year of Scavenger Hunts.","price_id":"69","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/Season.jpg","alternate_photo_url":null,"icon":null,"per_unit":"1","us_only":"0","has_gift_card":"0","additional_tickets":null,"additional_bundle":null,"only_one_addon_allowed":"0"},{"id":"57","addon_price":"29.99","name":"Real Prizes Addon","short_description":null,"long_description":"Entry for our annual scavenger hunt competition for $10,000 in cash. Earn points by doing challenges, sharing photos, and more. May the best explorer win! Terms apply. Also compete for smaller regional prizes up to $1,000 each!","price_id":"7","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/birthday.png","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":null,"additional_bundle":null,"only_one_addon_allowed":"0"},{"id":"58","addon_price":"49.99","name":"Real Prizes Addon","short_description":null,"long_description":"Entry for our annual scavenger hunt competition for $10,000 in cash. Earn points by completing as many scavenger hunts as possible, doing challenges, sharing photos, and more. May the best explorer win! Terms apply. Also compete for smaller regional prizes up to $1,000 each!","price_id":"7","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/birthday.png","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":null,"additional_bundle":null,"only_one_addon_allowed":"0"},{"id":"59","addon_price":"59.99","name":"2nd Scavenger Hunt Annual Pass (Extra $20 Off!)","short_description":"Get an additional annual pass for an extra $30 off! The perfect present for another explorer, couple or family. ","long_description":"Get your second full annual pass for an extra $20 off! The perfect present for another explorer, couple or family. ","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/holiday.png","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":"0","additional_bundle":"142","only_one_addon_allowed":"0"},{"id":"60","addon_price":"59.99","name":"3rd Scavenger Hunt Annual Pass (Extra $20 Off!)","short_description":"Get an additional annual pass for an extra $30 off! The perfect present for another explorer, couple or family. ","long_description":"Get your third full annual pass for an extra $20 off! The perfect present for another explorer, couple or family. ","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/holiday.png","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":"0","additional_bundle":"142","only_one_addon_allowed":"0"},{"id":"61","addon_price":"9.99","name":"2 Hunt-Pass (Extra $2 \/ person off) - Do Any 2 Hunts Together (Can not be split)","
2436short_description":"Give The Ultimate Gift","long_description":"Go on a second scavenger hunt for an extra $3 off a person. Can not be split.","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/holiday.png","alternate_photo_url":null,"icon":null,"per_unit":"1","us_only":"0","has_gift_card":"0","additional_tickets":"0","additional_bundle":"141","only_one_addon_allowed":"0"},{"id":"62","addon_price":"49.99","name":"2nd State Scavenger Hunt Annual Pass (Extra $30 Off!)","short_description":"Give The Ultimate Gift","long_description":"Get your second single state annual pass for an extra $30 off! The perfect present for another explorer, couple or family. ","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/birthday.png","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":"0","additional_bundle":"145","only_one_addon_allowed":"0"},{"id":"63","addon_price":"69.99","name":"2nd World Scavenger Hunt Annual Pass (Extra $30 Off!)","short_description":"Get an additional annual pass for an extra $30 off! The perfect present for another explorer, couple or family. ","long_description":"Get your second full, world annual pass for an extra $30 off! The perfect present for another explorer, couple or family. ","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/holiday.png","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":"0","additional_bundle":"146","only_one_addon_allowed":"0"},{"id":"64","addon_price":"19.99","name":"Add A Second Scavenger Hunt","short_description":"Give The Ultimate Gift","long_description":"Go on a second scavenger hunt with the same group of people on a different day. Can not be split between people. ","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/birthday.png","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":"0","additional_bundle":"141","only_one_addon_allowed":"0"},{"id":"65","addon_price":"59.99","name":"2nd Scavenger Hunt Annual Pass (Extra $30 Off!)","short_description":"Get an additional annual pass for an extra $30 off! The perfect present for another explorer, couple or family. ","long_description":"Get your second full annual pass for an extra $30 off! The perfect present for another explorer, couple or family. ","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/birthday.png","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":"0","additional_bundle":"145","only_one_addon_allowed":"0"},{"id":"66","addon_price":"59.99","name":"2nd Scavenger Hunt Annual Pass (Extra $30 Off!)","short_description":"Get an additional annual pass for an extra $30 off! The perfect present for another explorer, couple or family. ","long_description":"Get your third full annual pass for an extra $30 off! The perfect present for another explorer, couple or family. ","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/birthday.png","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":"0","additional_bundle":"145","only_one_addon_allowed":"0"},{"id":"67","addon_price":"29.99","name":"Bring Up To 4 Additional Players","short_description":"Bring some friends, family, or any else along to make your journey a little more fun!","long_description":"Bring some friends, family, or more along.","price_id":"72","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/birthday.png","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":"0","additional_bundle":null,"only_one_addon_allowed":"0"},{"id":"70","addon_price":"59.99","name":"2nd Friends Annual Pass (Extra $20 Off!)","short_description":"Get an additional annual pass for an extra $30 off! The perfect present for another explorer, couple or family. ","long_description":"Get your second full friends annual pass for an extra $20 off! The perfect present for a second explorer!","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/Gift_card.jpg","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":"0","additional_bundle":"158","only_one_addon_allowed":"0"},{"id":"71","addon_price":"49.99","name":"2nd Couples Annual Pass (Extra $20 Off!)","short_description":"Get an additional annual pass for an extra $30 off! The perfect present for another explorer, couple or family. ","long_description":"Get your second full couples annaul pass for an extra $20 off! The perfect present for a second couple!","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/date.png","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":"0","additional_bundle":"159","only_one_addon_allowed":"0"},{"id":"72","addon_price":"69.99","name":"2nd Family Annual Pass (Extra $20 Off!)","short_description":"Get an additional annual pass for an extra $30 off! The perfect present for another explorer, couple or family. ","long_description":"Get your second full family annual pass for an extra $20 off! The perfect present for a second family!","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/holiday.png","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":"0","additional_bundle":"160","only_one_addon_allowed":"0"},{"id":"73","addon_price":"49.99","name":"2nd Standard Scavenger Hunt Annual Pass (Extra <span class='autoUpdateCurrency' data-price='30'>$30<\/span> Off!)","short_description":"Get an additional unlimited annual pass for an extra $30 off! The perfect present for another explorer, couple or family. ","long_description":"The perfect present for another explorer, couple or family. ","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/Gift_card.jpg","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":"0","additional_bundle":"163","only_one_addon_allowed":"0"},{"id":"74","addon_price":"69.99","name":"2nd Deluxe Scavenger Hunt Annual Pass (Extra <span class='autoUpdateCurrency' data-price='30'>$30<\/span> Off!)","short_description":"Get an additional Unlimited Scavenger Hunt Annual Pass & Photo Mementos & Travel Bundle for an extra $20 off! The perfect present for another explorer, couple or family. ","long_description":"The perfect present for another explorer, couple or family. ","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/birthday.png","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":"0","additional_bundle":"162","only_one_addon_allowed":"0"},{"id":"75","addon_price":"9.99","name":"Custom Post Hunt Photo Postcards","short_description":"Go all out","long_description":"Get a printed 4 by 6 custom photo memento after your hunt consisting of your top 3 photos from your hunt. Perfect for your fridge or scrapbooks.","price_id":"18","published":"1","priority":null,"custom_event":"1","photo_url":"assets\/images\/addons\/holiday.png","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":null,"additional_bundle":null,"only_one_addon_allowed":"0"},{"id":"76","addon_price":"69.99","name":"2nd Explorer Pass (Extra <span class='autoUpdateCurrency' data-price='30'>$30<\/span> Off!)","short_description":"Get an additional Unlimited Scavenger Hunt Annual Pass & Photo Mementos & Travel Bundle for an extra $20 off! The perfect present for another explorer, couple or family. ","long_description":"The perfect present for another explorer, couple or family. ","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/birthday.png","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":"0","additional_bundle":"162","only_one_addon_allowed":"0"},{"id":"77","addon_price":"49.99","name":"2nd Couples Annual Pass (Extra $20 Off!)","short_description":"Get an additional annual pass for an extra $30 off! The perfect present for another explorer, couple or family. ","long_description":"Get your second full couples annaul pass for an extra $20 off! The perfect present for a second couple!","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/date.png","alternate_photo_url":null,"icon":"assets\/images\/store\/bundles\/modal\/icons\/blue-heart.svg","per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":"0","additional_bundle":"159","only_one_addon_allowed":"0"},{"id":"78","addon_price":"69.99","name":"2nd Family Annual Pass (Extra $20 Off!)","short_description":"Get an additional annual pass for an extra $30 off! The perfect present for another explorer, couple or family. ","long_description":"Get your second full family annual pass for an extra $20 off! The perfect present for a second family!","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/holiday.png","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":"0","additional_bundle":"205","only_one_addon_allowed":"0"},{"id":"79","addon_price":"49.99","name":"2nd Couples Annual Pass (Extra $20 Off!)","short_description":"Get an additional annual pass for an extra $30 off! The perfect present for another explorer, couple or family. ","long_description":"Get your second full couples annaul pass for an extra $20 off! The perfect present for a second couple!","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/date.png","alternate_photo_url":null,"icon":"assets\/images\/store\/bundles\/modal\/icons\/blue-heart.svg","per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":"0","additional_bundle":"206","only_one_addon_allowed":"0"},{"id":"80","addon_price":"59.99","name":"2nd Friends \/ Family Annual Pass (Extra $20 Off!)","short_description":"Get an additional annual pass for an extra $30 off! The perfect present for another explorer, couple or family. ","long_description":"Get your second full family annual pass for an extra $20 off! The perfect present for a second family!","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/holiday.png","alternate_photo_url":null,"icon":"assets\/images\/store\/bundles\/modal\/icons\/orange-group.svg","per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":"0","additional_bundle":"160","only_one_addon_allowed":"0"},{"id":"81","addon_price":"39.99","name":"Scavenger Hunt Annual Pass Upgrade","short_description":null,"long_description":"Get 1 Year of Scavenger Hunts.","price_id":"69","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/holiday.png","alternate_photo_url":null,"icon":null,"per_unit":"1","us_only":"0","has_gift_card":"0","additional_tickets":null,"additional_bundle":null,"only_one_addon_allowed":"0"},{"id":"82","addon_price":"29.99","name":"Scavenger Hunt Annual Pass Upgrade","short_description":null,"long_description":"Get 1 Year of Scavenger Hunts.","price_id":"69","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/holiday.png","alternate_photo_url":null,"icon":null,"per_unit":"1","us_only":"0","has_gift_card":"0","additional_tickets":null,"additional_bundle":null,"only_one_addon_allowed":"0"},{"id":"83","addon_price":"49.99","name":"2nd Couples Explorer Pass (Extra $20 Off!)","short_description":"The perfect present for another couple.","long_description":"Get your second full couples explorer pass for an extra $20 off! The perfect present for a second couple!","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/store\/addons\/date.png","alternate_photo_url":"assets\/images\/addons\/second-couples-annual-pass.png","icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":"0","additional_bundle":"96","only_one_addon_allowed":"0"},{"id":"84","addon_price":"59.99","name":"2nd Families Explorer Pass (Extra $20 Off!)","short_description":"The perfect present for another family.","long_description":"Get your second full family explorer pass for an extra $20 off! The perfect present for a second family!","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/store\/addons\/holiday.png","alternate_photo_url":"assets\/images\/addons\/second-family-annual-pass.png","icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":"0","additional_bundle":"97","only_one_addon_allowed":"0"},{"id":"85","addon_price":"4.99","name":"Date Night Upgrade","short_description":null,"long_description":"Our writers will add a fun bar or restaurant to your hunt, along with additional challenges. We will work with you to find a place with a good vibe, cheap drinks, and a happy hour. Requires 3 business days of advanced purchase and drinks are not included. ","price_id":"19","published":"1","priority":null,"custom_event":"1","photo_url":"assets\/images\/store\/addons\/Drink_pit_stop.jpg","alternate_photo_url":null,"icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":null,"additional_bundle":null,"only_one_addon_allowed":"0"},{"id":"86","addon_price":"59.99","name":"2nd Giftable 1 Year Family\/Friends Annual Pass (Extra $20 Off!)","short_description":"The perfect present for another family.","long_description":"Get your second full family explorer pass for an extra $20 off! The perfect present for a second family!","price_id":"8","published":"1","priority":null,"custom_event":"0","photo_url":"assets\/images\/addons\/holiday.png","alternate_photo_url":"assets\/images\/addons\/second-family-annual-pass.png","icon":null,"per_unit":"0","us_only":"0","has_gift_card":"0","additional_tickets":"0","additional_bundle":"97","only_one_addon_allowed":"0"}] || [] //this is how I can retrieve the variable from serverside 2437var allAddons = {} 2438 allAddonsArray.map(function(addon) { 2439 allAddons[addon.id] = addon 2440}) 2441function getAddonInfo(addonId) { 2442 var addon = allAddons[addonId] 2443 // console.log('getAddonInfo', {addon, addonId}) 2444 2445 if(!addon) { 2446 logDevError(`addon not found: addonId-${addonId}`); 2447 } 2448 2449 return addon 2450} 2451 2452// Pricing Functions 2453var campaignDiscountArray = "[{\"type\":\"product\",\"value\":\"0.55\"}]" //this is how I can retrieve the variable from serverside 2454if (typeof campaignDiscountArray === 'string') { 2455 try { 2456 campaignDiscountArray = JSON.parse(campaignDiscountArray) 2457 } catch (campaignDiscountParseError) { 2458 campaignDiscountArray = [] 2459 } 2460} 2461if (!Array.isArray(campaignDiscountArray)) { 2462 campaignDiscountArray = [] 2463} 2464var campaignDiscounts = {} 2465 campaignDiscountArray.map(function(discount) { 2466 campaignDiscounts[discount.type] = discount 2467}) 2468 2469// used for formatting prices 2470var fullDiscount = 0.55; 2471if(campaignDiscounts && campaignDiscounts['product'] && campaignDiscounts['product']['value'] && !window.location.href.includes('bach') && !window.location.href.includes('birth') && !window.location.href.includes('your_event') ) { 2472 fullDiscount = 1 * campaignDiscounts['product']['value'] 2473} 2474 2475 2476 2477 2478var discountName = `Flash Ticket Sale`; 2479var discountDescription = 'Up to 55% off all tickets and passes' 2480 2481 2482 2483 2484 2485 2486var realDiscount = 0; 2487var updateRealDiscount = function(newDiscount) { 2488 // Guard against NaN values - default to 0 if NaN or invalid 2489 if (isNaN(newDiscount) || newDiscount === null || newDiscount === undefined) { 2490 newDiscount = 0; 2491 } 2492 2493 // no discounts for bach / birthday / team building 2494 if(window.location.href.includes('bach') || window.location.href
2494.includes('birth') || window.location.href.includes('your_event')) { 2495 realDiscount = 0; 2496 // testing reducing discount amount 2497 } else if(abVersionEquals('REAL_DISCOUNT_DECREASE', 1)) { 2498 if(window.location.href.includes('receipt')) { 2499 realDiscount = (newDiscount / 2); 2500 } else { 2501 realDiscount = (newDiscount / 2); 2502 } 2503 2504 2505 // default condition 2506 } else { 2507 realDiscount = 1 * newDiscount; 2508 } 2509 2510 // used to save value 2511 setCookie('last_real_discount', `${realDiscount}`) 2512 2513 console.log('updateRealDiscount', {newDiscount, realDiscount}) 2514 if(typeof updateCurrencies != 'undefined') { 2515 updateCurrencies() 2516 } 2517 2518} 2519 2520updateRealDiscount(parseFloat('0')) 2521 2522 2523// console.log_on_production({campaignDiscounts, fullDiscount, realDiscount}) 2524var potentialUpgradesArray = [] || [] //this is how I can retrieve the variable from serverside 2525 2526 2527 2528 2529function currencyUsesZeroDecimalDisplay(currencyCode) { 2530 var normalizedCurrencyCode = `${currencyCode || ''}`.toLowerCase(); 2531 return [ 2532 'bif', 'clp', 'djf', 'gnf', 'isk', 'jpy', 'kmf', 'krw', 'mga', 2533 'pyg', 'rwf', 'ugx', 'vnd', 'vuv', 'xaf', 'xof', 'xpf', 2534 ].includes(normalizedCurrencyCode); 2535} 2536 2537function formatPrice(unformmattedPrice = 0, cy = "usd", formatted = true, round= false) { 2538 typeof trace == 'function' && trace(); 2539 console.log({unformmattedPrice}) 2540 var newPrice = unformmattedPrice 2541 newPrice = Math.round(100* unformmattedPrice) / 100 2542 if(round) { 2543 newPrice = Math.round(newPrice) 2544 } 2545 2546 if(!formatted) { 2547 return newPrice; 2548 } 2549 2550 2551 2552 console.log({unformmattedPrice, newPrice}) 2553 2554 2555 2556 var currencyInfo = currencies && currencies[cy] ? currencies[cy] : null; 2557 var formattedPrice = (currencyInfo && currencyInfo.non_zero_point_currency == 1) || currencyUsesZeroDecimalDisplay(cy) 2558 ? Math.round(newPrice).toLocaleString('en-US') 2559 : (Number.isInteger(newPrice) ? newPrice : newPrice.toFixed(2)); 2560 2561 if(currencyInfo && currencyInfo.symbol) { 2562 newPrice = currencyInfo.symbol + formattedPrice; 2563 } else { 2564 newPrice = "$" + formattedPrice; 2565 2566 } 2567 2568 return newPrice 2569} 2570 2571// full, regular, or discounted 2572function getLocalPrice(price, cy = "usd", formatted = true, discount_type = "discounted", bundleId = null, corporateDiscount = null) { 2573 typeof trace == 'function' && trace(); 2574 var price = parseFloat(price || 0) 2575 console.log('getLocalPrice', {price, cy, formatted, discount_type, corporateDiscount, fullDiscount}) 2576 2577 var localPrice = price / getCurrencyInfo(cy)['currency_to_usd'] 2578 2579 if(discount_type == "full") { 2580 // designed to show FULL price, fluff 2581 2582 if(corporateDiscount) { 2583 localPrice = localPrice + corporateDiscount; 2584 } else { 2585 localPrice = localPrice / (1 - fullDiscount) 2586 } 2587 2588 } else if(discount_type == "regular") { 2589 localPrice = localPrice; 2590 } else if (discount_type == "discounted"){ 2591 var discount = corporateDiscount ? 0 : realDiscount; 2592 // Guard against NaN discount 2593 if (isNaN(discount)) discount = 0; 2594 localPrice = localPrice * (1 - discount) 2595 } 2596 2597 return formatPrice(localPrice, cy, formatted) 2598} 2599 2600function calculateItemTotal(current_item, cy, discount_type = true) { 2601 var preAddonPrice = 0; 2602 2603 2604 var bundle = getBundleInfo(current_item.bundleId) 2605 var product = getProductInfo(current_item.productId) 2606 var role = getRoleInfo(current_item.roleId) 2607 var quantity = 1 * current_item.quantity || 1 2608 2609 var childQuantity = 1 * current_item.childQuantity || 0; 2610 2611 2612 2613 console.log({current_item, discount_type, bundle, role}) 2614 2615 // bundle price override is from js 2616 // bundle_price is from sql 2617 var bundlePrice = current_item.bundle_price_override || bundle.bundle_price 2618 2619 // use bundle price if defined 2620 if(bundlePrice) { 2621 // Only multiply by quantity for items that explicitly use quantity on a single cart item 2622 // (e.g., AFS products with applyVolumeDiscount flag) 2623 // Other products typically add multiple cart items instead of quantity > 1 2624 if (current_item.applyVolumeDiscount && quantity > 1) { 2625 preAddonPrice = bundlePrice * quantity; 2626 } else { 2627 preAddonPrice = bundlePrice; 2628 } 2629 2630 // else use quantity, product_price, role_price 2631 }
2631 else if(product.subscription_length) { 2632 preAddonPrice = product.product_price * 1 2633 } else { 2634 2635 var productPrice = 1 * (current_item.product_price_override || product.product_price) 2636 var rolePrice = 1 * role.role_price 2637 2638 preAddonPrice = quantity * (productPrice + rolePrice) 2639 2640 cart.adultPrice = getLocalPrice( 2641 (productPrice + rolePrice), 2642 cy || 'usd', 2643 false, 2644 ) 2645 cart.childPrice = getLocalPrice( 2646 (productPrice + rolePrice) * (1 - childDiscount), 2647 cy || 'usd', 2648 false, 2649 ) 2650 2651 if(childQuantity && childDiscount) { 2652 preAddonPrice -= productPrice * childQuantity * childDiscount 2653 2654 } 2655 } 2656 2657 2658 // calculating the addonPrice 2659 var addonTotal = 0 2660 2661 //getting any free addon 2662 var includedAddons = bundle.initial_addons ? Object.keys(JSON.parse(bundle.initial_addons)) : [] 2663 2664 Object.keys(current_item.addons).map(function(addonId) { 2665 var addon = getAddonInfo(addonId) || {} 2666 var addonPerUnit = parseInt(addon.per_unit || 0) 2667 console.log({addon, addonPerUnit, quantity}) 2668 2669 var addonPrice = addon.addon_price || 0; 2670 if (campaignDiscounts && campaignDiscounts[`addon-${addonId}`]) { 2671 addonPrice = 2672 (1 - parseFloat(campaignDiscounts[`addon-${addonId}`].value)) * 2673 addonPrice; 2674 if(isNaN) { 2675 addonPrice = 0; 2676 } 2677 } 2678 2679 if(includedAddons.includes(addonId)){ 2680 // included in bundle 2681 console.log({addonId}) 2682 } else if(addonPerUnit) { 2683 addonTotal += (quantity * parseFloat(addonPrice)) 2684 } else { 2685 addonTotal += parseFloat(addonPrice) 2686 } 2687 2688 }) 2689 2690 2691 2692 var total = parseFloat(preAddonPrice) + parseFloat(addonTotal) 2693 2694 // used for forced upgrades 2695 if(current_item.forcePrice) { 2696 total = parseFloat(current_item.forcePrice) 2697 } 2698 2699 var adjustedTotal = getLocalPrice(total, cy, false, discount_type) 2700 2701 console.log({total, adjustedTotal, addonTotal, preAddonPrice}) 2702 return adjustedTotal 2703 2704} 2705 2706 2707function normalizeStripePresentmentCurrencyCode(currencyCode) { 2708 currencyCode = String(currencyCode || 'usd').toLowerCase(); 2709 return currencyCode === 'bgn' ? 'eur' : currencyCode; 2710} 2711 2712function updateCurrencies(new_cy) { 2713 typeof trace == 'function' && trace(); 2714 2715 if (!new_cy) { 2716 new_cy = cy; 2717 } 2718 new_cy = normalizeStripePresentmentCurrencyCode(new_cy); 2719 2720 if(new_cy && new_cy != cy) { 2721 console.log('updateCurrencies new_cy change', {new_cy, cy}) 2722 setCookie('sch_cy', new_cy);
2723 setCookie('sch_cy_set_by_user', new_cy); 2724 } 2725 cy = new_cy; 2726 2727 var currencyBaseUnit = document.getElementById('currencyBaseUnit'); 2728 if (currencyBaseUnit) { 2729 var baseCurrencyValue = getLocalPrice( 2730 1, 2731 cy || 'usd', 2732 false, 2733 'discounted' 2734 ); 2735 currencyBaseUnit.innerHTML = formatPrice(baseCurrencyValue, cy, true, false); 2736 } 2737 2738 const modalCurrencySelect = document.getElementById('modalCurrencySelect'); 2739 if(modalCurrencySelect && modalCurrencySelect.value != new_cy) { 2740 modalCurrencySelect.value = new_cy; 2741 } 2742 2743 document.querySelectorAll('.autoUpdateCurrency').forEach(function (item) { 2744 // getting the possible data values 2745 var { 2746 subscriptionType = 'annually', 2747 price, 2748 priceId, 2749 showUndiscountedPrice, 2750 basePriceId, 2751 round = false, 2752 includesBase, 2753 priceShowFull, 2754 unit = '', 2755 priceShowReal, 2756 pricingStyle = '', 2757 discountStyle = '', 2758 bundleId, 2759 textSize, 2760 textAdditionalClasses = '', 2761 divAdditionalClasses = '', 2762 textFontWeight, 2763 roundFullPrice, 2764 corporateDiscount = 0, 2765 priceBreak, 2766 priceDiscountType = 'discounted', 2767 } = item.dataset; 2768 2769 // Currency updates rebuild price markup after server-side translation. 2770 // Translate the complete unit phrase in every language/catalog mode. 2771 if (unit) { 2772 unit = unit.replace( 2773 /^(\s*(?:\/|per)?\s*)(player|person|bundle|month)(\s*)$/, 2774 function (_match, prefix, label, suffix) { 2775 var completePhrase = 'per ' + label; 2776 var translatedPhrase = translateText(completePhrase); 2777 if (translatedPhrase !== completePhrase) { 2778 return ' ' + translatedPhrase + suffix; 2779 } 2780 return prefix + translateText(label) + suffix; 2781 } 2782 ); 2783 } 2784 2785 console.log('function updateCurrencies fired', { cy, textFontWeight }); 2786 2787 // console.log({ discountStyle }); 2788 // console.log('main.js item', { 2789 // item: item.dataset, 2790 // }); 2791 if (price) { 2792 var normalizedPriceDiscountType = ['discounted', 'regular', 'full'].includes(priceDiscountType) 2793 ? priceDiscountType 2794 : 'discounted'; 2795 var lineBreak = !!unit ? '<br>' : ''; 2796 var newPrice = getLocalPrice( 2797 price, 2798 cy || 'usd', 2799 false, 2800 normalizedPriceDiscountType, 2801 null, 2802 corporateDiscount 2803 ); 2804 if (priceShowReal && realDiscount && realDiscount > 0) { 2805 regularPrice = getLocalPrice(price, cy || 'usd', false, 'regular'); 2806 item.innerHTML = 2807 `<small style='font-size: 12px !important; color: #a7a8aa !important; margin-right:5px; text-decoration: line-through; opacity: 70%;${discountStyle}'>` + 2808 formatPrice(regularPrice, cy, true, round) + 2809 '</small>' + 2810 lineBreak + 2811 formatPrice(newPrice, cy); 2812 2813 let localPrice = getLocalPrice(bundlePrice, cy); 2814 let itemFullPrice = getLocalPrice( 2815 bundlePrice, 2816 cy || 'usd', 2817 true, 2818 'full' 2819 ); 2820 let billingPeriod = billingType === 'annually' ? 'year' : 'month'; 2821 let monthlyPrice = bundlePrice / 12; 2822 monthlyPrice -= 0.01; 2823 2824 let monthlyLocalPrice = getLocalPrice(monthlyPrice, cy); 2825 2826 document.getElementById('subscriptionPrice').innerHTML = `${ 2827 billingType === 'annually' ? monthlyLocalPrice : localPrice 2828 } <span style="font-size: 14px; font-weight: 300;"> / month</span>`; 2829 2830 document.getElementById( 2831 'membershipDescriptionText' 2832 ).innerHTML = `billed ${billingType} at <span style="text-decoration: line-through; margin-left: 3px;"> ${itemFullPrice}</span><span style="font-weight: ${ 2833 textFontWeight || 800 2834 }; margin-left: 3px;">${localPrice} a ${billingPeriod}!</span>`; 2835 } else if (priceShowFull == -1) { 2836 let isSinglePageCheckout = getCookie('AB_SINGLE_PAGE_CHECKOUT') == 1; 2837 let isHolidayCard = window.location.href.includes( 2838 'holiday-scavenger-hunts' 2839 ); 2840 2841 let isVday = window.location.href.includes('holiday2024/valentines'); 2842 2843 let isGiftCard = window.location.href.includes( 2844 'customize_your_giftcard' 2845 ); 2846 2847 let strikeThroughColor = isHolidayCard ? '#343A3D' : '#a7a8aaaa'; 2848 2849 if (WEBSITE_DOMAIN == 'letsroam' || isVday) { 2850 fullPrice = getLocalPrice( 2851 price, 2852 cy || 'usd', 2853 false, 2854 'full', 2855 bundleId, 2856 parseFloat(corporateDiscount, 10) 2857 ); 2858 2859 if (roundFullPrice) { 2860 fullPrice = Math.round(fullPrice); 2861 } 2862 2863 if (getCookie('AB_LR_SMALL_PRICE_FONT') == 1 && !isVday) { 2864 item.innerHTML = `<div style="align-items: baseline; ${priceBreak ? 'flex-direction: column; align-items: center;' : ''}" class='lr-flex-wrapper--wrap ${divAdditionalClasses}'><div style="${priceBreak ? 'margin-bottom: 5px;' : ''}"><span style='font-weight:${ 2865 textFontWeight || (isSinglePageCheckout ? 400 : 800) 2866 };' class='h-size--${ 2867 textSize || (isSinglePageCheckout ? 28 : 24) 2868 } ${textAdditionalClasses}'>${formatPrice( 2869 newPrice, 2870 cy, 2871 true, 2872 round 2873 )}</span> <span class="h-size--14">${unit}</span></div> 2874 2875 ${`<div style='font-size: 14px !important;
2875 color: ${strikeThroughColor}; !important; text-decoration: line-through; opacity: 70%; ${discountStyle}' class='${priceBreak ? '' : 'h-margin-m__t--16 h-margin__l--10 h-margin-m__l--5'}'>${ 2876 formatPrice(fullPrice, cy, true, round) + unit 2877 }</div>`} 2878 </div>`; 2879 } else { 2880 item.innerHTML = `<div style="align-items: baseline;${ 2881 WEBSITE_DOMAIN == 'afs' ? 'justify-content: center;' : '' 2882 } ${priceBreak ? 'flex-direction: column; align-items: center;' : ''}" class='lr-flex-wrapper--wrap ${divAdditionalClasses}'><div><span style='font-weight:${ 2883 textFontWeight || 2884 (isSinglePageCheckout || isHolidayCard ? 400 : 800) 2885 }; ${pricingStyle}' class='h-size--${ 2886 textSize || 2887 (isHolidayCard 2888 ? 20 2889 : isSinglePageCheckout 2890 ? 28 2891 : isGiftCard 2892 ? 15 2893 : 28) 2894 } ${textAdditionalClasses}'>${formatPrice( 2895 newPrice, 2896 cy, 2897 true, 2898 round 2899 )}</span> <span class="h-size--14">${unit}</span></div> 2900 2901 ${`<div style='font-size: 14px !important; color: ${strikeThroughColor}; !important; text-decoration: line-through; opacity: 70%; ${discountStyle}' class='${priceBreak ? '' : 'h-margin-m__t--16 h-margin__l--10 h-margin-m__l--5'}'>${ 2902 formatPrice(fullPrice, cy, true, round) + unit 2903 }</div>`} 2904 </div>`; 2905 } 2906 } else { 2907 fullPrice = getLocalPrice(price, cy || 'usd', false, 'full'); 2908 item.innerHTML = 2909 formatPrice(newPrice, cy, true, round) + 2910 unit + 2911 lineBreak + 2912 `<small style='font-size: 12px !important; color: #a7a8aaaa; !important; margin-right:5px; text-decoration: line-through; opacity: 70%; ${discountStyle}'>` + 2913 formatPrice(fullPrice, cy, true, round) + 2914 unit + 2915 '</small>'; 2916 } 2917 } else if (priceShowFull == -2) { 2918 fullPrice = getLocalPrice(price, cy || 'usd', false, 'full'); 2919 item.innerHTML = 2920 `<small style='font-size: 12px !important; color: #a7a8aaaa !important; margin-right:5px; text-decoration: line-through; opacity: 70%; ${discountStyle}'>` + 2921 formatPrice(fullPrice, cy, true, round) + 2922 unit + 2923 '</small>'; 2924 2925 let localPrice = getLocalPrice(bundlePrice, cy); 2926 let itemFullPrice = getLocalPrice( 2927 bundlePrice, 2928 cy || 'usd', 2929 true, 2930 'full' 2931 ); 2932 let billingPeriod = billingType === 'annually' ? 'year' : 'month'; 2933 let monthlyPrice = bundlePrice / 12; 2934 monthlyPrice -= 0.01; 2935 2936 let monthlyLocalPrice = getLocalPrice(monthlyPrice, cy); 2937 2938 document.getElementById('subscriptionPrice').innerHTML = `${ 2939 billingType === 'annually' ? monthlyLocalPrice : localPrice 2940 } <span style="font-size: 14px; font-weight: 300;"> / month</span>`; 2941 2942 document.getElementById( 2943 'membershipDescriptionText' 2944 ).innerHTML = `billed ${billingType} at <span style="text-decoration: line-through; margin-left: 3px;"> ${itemFullPrice}</span><span style="font-weight: ${ 2945 textFontWeight || 800 2946 }; margin-left: 3px;">${localPrice} a ${billingPeriod}!</span>`; 2947 } else if (priceShowFull) { 2948 fullPrice = getLocalPrice(price, cy || 'usd', false, 'full'); 2949 item.innerHTML = 2950 `<small style='font-size: 24px; color: #a7a8aa; margin-right:5px; font-weight:300 !important; text-decoration: line-through; opacity: 70%; ${discountStyle}'>` + 2951 formatPrice(fullPrice, cy, true, round) + 2952 unit + 2953 '</small>' + 2954 lineBreak + 2955 formatPrice(newPrice, cy, true, round) + 2956 unit; 2957 } else { 2958 item.innerHTML = formatPrice(newPrice, cy, true, round); 2959 } 2960 } else if (priceId) { 2961 var newPrice = getItemPrice(priceId, cy || 'usd', false, true); 2962 if (showUndiscountedPrice) { 2963 newPrice = getItemPrice(itemPriceId, cy || 'usd', false, false); 2964 } 2965 2966 if (includesBase) { 2967 var itemBasePrice = getItemPrice( 2968 1, 2969 cy || 'usd', 2970 false, 2971 !showUndiscountedPrice 2972 ); 2973 newPrice = newPrice + itemBasePrice; 2974 } 2975 2976 if (basePriceId) { 2977 var itemBasePrice = getItemPrice(basePriceId, cy || 'usd', false, true); 2978 newPrice = newPrice - itemBasePrice; 2979 } 2980 console.log('updating price', { item, newPrice }); 2981 item.innerHTML = formatPrice(newPrice, cy, true, round); 2982 } else { 2983 console.log('no match', { item }); 2984 } 2985 }); 2986 2987 setCookie('sch_cy', cy); 2988 if (typeof cart != 'undefined') { 2989 cart.cy = cy; 2990 cart.currency = cy;
2991 setCookie('sch_cart', cart); 2992 setCookie('cart', cart); 2993 } 2994 if (typeof CartViewRender != 'undefined' && typeof priceCart != 'undefined' && typeof updateCurrencies != 'undefined') { 2995 CartViewRender(); 2996 } else { 2997 2998 } 2999 3000 var currencyNav = document.querySelectorAll('.currencyNav'); 3001 currencyNav.forEach(function (item) { 3002 item.innerHTML = `${cy.toUpperCase()}<small>â¼</small>`; 3003 }); 3004 3005 var currencySymbol = document.querySelectorAll('.currencySymbol'); 3006 currencySymbol.forEach(function (item) { 3007 if(typeof currencies != 'undefined' && currencies[cy] && currencies[cy].symbol) { 3008 item.innerHTML = currencies[cy].symbol; 3009 } 3010 }); 3011 3012 if (typeof window.updateHeaderLanguageCurrency == 'function') { 3013 window.updateHeaderLanguageCurrency(cy); 3014 } else { 3015 var headerCurrencyCode = `${cy || 'usd'}`.toUpperCase(); 3016 var headerCurrencySymbol = '$'; 3017 if (typeof currencies != 'undefined' && currencies[cy] && currencies[cy].symbol) { 3018 headerCurrencySymbol = currencies[cy].symbol; 3019 } 3020 var headerLanguageCode = `${window.pageLanguage || document.documentElement.getAttribute('lang') || 'en'}`.split('-')[0].toUpperCase(); 3021 3022 document.querySelectorAll('.js-header-currency-symbol').forEach(function (item) { 3023 item.innerHTML = headerCurrencySymbol; 3024 }); 3025 document.querySelectorAll('.lr-header-currency-code, .js-header-currency-code, .currencyCode, .js-currency-code').forEach(function (item) { 3026 item.innerHTML = headerCurrencyCode; 3027 }); 3028 document.querySelectorAll('.lr-header-language-code, .js-header-language-code').forEach(function (item) { 3029 item.innerHTML = headerLanguageCode; 3030 }); 3031 document.querySelectorAll('.lr-header-currency-language, .js-header-currency-language, #mh-globe-currency-lang').forEach(function (item) { 3032 var currencyCodeEl = item.querySelector('.lr-header-currency-code, .js-header-currency-code'); 3033 var languageCodeEl = item.querySelector('.lr-header-language-code, .js-header-language-code'); 3034 if (currencyCodeEl || languageCodeEl) { 3035 if (currencyCodeEl) { 3036 currencyCodeEl.innerHTML = headerCurrencyCode; 3037 } 3038 if (languageCodeEl) { 3039 languageCodeEl.innerHTML = headerLanguageCode; 3040 } 3041 } else { 3042 item.innerHTML = headerCurrencyCode + ' · ' + headerLanguageCode; 3043 } 3044 }); 3045 } 3046} 3047 3048 3049updateCurrencies() 3050 3051 3052 3053 3054 3055 3056 3057function getAbData() { 3058 return JSON.parse('[]') } 3059 3060function abVersionEquals(name, versionNumber) { 3061 var ab_version = getAbData() 3062 if(ab_version && ab_version[name] && parseInt(ab_version[name] || '0') === parseInt(versionNumber || '0')) { 3063 return true 3064 } 3065 if(window.location.href.includes(`AB_${name}=${versionNumber}`)) { 3066 return true 3067 } 3068 return false 3069} 3070 3071 3072 3073 3074function getCountryCode() { 3075 return "US" } 3076 3077 3078 3079 3080</script>
3080 3081 3082<div id="new_cart_panel"></div> 3083<div id="change_currency_panel"></div> 3084 3085<input type="hidden" id="schCurrency" name="schCurrency" value="usd" /> 3086 3087<!-- declaring variables that are set in the regular store -->
3088<script> 3089console.log('on page store loading') 3090IS_LR = 1; 3091// fbpid = null; 3092stack = null; 3093getCountryCode = null; 3094// Legacy name retained because the shared store loader already consumes it. 3095window.SCH_PAYMENT_SDK_INTENT_ENABLED = false; 3096window.PAYMENT_SDK_RETRY_ON_INTENT_ENABLED = false; 3097window.STORE_QUICK_PAY_SCRIPT_URL = "https:\/\/www.letsroam.com\/assets\/js\/store\/source\/quickPay.js?cache_version=v12.2.6354ccd.1788972148"; 3098window.paypalLocalDevelopmentVariantEnabled = window.paypalLocalDevelopmentVariantEnabled || function(testName, serverEnabled) { 3099 if (!false || !testName) { 3100 return serverEnabled === true; 3101 } 3102 var storageEnabled = false; 3103 try { 3104 var storageValue = window.localStorage.getItem('AB_' + testName); 3105 if (storageValue === null) { 3106 storageValue = window.localStorage.getItem(testName); 3107 } 3108 storageEnabled = ['1', 'true', 'v1'].indexOf(String(storageValue || '').toLowerCase()) >= 0; 3109 if (serverEnabled === true) { 3110 window.localStorage.setItem('AB_' + testName, '1'); 3111 } 3112 } catch (storageError) { 3113 storageEnabled = false; 3114 } 3115 if (storageEnabled) { 3116 var secureCookie = window.location.protocol === 'https:' ? '; Secure' : ''; 3117 document.cookie = 'AB_' + testName + '=1; Max-Age=2592000; Path=/; SameSite=Lax' + secureCookie; 3118 } 3119 return serverEnabled === true || storageEnabled; 3120}; 3121window.PAYPAL_QUICK_PAY_VARIANT_ENABLED = window.paypalLocalDevelopmentVariantEnabled( 3122 "", 3123 false); 3124window.PAYPAL_CLIENT_ID = ""; 3125window.PAYPAL_QUICK_PAY_ENABLED = 3126 window.PAYPAL_QUICK_PAY_VARIANT_ENABLED && window.PAYPAL_CLIENT_ID !== ''; 3127window.PAYPAL_SDK_URL = ""; 3128window.PAYPAL_QUICK_PAY_CONFIG = { 3129 variantEnabled: window.PAYPAL_QUICK_PAY_VARIANT_ENABLED, 3130 enabled: window.PAYPAL_QUICK_PAY_ENABLED, 3131 abTest: "", 3132 abVariant: window.PAYPAL_QUICK_PAY_VARIANT_ENABLED ? 'V1' : 'V0', 3133 clientId: window.PAYPAL_CLIENT_ID, 3134 environment: "", 3135 currency: "USD", 3136 sdkUrl: window.PAYPAL_SDK_URL, 3137 // The normal store quick-pay script determines whether this row also needs 3138 // Apple Pay / Google Pay. Preload PayPal eagerly, but reveal it only after 3139 // that first wallet decision so the floating row is not replaced afterward. 3140 waitForQuickPayCapability: true, 3141 processingFeeConfigured: true, 3142 processingFeeRate: 0}; 3143 3144// getSHAbVariant = function() { 3145 3146// }; 3147// sendSpookyError = function() { 3148 3149// }; 3150 3151 3152 3153</script>
3153 3154 3155 3156
3157<script> 3158if(typeof safeTippy != 'undefined') { 3159safeTippy(`.fa-info-circle`, { 3160 interactive: true, 3161 appendTo: 'parent', 3162 inlinePositioning: true 3163 }); 3164} 3165</script>
3165 3166
3167<script> 3168 var strpk = 'pk_live_518XJwhFDtlJLguHdXUQ28qbIj5WDIK4R9j5tHTkLNkjLK3ydauUvLlxyR9958rR3yS6rNQ5mdoYQ0QLKMhCzmTqX00i26Zm611'; 3169</script>
3169 3170 3171
3171<script defer src="https://js.stripe.com/v3/" onload="window.__storeStripeStaticLoadFailed=false;" onerror="window.__storeStripeStaticLoadFailed=true;"></script>
3171 3172 3173 3174<!-- Importing store helpers directly from the store -->
3175<script defer src="https://www.letsroam.com/assets/js/store/source/ViewFunctions.js?cache_version=v12.2.6354ccd.1789030553"></script>
vendor: 1 bytes, line 3175
3175
3176<script defer src="https://www.letsroam.com/assets/js/store/source/helpers.js?cache_version=v12.2.6354ccd"></script>
vendor: 1 bytes, line 3176
3176
3177<script defer src="https://www.letsroam.com/assets/js/store/source/CartView.js?cache_version=v12.2.6354ccd.1789585969"></script>
vendor: 1 bytes, line 3177
3177
3178<script defer src="https://www.letsroam.com/assets/js/store/source/BundleView.js?cache_version=v12.2.6354ccd.1789030553"></script>
vendor: 1 bytes, line 3178
3178
3179<script defer src="https://www.letsroam.com/assets/js/store/source/main.js?cache_version=v12.2.6354ccd"></script>
vendor: 1 bytes, line 3179
3179
3180<script defer src="https://www.letsroam.com/assets/js/store/source/quickPay.js?cache_version=v12.2.6354ccd.1788972148"></script>
3180 3181 3182<!-- --> 3183 3184 3185 3186 3187<!-- overriding the on click function for all a tags--> 3188<!-- only override if going to the store -->
3189<script> 3190if (typeof COOKIE_DOMAIN != 'undefined') { 3191 COOKIE_DOMAIN = '.letsroam.com'; 3192} 3193</script>
3193 3194 3195 3196<!-- importing the actual cart panels directly from the store --> 3197<!-- data for panels is loaded the inserted on the page -->
3198<script> 3199</script>
3199 3200 3201 3202 3203<!-- importing store styles --> 3204<!-- and deferring them as non-critical request --> 3205<link rel="preload" href="https://www.letsroam.com/assets/css/letsroam_store_only.css?cache_version=v12.2.6354ccd" as="style" onload="this.onload=null;this.rel='stylesheet'"> 3206 <noscript><link rel="stylesheet" href="https://www.letsroam.com/assets/css/letsroam_store_only.css?cache_version=v12.2.6354ccd"></noscript> 3207 3208 3209<!DOCTYPE html> 3210 3211 3212<html lang="en" dir="ltr"> 3213 3214<head>
3214<script>(function(w,i,g){w[g]=w[g]||[];if(typeof w[g].push=='function')w[g].push(i)}) 3215(window,'AW-878770880','google_tags_first_party');</script>
3215<script async src="/05aj/"></script>
3215 3216
3216<script> 3217 window.dataLayer = window.dataLayer || []; 3218 function gtag(){dataLayer.push(arguments);} 3219 gtag('js', new Date()); 3220 gtag('set', 'developer_id.dYzg1YT', true); 3221 gtag('config', 'AW-878770880'); 3222 </script>
3222 3223 3224 3225 3226 3227 3228
3228<script> 3229 var sch_url = 'https://www.letsroam.com/store/'; 3230 var IS_LR = true ; 3231 var fbpid = ""; 3232 </script>
3232 3233 <title>Scavenger Hunt Walking Tour Tickets And Gift Card</title><meta name="description" content="Purchase your scavenger hunt walking tour tickets and gift cards for up to 50% off!"> 3234 <meta charset="utf-8"> 3235 3236 <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> 3237 <meta name="apple-mobile-web-app-title" content="BCH Store"> 3238 3239 <link rel="icon" type="image/png" sizes="32x32" href="/assets/images/letsroam/favicon-32.png?cache_version=v12.2.6354ccd"> 3240 <link rel="shortcut icon" type="image/x-icon" href="/assets/images/letsroam/favicon.ico?cache_version=v12.2.6354ccd"> 3241 <link rel="apple-touch-icon" sizes="180x180" href="/assets/images/letsroam/apple-touch-icon.png?cache_version=v12.2.6354ccd"> 3242 <meta property="siteversion" content="1.0"> <link rel='canonical' href='https://www.letsroam.com/store' /><link rel='alternate' hreflang='en' href='https://www.letsroam.com/store' /><link rel='alternate' hreflang='zh' href='https://www.letsroam.com/zh/store' /><link rel='alternate' hreflang='da' href='https://www.letsroam.com/da/store' /><link rel='alternate' hreflang='nl' href='https://www.letsroam.com/nl/store' /><link rel='alternate' hreflang='fr' href='https://www.letsroam.com/fr/store' /><link rel='alternate' hreflang='de' href='https://www.letsroam.com/de/store' /><link rel='alternate' hreflang='it' href='https://www.letsroam.com/it/store' /><link rel='alternate' hreflang='ja' href='https://www.letsroam.com/ja/store' /><link rel='alternate' hreflang='ko' href='https://www.letsroam.com/ko/store' /><link rel='alternate' hreflang='no' href='https://www.letsroam.com/no/store' /><link rel='alternate' hreflang='pl' href='https://www.letsroam.com/pl/store' /><link rel='alternate' hreflang='pt' href='https://www.letsroam.com/pt/store' /><link rel='alternate' hreflang='es' href='https://www.letsroam.com/es/store' /><link rel='alternate' hreflang='sv' href='https://www.letsroam.com/sv/store' /><link rel='alternate' hreflang='el' href='https://www.letsroam.com/el/store' /><link rel='alternate' hreflang='tr' href='https://www.letsroam.com/tr/store' /><link rel='alternate' hreflang='hi' href='https://www.letsroam.com/hi/store' /><link rel='alternate' hreflang='ar' href='https://www.letsroam.com/ar/store' /><link rel='alternate' hreflang='ru' href='https://www.letsroam.com/ru/store' /><link rel='alternate' hreflang='fi' href='https://www.letsroam.com/fi/store' /><link rel='alternate' hreflang='cs' href='https://www.letsroam.com/cs/store' /><link rel='alternate' hreflang='hu' href='https://www.letsroam.com/hu/store' /><link rel='alternate' hreflang='ro' href='https://www.letsroam.com/ro/store' /><link rel='alternate' hreflang='he' href='https://www.letsroam.com/he/store' /><link rel='alternate' hreflang='th' href='https://www.letsroam.com/th/store' /><link rel='alternate' hreflang='x-default' href='https://www.letsroam.com/store' /> 3243 3244 3245 3246 <link href="/assets/css/letsroam_store.css?cache_version=v12.2.6354ccd" rel="stylesheet" type="text/css" /> 3247 3248</head> 3249 3250 3251 3252<!-- switching the order of the reminder and the nav based on the page --> 3253 <a href="/store/"> 3254 <div style="background-color: #e87722; background-position:center top; color: white; flex-direction: row; min-height: 30px; position: relative; overflow: hidden; gap: 10px;" class="lr-flex-wrapper--center-center h-padding--5 h-size-m--14 h-bold2 h-align--center h-width--100p"> 3255 <svg fill="white" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="https://www.w3.org/2000/svg" style="position: relative; z-index: 1;"> 3256 <path opacity="0.32" d="M9.24996 16.35V18.0156C9.24996 20.8134 9.24996 22.2123 9.7731 22.7851C10.2259 23.281 10.8973 23.5165 11.5607 23.4122C12.3271 23.2917 13.201 22.1993 14.9488 20.0146L19.4012 14.449C20.7327 12.7846 21.3984 11.9525 21.3992 11.2521C21.3998 10.643 21.1229 10.0669 20.6469 9.68688C20.0995 9.24996 19.0338 9.24996 16.9024 9.24996H16.35C15.7899 9.24996 15.5099 9.24996 15.296 9.14097C15.202 9.09308 15.1168 9.03094 15.0431 8.95728L8.95728 15.0431C9.03094 15.1168 9.09308 15.202 9.14097 15.296C9.24996 15.5099 9.24996 15.7899 9.24996 16.35Z" fill="white"/> 3257 <path d="M14.7498 7.64979V5.9842V5.98418C14.7498 3.18638 14.7498 1.78747 14.2267 1.2146C13.7739 0.718745 13.1024 0.483219 12.4391 0.587549C11.6727 0.708081 10.7988 1.80045 9.05102 3.98518L4.59856 9.55076C3.26708 11.2151 2.60134 12.0473 2.60059 12.7476C2.59993 13.3567 2.87686 13.9329 3.35288 14.3129C3.90024 14.7498 4.96594 14.7498 7.09734 14.7498H7.6498C8.20986 14.7498 8.48988 14.7498 8.7038 14.8588C8.79796 14.9068 8.88332 14.969 8.95712 15.0429L15.0429 8.9571C14.9691 8.8833 14.9068 8.79794 14.8588 8.70378C14.7498 8.48986 14.7498 8.20984 14.7498 7.64979Z" fill="white"/> 3258 </svg>
3259 <span id="saleMessage" style="position: relative; z-index: 1;"><span>Flash Sale</span>: <span data-pope-campaign-description>Up to 55% off all tickets and passes</span><span id="saleDeadline" hidden> <span>until</span> <time id="saleEndDate" class="do-not-translate" translate="no"></time>!</span></span> 3260 </div> 3261 3262 </a> 3263 <style> 3264 #saleMessage > .mobileOnly, 3265 #saleMessage > .desktopOnly { 3266 width: auto !important; 3267 } 3268 @media (max-width: 768px) { 3269 #saleMessage > .mobileOnly { display: inline !important; } 3270 #saleMessage > .desktopOnly { display: none !important; } 3271 } 3272 @media (min-width: 769px) { 3273 #saleMessage > .mobileOnly { display: none !important; } 3274 #saleMessage > .desktopOnly { display: inline !important; } 3275 } 3276 .snowflake { 3277 position: absolute; 3278 top: -15px; 3279 color: rgba(255, 255, 255, 0.85); 3280 font-size: 1.3em; 3281 user-select: none; 3282 pointer-events: none; 3283 animation: fall linear infinite; 3284 z-index: 0; 3285 text-shadow: 0 0 2px rgba(0, 0, 0, 0.2); 3286 font-variant-emoji: text; 3287 -webkit-font-variant-emoji: text; 3288 } 3289 3290 @keyframes fall { 3291 0% { 3292 transform: translateY(0) rotate(0deg); 3293 opacity: 0; 3294 } 3295 10% { 3296 opacity: 1; 3297 } 3298 90% { 3299 opacity: 1; 3300 } 3301 100% { 3302 transform: translateY(60px) rotate(360deg); 3303 opacity: 0; 3304 } 3305 } 3306 </style> 3307
3307<script data-sale-deadline-clock> 3308 (() => { 3309 const deadline = document.getElementById('saleDeadline'); 3310 const dateLabel = document.getElementById('saleEndDate'); 3311 if (!deadline || !dateLabel) return; 3312 3313 const language = document.documentElement.lang || 'en'; 3314 const useTodayLabel = /^en(?:-|$)/i.test(language); 3315 const formatter = new Intl.DateTimeFormat(language, { 3316 weekday: 'long', month: '2-digit', day: '2-digit' 3317 }); 3318 let midnightTimer; 3319 3320 function updateSaleDeadline() { 3321 clearTimeout(midnightTimer); 3322 const now = new Date(); 3323 // Match the standard sale: today in the visitor's local calendar. 3324 dateLabel.textContent = useTodayLabel ? 'today' : formatter.format(now); 3325 dateLabel.dateTime = `${now.getFullYear()}-${String(now.getMonth() + 1).padStart(2, '0')}-${String(now.getDate()).padStart(2, '0')}`; 3326 deadline.hidden = false; 3327 3328 const midnight = new Date(now); 3329 midnight.setHours(24, 0, 0, 0); 3330 midnightTimer = setTimeout(updateSaleDeadline, midnight.getTime() - now.getTime() + 50); 3331 } 3332 3333 updateSaleDeadline(); 3334 window.addEventListener('pageshow', updateSaleDeadline); 3335 document.addEventListener('visibilitychange', () => { 3336 if (!document.hidden) updateSaleDeadline(); 3337 }); 3338 })(); 3339 </script>
3339 3340 3341 3342<style> 3343 /* defining these here to prevent CLS */ 3344 .mobileOnly { 3345 display: block; 3346 } 3347 3348 .desktopOnly { 3349 display: none; 3350 } 3351 3352 @media screen and (min-width: 600px) { 3353 .mobileOnly { 3354 display: none; 3355 } 3356 3357 .desktopOnly { 3358 display: block; 3359 } 3360 } 3361 3362</style> 3363<nav class="navbar navbar-expand-lg navbar-dark bch-nav h-padding__h--10 h-padding-m__h--5"> 3364 3365 <button id="btnLeftPanel" style="width: 65px; box-shadow: none;" class="bchMobileHeaderIcon"><svg style="width: 26px; height: 26px;" class=" fa-bars fa-w-14" aria-hidden="true" focusable="false" data-prefix="fa" data-icon="bars" role="img" xmlns="https://www.w3.org/2000/svg" viewBox="0 0 448 512" data-=""><path fill="currentColor" d="M16 132h416c8.837 0 16-7.163 16-16V76c0-8.837-7.163-16-16-16H16C7.163 60 0 67.163 0 76v40c0 8.837 7.163 16 16 16zm0 160h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16zm0 160h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16z"></path></svg> 3366 <div style="font-size: 10px; margin-top: 5px;">Menu</div> 3367 </button> 3368 3369 <a class="bchLogo h-flex__ai--c" id="headerLogo" href="https://www.letsroam.com/" style="display: flex;"> 3370 <img alt="logo" src="https://www.letsroam.com/assets/img/Lets_Roam_Logo_horizontal.png" title="Let's Roam Scavenger Hunts" style="max-height: 65px; object-fit: contain; " /> 3371 </a> 3372 3373 <div style="flex: 1;" class="collapse navbar-collapse d-sm-none" id="navbarSupportedContent"> 3374 <ul class="navbar-nav mr-auto"> 3375 3376 <li class="nav-item active header_store_link"> 3377 <a class="nav-link" href="https://www.letsroam.com/store/"> 3378 <svg id="store_cart_svg_1" style="width:14px; height: 14px; color: white;" class=" fa-w-18" aria-hidden="true" focusable="false" data-prefix="fa" data-icon="shopping-cart" role="img" xmlns="https://www.w3.org/2000/svg" viewBox="0 0 24 24" data-=""> 3379 <path d="M17 18C15.89 18 15 18.89 15 20C15 20.5304 15.2107 21.0391 15.5858 21.4142C15.9609 21.7893 16.4696 22 17 22C17.5304 22 18.0391 21.7893 18.4142 21.4142C18.7893 21.0391 19 20.5304 19 20C19 19.4696 18.7893 18.9609 18.4142 18.5858C18.0391 18.2107 17.5304 18 17 18ZM1 2V4H3L6.6 11.59L5.24 14.04C5.09 14.32 5 14.65 5 15C5 15.5304 5.21071 16.0391 5.58579 16.4142C5.96086 16.7893 6.46957 17 7 17H19V15H7.42C7.3537 15 7.29011 14.9737 7.24322 14.9268C7.19634 14.8799 7.17 14.8163 7.17 14.75C7.17 14.7 7.18 14.66 7.2 14.63L8.1 13H15.55C16.3 13 16.96 12.58 17.3 11.97L20.88 5.5C20.95 5.34 21 5.17 21 5C21 4.73478 20.8946 4.48043 20.7071 4.29289C20.5196 4.10536 20.2652 4 20 4H5.21L4.27 2M7 18C5.89 18 5 18.89 5 20C5 20.5304 5.21071 21.0391 5.58579 21.4142C5.96086 21.7893 6.46957 22 7 22C7.53043 22 8.03914 21.7893 8.41421 21.4142C8.78929 21.0391 9 20.5304 9 20C9 19.4696 8.78929 18.9609 8.41421 18.5858C8.03914 18.2107 7.53043 18 7 18Z" fill="white" stroke="white"/> 3380 </svg> 3381 Store</a> 3382 </li> 3383 <li class="nav-item header_hiw_link"> 3384 <a class="nav-link" href="javascript: lrModalAction('modalFaqs', 'open')">How It Works</a> 3385 </li> 3386 <li class="nav-item header_locations_link"> 3387 <a class="nav-link" href="javascript: handleOurLocationsPress()">Our Locations</a> 3388 </li> 3389 <li class="nav-item header_reviews_link"> 3390 <a class="nav-link reviewLoader" href="javascript: lrModalAction('modalReviews', 'open')">Customer Reviews</a> 3391 </li> 3392 <li class="nav-item header_support_link"> 3393 <a class="nav-link" href="javascript: lrModalAction('modalSupport', 'open')">Support</a> 3394 </li> 3395 </ul> 3396 </div> 3397 3398 <div style="display: flex; align-items: center;"> 3399 3400 <a id="language_1_btn" style="display: block; margin-right: 8px; width: 40px; padding-top: 0px;" href="javascript: lrModalAction('languageAndCurrencyModal', 'open')" class="showLanguageModal " title="Language & Currency"> 3401 <svg id="store_global_svg_1" style="width: 24px; height: 24px; color: white; margin-bottom: 2px;" class="" aria-hidden="true" focusable="false" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="transparent"> 3402 <path d="M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z" stroke="#E87722" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 3403 <path d="M2 12H22M12 2C9.43223 4.69615 8 8.27674 8 12C8 15.7233 9.43223 19.3038 12 22C14.5678 19.3
3403038 16 15.7233 16 12C16 8.27674 14.5678 4.69615 12 2Z" stroke="#E87722" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 3404 </svg> 3405 <div style="font-size: 11px; margin-top: 2px; color: #E87722;" class="do-not-translate">EN/ <span class="currencySymbol">$ </span> 3406 </div> 3407 </a> 3408 3409 3410 <div id="btnRightPanel" class="btn-notify bchMobileHeaderIcon" style="display: flex; flex-direction: column; align-items: center;"> 3411 <span class="header-cart-icon-anchor" style="position: relative; display: inline-flex; width: 26px; height: 26px; flex: none;"> 3412 <span class="d-hide cartItemCount" style="cursor:pointer;position: absolute; top: -8px; padding: 2px;background-color: #f5a623; color: white;font-size: 11px;border-radius: 50%;min-width: 20px;height: 20px;text-align: center;left: 18px;display: block;z-index: 1;"></span> 3413 <svg id="store_cart_svg_2" style="margin-top: -2px; width:26px; height: 26px; cursor:pointer;" class="fa-shopping-cart fa-w-18" aria-hidden="true" focusable="false" data-prefix="fa" data-icon="shopping-cart" role="img" xmlns="https://www.w3.org/2000/svg" viewBox="0 0 24 24" data-=""> 3414 <path d="M17 18C15.89 18 15 18.89 15 20C15 20.5304 15.2107 21.0391 15.5858 21.4142C15.9609 21.7893 16.4696 22 17 22C17.5304 22 18.0391 21.7893 18.4142 21.4142C18.7893 21.0391 19 20.5304 19 20C19 19.4696 18.7893 18.9609 18.4142 18.5858C18.0391 18.2107 17.5304 18 17 18ZM1 2V4H3L6.6 11.59L5.24 14.04C5.09 14.32 5 14.65 5 15C5 15.5304 5.21071 16.0391 5.58579 16.4142C5.96086 16.7893 6.46957 17 7 17H19V15H7.42C7.3537 15 7.29011 14.9737 7.24322 14.9268C7.19634 14.8799 7.17 14.8163 7.17 14.75C7.17 14.7 7.18 14.66 7.2 14.63L8.1 13H15.55C16.3 13 16.96 12.58 17.3 11.97L20.88 5.5C20.95 5.34 21 5.17 21 5C21 4.73478 20.8946 4.48043 20.7071 4.29289C20.5196 4.10536 20.2652 4 20 4H5.21L4.27 2M7 18C5.89 18 5 18.89 5 20C5 20.5304 5.21071 21.0391 5.58579 21.4142C5.96086 21.7893 6.46957 22 7 22C7.53043 22 8.03914 21.7893 8.41421 21.4142C8.78929 21.0391 9 20.5304 9 20C9 19.4696 8.78929 18.9609 8.41421 18.5858C8.03914 18.2107 7.53043 18 7 18Z" fill="#E87722" stroke="#E87722"/> 3415 </svg> 3416 </span> 3417 <div style="font-size: 11px; margin-top: 3px;">Cart</div> 3418 </div> 3419 </div> 3420 3421 </nav> 3422 3423 3424 3425 3426 <style> 3427#bchLeftPanel { z-index: 2147483010 !important; } 3428#bchLeftPanel > div { width: min(300px, calc(100vw - 32px)) !important; overflow-y: auto; padding-bottom: env(safe-area-inset-bottom); } 3429#bchLeftPanel .wrapper { padding: 12px 0; } 3430#bchLeftPanel ul { margin: 0; padding: 0; list-style: none; } 3431#bchLeftPanel li { margin: 0; padding: 0; } 3432#bchLeftPanel .nav-link { display: flex; align-items: center; gap: 12px; min-height: 52px; padding: 12px 20px; font-size: 18px; line-height: 1.35; text-decoration: none; overflow-wrap: anywhere; } 3433#bchLeftPanel .nav-link > svg, 3434#bchLeftPanel .nav-link > i { width: 22px !important; height: 22px !important; flex: 0 0 22px; } 3435#bchLeftPanel .nav-link:focus-visible { outline: 2px solid white; outline-offset: -4px; } 3436#bchLeftPanel .nav-link > span { min-width: 0; } 3437</style> 3438<div id="bchLeftPanel" class="d-sm-block s-md-block d-lg-none d-xl-none" style="display: none; position: fixed; 3439 width: 250px; 3440 transition: all 300ms ease 0s; 3441 height: 100%; 3442 top: 0px; 3443 left: 0px; 3444 width: 100%; 3445 background: #00000044; 3446 z-index: 2000; 3447 "> 3448 <div style="position: fixed; 3449 width: 250px; 3450 transition: all 300ms ease 0s; 3451 height: 100%; 3452 background: #e87722; 3453 top: 0px; 3454 left: 0px; 3455 z-index: 2200;"> 3456 <div class="wrapper"> 3457 <ul style="flex-direction: column;"> 3458 <li> 3459 <a class="nav-link" href="https://www.letsroam.com/store/"> 3460 <svg style="width:25px; height: 25px; color: white;" class=" fa-shopping-cart fa-w-18" aria-hidden="true" focusable="false" data-prefix="fa" data-icon="shopping-cart" role="img" xmlns="https://www.w3.org/2000/svg" viewBox="0 0 576 512" data-=""><path fill="currentColor" d="M528.12 301.319l47.273-208C578.806 78.301 567.391 64 551.99 64H159.208l-9.166-44.81C147.758 8.021 137.93 0 126.529 0H24C10.745 0 0 10.745 0 24v16c0 13.255 10.745 24 24 24h69.883l70.248 343.435C147.325 417.1 136 435.222 136 456c0 30.928 25.072 56 56 56s56-25.072 56-56c0-15.674-6.447-29.835-16.824-40h209.647C430.447 426.165 424 440.326 424 456c0 30.928 25.072 56 56 56s56-25.072 56-56c0-22.172-12.888-41.332-31.579-50.405l5.517-24.276c3.413-15.018-8.002-29.319-23.403-29.319H218.117l-6.545-32h293.145c11.206 0 20.92-7.754 23.403-18.681z"></path></svg> Store 3461 </a> 3462 </li> 3463 3464 <li class="nav-item"> 3465 <a class="nav-link" href="javascript: lrModalAction('modalFaqs', 'open')"><svg aria-hidden="true" focusable="false" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0 M9 9a3 3 0 0 1 6 0c0 2-3 2-3 4 M12 16v.1"/></svg><span>How It Works</span></a> 3466 </li> 3467 <li class="nav-item"> 3468
3468<script> 3469 function handleOurLocationsPress() { 3470 const huntMap = document.querySelector('#huntMap'); 3471 if(huntMap) { 3472 smoothScroll(huntMap) 3473 } else { 3474 lrModalAction('modalLocations', 'open') 3475 } 3476 } 3477 </script>
3477 3478 <a class="nav-link" href="javascript:handleOurLocationsPress()"><svg aria-hidden="true" focusable="false" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M19 10c0 5-7 11-7 11S5 15 5 10a7 7 0 1 1 14 0 M15 10a3 3 0 1 1-6 0 3 3 0 0 1 6 0"/></svg><span>Our Locations</span></a> 3479 </li> 3480 <li class="nav-item"> 3481 <a class="nav-link reviewLoader" href="javascript: lrModalAction('modalReviews', 'open')"><svg style="width: 14px; height: 14px; color: white;" class=" fa-star fa-w-18" aria-hidden="true" focusable="false" data-prefix="fa" data-icon="star" role="img" xmlns="https://www.w3.org/2000/svg" viewBox="0 0 576 512" data-=""><path fill="currentColor" d="M259.3 17.8L194 150.2 47.9 171.5c-26.2 3.8-36.7 36.1-17.7 54.6l105.7 103-25 145.5c-4.5 26.3 23.2 46 46.4 33.7L288 439.6l130.7 68.7c23.2 12.2 50.9-7.4 46.4-33.7l-25-145.5 105.7-103c19-18.5 8.5-50.8-17.7-54.6L382 150.2 316.7 17.8c-11.7-23.6-45.6-23.9-57.4 0z"></path></svg>Reviews</a> 3482 </li> 3483 3484 <li class="nav-item"> 3485 <a class="nav-link" href="javascript: lrModalAction('modalSupport', 'open')"><svg style="width: 14px; height: 14px; color: white;" class=" fa-phone " aria-hidden="true" focusable="false" data-prefix="fa" data-icon="phone" role="img" xmlns="https://www.w3.org/2000/svg" viewBox="0 0 512 512" data-=""><path fill="currentColor" d="M493.4 24.6l-104-24c-11.3-2.6-22.9 3.3-27.5 13.9l-48 112c-4.2 9.8-1.4 21.3 6.9 28l60.6 49.6c-36 76.7-98.9 140.5-177.2 177.2l-49.6-60.6c-6.8-8.3-18.2-11.1-28-6.9l-112 48C3.9 366.5-2 378.1.6 389.4l24 104C27.1 504.2 36.7 512 48 512c256.1 0 464-207.5 464-464 0-11.2-7.7-20.9-18.6-23.4z"></path></svg>Support</a> 3486 </li> 3487 3488 <li class="nav-item"> 3489 <a class="nav-link" href="javascript: lrModalAction('languageAndCurrencyModal', 'open')"><svg aria-hidden="true" focusable="false" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0 M3 12h18 M12 3c4 5 4 13 0 18 M12 3c-4 5-4 13 0 18"/></svg><span class="do-not-translate" lang="en" translate="no">Change Language & Currency</span></a> 3490 </li> 3491 3492 3493 3494 </ul> 3495 3496 </div> 3497 </div> 3498</div> 3499 </div> 3500 3501 3502 3503 <!-- Start Content Wrapper --> 3504 <div class="container-fluid"> 3505 3506 3507 3508 <style> 3509 h1, h2, h3, h4, h5, h6, p, div, a { 3510 font-family: 'Plus Jakarta Sans'; 3511 font-weight: 300; 3512 margin-bottom: 0; 3513 } 3514 3515 body { 3516 background: white !important; 3517 } 3518 </style> 3519 3520 3521<div class="row"> 3522 <!-- CONTENT AREA --> 3523 <div id="bch-content-area" class="col-sm-12 col-md-12 col-lg-9 col-xl-9 s-content-area"> 3524 3525 <div id="bch-products-tickets" class="d-block lr-flexwrap lr-flexwrap--align lr-flex-wrapper--column h-margin-m__t--0"> 3526 3527<div id="bchBundlesArea" class="row d-block h-width--100p" style=""> 3528 3529 3530 3531 3532 3533 3534 3535 3536<aside 3537 id="ticketsSection" class="h-padding__t--20" 3538 style="max-width: 100%; background-color: #FFF4D4 !important; padding-bottom: 20px; " 3539> 3540 3541 3542 <h1 style="color:unset;font-weight: 800; display: flex; justify-content: center; flex-wrap: wrap; max-width: 100%;" class="h-align--center h-align-m--center h-size--60 h-size-m--30 h-margin-m__b--20 "> 3543 3544 <div style='font-weight: 800;'>Get Your </div> 3545 <img loading="lazy" alt="ticket" src='https://www.letsroam.com/assets/images/sch/vectors/tickets_vector.svg' width="189" height="70" style='width: 189px; height: 70px; max-width: 189px; max-height: 70px; display: inline-block;' class="h-margin__t--10 h-margin-m__t---5 " /> 3546 <div style='font-weight: 800;'>Scavenger Hunt Tickets Or Gifts</div> 3547 3548 </h1 > 3549 3550 <p class="h-align--center h-align-m--center h-size--18 h-size-m--18 h-padding-m__l--24 h-padding-m__r--24 h-margin__b--40" style='width: 800px; max-width: 100%; line-height: 160%; margin: 0 auto;'>Flash Sale until Thursday, 09/24! Tickets can be used on any of our <b style="font-weight: 800;">3,000+ hunts</b> all around the world.</p> 3551 3552 3553 3554 3555<div class="h-margin__t--20 h-margin--auto" style="max-width: 100%"> 3556 <div style="display: flex; max-width: 100%; flex-wrap: wrap; justify-content: space-around; margin: 0 auto; align-items: flex-end; " id="bundleCardWrapper" class="bundleCardWrapper"> 3557
3558<script> 3559 var navigateToBundleSafe = function(bundle, 3560 editItem, 3561 upgradeSale, 3562 straigtToCheckout = false, 3563 quantityOverride = 0) { 3564 // checking if navigate to bundle is defined 3565 if(typeof navigateToBundle == 'function') { 3566 navigateToBundle(bundle, editItem, upgradeSale, Number(bundle?.straight_to_checkout), quantityOverride ) 3567 } else { 3568 setTimeout(function() { 3569 navigateToBundleSafe(bundle, editItem, upgradeSale, Number(bundle?.straight_to_checkout), quantityOverride ) 3570 }, 500) 3571 } 3572 }; 3573</script>
3573 3574 3575<div 3576 style="text-decoration : none; width: 31%; max-width: 100%; text-align: center; position: relative;" 3577 class="bundleCard bundleCard-0 h-margin-m__b--25" 3578 data-bundle-id="224" 3579 data-bundle-title="Scavenger Hunt Ticket" 3580> 3581 <div onclick="navigateToBundleSafe(getBundleInfo(224), null, null, false, 0)" style="border: none; border-radius: 10px; cursor: pointer; background: white; color: black; box-shadow: 0px 14px 14px 0px #DBCCA140; 3582 ; position: relative;" class="subscription-card h-padding--32"> 3583 <div style="display: flex; align-items: center; justify-content: center;"> 3584 3585 <div> 3586 <div class="h-size--26 bundleCardTitle" style="color: #38556F; text-align: center; font-weight: bold; min-height: 60px;"> 3587 Scavenger Hunt Ticket </div> 3588 <div class="h-size--20" style="text-align: center;"> 3589 3590 3591 <span class='autoUpdateCurrency' data-price-show-full="-1" data-discount-style="" data-unit=" / player" data-price='12.99'>12.99 / player</span> 3592 3593 </div> 3594 </div> 3595 </div> 3596 <div style="display: flex; 3597 flex-direction: column; 3598 justify-content: space-between; 3599 "> 3600 <div style="text-align: left; min-height: 270px;" class="desktop-min-height" > 3601 <div class='h-padding--10' style='display: flex; justify-content: flex-start; width: 100%;'><svg style="width: 16px; min-width: 16px; height: 16px; color: #38556F; margin-top: 2px;" class=" fa-check-circle " aria-hidden="true" focusable="false" data-prefix="fa" data-icon="check-circle" role="img" xmlns="https://www.w3.org/2000/svg" viewBox="0 0 512 512" ><path fill="currentColor" d="M504 256c0 136.967-111.033 248-248 248S8 392.967 8 256 119.033 8 256 8s248 111.033 248 248zM227.314 387.314l184-184c6.248-6.248 6.248-16.379 0-22.627l-22.627-22.627c-6.248-6.249-16.379-6.249-22.628 0L216 308.118l-70.059-70.059c-6.248-6.248-16.379-6.248-22.628 0l-22.627 22.627c-6.248 6.248-6.248 16.379 0 22.627l104 104c6.249 6.249 16.379 6.249 22.628.001z"></path></svg><div class='h-padding__l--5' style='text-align: left;'>Requires ticket for each player (5 & older)</div></div><div class='h-padding--10' style='display: flex; justify-content: flex-start; width: 100%;'><svg style="width: 16px; min-width: 16px; height: 16px; color: #38556F; margin-top: 2px;" class=" fa-check-circle " aria-hidden="true" focusable="false" data-prefix="fa" data-icon="check-circle" role="img" xmlns="https://www.w3.org/2000/svg" viewBox="0 0 512 512" ><path fill="currentColor" d="M504 256c0 136.967-111.033 248-248 248S8 392.967 8 256 119.033 8 256 8s248 111.033 248 248zM227.314 387.314l184-184c6.248-6.248 6.248-16.379 0-22.627l-22.627-22.627c-6.248-6.249-16.379-6.249-22.628 0L216 308.118l-70.059-70.059c-6.248-6.248-16.379-6.248-22.628 0l-22.627 22.627c-6.248 6.248-6.248 16.379 0 22.627l104 104c6.249 6.249 16.379 6.249 22.628.001z"></path></svg><div class='h-padding__l--5' style='text-align: left;'>Tickets must be used together on any ONE of our outdoor scavenger hunts in 3,000+ cities</div></div> </div> 3602 <div style="display: flex; flex-direction: column; align-items: center;" class="h-margin__b--20 h-margin__t--10"> 3603 <div class="select-card-add-to-cart" style="background: #38556F; width: 100%; padding: 10px; border-radius: 10px; color: white; font-size: 18px; font-weight: 700; display: flex; justify-content: center; box-shadow: 0px 4px 8px rgb(0 0 0 / 20%);"> 3604 <img alt="ticket" src='/assets/images/sch/vectors/ticket_cta_vector.svg' width="24" height="24" style='width: 24px; height: 24px; display: inline-block;'/> 3605 <div style="margin-left: 10px; font-weight: 700;">Get Tickets</div> 3606 </div> 3607 </div> 3608 </div> 3609 3610 3611 3612 </div> 3613
3614<script> 3615 if (typeof window.roundUpVariantCurrencyBullets !== 'function') { 3616 window.roundUpVariantCurrencyBullets = function() { 3617 document.querySelectorAll('.js-round-up-currency').forEach(function(el) { 3618 var text = (el.textContent || '').trim(); 3619 var match = text.match(/^(.*?)(\d[\d.,]*)(.*)$/); 3620 if (!match) { 3621 return; 3622 } 3623 3624 var prefix = match[1]; 3625 var numericText = match[2]; 3626 var suffix = match[3]; 3627 var normalizedNumber = numericText.replace(/\s/g, ''); 3628 var lastDotIndex = normalizedNumber.lastIndexOf('.'); 3629 var lastCommaIndex = normalizedNumber.lastIndexOf(','); 3630 var decimalSeparator = ''; 3631 3632 if (lastDotIndex !== -1 || lastCommaIndex !== -1) { 3633 decimalSeparator = lastDotIndex > lastCommaIndex ? '.' : ','; 3634 var separatorIndex = decimalSeparator === '.' ? lastDotIndex : lastCommaIndex; 3635 if (normalizedNumber.length - separatorIndex - 1 > 2) { 3636 decimalSeparator = ''; 3637 } 3638 } 3639 3640 if (decimalSeparator !== '') { 3641 var thousandsSeparator = decimalSeparator === '.' ? ',' : '.'; 3642 normalizedNumber = normalizedNumber.split(thousandsSeparator).join(''); 3643 normalizedNumber = normalizedNumber.replace(decimalSeparator, '.'); 3644 } else { 3645 normalizedNumber = normalizedNumber.replace(/[.,]/g, ''); 3646 } 3647 3648 var parsedValue = Number(normalizedNumber); 3649 if (!Number.isFinite(parsedValue)) { 3650 return; 3651 } 3652 3653 var roundedText = prefix + Math.ceil(parsedValue) + suffix; 3654 if (el.textContent !== roundedText) { 3655 el.textContent = roundedText; 3656 } 3657 }); 3658 }; 3659 3660 window.initRoundUpVariantCurrencyBullets = function() { 3661 if (window.roundUpVariantCurrencyBulletsObserver || !document.body) { 3662 return; 3663 } 3664 3665 var runRoundedBulletSync = function() { 3666 clearTimeout(window.roundUpVariantCurrencyBulletsTimeout); 3667 window.roundUpVariantCurrencyBulletsTimeout = setTimeout(function() { 3668 window.roundUpVariantCurrencyBullets(); 3669 }, 0); 3670 }; 3671 3672 window.roundUpVariantCurrencyBulletsObserver = new MutationObserver(function(mutations) { 3673 for (var i = 0; i < mutations.length; i++) { 3674 var mutation = mutations[i]; 3675 var target = mutation.target && mutation.target.nodeType === Node.TEXT_NODE 3676 ? mutation.target.parentElement 3677 : mutation.target; 3678 3679 if (target && target.closest && target.closest('.js-round-up-currency')) { 3680 runRoundedBulletSync(); 3681 return; 3682 } 3683 } 3684 }); 3685 3686 window.roundUpVariantCurrencyBulletsObserver.observe(document.body, { 3687 subtree: true, 3688 childList: true, 3689 characterData: true 3690 }); 3691 }; 3692 3693 window.hookRoundUpVariantCurrencyBulletsToCurrencyUpdates = function() { 3694 if ( 3695 window.roundUpVariantCurrencyBulletsCurrencyHooked 3696 || typeof updateCurrencies !== 'function' 3697 ) { 3698 return; 3699 } 3700 3701 var originalUpdateCurrencies = updateCurrencies; 3702 updateCurrencies = function() { 3703 var result = originalUpdateCurrencies.apply(this, arguments); 3704 [0, 50, 250].forEach(function(delay) { 3705 setTimeout(function() { 3706 window.roundUpVariantCurrencyBullets(); 3707 }, delay); 3708 }); 3709 return result; 3710 }; 3711 3712 window.roundUpVariantCurrencyBulletsCurrencyHooked = true; 3713 }; 3714 3715 document.addEventListener('DOMContentLoaded', function() { 3716 [0, 250, 1000].forEach(function(delay) { 3717 setTimeout(window.roundUpVariantCurrencyBullets, delay); 3718 }); 3719 window.initRoundUpVariantCurrencyBullets(); 3720 window.hookRoundUpVariantCurrencyBulletsToCurrencyUpdates(); 3721 }); 3722 } 3723 3724 if (typeof window.initRoundUpVariantCurrencyBullets === 'function') { 3725 window.initRoundUpVariantCurrencyBullets(); 3726 } 3727 if (typeof window.hookRoundUpVariantCurrencyBulletsToCurrencyUpdates === 'function') { 3728 window.hookRoundUpVariantCurrencyBulletsToCurrencyUpdates(); 3729 } 3730 window.roundUpVariantCurrencyBullets(); 3731</script>
3731 3732 3733 3734 3735 3736</div> 3737
3738<script> 3739 var navigateToBundleSafe = function(bundle, 3740 editItem, 3741 upgradeSale, 3742 straigtToCheckout = false, 3743 quantityOverride = 0) { 3744 // checking if navigate to bundle is defined 3745 if(typeof navigateToBundle == 'function') { 3746 navigateToBundle(bundle, editItem, upgradeSale, Number(bundle?.straight_to_checkout), quantityOverride ) 3747 } else { 3748 setTimeout(function() { 3749 navigateToBundleSafe(bundle, editItem, upgradeSale, Number(bundle?.straight_to_checkout), quantityOverride ) 3750 }, 500) 3751 } 3752 }; 3753</script>
3753 3754 3755<div 3756 style="text-decoration : none; width: 31%; max-width: 100%; text-align: center; position: relative;" 3757 class="bundleCard bundleCard-1 h-margin-m__b--25" 3758 data-bundle-id="205" 3759 data-bundle-title="Family/Friends Annual Pass" 3760> 3761 <div onclick="navigateToBundleSafe(getBundleInfo(205), null, null, false, 0)" style="border: 1px solid var(--orange); border-radius: 10px; cursor: pointer; background: white; color: black; box-shadow: 0px 24px 34px 0px #E777233D; 3762 ; position: relative;" class="subscription-card h-padding--32"> 3763 <div style="display: flex; align-items: center; justify-content: center;"> 3764 3765 <div> 3766 <div class="h-size--26 bundleCardTitle" style="color: var(--orange); text-align: center; font-weight: bold; min-height: 60px;"> 3767 Family/Friends Annual Pass </div> 3768 <div class="h-size--20" style="text-align: center;"> 3769 3770 3771 <span class='autoUpdateCurrency' data-price-show-full="-1" data-discount-style="" data-unit=" / bundle" data-price='79.99'>79.99 / bundle</span> 3772 3773 </div> 3774 </div> 3775 </div> 3776 <div style="display: flex; 3777 flex-direction: column; 3778 justify-content: space-between; 3779 "> 3780 <div style="text-align: left; min-height: 270px;" class="desktop-min-height" > 3781 <div class='h-padding--10' style='display: flex; justify-content: flex-start; width: 100%;'><svg style="width: 16px; min-width: 16px; height: 16px; color: var(--orange); margin-top: 2px;" class=" fa-check-circle " aria-hidden="true" focusable="false" data-prefix="fa" data-icon="check-circle" role="img" xmlns="https://www.w3.org/2000/svg" viewBox="0 0 512 512" ><path fill="currentColor" d="M504 256c0 136.967-111.033 248-248 248S8 392.967 8 256 119.033 8 256 8s248 111.033 248 248zM227.314 387.314l184-184c6.248-6.248 6.248-16.379 0-22.627l-22.627-22.627c-6.248-6.249-16.379-6.249-22.628 0L216 308.118l-70.059-70.059c-6.248-6.248-16.379-6.248-22.628 0l-22.627 22.627c-6.248 6.248-6.248 16.379 0 22.627l104 104c6.249 6.249 16.379 6.249 22.628.001z"></path></svg><div class='h-padding__l--5' style='text-align: left;'>Valid for one year for up to 6 players playing together</div></div><div class='h-padding--10' style='display: flex; justify-content: flex-start; width: 100%;'><svg style="width: 16px; min-width: 16px; height: 16px; color: var(--orange); margin-top: 2px;" class=" fa-check-circle " aria-hidden="true" focusable="false" data-prefix="fa" data-icon="check-circle" role="img" xmlns="https://www.w3.org/2000/svg" viewBox="0 0 512 512" ><path fill="currentColor" d="M504 256c0 136.967-111.033 248-248 248S8 392.967 8 256 119.033 8 256 8s248 111.033 248 248zM227.314 387.314l184-184c6.248-6.248 6.248-16.379 0-22.627l-22.627-22.627c-6.248-6.249-16.379-6.249-22.628 0L216 308.118l-70.059-70.059c-6.248-6.248-16.379-6.248-22.628 0l-22.627 22.627c-6.248 6.248-6.248 16.379 0 22.627l104 104c6.249 6.249 16.379 6.249 22.628.001z"></path></svg><div class='h-padding__l--5' style='text-align: left;'>Unlimited indoor & outdoor scavenger hunts & more with ANY theme</div></div> </div> 3782 <div style="display: flex; flex-direction: column; align-items: center;" class="h-margin__b--20 h-margin__t--10"> 3783 <div class="select-card-add-to-cart" style="background: var(--orange); width: 100%; padding: 10px; border-radius: 10px; color: white; font-size: 18px; font-weight: 700; display: flex; justify-content: center; box-shadow: 0px 4px 8px rgb(0 0 0 / 20%);"> 3784 <img alt="ticket" src='/assets/images/sch/vectors/ticket_cta_vector.svg' width="24" height="24" style='width: 24px; height: 24px; display: inline-block;'/> 3785 <div style="margin-left: 10px; font-weight: 700;">Get Tickets</div> 3786 </div> 3787 </div> 3788 </div> 3789 3790 3791 <div style="position: absolute; top: -20px; left: 0; right: 0; height: 40px; display: flex; justify-content: center; align-items: center; color: var(--orange)"> 3792 <div style="width: 200px; height: 40px; background: #FFFFFF; border: 1px solid var(--orange); border-radius: 10px; line-height: 40px; font-weight: 800; font-size: 14px;"> 3793 Most Popular 3794 </div> 3795 </div> 3796 3797 3798 </div> 3799
3800<script> 3801 if (typeof window.roundUpVariantCurrencyBullets !== 'function') { 3802 window.roundUpVariantCurrencyBullets = function() { 3803 document.querySelectorAll('.js-round-up-currency').forEach(function(el) { 3804 var text = (el.textContent || '').trim(); 3805 var match = text.match(/^(.*?)(\d[\d.,]*)(.*)$/); 3806 if (!match) { 3807 return; 3808 } 3809 3810 var prefix = match[1]; 3811 var numericText = match[2]; 3812 var suffix = match[3]; 3813 var normalizedNumber = numericText.replace(/\s/g, ''); 3814 var lastDotIndex = normalizedNumber.lastIndexOf('.'); 3815 var lastCommaIndex = normalizedNumber.lastIndexOf(','); 3816 var decimalSeparator = ''; 3817 3818 if (lastDotIndex !== -1 || lastCommaIndex !== -1) { 3819 decimalSeparator = lastDotIndex > lastCommaIndex ? '.' : ','; 3820 var separatorIndex = decimalSeparator === '.' ? lastDotIndex : lastCommaIndex; 3821 if (normalizedNumber.length - separatorIndex - 1 > 2) { 3822 decimalSeparator = ''; 3823 } 3824 } 3825 3826 if (decimalSeparator !== '') { 3827 var thousandsSeparator = decimalSeparator === '.' ? ',' : '.'; 3828 normalizedNumber = normalizedNumber.split(thousandsSeparator).join(''); 3829 normalizedNumber = normalizedNumber.replace(decimalSeparator, '.'); 3830 } else { 3831 normalizedNumber = normalizedNumber.replace(/[.,]/g, ''); 3832 } 3833 3834 var parsedValue = Number(normalizedNumber); 3835 if (!Number.isFinite(parsedValue)) { 3836 return; 3837 } 3838 3839 var roundedText = prefix + Math.ceil(parsedValue) + suffix; 3840 if (el.textContent !== roundedText) { 3841 el.textContent = roundedText; 3842 } 3843 }); 3844 }; 3845 3846 window.initRoundUpVariantCurrencyBullets = function() { 3847 if (window.roundUpVariantCurrencyBulletsObserver || !document.body) { 3848 return; 3849 } 3850 3851 var runRoundedBulletSync = function() { 3852 clearTimeout(window.roundUpVariantCurrencyBulletsTimeout); 3853 window.roundUpVariantCurrencyBulletsTimeout = setTimeout(function() { 3854 window.roundUpVariantCurrencyBullets(); 3855 }, 0); 3856 }; 3857 3858 window.roundUpVariantCurrencyBulletsObserver = new MutationObserver(function(mutations) { 3859 for (var i = 0; i < mutations.length; i++) { 3860 var mutation = mutations[i]; 3861 var target = mutation.target && mutation.target.nodeType === Node.TEXT_NODE 3862 ? mutation.target.parentElement 3863 : mutation.target; 3864 3865 if (target && target.closest && target.closest('.js-round-up-currency')) { 3866 runRoundedBulletSync(); 3867 return; 3868 } 3869 } 3870 }); 3871 3872 window.roundUpVariantCurrencyBulletsObserver.observe(document.body, { 3873 subtree: true, 3874 childList: true, 3875 characterData: true 3876 }); 3877 }; 3878 3879 window.hookRoundUpVariantCurrencyBulletsToCurrencyUpdates = function() { 3880 if ( 3881 window.roundUpVariantCurrencyBulletsCurrencyHooked 3882 || typeof updateCurrencies !== 'function' 3883 ) { 3884 return; 3885 } 3886 3887 var originalUpdateCurrencies = updateCurrencies; 3888 updateCurrencies = function() { 3889 var result = originalUpdateCurrencies.apply(this, arguments); 3890 [0, 50, 250].forEach(function(delay) { 3891 setTimeout(function() { 3892 window.roundUpVariantCurrencyBullets(); 3893 }, delay); 3894 }); 3895 return result; 3896 }; 3897 3898 window.roundUpVariantCurrencyBulletsCurrencyHooked = true; 3899 }; 3900 3901 document.addEventListener('DOMContentLoaded', function() { 3902 [0, 250, 1000].forEach(function(delay) { 3903 setTimeout(window.roundUpVariantCurrencyBullets, delay); 3904 }); 3905 window.initRoundUpVariantCurrencyBullets(); 3906 window.hookRoundUpVariantCurrencyBulletsToCurrencyUpdates(); 3907 }); 3908 } 3909 3910 if (typeof window.initRoundUpVariantCurrencyBullets === 'function') { 3911 window.initRoundUpVariantCurrencyBullets(); 3912 } 3913 if (typeof window.hookRoundUpVariantCurrencyBulletsToCurrencyUpdates === 'function') { 3914 window.hookRoundUpVariantCurrencyBulletsToCurrencyUpdates(); 3915 } 3916 window.roundUpVariantCurrencyBullets(); 3917</script>
3917 3918 3919 3920 3921 3922</div> 3923
3924<script> 3925 var navigateToBundleSafe = function(bundle, 3926 editItem, 3927 upgradeSale, 3928 straigtToCheckout = false, 3929 quantityOverride = 0) { 3930 // checking if navigate to bundle is defined 3931 if(typeof navigateToBundle == 'function') { 3932 navigateToBundle(bundle, editItem, upgradeSale, Number(bundle?.straight_to_checkout), quantityOverride ) 3933 } else { 3934 setTimeout(function() { 3935 navigateToBundleSafe(bundle, editItem, upgradeSale, Number(bundle?.straight_to_checkout), quantityOverride ) 3936 }, 500) 3937 } 3938 }; 3939</script>
3939 3940 3941<div 3942 style="text-decoration : none; width: 31%; max-width: 100%; text-align: center; position: relative;" 3943 class="bundleCard bundleCard-2 h-margin-m__b--25" 3944 data-bundle-id="206" 3945 data-bundle-title="Coupleâs Annual Pass" 3946> 3947 <div onclick="navigateToBundleSafe(getBundleInfo(206), null, null, false, 0)" style="border: none; border-radius: 10px; cursor: pointer; background: white; color: black; box-shadow: 0px 14px 14px 0px #DBCCA140; 3948 ; position: relative;" class="subscription-card h-padding--32"> 3949 <div style="display: flex; align-items: center; justify-content: center;"> 3950 3951 <div> 3952 <div class="h-size--26 bundleCardTitle" style="color: #98CD57;; text-align: center; font-weight: bold; min-height: 60px;"> 3953 Coupleâs Annual Pass </div> 3954 <div class="h-size--20" style="text-align: center;"> 3955 3956 3957 <span class='autoUpdateCurrency' data-price-show-full="-1" data-discount-style="" data-unit=" / bundle" data-price='69.99'>69.99 / bundle</span> 3958 3959 </div> 3960 </div> 3961 </div> 3962 <div style="display: flex; 3963 flex-direction: column; 3964 justify-content: space-between; 3965 "> 3966 <div style="text-align: left; min-height: 270px;" class="desktop-min-height" > 3967 <div class='h-padding--10' style='display: flex; justify-content: flex-start; width: 100%;'><svg style="width: 16px; min-width: 16px; height: 16px; color: #98CD57;; margin-top: 2px;" class=" fa-check-circle " aria-hidden="true" focusable="false" data-prefix="fa" data-icon="check-circle" role="img" xmlns="https://www.w3.org/2000/svg" viewBox="0 0 512 512" ><path fill="currentColor" d="M504 256c0 136.967-111.033 248-248 248S8 392.967 8 256 119.033 8 256 8s248 111.033 248 248zM227.314 387.314l184-184c6.248-6.248 6.248-16.379 0-22.627l-22.627-22.627c-6.248-6.249-16.379-6.249-22.628 0L216 308.118l-70.059-70.059c-6.248-6.248-16.379-6.248-22.628 0l-22.627 22.627c-6.248 6.248-6.248 16.379 0 22.627l104 104c6.249 6.249 16.379 6.249 22.628.001z"></path></svg><div class='h-padding__l--5' style='text-align: left;'>Valid for one year for one couple playing together</div></div><div class='h-padding--10' style='display: flex; justify-content: flex-start; width: 100%;'><svg style="width: 16px; min-width: 16px; height: 16px; color: #98CD57;; margin-top: 2px;" class=" fa-check-circle " aria-hidden="true" focusable="false" data-prefix="fa" data-icon="check-circle" role="img" xmlns="https://www.w3.org/2000/svg" viewBox="0 0 512 512" ><path fill="currentColor" d="M504 256c0 136.967-111.033 248-248 248S8 392.967 8 256 119.033 8 256 8s248 111.033 248 248zM227.314 387.314l184-184c6.248-6.248 6.248-16.379 0-22.627l-22.627-22.627c-6.248-6.249-16.379-6.249-22.628 0L216 308.118l-70.059-70.059c-6.248-6.248-16.379-6.248-22.628 0l-22.627 22.627c-6.248 6.248-6.248 16.379 0 22.627l104 104c6.249 6.249 16.379 6.249 22.628.001z"></path></svg><div class='h-padding__l--5' style='text-align: left;'>Unlimited indoor & outdoor scavenger hunts & more with date theme</div></div> </div> 3968 <div style="display: flex; flex-direction: column; align-items: center;" class="h-margin__b--20 h-margin__t--10"> 3969 <div class="select-card-add-to-cart" style="background: #98CD57;; width: 100%; padding: 10px; border-radius: 10px; color: white; font-size: 18px; font-weight: 700; display: flex; justify-content: center; box-shadow: 0px 4px 8px rgb(0 0 0 / 20%);"> 3970 <img alt="ticket" src='/assets/images/sch/vectors/ticket_cta_vector.svg' width="24" height="24" style='width: 24px; height: 24px; display: inline-block;'/> 3971 <div style="margin-left: 10px; font-weight: 700;">Get Tickets</div> 3972 </div> 3973 </div> 3974 </div> 3975 3976 3977 3978 </div> 3979
3980<script> 3981 if (typeof window.roundUpVariantCurrencyBullets !== 'function') { 3982 window.roundUpVariantCurrencyBullets = function() { 3983 document.querySelectorAll('.js-round-up-currency').forEach(function(el) { 3984 var text = (el.textContent || '').trim(); 3985 var match = text.match(/^(.*?)(\d[\d.,]*)(.*)$/); 3986 if (!match) { 3987 return; 3988 } 3989 3990 var prefix = match[1]; 3991 var numericText = match[2]; 3992 var suffix = match[3]; 3993 var normalizedNumber = numericText.replace(/\s/g, ''); 3994 var lastDotIndex = normalizedNumber.lastIndexOf('.'); 3995 var lastCommaIndex = normalizedNumber.lastIndexOf(','); 3996 var decimalSeparator = ''; 3997 3998 if (lastDotIndex !== -1 || lastCommaIndex !== -1) { 3999 decimalSeparator = lastDotIndex > lastCommaIndex ? '.' : ','; 4000 var separatorIndex = decimalSeparator === '.' ? lastDotIndex : lastCommaIndex; 4001 if (normalizedNumber.length - separatorIndex - 1 > 2) { 4002 decimalSeparator = ''; 4003 } 4004 } 4005 4006 if (decimalSeparator !== '') { 4007 var thousandsSeparator = decimalSeparator === '.' ? ',' : '.'; 4008 normalizedNumber = normalizedNumber.split(thousandsSeparator).join(''); 4009 normalizedNumber = normalizedNumber.replace(decimalSeparator, '.'); 4010 } else { 4011 normalizedNumber = normalizedNumber.replace(/[.,]/g, ''); 4012 } 4013 4014 var parsedValue = Number(normalizedNumber); 4015 if (!Number.isFinite(parsedValue)) { 4016 return; 4017 } 4018 4019 var roundedText = prefix + Math.ceil(parsedValue) + suffix; 4020 if (el.textContent !== roundedText) { 4021 el.textContent = roundedText; 4022 } 4023 }); 4024 }; 4025 4026 window.initRoundUpVariantCurrencyBullets = function() { 4027 if (window.roundUpVariantCurrencyBulletsObserver || !document.body) { 4028 return; 4029 } 4030 4031 var runRoundedBulletSync = function() { 4032 clearTimeout(window.roundUpVariantCurrencyBulletsTimeout); 4033 window.roundUpVariantCurrencyBulletsTimeout = setTimeout(function() { 4034 window.roundUpVariantCurrencyBullets(); 4035 }, 0); 4036 }; 4037 4038 window.roundUpVariantCurrencyBulletsObserver = new MutationObserver(function(mutations) { 4039 for (var i = 0; i < mutations.length; i++) { 4040 var mutation = mutations[i]; 4041 var target = mutation.target && mutation.target.nodeType === Node.TEXT_NODE 4042 ? mutation.target.parentElement 4043 : mutation.target; 4044 4045 if (target && target.closest && target.closest('.js-round-up-currency')) { 4046 runRoundedBulletSync(); 4047 return; 4048 } 4049 } 4050 }); 4051 4052 window.roundUpVariantCurrencyBulletsObserver.observe(document.body, { 4053 subtree: true, 4054 childList: true, 4055 characterData: true 4056 }); 4057 }; 4058 4059 window.hookRoundUpVariantCurrencyBulletsToCurrencyUpdates = function() { 4060 if ( 4061 window.roundUpVariantCurrencyBulletsCurrencyHooked 4062 || typeof updateCurrencies !== 'function' 4063 ) { 4064 return; 4065 } 4066 4067 var originalUpdateCurrencies = updateCurrencies; 4068 updateCurrencies = function() { 4069 var result = originalUpdateCurrencies.apply(this, arguments); 4070 [0, 50, 250].forEach(function(delay) { 4071 setTimeout(function() { 4072 window.roundUpVariantCurrencyBullets(); 4073 }, delay); 4074 }); 4075 return result; 4076 }; 4077 4078 window.roundUpVariantCurrencyBulletsCurrencyHooked = true; 4079 }; 4080 4081 document.addEventListener('DOMContentLoaded', function() { 4082 [0, 250, 1000].forEach(function(delay) { 4083 setTimeout(window.roundUpVariantCurrencyBullets, delay); 4084 }); 4085 window.initRoundUpVariantCurrencyBullets(); 4086 window.hookRoundUpVariantCurrencyBulletsToCurrencyUpdates(); 4087 }); 4088 } 4089 4090 if (typeof window.initRoundUpVariantCurrencyBullets === 'function') { 4091 window.initRoundUpVariantCurrencyBullets(); 4092 } 4093 if (typeof window.hookRoundUpVariantCurrencyBulletsToCurrencyUpdates === 'function') { 4094 window.hookRoundUpVariantCurrencyBulletsToCurrencyUpdates(); 4095 } 4096 window.roundUpVariantCurrencyBullets(); 4097</script>
4097 4098 4099 4100 4101 4102</div> 4103 </div> 4104</div> 4105 4106 4107 4108<style> 4109 4110 @media (max-width: 1000px) { 4111 4112 } 4113 4114 @media (max-width: 800px) { 4115 .bundleCard { 4116 width: 100% !important; 4117 margin-bottom: 12px; 4118 } 4119 #flashSaleInfo { 4120 display: none; 4121 } 4122 #bundleCardWrapper { 4123 align-items: flex-start !important; 4124 } 4125 .bundleCardTitle{ 4126 font-size: 22px;; 4127 } 4128 .subscription-card{ 4129 padding: 10px !important; 4130 padding-top: 30px !important; 4131 margin-left: 25px !important; 4132 margin-right: 25px !important; 4133 margin-bottom: 12px !important; 4134 } 4135 /* .bundleCard-0{ 4136 order: 3; 4137 } 4138 .bundleCard-1{ 4139 order: 1; 4140 } 4141 .bundleCard-2{ 4142 order: 2; 4143 } */ 4144 4145 } 4146 #bchBundlesArea { 4147 justify-content: center; 4148 } 4149 4150</style> 4151 4152 4153
4154<script> 4155 ready(() => { 4156 const allowedBundles = [224,205,206]; 4157 if (!allowedBundles || !Array.isArray(allowedBundles)) { 4158 console.error('tickets_section: allowedBundles is not a valid array', allowedBundles); 4159 return; 4160 } 4161 const domain = 'letsroam'; 4162 4163 const domainMappings = { 4164 'sch': 'SCH', 4165 'letsraom': 'LR', 4166 'afs': 'AFS' 4167 }; 4168 4169 let formattedDomain = domainMappings[domain] || domain; 4170 4171 if(window.location.href.includes('store')) { 4172 formattedDomain += ' Store'; 4173 } 4174 4175 let itemListName = formattedDomain; 4176 4177 const bundleItems = []; 4178 4179 allowedBundles.forEach((allowedBundleId, idx) => bundleItems.push({ 4180 item_id: String(allowedBundleId), 4181 item_list_name: itemListName, 4182 index: idx 4183 })); 4184 4185 4186 gtag_and_microsoft_uet('event', 'view_item_list', { 4187 currency: cy?.toUpperCase() || 'USD', 4188 items: [...bundleItems] 4189 }); 4190 4191 4192 }, 'select_card_bundle_design_joy') 4193 4194</script>
4194 4195 4196</aside> 4197 4198 4199<style> 4200 .sch-ticket-section-responsive__mobile { 4201 display: none; 4202 } 4203 4204 @media screen and (min-width: 701px) { 4205 .sch-ticket-section-responsive__desktop { 4206 display: block; 4207 } 4208 4209 .lr-store-4626-benefits { 4210 width: 100% !important; 4211 max-width: 850px !important; 4212 } 4213 4214 .lr-store-4626-benefit svg { 4215 width: 22px !important; 4216 height: 22px !important; 4217 min-width: 22px !important; 4218 } 4219 4220 .lr-store-4626-benefit__text { 4221 font-size: 16px !important; 4222 } 4223 4224 .lr-store-4626-sale-banner { 4225 max-width: 550px !important; 4226 } 4227 4228 .lr-store-4626-sale-banner__icon { 4229 width: 30px !important; 4230 height: 23px !important; 4231 min-width: 30px !important; 4232 } 4233 4234 .lr-store-4626-sale-banner__text { 4235 font-size: 16px !important; 4236 } 4237 } 4238 4239 .vday-header { 4240 width: auto; 4241 } 4242 @media screen and (max-width: 700px) { 4243 .sch-ticket-section-responsive__mobile { 4244 display: block; 4245 } 4246 4247 .sch-ticket-section-responsive__desktop { 4248 display: none; 4249 } 4250 4251 .sch-ticket-section-responsive--desktop-all-viewports .sch-ticket-section-responsive__mobile { 4252 display: none; 4253 } 4254 4255 .sch-ticket-section-responsive--desktop-all-viewports .sch-ticket-section-responsive__desktop { 4256 display: block; 4257 } 4258 4259 .vday-header { 4260 width: 100%; 4261 } 4262 4263 .hide-mobile { 4264 display: none !important; 4265 } 4266 } 4267 4268 </style> 4269</div> 4270 4271<style> 4272 .bch-panel-wrapper--design-joy { 4273 min-width: 1100px; 4274 } 4275 4276 @media screen and (max-width: 1100px) { 4277 .bch-panel-wrapper--design-joy { 4278 min-width: 100%; 4279 } 4280 } 4281</style> 4282 4283 4284<!-- gifts section --> 4285<section class="h-margin__t--150 h-padding__h--10"> 4286 <div style='display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; max-width: 1200px; max-width: 100%; margin: 0 auto;' class="h-flex-m__jc--c"> 4287 <div style="font-weight: 800; display: flex; justify-content: flex-start; flex-wrap: wrap; width: 345px; max-width: 100%; line-height: 100px;" class="h-align--left h-flex-m__jc--c h-size--70 h-size-m--44 h-margin-m__b--60"> 4288 <div style='font-weight: 800; margin-right: 10px;' class="h-color--black">Gift a </div> 4289 <img alt="gift card" height="100" width="150" src='/assets/images/sch/vectors/gift_card_vector.svg' style='width: 150px; height: 100px; max-width: 150px; max-height: 100px;' class="h-height--100 h-width--150 h-size--70 hide-mobile" /> 4290 <div style='font-weight: 800;' class="h-color--black">Hunt</div> 4291 <img alt="gift card" height="100" width="150" src='/assets/images/sch/vectors/gift_card_vector.svg' style='width: 150px; height: 100px; max-width: 150px; max-height: 100px;' class="h-height--100 h-width--150 h-size--70 hide-desktop" /> 4292 </div> 4293 <div style='width: 363px; display: flex; flex-direction: column;' class="h-margin-m__b--60 h-flex-m__ai--c itemInfo"> 4294 <img height="70" width="90" loading="lazy" alt="heart" src='/assets/images/sch/vectors/heart_vector.svg' style='width: 90px; height: 70px; max-width: 70px; max-height: 70px; display: inline-block;' /> 4295 <div style='font-size: 20px; font-weight: 800; margin-top: 24px;' class='h-margin-m__t--5 h-color--black'>Sweet date scavenger hunts</div> 4296 <div style='font-weight: 400; font-size: 17px; line-height: 27px; margin-top: 16px;' class='h-margin-m__t--10 h-text-m--center h-color--black'>Make fun memories on a unique adventure. Exciting, romantic indoor and outdoor scavenger hunts available.</div> 4297 </div> 4298 <div style='width: 363px; display: flex; flex-direction: column;' class="h-margin-m__b--60 h-flex-m__ai--c itemInfo"> 4299 <img height="70" width="90" alt="arrow" src='/assets/images/sch/vectors/arrow_vector.svg' style='width: 90px; height: 70px; max-width: 90px; max-height: 70px; display: inline-block;' /> 4300 <div style='font-size: 20px; font-weight: 800; margin-top: 24px;' class='h-margin-m__t--5 h-color--black'>Flexible options</div> 4301 <div style='font-weight: 400; font-size: 17px; line-height: 27px; margin-top: 16px;' class='h-margin-m__t--10 h-text-m--center h-color--black'>Our tickets work in any of our 3050+ locations and for our 20 in-home hunts, so you and your date can choose the perfect hunt!</div> 4302 </div> 4303 </div> 4304</section> 4305 4306 </div> 4307 4308 <!-- reviews section --> 4309 <section class="h-margin__t--150 h-margin-m__t--100 h-padding__h--10" id="reviewSection"> 4310 <h2 style="font-weight: 800" class="h-align--center h-align-m--center h-size--60 h-size-m--44">
4311 <span class="h-color--orange review-heading-text">Over 12,000</span> 4312 <span class="h-color--black review-heading-text">5-star reviews</span> 4313 </h2> 4314 <div style="display: flex; flex-flow: column wrap; width: 100%; max-width: 1200px; margin: 0 auto; height: 800px; align-items: center;" class="review-card-container h-margin__t--80"> 4315 4316 <div style='padding: 32px; background: white; border-radius: 10px; width: 100%; max-width: 30%; box-shadow: 0px 14px 14px rgba(219, 204, 161, 0.25);' class='h-margin__b--10 review-card '> 4317 <div><img alt='star' src='/assets/images/sch/vectors/star_vector.svg' width='15' height='15' style='width: 15px; height: 15px; max-width: 15px; max-height: 15px; margin-right: 4.5px;'/><img alt='star' src='/assets/images/sch/vectors/star_vector.svg' width='15' height='15' style='width: 15px; height: 15px; max-width: 15px; max-height: 15px; margin-right: 4.5px;'/><img alt='star' src='/assets/images/sch/vectors/star_vector.svg' width='15' height='15' style='width: 15px; height: 15px; max-width: 15px; max-height: 15px; margin-right: 4.5px;'/><img alt='star' src='/assets/images/sch/vectors/star_vector.svg' width='15' height='15' style='width: 15px; height: 15px; max-width: 15px; max-height: 15px; margin-right: 4.5px;'/><img alt='star' src='/assets/images/sch/vectors/star_vector.svg' width='15' height='15' style='width: 15px; height: 15px; max-width: 15px; max-height: 15px; margin-right: 4.5px;'/></div> 4318 <div class='h-size--17 h-margin__t--24 h-color--black' style='font-weight: 400; min-height: 100px;'> 4319 This was so much fun!!! My husband and I had a great time exploring. A great way to spend a day. Highly recommended!! 4320 </div> 4321 <div style='display: flex; align-items: center;' class='h-margin__t--24'> 4322 <img width='38px' height='38px' alt='user icon' class='lazy' data-src='https://randomuser.me/api/portraits/women/65.jpg' data-style='width: 38px; height: 38px; max-width: 38px; max-height: 38px; border-radius: 19px; min-width: 38xp; min-height: 32px;' style='width: 38px; height: 38px; max-width: 38px; max-height: 38px; border-radius: 19px; min-width: 38xp; min-height: 32px;'> 4323 <div class='h-size--14 h-margin__l--10' style='font-weight: 800;'> 4324 Carol Hild 4325 </div> 4326 </div> 4327 </div> 4328 4329 <div style='padding: 32px; background: white; border-radius: 10px; width: 100%; max-width: 30%; box-shadow: 0px 14px 14px rgba(219, 204, 161, 0.25);' class='h-margin__b--10 review-card '> 4330 <div><img alt='star' src='/assets/images/sch/vectors/star_vector.svg' width='15' height='15' style='width: 15px; height: 15px; max-width: 15px; max-height: 15px; margin-right: 4.5px;'/><img alt='star' src='/assets/images/sch/vectors/star_vector.svg' width='15' height='15' style='width: 15px; height: 15px; max-width: 15px; max-height: 15px; margin-right: 4.5px;'/><img alt='star' src='/assets/images/sch/vectors/star_vector.svg' width='15' height='15' style='width: 15px; height: 15px; max-width: 15px; max-height: 15px; margin-right: 4.5px;'/><img alt='star' src='/assets/images/sch/vectors/star_vector.svg' width='15' height='15' style='width: 15px; height: 15px; max-width: 15px; max-height: 15px; margin-right: 4.5px;'/><img alt='star' src='/assets/images/sch/vectors/star_vector.svg' width='15' height='15' style='width: 15px; height: 15px; max-width: 15px; max-height: 15px; margin-right: 4.5px;'/></div> 4331 <div class='h-size--17 h-margin__t--24 h-color--black' style='font-weight: 400; min-height: 100px;'> 4332 Had so much fun today with my team spice girls for Laura Bachelorette party 4333 </div> 4334 <div style='display: flex; align-items: center;' class='h-margin__t--24'> 4335 <img width='38px' height='38px' alt='user icon' class='lazy' data-src='https://randomuser.me/api/portraits/women/32.jpg' data-style='width: 38px; height: 38px; max-width: 38px; max-height: 38px; border-radius: 19px; min-width: 38xp; min-height: 32px;' style='width: 38px; height: 38px; max-width: 38px; max-height: 38px; border-radius: 19px; min-width: 38xp; min-height: 32px;'> 4336 <div class='h-size--14 h-margin__l--10' style='font-weight: 800;'> 4337 Pam Fox 4338 </div> 4339 </div> 4340 </div> 4341 4342 <div style='padding: 32px; background: white; border-radius: 10px; width: 100%; max-width: 30%; box-shadow: 0px 14px 14px rgba(219, 204, 161, 0.25);' class='h-margin__b--10 review-card '> 4343 <div><img alt='star' src='/assets/images/sch/vectors/star_vector.svg' width='15' height='15' style='width: 15px; height: 15px; max-width: 15px; max-height: 15px; margin-right: 4.5px;'/><img alt='star' src='/assets/images/sch/vectors/star_vector.svg' width='15' height='15' style='width: 15px; height: 15px; max-width: 15px; max-height: 15px; margin-right: 4.5px;'/><img alt='star' src='/assets/images/sch/vectors/star_vector.svg' width='15' height='15' style='width: 15px; height: 15px; max-width: 15px; max-height: 15px; margin-right: 4.5px;'/><img alt='star' src='/assets/images/sch/vectors/star_vector.svg' width='15' height='15' style='width: 15px; height: 15px; max-width: 15px; max-height: 15px; margin-right: 4.5px;'/><img alt='star' src='/assets/images/sch/vectors/star_vector.svg' width='15' height='15' style='width: 15px; height: 15px; max-width: 15px; max-height: 15px; margin-right: 4.5px;'/></div> 4344 <div class='h-size--17 h-margin__t--24 h-color--black' style='font-weight: 400; min-height: 100px;'> 4345 Easy and fun adventure. Good way to tour the city 4346 </div> 4347 <div style='display: flex; align-items: center;' class='h-margin__t--24'> 4348 <img width='38px' height='38px' alt='user icon' class='lazy' data-src='https://randomuser.me/api/portraits/men/74.jpg' data-style='width: 38px; height: 38px; max-width: 38px; max-height: 38px; border-radius: 19px; min-width: 38xp; min-height: 32px;' style='width: 38px; height: 38px; max-width: 38px; max-height: 38px; border-radius: 19px; min-width: 38xp; min-height: 32px;'> 4349 <div class='h-size--14 h-margin__l--10' style='font-weight: 800;'> 4350 Scot Branham 4351 </div> 4352 </div> 4353 </div> 4354 4355 <div style='padding: 32px; background: white; border-radius: 10px; width: 100%; max-width: 30%; box-shadow: 0px 14px 14px rgba(219, 204, 161, 0.25);' class='h-margin__b--10 review-card '> 4356 <div><img alt='star' src='/assets/images/sch/vectors/star_vector.svg' width='15' height='15' style='width: 15px; height: 15px; max-width: 15px; max-height: 15px; margin-right: 4.5px;'/><img alt='star' src='/assets/images/sch/vectors/star_vector.svg' width='15' height='15' style='width: 15px; height: 15px; max-width: 15px; max-height: 15px; margin-right: 4.5px;'/><img alt='star' src='/assets/images/sch/vectors/star_vector.svg' width='15' height='15' style='width: 15px; height: 15px; max-width: 15px; max-height: 15px; margin-right: 4.5px;'/><img alt='star' src='/assets/images/sch/vectors/star_vector.svg' width='15' height='15' style='width: 15px; height: 15px; max-width: 15px; max-height: 15px; margin-right: 4.5px;'/><img alt='star' src='/assets/images/sch/vectors/star_vector.svg' width='15' height='15' style='width: 15px; height: 15px; max-width: 15px; max-height: 15px; margin-right: 4.5px;'/></div> 4357 <div class='h-size--17 h-margin__t--24 h-color--black' style='font-weight: 400; min-height: 100px;'> 4358 Super fun! Great team building for a great company function 4359 </div> 4360 <div style='display: flex; align-items: center;' class='h-margin__t--24'> 4361 <img width='38px' height='38px' alt='user icon' class='lazy' data-src='https://randomuser.me/api/portraits/women/56.jpg' data-style='width: 38px; height: 38px; max-width: 38px; max-height: 38px; border-radius: 19px; min-width: 38xp; min-height: 32px;' style='width: 38px; height: 38px; max-width: 38px; max-height: 38px; border-radius: 19px; min-width: 38xp; min-height: 32px;'> 4362 <div class='h-size--14 h-margin__l--10' style='font-weight: 800;'> 4363 Maggie Silliman 4364 </div> 4365 </div> 4366 </div> 4367 4368 <div style='padding: 32px; background: white; border-radius: 10px; width: 100%; max-width: 30%; box-shadow: 0px 14px 14px rgba(219, 204, 161, 0.25);' class='h-margin__b--10 review-card review-card-hide-small'> 4369 <div><img alt='star' src='/assets/images/sch/vectors/star_vector.svg' width='15' height='15' style='width: 15px; height: 15px; max-width: 15px; max-height: 15px; margin-right: 4.5px;'/><img alt='star' src='/assets/images/sch/vectors/star_vector.svg' width='15' height='15' style='width: 15px; height: 15px; max-width: 15px; max-height: 15px; margin-right: 4.5px;'/><img alt='star' src='/assets/images/sch/vectors/star_vector.svg' width='15' height='15' style='width: 15px; height: 15px; max-width: 15px; max-height: 15px; margin-right: 4.5px;'/><img alt='star' src='/assets/images/sch/vectors/star_vector.svg' width='15' height='15' style='width: 15px; height: 15px; max-width: 15px; max-height: 15px; margin-right: 4.5px;'/><img alt='star' src='/assets/images/sch/vectors/star_vector.svg' width='15' height='15' style='width: 15px; height: 15px; max-width: 15px; max-height: 15px; margin-right: 4.5px;'/></div> 4370 <div class='h-size--17 h-margin__t--24 h-color--black' style='font-weight: 400; min-height: 100px;'> 4371 Lots of fun, and a great activity with a group! We took the light rail down for some extra adventure. We learned a few fun facts. 4372 </div> 4373 <div style='display: flex; align-items: center;' class='h-margin__t--24'> 4374 <img width='38px' height='38px' alt='user icon' class='lazy' data-src='https://randomuser.me/api/portraits/women/34.jpg' data-style='width: 38px; height: 38px; max-width: 38px; max-height: 38px; border-radius: 19px; min-width: 38xp; min-height: 32px;' style='width: 38px; height: 38px; max-width: 38px; max-height: 38px; border-radius: 19px; min-width: 38xp; min-height: 32px;'> 4375 <div class='h-size--14 h-margin__l--10' style='font-weight: 800;'> 4376 Terri Hensen 4377 </div> 4378 </div> 4379 </div> 4380 4381 <div style='padding: 32px; background: white; border-radius: 10px; width: 100%; max-width: 30%; box-shadow: 0px 14px 14px rgba(219, 204, 161, 0.25);' class='h-margin__b--10 review-card review-card-hide-small'> 4382 <div><img alt='star' src='/assets/images/sch/vectors/star_vector.svg' width='15' height='15' style='width: 15px; height: 15px; max-width: 15px; max-height: 15px; margin-right: 4.5px;'/><img alt='star' src='/assets/images/sch/vectors/star_vector.svg' width='15' height='15' style='width: 15px; height: 15px; max-width: 15px; max-height: 15px; margin-right: 4.5px;'/><img alt='star' src='/assets/images/sch/vectors/star_vector.svg' width='15' height='15' style='width: 15px; height: 15px; max-width: 15px; max-height: 15px; margin-right: 4.5px;'/><img alt='star' src='/assets/images/sch/vectors/star_vector.svg' width='15' height='15' style='width: 15px; height: 15px; max-width: 15px; max-height: 15px; margin-right: 4.5px;'/><img alt='star' src='/assets/images/sch/vectors/star_vector.svg' width='15' height='15' style='width: 15px; height: 15px; max-width: 15px; max-height: 15px; margin-right: 4.5px;'/></div> 4383 <div class='h-size--17 h-margin__t--24 h-color--black' style='font-weight: 400; min-height: 100px;'> 4384 So much fun and not pricey at all. Did it with a group including kids. They had fun too. We will for sure do more hunts in the future. 4385 </div> 4386 <div style='display: flex; align-items: center;' class='h-margin__t--24'> 4387 <img width='38px' height='38px' alt='user icon' class='lazy' data-src='https://randomuser.me/api/portraits/women/17.jpg' data-style='width: 38px; height: 38px; max-width: 38px; max-height: 38px; border-radius: 19px; min-width: 38xp; min-height: 32px;' style='width: 38px; height: 38px; max-width: 38px; max-height: 38px; border-radius: 19px; min-width: 38xp; min-height: 32px;'> 4388 <div class='h-size--14 h-margin__l--10' style='font-weight: 800;'> 4389 Tania Paddock 4390 </div> 4391 </div> 4392 </div> 4393 </div> 4394 </section> 4395 4396 <div class="d-lg-none d-xl-none" style="margin-bottom:60px;"> 4397 </div> 4398 4399 </div> 4400 4401 <div id="cartModalContainerWrapper"> 4402 <div id="cartModalContainer" data-paypal-ab-decision-surface></div> 4403 <div id="saleModalContainer"></div> 4404 4405 <div id="bundleModalContainer" class="h-position--relative h-index" style="--h-index: 2147483004;"></div> 4406 <div id="upgradeModalContainer"></div> 4407 <div id="embeddedCheckoutModalContainer"></div>
4408 <div id="btnMainBottomCheckoutContainer"></div> 4409 <div id="currencyModalContainer"></div> 4410 4411</div> 4412</div> 4413<input type="hidden" id="schCurrency" name="schCurrency" value="usd" /> 4414 4415<style> 4416 @media screen and (max-width: 1100px) { 4417 /* .review-card{ 4418 max-width: 300px !important; 4419 } */ 4420 } 4421 @media screen and (max-width: 960px) { 4422 .review-card-hide-small { 4423 display: none !important; 4424 } 4425 .review-card { 4426 max-width: 47% !important; 4427 } 4428 } 4429 @media screen and (max-width: 650px) { 4430 .review-card { 4431 max-width: 70vw !important; 4432 margin-right: 2vw; 4433 margin-left: 5vw; 4434 flex: 1; 4435 height: 350px; 4436 } 4437 .review-card-container { 4438 height: 450px !important; 4439 overflow-x: scroll; 4440 overflow-y: auto; 4441 padding-bottom: 20px; 4442 } 4443 .review-heading-text { 4444 display: block; 4445 } 4446 } 4447 .review-card-container::-webkit-scrollbar {
4448 -webkit-appearance: none; 4449 width: 3px; 4450 } 4451 .review-card-container::-webkit-scrollbar-thumb { 4452 border-radius: 4px; 4453 background-color: rgba(0, 0, 0, .1); 4454 margin-left: 10px; 4455 -webkit-box-shadow: 0 0 1px rgba(255, 255, 255, .5); 4456 } 4457</style> 4458 <!-- End Content Wrapper --> 4459 </div> 4460 <!-- <nav class="navbar fixed-bottom navbar-dark bch-footer"> 4461 <p class="bch-copyright">© 2017 ScavengerHunt.com by Let's Roam". All Rights Reserved.</p> 4462 </nav> --> 4463 4464 <!-- FAQs Modal --> 4465 4466 4467<div id="faqsModal" class="c-cm-modal__full_screen_container modal-fade allModals c-store-faq-modal" data-modal-name="modalFaqs" style="display: none; background: #000000dd;"> 4468 <div class="c-cm-modal__content-container c-cm-modal__content-container--any"> 4469 <div style="border-bottom: 1px solid #e9ecef;" class="h-padding__v--30 h-padding__h--50"> 4470 <div class="lr-flex-wrapper--align lr-flex-wrapper--between"> 4471 <h3 class="c-cm-modal__header--title h-size--32 h-bold3">How it works</h3> 4472 <button type="button" id="modalFaqsBackButton" class="c-cm-modal__icon-close" aria-label="Close modal"> 4473 <svg style="width: 18px; height: 18px;" class="fa-times fa-w-11" aria-hidden="true" focusable="false" data-prefix="fa" data-icon="times" role="img" xmlns="https://www.w3.org/2000/svg" viewBox="0 0 352 512" data-=""><path fill="currentColor" d="M242.72 256l100.07-100.07c12.28-12.28 12.28-32.19 0-44.48l-22.24-22.24c-12.28-12.28-32.19-12.28-44.48 0L176 189.28 75.93 89.21c-12.28-12.28-32.19-12.28-44.48 0L9.21 111.45c-12.28 12.28-12.28 32.19 0 44.48L109.28 256 9.21 356.07c-12.28-12.28-12.28-32.19 0-44.48l22.24 22.24c12.28 12.28 32.2 12.28 44.48 0L176 322.72l100.07 100.07c12.28 12.28 32.2 12.28 44.48 0l22.24-22.24c12.28-12.28 12.28-32.19 0-44.48L242.72 256z"></path></svg> 4474 </button> 4475 </div> 4476 <p class="translate-mixed-content" style="max-width: 550px;">Have a question? Our support team is ready to help! <a href="mailto:[email protected]" class="h-color--orange">Email our team</a> or see 4477 <a href="/contact_us" style="color: blue;">additional support options</a> </p> 4478 </div> 4479 <div id="vgnSection1" class="c-cm-modal__content-body h-padding__h--50 h-padding-m__h--16 h-padding__t--32 h-padding__b--40"> 4480 4481<style>@font-face { 4482 font-family: "Jaunt", Helvetica, sans-serif; 4483 src: url("/assets/fonts/Jaunt.woff2") format("woff2"), url("/assets/fonts/Jaunt.otf") format("opentype"); 4484 font-display: swap; 4485} 4486@font-face { 4487 font-family: "Traverse-Book", Arial, sans-serif; 4488 src: url("/assets/fonts/Traverse-Book.woff2") format("woff2"), url("/assets/fonts/Traverse-Book.otf") format("opentype"); 4489 font-display: swap; 4490} 4491.c-cm-accordian__item { 4492 position: relative; 4493 width: 100%; 4494 height: auto; 4495 background-color: #f5f5f5; 4496} 4497.c-cm-accordian__content { 4498 padding: 15px; 4499 background: white; 4500 display: none; 4501} 4502.c-cm-accordian__link { 4503 cursor: pointer; 4504 display: block; 4505 padding: 10px 15px; 4506 text-decoration: none; 4507 font-family: "Traverse-Book", Arial, sans-serif; 4508 color: #555; 4509 font-weight: 600; 4510 border-bottom: 1px solid #ddd; 4511 -webkit-transition: all 0.2s linear; 4512 -moz-transition: all 0.2s linear; 4513 transition: all 0.2s linear; 4514 position: relative; 4515} 4516.c-cm-accordian__link:hover { 4517 background-color: #53a6c4; 4518} 4519.c-cm-accordian__link:after, .c-cm-accordian__link:before { 4520 content: ""; 4521 position: absolute; 4522 right: 17px; 4523 top: 20px; 4524 font-size: 15px; 4525 font-weight: 900; 4526 background-color: black; 4527 width: 10px; 4528 height: 3px; 4529} 4530.c-cm-accordian__link:before { 4531 transform: rotate(90deg); 4532} 4533.c-cm-accordian .c-cm-accordian--active > .c-cm-accordian__link:before { 4534 display: none; 4535 opacity: 1; 4536} 4537.c-cm-accordian .c-cm-accordian--active > .c-cm-accordian__content { 4538 display: block; 4539 font-weight: 400; 4540} 4541.c-cm-accordian .c-cm-accordian--active .c-cm-accordian__link { 4542 background-color: #53a6c4; 4543 color: #fff; 4544} 4545 4546/*# sourceMappingURL=c-cm-accordian.css.map */ 4547</style><!-- accordian footer --> 4548<div class="c-cm-accordian h-width--100p" style=""> 4549 <div class="lr-wrapper--small"> 4550 <div class="" style='width: 100%; display: flex; flex-direction: column;'> 4551 4552 <div class="c-cm-accordian__item" style=""> 4553 <div class='c-cm-accordian__link c-store-faq-modal__accordion-link'> 4554 <h4 class='h-bold1 h-margin__t--0 h-size--16'>How Tickets Work</h4> 4555 4556 </div> 4557 <div class="c-cm-accordian__content translate-mixed-content" style="display: none;"> 4558 Single hunt tickets allow one player to take part in one of our scavenger hunt adventures in any of our 3,000+ cities around the world; each player requires their own ticket in order to play along with interactive roles. Ticket voucher co
4558des are valid for <i>two years</i> from the date of purchase and can be used on any hunt in any location. Purchases can be split or combined to change the group size after purchasing. 4559 </div> 4560 </div> 4561 <div class="c-cm-accordian__item" style=""> 4562 <div class='c-cm-accordian__link c-store-faq-modal__accordion-link'> 4563 <h4 class='h-bold1 h-margin__t--0 h-size--16'>How Annual Passes Work</h4> 4564 4565 </div> 4566 <div class="c-cm-accordian__content translate-mixed-content" style="display: none;"> 4567 Annual pass vouchers unlock one full year of unlimited adventures in over 3,000+ cities around the world! Once the voucher code is entered into the Let's Roam app, all of our scavenger hunt adventures become free to play. Choose from a family annual pass with up to 6 players or a couple's annual pass for two that includes our special date night adventure theme! 4568 </div> 4569 </div> 4570 <div class="c-cm-accordian__item" style=""> 4571 <div class='c-cm-accordian__link c-store-faq-modal__accordion-link'> 4572 <h4 class='h-bold1 h-margin__t--0 h-size--16'>How The Hunt Works</h4> 4573 4574 </div> 4575 <div class="c-cm-accordian__content translate-mixed-content" style="display: none;"> 4576 Explore more than 3,000+ cities around the globe by discovering hidden history, art, and local hot spots all around you. You and your teammates will complete fun photo challenges, test your knowledge of local trivia, and solve riddles as you traverse from stop to stop. Each hunt takes about two hours and requires between 1-2 miles of walking. Start and complete your hunt on your own time, day or night, no reservation required; all you need is your phone, your friends, and some free time! 4577 </div> 4578 </div> 4579 <div class="c-cm-accordian__item" style=""> 4580 <div class='c-cm-accordian__link c-store-faq-modal__accordion-link'> 4581 <h4 class='h-bold1 h-margin__t--0 h-size--16'>How Roles Work</h4> 4582 4583 </div> 4584 <div class="c-cm-accordian__content translate-mixed-content" style="display: none;"> 4585 Throughout your hunt, each player will receive individualized photo challenges, trivia questions, and other bonus activities for your team to complete. The more players with an assigned role on their device, the more opportunities you have to score points and top the citywide leaderboard. We strongly recommend purchasing a role for everyone in your group and kids over 6. If someone doesn't have their own device, that's okayâ multiple players can use one device, and still get interactive roles. 4586 </div> 4587 </div> 4588 <div class="c-cm-accordian__item" style=""> 4589 <div class='c-cm-accordian__link c-store-faq-modal__accordion-link'> 4590 <h4 class='h-bold1 h-margin__t--0 h-size--16'>About Role Upgrades</h4> 4591 4592 </div> 4593 <div class="c-cm-accordian__content translate-mixed-content" style="display: none;"> 4594 Role upgrades let you customize your experience and adventure and help your group connect better with each other and have more fun. Our standard roles are great for everyone including kids, families, and coworkers. However, our role upgrades are designed to be the most fun for that type of group. For example, the date night roles are designed to help spark a relationship. During registration you can swap a role upgrade for any role type of equal or lesser value. 4595 </div> 4596 </div> </div> 4597 </div> 4598</div> 4599
4600<script> 4601 4602 var initAccordianItem = function(e) { 4603 console.log('clicked accordian item', {e}) 4604 var alreadyActive = this.parentNode.classList.contains('c-cm-accordian--active'); 4605 var AccordianActiveItems = document.querySelectorAll('.c-cm-accordian--active'); 4606 4607 4608 // Close all other accordion items and reset their chevrons 4609 for (var i = 0; i < AccordianActiveItems.length; i++) { 4610 AccordianActiveItems[i].classList.remove('c-cm-accordian--active'); 4611 const otherContent = AccordianActiveItems[i].querySelector('.c-cm-accordian__content'); 4612 const otherChevron = AccordianActiveItems[i].querySelector('.custom-chevron-icon'); 4613 4614 if (otherContent) { 4615 otherContent.style.display = 'none'; 4616 } 4617 if (otherChevron) { 4618 otherChevron.style.transform = 'rotate(0deg)'; 4619 } 4620 } 4621 4622 if (!alreadyActive) { 4623 this.parentNode.classList.add('c-cm-accordian--active'); 4624 const content = this.parentNode.querySelector('.c-cm-accordian__content'); 4625 const chevron = this.querySelector('.custom-chevron-icon'); 4626 4627 if (content) { 4628 content.style.display = 'block'; 4629 } 4630 4631 if(typeof setCookie == 'function') { 4632 setCookie('faq_item_clicked', 1); 4633 setCookie('last_faq_item_clicked', this.innerText); 4634 } 4635 4636 if (chevron) { 4637 chevron.style.transform = 'rotate(180deg)'; 4638 } 4639 4640 const innerText = this.innerText; 4641 // Ensure we only track on actual click events (the first FAQ may auto-open). 4642 if (e) { 4643 // GA4 4644 if (typeof gtag !== 'undefined') { 4645 gtag_and_microsoft_uet('event', 'faq_view', { 4646 link_text: innerText, 4647 }); 4648 } 4649 } 4650 } 4651 }; 4652 4653 var AccordianItems = document.querySelectorAll('.c-cm-accordian__link'); 4654 console.log('adding accordian clicks') 4655 for (var i = 0; i < AccordianItems.length; i++) { 4656 if(AccordianItems[i].classList.contains('click-added')){ 4657 // console.log('already has event') 4658 } else { 4659 // console.log('adding accordian click', {item: AccordianItems[i]}) 4660 AccordianItems[i].classList.add('click-added'); 4661 AccordianItems[i].onclick = initAccordianItem; 4662 } 4663 4664 } 4665</script>
4665 4666 4667<style> 4668 4669</style> 4670 4671 4672 4673 <!-- JSON-LD Schema Markup for FAQs --> 4674
4674<script type="application/ld+json"> 4675 { 4676 "@context": "https://schema.org", 4677 "@type": "FAQPage", 4678 "name": "FAQ Page", 4679 "mainEntity": [ 4680 { 4681 "@type": "Question", 4682 "name": "How Tickets Work", 4683 "acceptedAnswer": { 4684 "@type": "Answer", 4685 "text": "Single hunt tickets allow one player to take part in one of our scavenger hunt adventures in any of our 3,000+ cities around the world; each player requires their own ticket in order to play along with interactive roles. Ticket voucher codes are valid for <i>two years</i> from the date of purchase and can be used on any hunt in any location. Purchases can be split or combined to change the group size after purchasing." 4686 } 4687 }, 4688 { 4689 "@type": "Question", 4690 "name": "How Annual Passes Work", 4691 "acceptedAnswer": { 4692 "@type": "Answer", 4693 "text": "Annual pass vouchers unlock one full year of unlimited adventures in over 3,000+ cities around the world! Once the voucher code is entered into the Let's Roam app, all of our scavenger hunt adventures become free to play. Choose from a family annual pass with up to 6 players or a couple's annual pass for two that includes our special date night adventure theme! " 4694 } 4695 }, 4696 { 4697 "@type": "Question", 4698 "name": "How The Hunt Works", 4699 "acceptedAnswer": { 4700 "@type": "Answer", 4701 "text": "Explore more than 3,000+ cities around the globe by discovering hidden history, art, and local hot spots all around you. You and your teammates will complete fun photo challenges, test your knowledge of local trivia, and solve riddles as you traverse from stop to stop. Each hunt takes about two hours and requires between 1-2 miles of walking. Start and complete your hunt on your own time, day or night, no reservation required; all you need is your phone, your friends, and some free time! " 4702 } 4703 }, 4704 { 4705 "@type": "Question", 4706 "name": "How Roles Work", 4707 "acceptedAnswer": { 4708 "@type": "Answer", 4709 "text": "Throughout your hunt, each player will receive individualized photo challenges, trivia questions, and other bonus activities for your team to complete. The more players with an assigned role on their device, the more opportunities you have to score points and top the citywide leaderboard. We strongly recommend purchasing a role for everyone in your group and kids over 6. If someone doesn't have their own device, that's okayâ multiple players can use one device, and still get interactive roles." 4710 } 4711 }, 4712 { 4713 "@type": "Question", 4714 "name": "About Role Upgrades", 4715 "acceptedAnswer": { 4716 "@type": "Answer", 4717 "text": "Role upgrades let you customize your experience and adventure and help your group connect better with each other and have more fun. Our standard roles are great for everyone including kids, families, and coworkers. However, our role upgrades are designed to be the most fun for that type of group. For example, the date night roles are designed to help spark a relationship. During registration you can swap a role upgrade for any role type of equal or lesser value." 4718 } 4719 } 4720 ] 4721} </script>
4721 4722 4723
4723<script> 4724 if(typeof window.seoData == 'undefined') { 4725 window.seoData = {}; 4726 } 4727 if(window.seoData['faq']) { 4728 window.seoData['faq_multiple'] = 1; 4729 } 4730 window.seoData["faq"] = {"@context":"https://schema.org","@type":"FAQPage","name":"FAQ Page","mainEntity":[{"@type":"Question","name":"How Tickets Work","acceptedAnswer":{"@type":"Answer","text":"Single hunt tickets allow one player to take part in one of our scavenger hunt adventures in any of our 3,000+ cities around the world; each player requires their own ticket in order to play along with interactive roles. Ticket voucher codes are valid for <i>two years</i> from the date of purchase and can be used on any hunt in any location. Purchases can be split or combined to change the group size after purchasing."}},{"@type":"Question","name":"How Annual Passes Work","acceptedAnswer":{"@type":"Answer","text":"Annual pass vouchers unlock one full year of unlimited adventures in over 3,000+ cities around the world! Once the voucher code is entered into the Let's Roam app, all of our scavenger hunt adventures become free to play. Choose from a family annual pass with up to 6 players or a couple's annual pass for two that includes our special date night adventure theme! "}},{"@type":"Question","name":"How The Hunt Works","acceptedAnswer":{"@type":"Answer","text":"Explore more than 3,000+ cities around the globe by discovering hidden history, art, and local hot spots all around you. You and your teammates will complete fun photo challenges, test your knowledge of local trivia, and solve riddles as you traverse from stop to stop. Each hunt takes about two hours and requires between 1-2 miles of walking. Start and complete your hunt on your own time, day or night, no reservation required; all you need is your phone, your friends, and some free time! "}},{"@type":"Question","name":"How Roles Work","acceptedAnswer":{"@type":"Answer","text":"Throughout your hunt, each player will receive individualized photo challenges, trivia questions, and other bonus activities for your team to complete. The more players with an assigned role on their device, the more opportunities you have to score points and top the citywide leaderboard. We strongly recommend purchasing a role for everyone in your group and kids over 6. If someone doesn't have their own device, that's okayâ multiple players can use one device, and still get interactive roles."}},{"@type":"Question","name":"About Role Upgrades","acceptedAnswer":{"@type":"Answer","text":"Role upgrades let you customize your experience and adventure and help your group connect better with each other and have more fun. Our standard roles are great for everyone including kids, families, and coworkers. However, our role upgrades are designed to be the most fun for that type of group. For example, the date night roles are designed to help spark a relationship. During registration you can swap a role upgrade for any role type of equal or lesser value."}}]}; 4731 </script>
4731 4732 4733 4734 <!-- Default styling when no custom parameters are provided --> 4735 4736 4737<style> 4738 .c-cm-accordian__link:after, .c-cm-accordian__link:before { 4739 top: 50%; 4740 width: 12px; 4741 } 4742 4743 /* Mobile font size and spacing adjustments */ 4744 @media (max-width: 768px) { 4745 .c-cm-accordian__link h4 { 4746 font-size: 18px !important; 4747 } 4748 } 4749 4750 /* Prevent text overlap with chevron */ 4751 .c-cm-accordian__link { 4752 padding-right: 50px !important; 4753 } 4754 4755 @media (max-width: 480px) { 4756 .c-cm-accordian__link { 4757 padding-right: 45px !important; 4758 } 4759 .custom-chevron-icon { 4760 right: 15px !important; 4761 } 4762 } 4763</style> 4764 4765<h3 id="gifting-faqs" style="font-weight: 800" class="h-align--center h-size--32 h-margin__t--25 hiw-header h-margin__b--15">Gifting FAQs.</h3> 4766<!-- accordian footer --> 4767<div class="c-cm-accordian h-width--100p" style=""> 4768 <div class="lr-wrapper--small"> 4769 <div class="" style='width: 100%; display: flex; flex-direction: column;'> 4770 4771 <div class="c-cm-accordian__item" style=""> 4772 <div class='c-cm-accordian__link c-store-faq-modal__accordion-link'> 4773 <h4 class='h-bold1 h-margin__t--0 h-size--16'>How Do I Gift a Scavenger Hunt?</h4> 4774 4775 </div> 4776 <div class="c-cm-accordian__content translate-mixed-content" style="display: none;"> 4777 It's easy! Checkout with your own details and you'll get instant access to your order page. From there, turn each ticket or annual pass into a beautifully designed gift certificateâpick from our custom-themed cards for any occasion. Print unlimited copies, email them directly, or do both. We also email you a link so you can come back anytime. Tickets are valid for up to 2 years, so there's no rush to redeem. 4778 </div> 4779 </div> 4780 <div class="c-cm-accordian__item" style=""> 4781 <div class='c-cm-accordian__link c-store-faq-modal__accordion-link'> 4782 <h4 class='h-bold1 h-margin__t--0 h-size--16'>Can I Gift Tickets or Annual Passes?</h4> 4783 4784 </div> 4785 <div class="c-cm-accordian__content translate-mixed-content" style="display: none;"> 4786 Yes, both make fantastic gifts. Many gift-givers choose the Annual Pass because it unlocks unlimited hunts in 3,000+ cities worldwideâbasically the gift that keeps on giving. Recipients can explore whenever inspiration hits, wherever they are. <br><br>And if you asked us for a recommendation? Annual Pass, hands down. It's the kind of gift they'll thank you for at every family gathering. 4787 </div> 4788 </div> 4789 <div class="c-cm-accordian__item" style=""> 4790 <div class='c-cm-accordian__link c-store-faq-modal__accordion-link'> 4791 <h4 class='h-bold1 h-margin__t--0 h-size--16'>When and Where Do I Receive The Gift Certificate?</h4> 4792 4793 </div> 4794 <div class="c-cm-accordian__content translate-mixed-content" style="display: none;"> 4795 Immediately after checkout you'll be redirected to your order page, and we also email you a link. From there, print or email as many gift certificates as you want, anytime. Nothing is mailed physicallyâno waiting on shipping. 4796 </div> 4797 </div> 4798 <div class="c-cm-accordian__item" style=""> 4799 <div class='c-cm-accordian__link c-store-faq-modal__accordion-link'> 4800 <h4 class='h-bold1 h-margin__t--0 h-size--16'>Who Becomes the Primary Member â Me or The Gift Recipient?</h4> 4801 4802 </div> 4803 <div class="c-cm-accordian__content translate-mixed-content" style="display: none;"> 4804 You enter your own details at checkout so we can deliver your order. The gift recipient becomes the primary member when they redeem the voucher in the app. Your personal info is never used for their account. 4805 </div> 4806 </div> 4807 <div class="c-cm-accordian__item" style=""> 4808 <div class='c-cm-accordian__link c-store-faq-modal__accordion-link'> 4809 <h4 class='h-bold1 h-margin__t--0 h-size--16'>Why It's The Perfect Gift</h4> 4810 4811 </div> 4812 <div class="c-cm-accordian__content translate-mixed-content" style="display: none;"> 4813 A Scavenger Hunt is the easiest gift to give and the most fun to receive. Itâs flexible, instantly delivered, and can be used in any of our 3,000+ cities worldwide. No scheduling. No guessing. No shipping. Just pure, do-it-when-you-want adventure. It doesnât sit on a shelf, it creates memories theyâll actually talk about. 4814 </div> 4815 </div> 4816 <div class="c-cm-accordian__item" style=""> 4817 <div class='c-cm-accordian__link c-store-faq-modal__accordion-link'> 4818 <h4 class='h-bold1 h-margin__t--0 h-size--16'>Is Anything Shipped Physically?</h4> 4819 4820 </div> 4821 <div class="c-cm-accordian__content translate-mixed-content" style="display: none;"> 4822 Everything is digital and delivered instantly. You can print at home or email the recipient anytime. Fast, flexible and perfect for last-minute gifting. 4823 </div> 4824 </div> </div> 4825 </div> 4826</div> 4827
4828<script> 4829 4830 var initAccordianItem = function(e) { 4831 console.log('clicked accordian item', {e}) 4832 var alreadyActive = this.parentNode.classList.contains('c-cm-accordian--active'); 4833 var AccordianActiveItems = document.querySelectorAll('.c-cm-accordian--active'); 4834 4835 4836 // Close all other accordion items and reset their chevrons 4837 for (var i = 0; i < AccordianActiveItems.length; i++) { 4838 AccordianActiveItems[i].classList.remove('c-cm-accordian--active'); 4839 const otherContent = AccordianActiveItems[i].querySelector('.c-cm-accordian__content'); 4840 const otherChevron = AccordianActiveItems[i].querySelector('.custom-chevron-icon'); 4841 4842 if (otherContent) { 4843 otherContent.style.display = 'none'; 4844 } 4845 if (otherChevron) { 4846 otherChevron.style.transform = 'rotate(0deg)'; 4847 } 4848 } 4849 4850 if (!alreadyActive) { 4851 this.parentNode.classList.add('c-cm-accordian--active'); 4852 const content = this.parentNode.querySelector('.c-cm-accordian__content'); 4853 const chevron = this.querySelector('.custom-chevron-icon'); 4854 4855 if (content) { 4856 content.style.display = 'block'; 4857 } 4858 4859 if(typeof setCookie == 'function') { 4860 setCookie('faq_item_clicked', 1); 4861 setCookie('last_faq_item_clicked', this.innerText); 4862 } 4863 4864 if (chevron) { 4865 chevron.style.transform = 'rotate(180deg)'; 4866 } 4867 4868 const innerText = this.innerText; 4869 // Ensure we only track on actual click events (the first FAQ may auto-open). 4870 if (e) { 4871 // GA4 4872 if (typeof gtag !== 'undefined') { 4873 gtag_and_microsoft_uet('event', 'faq_view', { 4874 link_text: innerText, 4875 }); 4876 } 4877 } 4878 } 4879 }; 4880 4881 var AccordianItems = document.querySelectorAll('.c-cm-accordian__link'); 4882 console.log('adding accordian clicks') 4883 for (var i = 0; i < AccordianItems.length; i++) { 4884 if(AccordianItems[i].classList.contains('click-added')){ 4885 // console.log('already has event') 4886 } else { 4887 // console.log('adding accordian click', {item: AccordianItems[i]}) 4888 AccordianItems[i].classList.add('click-added'); 4889 AccordianItems[i].onclick = initAccordianItem; 4890 } 4891 4892 } 4893</script>
4893 4894 4895<style> 4896 4897</style> 4898 4899 4900 4901 <!-- JSON-LD Schema Markup for FAQs --> 4902
4902<script type="application/ld+json"> 4903 { 4904 "@context": "https://schema.org", 4905 "@type": "FAQPage", 4906 "name": "Scavenger Hunt Gifting FAQ", 4907 "mainEntity": [ 4908 { 4909 "@type": "Question", 4910 "name": "How Do I Gift a Scavenger Hunt?", 4911 "acceptedAnswer": { 4912 "@type": "Answer", 4913 "text": "It's easy! Checkout with your own details and you'll get instant access to your order page. From there, turn each ticket or annual pass into a beautifully designed gift certificateâpick from our custom-themed cards for any occasion. Print unlimited copies, email them directly, or do both. We also email you a link so you can come back anytime. Tickets are valid for up to 2 years, so there's no rush to redeem." 4914 } 4915 }, 4916 { 4917 "@type": "Question", 4918 "name": "Can I Gift Tickets or Annual Passes?", 4919 "acceptedAnswer": { 4920 "@type": "Answer", 4921 "text": "Yes, both make fantastic gifts. Many gift-givers choose the Annual Pass because it unlocks unlimited hunts in 3,000+ cities worldwideâbasically the gift that keeps on giving. Recipients can explore whenever inspiration hits, wherever they are. <br><br>And if you asked us for a recommendation? Annual Pass, hands down. It's the kind of gift they'll thank you for at every family gathering." 4922 } 4923 }, 4924 { 4925 "@type": "Question", 4926 "name": "When and Where Do I Receive The Gift Certificate?", 4927 "acceptedAnswer": { 4928 "@type": "Answer", 4929 "text": "Immediately after checkout you'll be redirected to your order page, and we also email you a link. From there, print or email as many gift certificates as you want, anytime. Nothing is mailed physicallyâno waiting on shipping." 4930 } 4931 }, 4932 { 4933 "@type": "Question", 4934 "name": "Who Becomes the Primary Member â Me or The Gift Recipient?", 4935 "acceptedAnswer": { 4936 "@type": "Answer", 4937 "text": "You enter your own details at checkout so we can deliver your order. The gift recipient becomes the primary member when they redeem the voucher in the app. Your personal info is never used for their account." 4938 } 4939 }, 4940 { 4941 "@type": "Question", 4942 "name": "Why It's The Perfect Gift", 4943 "acceptedAnswer": { 4944 "@type": "Answer", 4945 "text": "A Scavenger Hunt is the easiest gift to give and the most fun to receive. Itâs flexible, instantly delivered, and can be used in any of our 3,000+ cities worldwide. No scheduling. No guessing. No shipping. Just pure, do-it-when-you-want adventure. It doesnât sit on a shelf, it creates memories theyâll actually talk about." 4946 } 4947 }, 4948 { 4949 "@type": "Question", 4950 "name": "Is Anything Shipped Physically?", 4951 "acceptedAnswer": { 4952 "@type": "Answer", 4953 "text": "Everything is digital and delivered instantly. You can print at home or email the recipient anytime. Fast, flexible and perfect for last-minute gifting." 4954 } 4955 } 4956 ] 4957} </script>
4957 4958 4959
4959<script> 4960 if(typeof window.seoData == 'undefined') { 4961 window.seoData = {}; 4962 } 4963 window.seoData["gift_faq"] = {"@context":"https://schema.org","@type":"FAQPage","name":"Scavenger Hunt Gifting FAQ","mainEntity":[{"@type":"Question","name":"How Do I Gift a Scavenger Hunt?","acceptedAnswer":{"@type":"Answer","text":"It's easy! Checkout with your own details and you'll get instant access to your order page. From there, turn each ticket or annual pass into a beautifully designed gift certificateâpick from our custom-themed cards for any occasion. Print unlimited copies, email them directly, or do both. We also email you a link so you can come back anytime. Tickets are valid for up to 2 years, so there's no rush to redeem."}},{"@type":"Question","name":"Can I Gift Tickets or Annual Passes?","acceptedAnswer":{"@type":"Answer","text":"Yes, both make fantastic gifts. Many gift-givers choose the Annual Pass because it unlocks unlimited hunts in 3,000+ cities worldwideâbasically the gift that keeps on giving. Recipients can explore whenever inspiration hits, wherever they are. <br><br>And if you asked us for a recommendation? Annual Pass, hands down. It's the kind of gift they'll thank you for at every family gathering."}},{"@type":"Question","name":"When and Where Do I Receive The Gift Certificate?","acceptedA
4963nswer":{"@type":"Answer","text":"Immediately after checkout you'll be redirected to your order page, and we also email you a link. From there, print or email as many gift certificates as you want, anytime. Nothing is mailed physicallyâno waiting on shipping."}},{"@type":"Question","name":"Who Becomes the Primary Member â Me or The Gift Recipient?","acceptedAnswer":{"@type":"Answer","text":"You enter your own details at checkout so we can deliver your order. The gift recipient becomes the primary member when they redeem the voucher in the app. Your personal info is never used for their account."}},{"@type":"Question","name":"Why It's The Perfect Gift","acceptedAnswer":{"@type":"Answer","text":"A Scavenger Hunt is the easiest gift to give and the most fun to receive. Itâs flexible, instantly delivered, and can be used in any of our 3,000+ cities worldwide. No scheduling. No guessing. No shipping. Just pure, do-it-when-you-want adventure. It doesnât sit on a shelf, it creates memories theyâll actually talk about."}},{"@type":"Question","name":"Is Anything Shipped Physically?","acceptedA
4963nswer":{"@type":"Answer","text":"Everything is digital and delivered instantly. You can print at home or email the recipient anytime. Fast, flexible and perfect for last-minute gifting."}}]}; 4964 </script>
4964 4965 4966 4967 <style> 4968 .c-cm-accordian__item { 4969 margin-bottom: 8px !important; 4970 background-color: #FBFCFB; 4971 border-bottom: none; 4972 border: 1px solid #DFEBDF; border-radius: 10px; 4973 overflow: hidden; 4974 } 4975 4976 .c-cm-accordian--active { 4977 background-color: black; 4978 } 4979 4980 .c-cm-accordian__link{ 4981 border-bottom: none; 4982 font-weight: 800; 4983 border-radius: 10px; 4984 } 4985 4986 .c-cm-accordian__item.c-cm-accordian--active .c-cm-accordian__link:after { 4987 background: white; 4988 } 4989 4990 .c-cm-accordian__link.click-added { 4991 border-radius: 10px 10px 0px 0px; 4992 } 4993 4994 /* Remove all hover effects */ 4995 .c-cm-accordian__link:hover { 4996 background-color: transparent !important; 4997 background: none !important; 4998 } 4999 5000 .c-cm-accordian__item:hover { 5001 background-color: #FBFCFB !important; 5002 } 5003 5004 .click_added { 5005 color: white; 5006 background-color: black !important; 5007 } 5008 .c-cm-accordian .c-cm-accordian--active .c-cm-accordian__link { 5009 background-color: black !important; 5010 color: white !important; 5011 } 5012 .c-cm-accordian__content{ 5013 background-color: black; 5014 color: white; 5015 line-height: 22px; 5016 padding: 15px; 5017 } 5018 5019 </style> 5020 5021 5022<style> 5023 .c-cm-accordian__link:after, .c-cm-accordian__link:before { 5024 top: 50%; 5025 width: 12px; 5026 } 5027 5028 /* Mobile font size and spacing adjustments */ 5029 @media (max-width: 768px) { 5030 .c-cm-accordian__link h4 { 5031 font-size: 18px !important; 5032 } 5033 } 5034 5035 /* Prevent text overlap with chevron */ 5036 .c-cm-accordian__link { 5037 padding-right: 50px !important; 5038 } 5039 5040 @media (max-width: 480px) { 5041 .c-cm-accordian__link { 5042 padding-right: 45px !important; 5043 } 5044 .custom-chevron-icon { 5045 right: 15px !important; 5046 } 5047 } 5048</style> 5049 5050<style> 5051 .c-store-faq-modal .c-cm-modal__icon-close { 5052 display: inline-flex; 5053 align-items: center; 5054 justify-content: center; 5055 width: 44px; 5056 height: 44px; 5057 min-width: 44px; 5058 min-height: 44px; 5059 margin: -12px -12px -12px 12px; 5060 padding: 0; 5061 color: #333; 5062 cursor: pointer; 5063 border: 0; 5064 border-radius: 999px; 5065 background: transparent; 5066 flex-shrink: 0; 5067 position: relative; 5068 } 5069 5070 .c-store-faq-modal .c-cm-modal__icon-close svg { 5071 display: none; 5072 } 5073 5074 .c-store-faq-modal .c-cm-modal__icon-close:before, 5075 .c-store-faq-modal .c-cm-modal__icon-close:after { 5076 content: ''; 5077 position: absolute; 5078 top: 50%; 5079 left: 50%; 5080 width: 18px; 5081 height: 3px; 5082 margin-left: -9px; 5083 margin-top: -1.5px; 5084 border-radius: 999px; 5085 background: #333; 5086 } 5087 5088 .c-store-faq-modal .c-cm-modal__icon-close:before { 5089 transform: rotate(45deg); 5090 } 5091 5092 .c-store-faq-modal .c-cm-modal__icon-close:after { 5093 transform: rotate(-45deg); 5094 } 5095 5096 .c-store-faq-modal .c-cm-modal__icon-close:hover, 5097 .c-store-faq-modal .c-cm-modal__icon-close:focus { 5098 background: rgba(0, 0, 0, 0.04); 5099 } 5100 5101 @media (max-width: 768px) { 5102 .c-store-faq-modal .c-cm-modal__icon-close { 5103 margin: -4px 0 -4px 12px; 5104 } 5105 5106 .c-store-faq-modal .c-store-faq-modal__accordion-link { 5107 min-height: 52px; 5108 padding: 14px 52px 14px 15px; 5109 display: flex; 5110 align-items: center; 5111 } 5112 5113 .c-store-faq-modal .c-store-faq-modal__accordion-link:after, 5114 .c-store-faq-modal .c-store-faq-modal__accordion-link:before { 5115 right: 18px; 5116 top: 50%; 5117 width: 14px; 5118 height: 3px; 5119 transform-origin: center; 5120 margin-top: 0; 5121 } 5122 5123 .c-store-faq-modal .c-store-faq-modal__accordion-link:after { 5124 transform: translateY(-50%); 5125 } 5126 5127 .c-store-faq-modal .c-store-faq-modal__accordion-link:before { 5128 transform: translateY(-50%) rotate(90deg); 5129 } 5130 } 5131</style> 5132 </div> 5133 <div class="c-cm-modal__footer h-padding__v--32 h-padding__h--50 h-padding-m__h--16"> 5134 <a class="h-padding__v--25 h-padding__h--32 h-bold1 h-size--18 h-color--black h-border-radius--6 h-margin__r--24" href="https://www.letsroam.com/help/" style="border: 1px solid black;">See all FAQs</a> <div> 5135 <button type="button" id="modalFaqsCloseButton" class="h-background--orange h-padding__v--25 h-padding__h--32 h-bold1 h-size--18 h-color--white h-border-radius--6">Continue shopping</button>
5136 <span id="bchcActInd" class="lr-btn btn-info btn-block" style="display: none;"><svg class="svg-inline--fa fa-spinner fa-w-16" aria-hidden="true" focusable="false" data-prefix="fa" data-icon="spinner" role="img" xmlns="https://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg=""><path fill="currentColor" d="M304 48c0 26.51-21.49 48-48 48s-48-21.49-48-48 21.49-48 48-48 48 21.49 48 48zm-48 368c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48zm208-208c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48zM96 256c0-26.51-21.49-48-48-48S0 229.49 0 256s21.49 48 48 48 48-21.49 48-48zm12.922 99.078c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48c0-26.509-21.491-48-48-48zm294.156 0c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48c0-26.509-21.49-48-48-48zM108.922 60.922c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.491-48-48-48z"></path></svg> Processing...</span> 5137 </div> 5138 </div> 5139 </div> 5140</div> 5141 5142<style> 5143 .c-cm-modal__icon-close { 5144 display: inline-flex; 5145 align-items: center; 5146 justify-content: center; 5147 width: 44px; 5148 height: 44px; 5149 min-width: 44px; 5150 min-height: 44px; 5151 margin: -12px -12px -12px 12px; 5152 padding: 0; 5153 color: #333; 5154 cursor: pointer; 5155 border: 0; 5156 border-radius: 999px; 5157 background: transparent; 5158 } 5159 5160 .c-cm-modal__icon-close:hover, 5161 .c-cm-modal__icon-close:focus { 5162 background: rgba(0, 0, 0, 0.04); 5163 } 5164 5165 .checkmark { 5166 width: 56px; 5167 height: 56px; 5168 border-radius: 50%; 5169 display: block; 5170 stroke-width: 2; 5171 stroke: #fff; 5172 stroke-miterlimit: 10; 5173 box-shadow: inset 0px 0px 0px #ea7722; 5174 animation: fill 0.4s ease-in-out 0.4s forwards, scale 0.3s ease-in-out 0.9s both; 5175 } 5176 5177 .checkmark__circle { 5178 stroke-dasharray: 166; 5179 stroke-dashoffset: 166; 5180 stroke-width: 2; 5181 stroke-miterlimit: 10; 5182 stroke: #ea7722; 5183 fill: none; 5184 animation: stroke 0.6s cubic-bezier(0.65, 0, 0.45, 1) forwards; 5185 } 5186 5187 .checkmark__check { 5188 transform-origin: 50% 50%; 5189 stroke-dasharray: 48; 5190 stroke-dashoffset: 48; 5191 animation: stroke 0.3s cubic-bezier(0.65, 0, 0.45, 1) 0.8s forwards; 5192 } 5193 5194 @keyframes stroke { 5195 100% { 5196 stroke-dashoffset: 0; 5197 } 5198 } 5199 5200 @keyframes scale { 5201 0%, 5202 100% { 5203 transform: none; 5204 } 5205 5206 50% { 5207 transform: scale3d(1.1, 1.1, 1); 5208 } 5209 } 5210 5211 @keyframes fill { 5212 100% { 5213 box-shadow: inset 0px 0px 0px 30px #ea7722; 5214 } 5215 } 5216 5217 @media (max-width: 768px) { 5218 .c-cm-modal__icon-close { 5219 margin: -10px -10px -10px 10px; 5220 } 5221 5222 .modal-v2 { 5223 height: 750px !important; 5224 max-height: 750px !important; 5225 margin-top: -200px !important; 5226 } 5227 5228 .modal-v2-content { 5229 margin-left: 0px !important; 5230 height: 750px !important; 5231 } 5232 } 5233 5234 @media screen and (max-width: 1133px) and (min-width: 768px) { 5235 .modal-v2 { 5236 height: 563px !important; 5237 max-height: 563px !important; 5238 margin-top: -200px !important; 5239 width: 700px !important; 5240 display: flex; 5241 flex-direction: column; 5242 } 5243 5244 .modal-v2-content { 5245 display: flex; 5246 flex-direction: column; 5247 margin-left: 0px !important; 5248 height: 700px !important; 5249 } 5250 } 5251</style> 5252
5253<script> 5254 (function (config) { 5255 function registerModal() { 5256 window.lrRegisterModalFromConfig(config); 5257 } 5258 // Some page layouts emit shared utilities in the footer, after the modal. 5259 if (typeof window.lrRegisterModalFromConfig === 'function') { 5260 registerModal(); 5261 } else { 5262 document.addEventListener('DOMContentLoaded', registerModal, { once: true }); 5263 } 5264 })({"name":"modalFaqs","id":"faqsModal","gaView":"modalFaqs","layout":"store_design_joy","openTriggerId":"faqsModalOpen","backButtonId":"modalFaqsBackButton","closeIconId":"modalFaqsCloseModal","primaryButtonId":"modalFaqsCloseButton","openCallbackCode":"console.log(\u0027no open modal function\u0027);","closeCallbackCode":"console.log(\u0027no close modal function\u0027);","primaryButtonActionCode":"","closeTargetId":"","trackFormOpen":false}); 5265</script>
5265 5266 5267<div id="locationsModal" class="c-cm-modal__full_screen_container modal-fade allModals " data-modal-name="modalLocations" style="display: none; background: #000000dd;"> 5268 <div class="c-cm-modal__content-container c-cm-modal__content-container--any"> 5269 <div class="c-cm-modal__header"> 5270 <h3 class="c-cm-modal__header--title">Scavenger Hunt Locations</h3> 5271 <button type="button" id="modalLocationsBackButton" class="c-cm-modal__icon-close" aria-label="Close modal"> 5272 <svg style="width: 18px; height: 18px;" class="fa-times fa-w-11" aria-hidden="true" focusable="false" data-prefix="fa" data-icon="times" role="img" xmlns="https://www.w3.org/2000/svg" viewBox="0 0 352 512" data-=""><path fill="currentColor" d="M242.72 256l100.07-100.07c12.28-12.28 12.28-32.19 0-44.48l-22.24-22.24c-12.28-12.28-32.19-12.28-44.48 0L176 189.28 75.93 89.21c-12.28-12.28-32.19-12.28-44.48 0L9.21 111.45c-12.28 12.28-12.28 32.19 0 44.48L109.28 256 9.21 356.07c-12.28 12.28-12.28 32.19 0 44.48l22.24 22.24c12.28 12.28 32.2 12.28 44.48 0L176 322.72l100.07 100.07c12.28 12.28 32.2 12.28 44.48 0l22.24-22.24c12.28-12.28 12.28-32.19 0-44.48L242.72 256z"></path></svg> 5273 </button> 5274 </div> 5275 <div id="vgnSection1" class="c-cm-modal__content-body"> 5276 <p>Tickets purchased on this page can be used in adventures in 700+ locations around the world. When you register on the day of the scavenger hunt, simply select the activity that works best for your group.</p> 5277 </div> 5278 <div class="c-cm-modal__footer"> 5279 <a class="lr-btn lr-btn__secondary lr-btn-m--thin " href="https://www.letsroam.com/activities/find_city" style="margin-right: 10px;">Find Locations</a> <div> 5280 <button type="button" id="modalLocationsCloseButton" class="lr-btn lr-btn__primary lr-btn-m--thin">Continue shopping</button> 5281 <span id="bchcActInd" class="lr-btn btn-info btn-block" style="display: none;"><svg class="svg-inline--fa fa-spinner fa-w-16" aria-hidden="true" focusable="false" data-prefix="fa" data-icon="spinner" role="img" xmlns="https://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg=""><path fill="currentColor" d="M304 48c0 26.51-21.49 48-48 48s-48-21.49-48-48 21.49-48 48-48 48 21.49 48 48zm-48 368c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48zm208-208c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48zM96 256c0-26.51-21.49-48-48-48S0 229.49 0 256s21.49 48 48 48 48-21.49 48-48zm12.922 99.078c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48c0-26.509-21.491-48-48-48zm294.156 0c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48c0-26.509-21.49-48-48-48zM108.922 60.922c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.491-48-48-48z"></path></svg> Processing...</span> 5282 </div> 5283 </div> 5284 </div> 5285</div> 5286 5287<style> 5288 .c-cm-modal__icon-close { 5289 display: inline-flex; 5290 align-items: center; 5291 justify-content: center; 5292 width: 44px; 5293 height: 44px; 5294 min-width: 44px; 5295 min-height: 44px; 5296 margin: -12px -12px -12px 12px; 5297 padding: 0; 5298 color: #333; 5299 cursor: pointer; 5300 border: 0; 5301 border-radius: 999px; 5302 background: transparent; 5303 } 5304 5305 .c-cm-modal__icon-close:hover, 5306 .c-cm-modal__icon-close:focus { 5307 background: rgba(0, 0, 0, 0.04); 5308 } 5309 5310 .checkmark { 5311 width: 56px; 5312 height: 56px; 5313 border-radius: 50%; 5314 display: block; 5315 stroke-width: 2; 5316 stroke: #fff; 5317 stroke-miterlimit: 10; 5318 box-shadow: inset 0px 0px 0px #ea7722; 5319 animation: fill 0.4s ease-in-out 0.4s forwards, scale 0.3s ease-in-out 0.9s both; 5320 } 5321 5322 .checkmark__circle { 5323 stroke-dasharray: 166; 5324 stroke-dashoffset: 166; 5325 stroke-width: 2; 5326 stroke-miterlimit: 10; 5327 stroke: #ea7722; 5328 fill: none; 5329 animation: stroke 0.6s cubic-bezier(0.65, 0, 0.45, 1) forwards; 5330 } 5331 5332 .checkmark__check { 5333 transform-origin: 50% 50%; 5334 stroke-dasharray: 48; 5335 stroke-dashoffset: 48; 5336 animation: stroke 0.3s cubic-bezier(0.65, 0, 0.45, 1) 0.8s forwards; 5337 } 5338 5339 @keyframes stroke { 5340 100% { 5341 stroke-dashoffset: 0; 5342 } 5343 } 5344 5345 @keyframes scale { 5346 0%, 5347 100% { 5348 transform: none; 5349 } 5350 5351 50% { 5352 transform: scale3d(1.1, 1.1, 1); 5353 } 5354 } 5355 5356 @keyframes fill { 5357 100% { 5358 box-shadow: inset 0px 0px 0px 30px #ea7722; 5359 } 5360 } 5361 5362 @media (max-width: 768px) { 5363 .c-cm-modal__icon-close {
5364 margin: -10px -10px -10px 10px; 5365 } 5366 5367 .modal-v2 { 5368 height: 750px !important; 5369 max-height: 750px !important; 5370 margin-top: -200px !important; 5371 } 5372 5373 .modal-v2-content { 5374 margin-left: 0px !important; 5375 height: 750px !important; 5376 } 5377 } 5378 5379 @media screen and (max-width: 1133px) and (min-width: 768px) { 5380 .modal-v2 { 5381 height: 563px !important; 5382 max-height: 563px !important; 5383 margin-top: -200px !important; 5384 width: 700px !important; 5385 display: flex; 5386 flex-direction: column; 5387 } 5388 5389 .modal-v2-content { 5390 display: flex; 5391 flex-direction: column; 5392 margin-left: 0px !important; 5393 height: 700px !important; 5394 } 5395 } 5396</style> 5397
5398<script> 5399 (function (config) { 5400 function registerModal() { 5401 window.lrRegisterModalFromConfig(config); 5402 } 5403 // Some page layouts emit shared utilities in the footer, after the modal. 5404 if (typeof window.lrRegisterModalFromConfig === 'function') { 5405 registerModal(); 5406 } else { 5407 document.addEventListener('DOMContentLoaded', registerModal, { once: true }); 5408 } 5409 })({"name":"modalLocations","id":"locationsModal","gaView":"locationsModal","layout":"store","openTriggerId":"locationsModalOpen","backButtonId":"modalLocationsBackButton","closeIconId":"modalLocationsCloseModal","primaryButtonId":"modalLocationsCloseButton","openCallbackCode":"console.log(\u0027no open modal function\u0027);","closeCallbackCode":"console.log(\u0027no close modal function\u0027);","primaryButtonActionCode":"","closeTargetId":"","trackFormOpen":false}); 5410</script>
5410 5411 5412<div id="reviewsModal" class="c-cm-modal__full_screen_container modal-fade allModals " data-modal-name="modalReviews" style="display: none; background: #000000dd;"> 5413 <div class="c-cm-modal__content-container c-cm-modal__content-container--any"> 5414 <div style="border-bottom: 1px solid #e9ecef;" class="h-padding__v--30 h-padding__h--50"> 5415 <div class="lr-flex-wrapper--align lr-flex-wrapper--between"> 5416 <h3 class="c-cm-modal__header--title h-size--32 h-bold3">Customer Reviews</h3> 5417 <button type="button" id="modalReviewsBackButton" class="c-cm-modal__icon-close" aria-label="Close modal"> 5418 <svg style="width: 18px; height: 18px;" class="fa-times fa-w-11" aria-hidden="true" focusable="false" data-prefix="fa" data-icon="times" role="img" xmlns="https://www.w3.org/2000/svg" viewBox="0 0 352 512" data-=""><path fill="currentColor" d="M242.72 256l100.07-100.07c12.28-12.28 12.28-32.19 0-44.48l-22.24-22.24c-12.28-12.28-32.19-12.28-44.48 0L176 189.28 75.93 89.21c-12.28-12.28-32.19-12.28-44.48 0L9.21 111.45c-12.28 12.28-12.28 32.19 0 44.48L109.28 256 9.21 356.07c-12.28-12.28-12.28-32.19 0-44.48l22.24 22.24c12.28 12.28 32.2 12.28 44.48 0L176 322.72l100.07 100.07c12.28 12.28 32.2 12.28 44.48 0l22.24-22.24c12.28-12.28 12.28-32.19 0-44.48L242.72 256z"></path></svg> 5419 </button> 5420 </div> 5421 <p class="translate-mixed-content" style="max-width: 550px;">Have a question? Our support team is ready to help! <a href="mailto:[email protected]" class="h-color--orange">Email our team</a> or see 5422 <a href="/contact_us" style="color: blue;">additional support options</a> </p> 5423 </div> 5424 <div id="vgnSection1" class="c-cm-modal__content-body h-padding__h--50 h-padding-m__h--16 h-padding__t--32 h-padding__b--40"> 5425 5426 5427 5428 5429 5430<div> 5431 <h3 class="h-size--32 h-margin__b--32 h-align--center">Over 10,000 five-star reviews</h3> 5432 <div style="overflow: auto; max-height: 450px;"> 5433 5434 </div> 5435</div> 5436 </div> 5437 <div class="c-cm-modal__footer h-padding__v--32 h-padding__h--50 h-padding-m__h--16"> 5438 <div> 5439 <button type="button" id="modalReviewsCloseButton" class="h-background--orange h-padding__v--25 h-padding__h--32 h-bold1 h-size--18 h-color--white h-border-radius--6">Continue shopping</button> 5440 <span id="bchcActInd" class="lr-btn btn-info btn-block" style="display: none;"><svg class="svg-inline--fa fa-spinner fa-w-16" aria-hidden="true" focusable="false" data-prefix="fa" data-icon="spinner" role="img" xmlns="https://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg=""><path fill="currentColor" d="M304 48c0 26.51-21.49 48-48 48s-48-21.49-48-48 21.49-48 48-48 48 21.49 48 48zm-48 368c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48zm208-208c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48zM96 256c0-26.51-21.49-48-48-48S0 229.49 0 256s21.49 48 48 48 48-21.49 48-48zm12.922 99.078c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48c0-26.509-21.491-48-48-48zm294.156 0c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48c0-26.509-21.49-48-48-48zM108.922 60.922c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.491-48-48-48z"></path></svg> Processing...</span> 5441 </div> 5442 </div> 5443 </div> 5444</div> 5445 5446<style> 5447 .c-cm-modal__icon-close { 5448 display: inline-flex; 5449 align-items: center; 5450 justify-content: center; 5451 width: 44px; 5452 height: 44px; 5453 min-width: 44px; 5454 min-height: 44px; 5455 margin: -12px -12px -12px 12px; 5456 padding: 0; 5457 color: #333; 5458 cursor: pointer; 5459 border: 0; 5460 border-radius: 999px; 5461 background: transparent; 5462 } 5463 5464 .c-cm-modal__icon-close:hover, 5465 .c-cm-modal__icon-close:focus { 5466 background: rgba(0, 0, 0, 0.04); 5467 } 5468 5469 .checkmark { 5470 width: 56px; 5471 height: 56px; 5472 border-radius: 50%; 5473 display: block; 5474 stroke-width: 2; 5475 stroke: #fff; 5476 stroke-miterlimit: 10; 5477 box-shadow: inset 0px 0px 0px #ea7722; 5478 animation: fill 0.4s ease-in-out 0.4s forwards, scale 0.3s ease-in-out 0.9s both; 5479 } 5480 5481 .checkmark__circle { 5482 stroke-dasharray: 166; 5483 stroke-dashoffset: 166; 5484 stroke-width: 2; 5485 stroke-miterlimit: 10; 5486 stroke: #ea7722; 5487 fill: none; 5488 animation: stroke 0.6s cubic-bezier(0.65, 0, 0.45, 1) forwards; 5489 } 5490 5491 .checkmark__check { 5492 transform-origin: 50% 50%; 5493 stroke-dasharray: 48; 5494 stroke-dashoffset: 48; 5495 animation: stroke 0.3s cubic-bezier(0.65, 0, 0.45, 1) 0.8s forwards; 5496 } 5497 5498 @keyframes stroke { 5499 100% { 5500 stroke-dashoffset: 0; 5501 } 5502 } 5503 5504 @keyframes scale { 5505 0%, 5506 100% { 5507 transform: none; 5508 } 5509 5510 50% { 5511 transform: scale3d(1.1, 1.1, 1); 5512 } 5513 } 5514 5515 @keyframes fill { 5516 100% { 5517 box-shadow: inset 0px 0px 0px 30px #ea7722; 5518 } 5519 } 5520 5521 @media (max-width: 768px) { 5522 .c-cm-modal__icon-close {
5523 margin: -10px -10px -10px 10px; 5524 } 5525 5526 .modal-v2 { 5527 height: 750px !important; 5528 max-height: 750px !important; 5529 margin-top: -200px !important; 5530 } 5531 5532 .modal-v2-content { 5533 margin-left: 0px !important; 5534 height: 750px !important; 5535 } 5536 } 5537 5538 @media screen and (max-width: 1133px) and (min-width: 768px) { 5539 .modal-v2 { 5540 height: 563px !important; 5541 max-height: 563px !important; 5542 margin-top: -200px !important; 5543 width: 700px !important; 5544 display: flex; 5545 flex-direction: column; 5546 } 5547 5548 .modal-v2-content { 5549 display: flex; 5550 flex-direction: column; 5551 margin-left: 0px !important; 5552 height: 700px !important; 5553 } 5554 } 5555</style> 5556
5557<script> 5558 (function (config) { 5559 function registerModal() { 5560 window.lrRegisterModalFromConfig(config); 5561 } 5562 // Some page layouts emit shared utilities in the footer, after the modal. 5563 if (typeof window.lrRegisterModalFromConfig === 'function') { 5564 registerModal(); 5565 } else { 5566 document.addEventListener('DOMContentLoaded', registerModal, { once: true }); 5567 } 5568 })({"name":"modalReviews","id":"reviewsModal","gaView":"reviewsModal","layout":"store_design_joy","openTriggerId":"reviewsModalOpen","backButtonId":"modalReviewsBackButton","closeIconId":"modalReviewsCloseModal","primaryButtonId":"modalReviewsCloseButton","openCallbackCode":"console.log(\u0027no open modal function\u0027);","closeCallbackCode":"console.log(\u0027no close modal function\u0027);","primaryButtonActionCode":"","closeTargetId":"","trackFormOpen":false}); 5569</script>
5569 5570 5571<div id="supportModal" class="c-cm-modal__full_screen_container modal-fade allModals " data-modal-name="modalSupport" style="display: none; background: #000000dd;"> 5572 <div class="c-cm-modal__content-container c-cm-modal__content-container--any"> 5573 <div style="border-bottom: 1px solid #e9ecef;" class="h-padding__v--30 h-padding__h--50"> 5574 <div class="lr-flex-wrapper--align lr-flex-wrapper--between"> 5575 <h3 class="c-cm-modal__header--title h-size--32 h-bold3">Contact Support</h3> 5576 <button type="button" id="modalSupportBackButton" class="c-cm-modal__icon-close" aria-label="Close modal"> 5577 <svg style="width: 18px; height: 18px;" class="fa-times fa-w-11" aria-hidden="true" focusable="false" data-prefix="fa" data-icon="times" role="img" xmlns="https://www.w3.org/2000/svg" viewBox="0 0 352 512" data-=""><path fill="currentColor" d="M242.72 256l100.07-100.07c12.28-12.28 12.28-32.19 0-44.48l-22.24-22.24c-12.28-12.28-32.19-12.28-44.48 0L176 189.28 75.93 89.21c-12.28-12.28-32.19-12.28-44.48 0L9.21 111.45c-12.28 12.28-12.28 32.19 0 44.48L109.28 256 9.21 356.07c-12.28-12.28-12.28-32.19 0-44.48l22.24 22.24c12.28 12.28 32.2 12.28 44.48 0L176 322.72l100.07 100.07c12.28 12.28 32.2 12.28 44.48 0l22.24-22.24c12.28-12.28 12.28-32.19 0-44.48L242.72 256z"></path></svg> 5578 </button> 5579 </div> 5580 </div> 5581 <div id="vgnSection1" class="c-cm-modal__content-body h-padding__h--50 h-padding-m__h--16 h-padding__t--32 h-padding__b--40"> 5582 5583<p class="translate-mixed-content">Have a question? Our support team is ready to help! <a href="mailto:[email protected]">Email our team</a> or see 5584 <a href="/contact_us" style="color: blue;">additional support options</a>.</p> 5585 5586<h3 class="h-size--22 h-bold3 h-margin__b--32">Common questions</h3> 5587 5588 5589<!-- accordian footer --> 5590<div class="c-cm-accordian h-width--100p" style=""> 5591 <div class="lr-wrapper--small"> 5592 <div class="" style='width: 100%; display: flex; flex-direction: column;'> 5593 5594 <div class="c-cm-accordian__item" style=""> 5595 <div class='c-cm-accordian__link c-store-faq-modal__accordion-link'> 5596 <h4 class='h-bold1 h-margin__t--0 h-size--16'>Where do I select my location?</h4> 5597 5598 </div> 5599 <div class="c-cm-accordian__content translate-mixed-content" style="display: none;"> 5600 You don't need to select a location before checkout since tickets are valid in any of our 3050+ locations. On the day of your hunt, just select the activity that works for you! 5601 </div> 5602 </div> 5603 <div class="c-cm-accordian__item" style=""> 5604 <div class='c-cm-accordian__link c-store-faq-modal__accordion-link'> 5605 <h4 class='h-bold1 h-margin__t--0 h-size--16'>How do I give as a gift?</h4> 5606 5607 </div> 5608 <div class="c-cm-accordian__content translate-mixed-content" style="display: none;"> 5609 After purchasing any item on our website, you will have the option to print or send as a gift. We have tons of gift cards available after your order is complete. 5610 </div> 5611 </div> </div> 5612 </div> 5613</div> 5614
5615<script> 5616 5617 var initAccordianItem = function(e) { 5618 console.log('clicked accordian item', {e}) 5619 var alreadyActive = this.parentNode.classList.contains('c-cm-accordian--active'); 5620 var AccordianActiveItems = document.querySelectorAll('.c-cm-accordian--active'); 5621 5622 5623 // Close all other accordion items and reset their chevrons 5624 for (var i = 0; i < AccordianActiveItems.length; i++) { 5625 AccordianActiveItems[i].classList.remove('c-cm-accordian--active'); 5626 const otherContent = AccordianActiveItems[i].querySelector('.c-cm-accordian__content'); 5627 const otherChevron = AccordianActiveItems[i].querySelector('.custom-chevron-icon'); 5628 5629 if (otherContent) { 5630 otherContent.style.display = 'none'; 5631 } 5632 if (otherChevron) { 5633 otherChevron.style.transform = 'rotate(0deg)'; 5634 } 5635 } 5636 5637 if (!alreadyActive) { 5638 this.parentNode.classList.add('c-cm-accordian--active'); 5639 const content = this.parentNode.querySelector('.c-cm-accordian__content'); 5640 const chevron = this.querySelector('.custom-chevron-icon'); 5641 5642 if (content) { 5643 content.style.display = 'block'; 5644 } 5645 5646 if(typeof setCookie == 'function') { 5647 setCookie('faq_item_clicked', 1); 5648 setCookie('last_faq_item_clicked', this.innerText); 5649 } 5650 5651 if (chevron) { 5652 chevron.style.transform = 'rotate(180deg)'; 5653 } 5654 5655 const innerText = this.innerText; 5656 // Ensure we only track on actual click events (the first FAQ may auto-open). 5657 if (e) { 5658 // GA4 5659 if (typeof gtag !== 'undefined') { 5660 gtag_and_microsoft_uet('event', 'faq_view', { 5661 link_text: innerText, 5662 }); 5663 } 5664 } 5665 } 5666 }; 5667 5668 var AccordianItems = document.querySelectorAll('.c-cm-accordian__link'); 5669 console.log('adding accordian clicks') 5670 for (var i = 0; i < AccordianItems.length; i++) { 5671 if(AccordianItems[i].classList.contains('click-added')){ 5672 // console.log('already has event') 5673 } else { 5674 // console.log('adding accordian click', {item: AccordianItems[i]}) 5675 AccordianItems[i].classList.add('click-added'); 5676 AccordianItems[i].onclick = initAccordianItem; 5677 } 5678 5679 } 5680</script>
5680 5681 5682<style> 5683 5684</style> 5685 5686 5687 5688 <!-- JSON-LD Schema Markup for FAQs --> 5689
5689<script type="application/ld+json"> 5690 { 5691 "@context": "https://schema.org", 5692 "@type": "FAQPage", 5693 "name": "Scavenger Hunt Gifting FAQ", 5694 "mainEntity": [ 5695 { 5696 "@type": "Question", 5697 "name": "Where do I select my location?", 5698 "acceptedAnswer": { 5699 "@type": "Answer", 5700 "text": "You don't need to select a location before checkout since tickets are valid in any of our 3050+ locations. On the day of your hunt, just select the activity that works for you!" 5701 } 5702 }, 5703 { 5704 "@type": "Question", 5705 "name": "How do I give as a gift?", 5706 "acceptedAnswer": { 5707 "@type": "Answer", 5708 "text": "After purchasing any item on our website, you will have the option to print or send as a gift. We have tons of gift cards available after your order is complete." 5709 } 5710 } 5711 ] 5712} </script>
5712 5713 5714
5714<script> 5715 if(typeof window.seoData == 'undefined') { 5716 window.seoData = {}; 5717 } 5718 window.seoData["gift_faq"] = {"@context":"https://schema.org","@type":"FAQPage","name":"Scavenger Hunt Gifting FAQ","mainEntity":[{"@type":"Question","name":"Where do I select my location?","acceptedAnswer":{"@type":"Answer","text":"You don't need to select a location before checkout since tickets are valid in any of our 3050+ locations. On the day of your hunt, just select the activity that works for you!"}},{"@type":"Question","name":"How do I give as a gift?","acceptedAnswer":{"@type":"Answer","text":"After purchasing any item on our website, you will have the option to print or send as a gift. We have tons of gift cards available after your order is complete."}}]}; 5719 </script>
5719 5720 5721 5722 <style> 5723 .c-cm-accordian__item { 5724 margin-bottom: 8px !important; 5725 background-color: #FBFCFB; 5726 border-bottom: none; 5727 border: 1px solid #DFEBDF; border-radius: 10px; 5728 overflow: hidden; 5729 } 5730 5731 .c-cm-accordian--active { 5732 background-color: black; 5733 } 5734 5735 .c-cm-accordian__link{ 5736 border-bottom: none; 5737 font-weight: 800; 5738 border-radius: 10px; 5739 } 5740 5741 .c-cm-accordian__item.c-cm-accordian--active .c-cm-accordian__link:after { 5742 background: white; 5743 } 5744 5745 .c-cm-accordian__link.click-added { 5746 border-radius: 10px 10px 0px 0px; 5747 } 5748 5749 /* Remove all hover effects */ 5750 .c-cm-accordian__link:hover { 5751 background-color: transparent !important; 5752 background: none !important; 5753 } 5754 5755 .c-cm-accordian__item:hover { 5756 background-color: #FBFCFB !important; 5757 } 5758 5759 .click_added { 5760 color: white; 5761 background-color: black !important; 5762 } 5763 .c-cm-accordian .c-cm-accordian--active .c-cm-accordian__link { 5764 background-color: black !important; 5765 color: white !important; 5766 } 5767 .c-cm-accordian__content{ 5768 background-color: black; 5769 color: white; 5770 line-height: 22px; 5771 padding: 15px; 5772 } 5773 5774 </style> 5775 5776 5777<style> 5778 .c-cm-accordian__link:after, .c-cm-accordian__link:before { 5779 top: 50%; 5780 width: 12px; 5781 } 5782 5783 /* Mobile font size and spacing adjustments */ 5784 @media (max-width: 768px) { 5785 .c-cm-accordian__link h4 { 5786 font-size: 18px !important; 5787 } 5788 } 5789 5790 /* Prevent text overlap with chevron */ 5791 .c-cm-accordian__link { 5792 padding-right: 50px !important; 5793 } 5794 5795 @media (max-width: 480px) { 5796 .c-cm-accordian__link { 5797 padding-right: 45px !important; 5798 } 5799 .custom-chevron-icon { 5800 right: 15px !important; 5801 } 5802 } 5803</style> 5804 </div> 5805 <div class="c-cm-modal__footer h-padding__v--32 h-padding__h--50 h-padding-m__h--16"> 5806 <div> 5807 <button type="button" id="modalSupportCloseButton" class="h-background--orange h-padding__v--25 h-padding__h--32 h-bold1 h-size--18 h-color--white h-border-radius--6">Continue shopping</button> 5808 <span id="bchcActInd" class="lr-btn btn-info btn-block" style="display: none;"><svg class="svg-inline--fa fa-spinner fa-w-16" aria-hidden="true" focusable="false" data-prefix="fa" data-icon="spinner" role="img" xmlns="https://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg=""><path fill="currentColor" d="M304 48c0 26.51-21.49 48-48 48s-48-21.49-48-48 21.49-48 48-48 48 21.49 48 48zm-48 368c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48zm208-208c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48zM96 256c0-26.51-21.49-48-48-48S0 229.49 0 256s21.49 48 48 48 48-21.49 48-48zm12.922 99.078c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48c0-26.509-21.491-48-48-48zm294.156 0c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48c0-26.509-21.49-48-48-48zM108.922 60.922c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.491-48-48-48z"></path></svg> Processing...</span> 5809 </div> 5810 </div> 5811 </div> 5812</div> 5813 5814<style> 5815 .c-cm-modal__icon-close { 5816 display: inline-flex; 5817 align-items: center; 5818 justify-content: center; 5819 width: 44px; 5820 height: 44px; 5821 min-width: 44px; 5822 min-height: 44px; 5823 margin: -12px -12px -12px 12px; 5824 padding: 0; 5825 color: #333; 5826 cursor: pointer; 5827 border: 0; 5828 border-radius: 999px; 5829 background: transparent; 5830 } 5831 5832 .c-cm-modal__icon-close:hover, 5833 .c-cm-modal__icon-close:focus { 5834 background: rgba(0, 0, 0, 0.04); 5835 } 5836 5837 .checkmark { 5838 width: 56px; 5839 height: 56px; 5840 border-radius: 50%; 5841 display: block; 5842 stroke-width: 2; 5843 stroke: #fff; 5844 stroke-miterlimit: 10; 5845 box-shadow: inset 0px 0px 0px #ea7722; 5846 animation: fill 0.4s ease-in-out 0.4s forwards, scale 0.3s ease-in-out 0.9s both; 5847 } 5848 5849 .checkmark__circle { 5850 stroke-dasharray: 166; 5851 stroke-dashoffset: 166; 5852 stroke-width: 2; 5853 stroke-miterlimit: 10; 5854 stroke: #ea7722; 5855 fill: none; 5856 animation: stroke 0.6s cubic-bezier(0.65, 0, 0.45, 1) forwards; 5857 } 5858 5859 .checkmark__check { 5860 transform-origin: 50% 50%; 5861 stroke-dasharray: 48; 5862 stroke-dashoffset: 48; 5863 animation: stroke 0.3s cubic-bezier(0.65, 0, 0.45, 1) 0.8s forwards; 5864 } 5865 5866 @keyframes stroke { 5867 100% { 5868 stroke-dashoffset: 0; 5869 } 5870 } 5871 5872 @keyframes scale { 5873 0%, 5874 100% { 5875 transform: none; 5876 } 5877 5878 50% { 5879 transform: scale3d(1.1, 1.1, 1); 5880 } 5881 } 5882 5883 @keyframes fill { 5884 100% { 5885 box-shadow: inset 0px 0px 0px 30px #ea7722; 5886 } 5887 } 5888 5889 @media (max-width: 768px) { 5890 .c-cm-modal__icon-close {
5891 margin: -10px -10px -10px 10px; 5892 } 5893 5894 .modal-v2 { 5895 height: 750px !important; 5896 max-height: 750px !important; 5897 margin-top: -200px !important; 5898 } 5899 5900 .modal-v2-content { 5901 margin-left: 0px !important; 5902 height: 750px !important; 5903 } 5904 } 5905 5906 @media screen and (max-width: 1133px) and (min-width: 768px) { 5907 .modal-v2 { 5908 height: 563px !important; 5909 max-height: 563px !important; 5910 margin-top: -200px !important; 5911 width: 700px !important; 5912 display: flex; 5913 flex-direction: column; 5914 } 5915 5916 .modal-v2-content { 5917 display: flex; 5918 flex-direction: column; 5919 margin-left: 0px !important; 5920 height: 700px !important; 5921 } 5922 } 5923</style> 5924
5925<script> 5926 (function (config) { 5927 function registerModal() { 5928 window.lrRegisterModalFromConfig(config); 5929 } 5930 // Some page layouts emit shared utilities in the footer, after the modal. 5931 if (typeof window.lrRegisterModalFromConfig === 'function') { 5932 registerModal(); 5933 } else { 5934 document.addEventListener('DOMContentLoaded', registerModal, { once: true }); 5935 } 5936 })({"name":"modalSupport","id":"supportModal","gaView":"supportModal","layout":"store_design_joy","openTriggerId":"supportModalOpen","backButtonId":"modalSupportBackButton","closeIconId":"modalSupportCloseModal","primaryButtonId":"modalSupportCloseButton","openCallbackCode":"console.log(\u0027no open modal function\u0027);","closeCallbackCode":"console.log(\u0027no close modal function\u0027);","primaryButtonActionCode":"","closeTargetId":"","trackFormOpen":false}); 5937</script>
5937 5938 5939 5940 5941 <!--stripe payment, only loaded on the checkout page and the complete page --> 5942 <!-- JS FILES --> 5943 <!--
5943<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
5943 --> 5944 5945 5946 5947 5948 5949
5950<script> 5951 // Set the options to make LazyLoad self-initialize 5952 window.lazyLoadOptions = { 5953 elements_selector: ".lazy", 5954 threshold: 700, 5955 callback_loaded: function(el){ 5956 if(el.dataset.style){ 5957 console.log("Loaded", el) 5958 el.setAttribute("style",el.dataset.style); 5959 el.classList.add('style-added') 5960 } 5961 } 5962 }; 5963 5964 // Listen to the initialization event and get the instance of LazyLoad 5965 window.addEventListener('LazyLoad::Initialized', function (event) { 5966 window.lazyLoadInstance = event.detail.instance; 5967 }, false); 5968 5969 5970</script>
5970 5971
5971<script async src="https://cdnjs.cloudflare.com/ajax/libs/vanilla-lazyload/19.1.3/lazyload.min.js" crossorigin="anonymous"></script>
5971 5972
5972<script>var strpk = 'pk_live_518XJwhFDtlJLguHdXUQ28qbIj5WDIK4R9j5tHTkLNkjLK3ydauUvLlxyR9958rR3yS6rNQ5mdoYQ0QLKMhCzmTqX00i26Zm611';</script>
5972 5973
5973<script defer src="https://js.stripe.com/v3/"></script>
5973 5974 5975 5976
5976<script defer src="https://www.letsroam.com/assets/js/common/mediabox/mediabox.js?cache_version=v12.2.6354ccd"></script>
5976<link href="https://www.letsroam.com/assets/js/common/mediabox/mediabox.min.css?cache_version=v12.2.6354ccd" rel="stylesheet">
5976<script> 5977 ready(function() { 5978 if(typeof MediaBox != 'undefined') { 5979 MediaBox('.mediabox') 5980 } else { 5981 loadScript('/assets/js/common/mediabox/mediabox.js', function() { 5982 MediaBox('.mediabox') 5983 }) 5984 } 5985 5986 }) 5987 5988 </script>
5988
5989<script> 5990 (function (w, d, s, u) { 5991 if (w.oaiq) return; 5992 var q = function () { 5993 q.q.push(arguments); 5994 }; 5995 q.q = []; 5996 w.oaiq = q; 5997 var js = d.createElement(s); 5998 js.async = true; 5999 js.src = u; 6000 var f = d.getElementsByTagName(s)[0]; 6001 f.parentNode.insertBefore(js, f); 6002 })(window, document, "script", "https://bzrcdn.openai.com/sdk/oaiq.min.js"); 6003 6004 window.openAiAdsTrackedEventKeys = window.openAiAdsTrackedEventKeys || {}; 6005 window.openAiAdsDebugEvents = window.openAiAdsDebugEvents || []; 6006 window.openAiAdsUser = window.openAiAdsUser || {}; 6007 6008 window.openAiAdsSha256 = function (value, lowercase) { 6009 var normalizedValue = String(value || '').trim(); 6010 if (lowercase) { 6011 normalizedValue = normalizedValue.toLowerCase(); 6012 } 6013 if (!normalizedValue || !window.crypto || !window.crypto.subtle || typeof window.TextEncoder !== 'function') { 6014 return Promise.resolve(''); 6015 } 6016 6017 return window.crypto.subtle.digest( 6018 'SHA-256', 6019 new window.TextEncoder().encode(normalizedValue) 6020 ).then(function (hashBuffer) { 6021 return Array.prototype.map.call(new Uint8Array(hashBuffer), function (hashByte) { 6022 return hashByte.toString(16).padStart(2, '0'); 6023 }).join(''); 6024 }); 6025 }; 6026 6027 window.openAiAdsNormalizeCountry = function (country) { 6028 var normalizedCountry = String(country || '').trim().toUpperCase(); 6029 if (/^[A-Z]{2}$/.test(normalizedCountry)) { 6030 return normalizedCountry; 6031 } 6032 var countryAliases = { 6033 'UNITED STATES': 'US', 6034 'UNITED STATES OF AMERICA': 'US', 6035 'USA': 'US', 6036 'CANADA': 'CA', 6037 'UNITED KINGDOM': 'GB', 6038 'GREAT BRITAIN': 'GB', 6039 'UK': 'GB', 6040 'AUSTRALIA': 'AU', 6041 'NEW ZEALAND': 'NZ', 6042 'SOUTH KOREA': 'KR', 6043 'REPUBLIC OF KOREA': 'KR', 6044 }; 6045 return countryAliases[normalizedCountry] || ''; 6046 }; 6047 6048 window.open_ai_ads_set_user = function (userData) { 6049 userData = userData || {}; 6050 var openAiUser = {}; 6051 var emailHash = String(userData.email_sha256 || '').trim().toLowerCase(); 6052 var externalIdHash = String(userData.external_id_sha256 || '').trim().toLowerCase(); 6053 var country = window.openAiAdsNormalizeCountry(userData.country); 6054 var city = String(userData.city || '').trim().slice(0, 128); 6055 var zipCode = String(userData.zip_code || '').trim().slice(0, 32); 6056 6057 if (country) { 6058 openAiUser.country = country; 6059 } 6060 if (city) { 6061 openAiUser.city = city; 6062 } 6063 if (zipCode && /^[a-zA-Z0-9 -]+$/.test(zipCode)) { 6064 openAiUser.zip_code = zipCode; 6065 } 6066 6067 var emailHashPromise = /^[a-f0-9]{64}$/.test(emailHash) 6068 ? Promise.resolve(emailHash) 6069 : window.openAiAdsSha256(userData.email, true); 6070 var externalIdHashPromise = /^[a-f0-9]{64}$/.test(externalIdHash) 6071 ? Promise.resolve(externalIdHash) 6072 : window.openAiAdsSha256(userData.external_id, false); 6073 6074 return Promise.all([emailHashPromise, externalIdHashPromise]).then(function (hashes) { 6075 if (hashes[0]) { 6076 openAiUser.email_sha256 = hashes[0]; 6077 } 6078 if (hashes[1]) { 6079 openAiUser.external_id_sha256 = hashes[1]; 6080 } 6081 window.openAiAdsUser = openAiUser; 6082 if (Object.keys(openAiUser).length > 0 && typeof window.oaiq === 'function') { 6083 // OpenAI user data is request-scoped and belongs on init, not measure. 6084 window.oaiq('init', { user: openAiUser }); 6085 } 6086 return openAiUser; 6087 }); 6088 }; 6089 6090 window.open_ai_ads_track_with_user = function (eventName, eventData, eventOptions, userData, eventCallback) { 6091 return window.open_ai_ads_set_user(userData).then(function () { 6092 return window.open_ai_ads_track(eventName, eventData, eventOptions, eventCallback); 6093 }); 6094 }; 6095 6096 window.appendGtagSuccess = window.appendGtagSuccess || function (gtagLabel, eventNames, eventValue) { 6097 var gtagSuccessElements = document.querySelectorAll('#gtagSuccess, #receiptGtagSuccess'); 6098 if (!gtagSuccessElements.length) { 6099 return; 6100 }
6101 var numericValue = Number(eventValue || 0); 6102 var displayValue = !isNaN(numericValue) ? Math.round(numericValue).toLocaleString() : eventValue; 6103 var eventLabel = Array.isArray(eventNames) ? eventNames.join(', ') : eventNames; 6104 for (var index = 0; index < gtagSuccessElements.length; index += 1) { 6105 var gtagSuccessEl = gtagSuccessElements[index]; 6106 var successEl = document.createElement('div'); 6107 successEl.style.color = '#137333'; 6108 successEl.textContent = 'Gtag ' + (gtagLabel ? gtagLabel + ': ' : '') + eventLabel + ' fired for $' + displayValue + ' value'; 6109 if (gtagSuccessEl.getAttribute('data-has-success') !== '1') { 6110 gtagSuccessEl.innerHTML = ''; 6111 gtagSuccessEl.setAttribute('data-has-success', '1'); 6112 } 6113 gtagSuccessEl.appendChild(successEl); 6114 } 6115 }; 6116 6117 window.renderOpenAiAdsSuccess = function () { 6118 var successContainers = document.querySelectorAll('#openAiAdsSuccess, #receiptOpenAiAdsSuccess'); 6119 if (!successContainers.length) { 6120 return; 6121 } 6122 for (var containerIndex = 0; containerIndex < successContainers.length; containerIndex += 1) { 6123 var successContainer = successContainers[containerIndex]; 6124 var renderedCount = Number(successContainer.getAttribute('data-rendered-events') || 0); 6125 if (window.openAiAdsDebugEvents.length > 0 && renderedCount === 0) { 6126 successContainer.innerHTML = ''; 6127 successContainer.setAttribute('data-has-success', '1'); 6128 } 6129 for (var eventIndex = renderedCount; eventIndex < window.openAiAdsDebugEvents.length; eventIndex += 1) { 6130 var debugEvent = window.openAiAdsDebugEvents[eventIndex]; 6131 var successEl = document.createElement('div'); 6132 successEl.style.color = '#137333'; 6133 successEl.textContent = 'OpenAI Ads ' + (debugEvent.label ? debugEvent.label + ': ' : '') + debugEvent.eventName + ' fired' + (debugEvent.value === undefined ? '' : ' for $' + debugEvent.value + ' value'); 6134 successContainer.appendChild(successEl); 6135 } 6136 successContainer.setAttribute('data-rendered-events', String(window.openAiAdsDebugEvents.length)); 6137 } 6138 }; 6139 6140 window.appendOpenAiAdsSuccess = function (label, eventName, eventValue, eventId) { 6141 window.openAiAdsDebugEvents.push({ 6142 label: label || '', 6143 eventName: eventName, 6144 value: eventValue, 6145 eventId: eventId || '', 6146 }); 6147 window.renderOpenAiAdsSuccess(); 6148 }; 6149 6150 window.appendOpenAiAdsTrackingMarker = function (eventDetails) { 6151 var markerId = 'open_ai_' + String(eventDetails.eventName || 'event').replace(/[^a-zA-Z0-9_-]/g, '_'); 6152 var marker = document.getElementById(markerId); 6153 if (!marker) { 6154 marker = document.createElement('div'); 6155 marker.id = markerId; 6156 marker.style.display = 'none'; 6157 marker.setAttribute('aria-hidden', 'true'); 6158 marker.setAttribute('data-open-ai-event', eventDetails.eventName || ''); 6159 document.body.appendChild(marker); 6160 } 6161 var fireCount = Number(marker.getAttribute('data-fire-count') || 0) + 1; 6162 marker.setAttribute('data-fire-count', String(fireCount)); 6163 marker.setAttribute('data-event-id', eventDetails.eventId || ''); 6164 if (eventDetails.value !== undefined) { 6165 marker.setAttribute('data-event-value', String(eventDetails.value)); 6166 } 6167 if (/^[a-f0-9]{64}$/.test(window.openAiAdsUser.email_sha256 || '')) { 6168 marker.setAttribute('data-user-email-sha256', window.openAiAdsUser.email_sha256); 6169 } 6170 if (/^[a-f0-9]{64}$/.test(window.openAiAdsUser.external_id_sha256 || '')) { 6171 marker.setAttribute('data-user-external-id-sha256', window.openAiAdsUser.external_id_sha256); 6172 } 6173 if (window.openAiAdsUser.country) { 6174 marker.setAttribute('data-user-country', window.openAiAdsUser.country); 6175 } 6176 }; 6177 6178 window.open_ai_ads_event_callback = function (eventDetails, label, eventValue) { 6179 eventDetails.value = eventValue; 6180 window.appendOpenAiAdsTrackingMarker(eventDetails); 6181 if (eventDetails.eventName !== 'page_viewed') { 6182 window.appendOpenAiAdsSuccess(label, eventDetails.eventName, eventValue, eventDetails.eventId); 6183 } 6184 }; 6185 6186 window.open_ai_ads_track = function (eventName, eventData, eventOptions, eventCallback) { 6187 if (typeof window.oaiq !== 'function') { 6188 return false;
6189 } 6190 eventOptions = eventOptions || {}; 6191 var displayedEventName = eventOptions.custom_event_name || eventName; 6192 var eventId = eventOptions.event_id || eventOptions.eventId || ''; 6193 var dedupeKey = displayedEventName + ':' + eventId; 6194 if (eventId && window.openAiAdsTrackedEventKeys[dedupeKey]) { 6195 return false; 6196 } 6197 if (eventId) { 6198 window.openAiAdsTrackedEventKeys[dedupeKey] = true; 6199 } 6200 window.oaiq('measure', eventName, eventData, eventOptions); 6201 var eventDetails = { 6202 eventName: displayedEventName, 6203 baseEventName: eventName, 6204 eventId: eventId, 6205 data: eventData, 6206 }; 6207 if (typeof eventCallback === 'function') { 6208 eventCallback(eventDetails); 6209 } 6210 return true; 6211 }; 6212 6213 window.track_open_ai_meeting_held = function (leadUuid, meetingValue, userData) { 6214 var numericMeetingValue = Number(meetingValue || 0); 6215 userData = userData || {}; 6216 var meetingData = { 6217 type: 'custom', 6218 }; 6219 if (numericMeetingValue > 0) { 6220 // OpenAI expects monetary values in minor units (cents for USD). 6221 meetingData.amount = Math.round(numericMeetingValue * 100); 6222 meetingData.currency = 'USD'; 6223 } 6224 if (String(userData.content_id || '').trim()) { 6225 meetingData.contents = [{ 6226 id: String(userData.content_id).trim(), 6227 name: String(userData.content_name || 'Meeting booked').trim(), 6228 content_type: 'event', 6229 quantity: 1, 6230 }]; 6231 } 6232 // Reason: meeting_held is configured in Ads Manager but is not a standard browser SDK event. 6233 userData.external_id = userData.external_id || String(leadUuid || ''); 6234 return window.open_ai_ads_track_with_user('custom', meetingData, { 6235 custom_event_name: 'meeting_held', 6236 event_id: String(leadUuid || '') + '_meeting_held', 6237 }, userData, function (eventDetails) { 6238 window.open_ai_ads_event_callback(eventDetails, 'meeting held', numericMeetingValue); 6239 }); 6240 }; 6241 6242 oaiq("init", { 6243 pixelId: "94UDJXGWvAcNrzHSrhqXuU", 6244 debug: false, 6245 }); 6246 6247 // Test-event renaming is temporarily disabled so local validation uses the standard event names. 6248 window.open_ai_ads_track('page_viewed', { 6249 type: 'contents', 6250 contents: [{ 6251 id: window.location.pathname || '/', 6252 name: document.title || window.location.pathname || '/', 6253 content_type: 'page', 6254 }], 6255 }, { 6256 event_id: 'page_viewed_' + (typeof PAGE_VIEW_ID === 'undefined' ? window.location.href : PAGE_VIEW_ID), 6257 }, function (eventDetails) { 6258 window.open_ai_ads_event_callback(eventDetails, 'page view'); 6259 }); 6260</script>
6260 6261
6262<script> 6263 if(document.cookie.indexOf('timeZone') === -1) { 6264 var timeZone = Intl.DateTimeFormat().resolvedOptions().timeZone; 6265 var expiryTime = new Date(); 6266 expiryTime.setMonth(expiryTime.getMonth() + 3); 6267 document.cookie = 'timeZone=' + timeZone + ';expires=' + expiryTime.toUTCString(); 6268} 6269</script>
6269 6270 6271 6272
6272<script> 6273 ready(function() { 6274 setTimeout(() => { 6275 // marking user as engaged 6276 if(!window.engagedUserFired && !getCookie('autoTest')) { 6277 fb_track_safe('track','EngagedPageView'); 6278 window.engagedUserFired = true; 6279 } 6280 }, 10000); 6281 }) 6282 </script>
6282 6283 6284 6285 6286 6287 6288<style> 6289 .grecaptcha-badge { visibility: hidden; } 6290</style> 6291 6292 6293<div id="modal-calendar-wrapper"></div> 6294<input type='hidden' id='td_WEB_UNIQUE_ID' value='bot_89be54e802'></input><input type='hidden' id='td_web_unique_id' value='bot_89be54e802'></input><input type='hidden' id='td_is_bot' value='1'></input><input type='hidden' id='td_user_agent' value='Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; PageSourceSearchBot/1.0; +https://pagesourcesearch.com/bot) Chrome/128.0.0.0 Safari/537.36'></input><input type='hidden' id='td_ip_address' value='181.215.65.75'></input><input type='hidden' id='td_isp' value=''></input><input type='hidden' id='td_device_type' value='desktop'></input><input type='hidden' id='td_website_domain' value='www.letsroam.com'></input><input type='hidden' id='td_lat' value='41.85003'></input><input type='hidden' id='td_long' value='-87.65005'></input><input type='hidden' id='td_last_viewed_hunt_id' value=''></input><input type='hidden' id='td_lr_partner_id' value=''></input><input type='hidden' id='td_gclid' value=''></input><input type='hidden' id='td_fbclid' value=''></input><input type='hidden' id='td_ttclid' value=''></input><input type='hidden' id='td_msclkid' value=''></input><input type='hidden' id='td_ab_data' value=''></input><input type='hidden' id='td_geo_country' value=''></input><input type='hidden' id='td_geo_city' value=''></input><input type='hidden' id='td_geo_state' value=''></input><input type='hidden' id='td_geo_lat_long' value=''></input><input type='hidden' id='td_submission_url' value=''></input><input type='hidden' id='td_orig_referer' value=''></input><input type='hidden' id='td_entry_url' value='https://www.letsroam.com/store'></input><input type='hidden' id='td_entry_url_from_cookie' value='https://www.letsroam.com/store'></input><input type='hidden' id='td_last_pages' value='https://www.letsroam.com/store'></input><input type='hidden' id='td_has_seen_gift_page' value=''></input><input type='hidden' id='td_last_check_query' value=''></input><input type='hidden' id='td_current_page' value='https://www.letsroam.com/store'></input><input type='hidden' id='td_is_dev' value=''></input><input type='hidden' id='td_tracking_recovered_count' value='0'></input><input type='hidden' id='td_tracking_recovered_different_user_agent_count' value='0'></input><input type='hidden' id='td_last_paid_visit_date' value=''></input><input type='hidden' id='td_utm_source' value=''></input><input type='hidden' id='td_utm_medium' value=''></input><input type='hidden' id='td_utm_content' value=''></input><input type='hidden' id='td_utm_campaign' value=''></input><input type='hidden' id='td_utm_category' value=''></input><input type='hidden' id='td_utm_campaign_name' value=''></input><input type='hidden' id='td_utm_term' value=''></input><input type='hidden' id='td_keyword' value=''></input><input type='hidden' id='td_first_visit' value='1790241872'></input><input type='hidden' id='td_date_first_visit' value='26-09-24 03:24:32'></input><input type='hidden' id='td_last_paid_utm_source' value=''></input><input type='hidden' id='td_last_paid_utm_campaign' value=''></input><input type='hidden' id='td_last_paid_utm_category' value=''></input> 6295
6296<script type="text/javascript"> 6297 console.log_on_production('clarity about to load'); 6298 (function(c,l,a,r,i,t,y){ 6299 c[a]=c[a]||function(){(c[a].q=c[a].q||[]).push(arguments)}; 6300 t=l.createElement(r);t.async=1;t.src="https://www.clarity.ms/tag/"+i; 6301 y=l.getElementsByTagName(r)[0];y.parentNode.insertBefore(t,y); 6302 console.log_on_production('clarity loaded'); 6303 6304clarity("set", "ab_tests", ""); 6305 clarity("set", "WEB_UNIQUE_ID", "bot_89be54e802"); 6306 })(window, document, "clarity", "script", "pad5etsfyp"); 6307</script>
6307 6308 6309 6310 6311<input type="hidden" id="page_ab_data" value='[]' /> 6312<input type="hidden" id="page_ab_context_data" value='[]' /> 6313<input type="hidden" id="ab_journey_excluded_tests_data" value='["TEST_AUTO_TEST_WITHOUT_TRIGGER_DONT_DELETE","TEST_MANUAL_TEST_DONT_DELETE","TEST_AUTO_TEST_WITH_TRIGGER_DONT_DELETE"]' /> 6314 6315 6316<!-- This deterministic marker is intentionally excluded from Output.php's 6317 data-original-text translation pass. The pipeline marker below owns the 6318 database/SQLite assertion; translating this label again can replace a 6319 valid fixture value with an English fallback when a locale row is absent. --> 6320<p id="test_translation_div" class="do-not-translate" style="display: none;">Local Language</p> 6321 6322 6323<!-- SEO data and schema -->
6324<script type="application/ld+json"> 6325{ 6326 "@context": "http://schema.org", 6327 "@type": "LocalBusiness", 6328 "priceRange": "$12-$50", 6329 "url": "https://www.letsroam.com/store", 6330 "name": "Scavenger Hunt Walking Tour Tickets And Gift Card", 6331 "alternateName": [ 6332 "Scavenger Hunt Walking Tour Tickets And Gift Card" 6333 ], 6334 "logo": "https://www.letsroam.com/assets/img/logo.jpg", 6335 "aggregateRating": { 6336 "@type": "AggregateRating", 6337 "ratingValue": "4.83", 6338 "reviewCount": 2541 6339 }, 6340 "review": [], 6341 "telephone": "+1-833-202-7626", 6342 "photo": null, 6343 "image": null, 6344 "description": "Purchase your scavenger hunt walking tour tickets and gift cards for up to 50% off!" 6345}</script>
6345 6346
6347<script> 6348 if(typeof window.seoData == 'undefined') { 6349 window.seoData = {}; 6350 } 6351 window.seoData['business_type'] = "backup"; 6352 window.seoData['business'] = {"@context":"http://schema.org","@type":"LocalBusiness","priceRange":"$12-$50","url":"https://www.letsroam.com/store","name":"Scavenger Hunt Walking Tour Tickets And Gift Card","alternateName":["Scavenger Hunt Walking Tour Tickets And Gift Card"],"logo":"https://www.letsroam.com/assets/img/logo.jpg","aggregateRating":{"@type":"AggregateRating","ratingValue":"4.83","reviewCount":2541},"review":[],"telephone":"+1-833-202-7626","photo":null,"image":null,"description":"Purchase your scavenger hunt walking tour tickets and gift cards for up to 50% off!"}; 6353</script>
6353 6354 6355 6356<div id="languageAndCurrencyModal" class="c-cm-modal__full_screen_container modal-fade allModals " data-modal-name="languageAndCurrencyModal" style="display: none; background-color:#000000cc; z-index: 99999999999999999999;"> 6357 <div id="languageAndCurrencyModalCloseModal" class="c-cm-modal__close-x close-player-players"> 6358 <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-x-icon lucide-x"><path d="M18 6 6 18" /><path d="m6 6 12 12" /></svg> 6359 </div> 6360 <div style="width: 100% !important; max-width: 950px !important; border-radius: 12px; padding: 0 !important; z-index: 99999999999999999999;" class="c-cm-modal__content-container lc-modal-wrapper-container c-cm-modal__content-container--any"> 6361 <div style="width: 100% !important; max-width: 950px !important; border-radius: 12px; padding: 0 !important; z-index: 99999999999999999999;" id="vgnSection1" class="c-cm-modal__section c-cm-modal__section--any lc-modal-wrapper-container"> 6362 <!-- DEBUG: current_language: en, current_currency: usd --><!-- DEBUG: supported_languages: en, zh, da, nl, fr, de, it, ja, ko, no, pl, pt, es, sv, el, tr, hi, ar, ru, fi, cs, hu, ro, he, th --> 6363<div class="lc-language-currency-modal h-background--white"> 6364 <div class="lc-modal-header h-margin-m__b--10 h-padding__h--16 h-padding__t--16 h-padding__b--12"> 6365 <div class="lc-modal-title h-size--22 h-size-m--18 h-weight--700 h-color--gray3"><span class="">Please Confirm Language & Currency</span></div> 6366 <button type="button" class="lc-close-btn" onclick="lrModalAction('languageAndCurrencyModal', 'close')">×</button> 6367 </div> 6368 6369 <div class="lc-modal-content"> 6370 <!-- Scrollable Language Section --> 6371 <div class="lc-scrollable-content h-padding__h--16 h-padding__t--16"> 6372 <div class="lc-language-section h-margin__b--25"> 6373 <div class="lc-section-title h-weight--700 h-text--upper h-size--14 h-color--gray3">Language </div> 6374 <div class="lc-language-links"> 6375 <!-- DEBUG: Current language match - lang: en, current_language: en --> <a href="https://www.letsroam.com/store" 6376 class="lc-language-link lc-current" 6377 data-language="en"> 6378 <img src="https://cdnjs.cloudflare.com/ajax/libs/flag-icon-css/6.6.6/flags/4x3/us.svg" alt="EN" class="lc-flag-icon"> 6379 <div class="lc-language-info"> 6380 <span class="lc-language-name do-not-translate">English</span> 6381 <span class="lc-language-current">English</span> 6382 </div> 6383 <span class="lc-selected-check">â</span> 6384 </a> 6385 <a href="https://www.letsroam.com/zh/store" 6386 class="lc-language-link " 6387 data-language="zh"> 6388 <img src="https://cdnjs.cloudflare.com/ajax/libs/flag-icon-css/6.6.6/flags/4x3/cn.svg" alt="ZH" class="lc-flag-icon"> 6389 <div class="lc-language-info"> 6390 <span class="lc-language-name do-not-translate">䏿</span> 6391 <span class="lc-language-current">Chinese</span> 6392 </div> 6393 </a> 6394 <a href="https://www.letsroam.com/da/store" 6395 class="lc-language-link " 6396 data-language="da"> 6397 <img src="https://cdnjs.cloudflare.com/ajax/libs/flag-icon-css/6.6.6/flags/4x3/dk.svg" alt="DA" class="lc-flag-icon"> 6398 <div class="lc-language-info"> 6399 <span class="lc-language-name do-not-translate">Dansk</span> 6400 <span class="lc-language-current">Danish</span> 6401 </div> 6402 </a> 6403 <a href="https://www.letsroam.com/nl/store" 6404 class="lc-language-link " 6405 data-language="nl"> 6406 <img src="https://cdnjs.cloudflare.com/ajax/libs/flag-icon-css/6.6.6/flags/4x3/nl.svg" alt="NL" class="lc-flag-icon"> 6407 <div class="lc-language-info"> 6408 <span class="lc-language-name do-not-translate">Nederlands</span>
6409 <span class="lc-language-current">Dutch</span> 6410 </div> 6411 </a> 6412 <a href="https://www.letsroam.com/fr/store" 6413 class="lc-language-link " 6414 data-language="fr"> 6415 <img src="https://cdnjs.cloudflare.com/ajax/libs/flag-icon-css/6.6.6/flags/4x3/fr.svg" alt="FR" class="lc-flag-icon"> 6416 <div class="lc-language-info"> 6417 <span class="lc-language-name do-not-translate">Français</span> 6418 <span class="lc-language-current">French</span> 6419 </div> 6420 </a> 6421 <a href="https://www.letsroam.com/de/store" 6422 class="lc-language-link " 6423 data-language="de"> 6424 <img src="https://cdnjs.cloudflare.com/ajax/libs/flag-icon-css/6.6.6/flags/4x3/de.svg" alt="DE" class="lc-flag-icon"> 6425 <div class="lc-language-info"> 6426 <span class="lc-language-name do-not-translate">Deutsch</span> 6427 <span class="lc-language-current">German</span> 6428 </div> 6429 </a> 6430 <a href="https://www.letsroam.com/it/store" 6431 class="lc-language-link " 6432 data-language="it"> 6433 <img src="https://cdnjs.cloudflare.com/ajax/libs/flag-icon-css/6.6.6/flags/4x3/it.svg" alt="IT" class="lc-flag-icon"> 6434 <div class="lc-language-info"> 6435 <span class="lc-language-name do-not-translate">Italiano</span> 6436 <span class="lc-language-current">Italian</span> 6437 </div> 6438 </a> 6439 <a href="https://www.letsroam.com/ja/store" 6440 class="lc-language-link " 6441 data-language="ja"> 6442 <img src="https://cdnjs.cloudflare.com/ajax/libs/flag-icon-css/6.6.6/flags/4x3/jp.svg" alt="JA" class="lc-flag-icon"> 6443 <div class="lc-language-info"> 6444 <span class="lc-language-name do-not-translate">æ¥æ¬èª</span> 6445 <span class="lc-language-current">Japanese</span> 6446 </div> 6447 </a> 6448 <a href="https://www.letsroam.com/ko/store" 6449 class="lc-language-link " 6450 data-language="ko"> 6451 <img src="https://cdnjs.cloudflare.com/ajax/libs/flag-icon-css/6.6.6/flags/4x3/kr.svg" alt="KO" class="lc-flag-icon"> 6452 <div class="lc-language-info"> 6453 <span class="lc-language-name do-not-translate">íêµì´</span> 6454 <span class="lc-language-current">Korean</span> 6455 </div> 6456 </a> 6457 <a href="https://www.letsroam.com/no/store" 6458 class="lc-language-link " 6459 data-language="no"> 6460 <img src="https://cdnjs.cloudflare.com/ajax/libs/flag-icon-css/6.6.6/flags/4x3/no.svg" alt="NO" class="lc-flag-icon"> 6461 <div class="lc-language-info"> 6462 <span class="lc-language-name do-not-translate">Norsk</span> 6463 <span class="lc-language-current">Norwegian</span> 6464 </div> 6465 </a> 6466 <a href="https://www.letsroam.com/pl/store" 6467 class="lc-language-link " 6468 data-language="pl"> 6469 <img src="https://cdnjs.cloudflare.com/ajax/libs/flag-icon-css/6.6.6/flags/4x3/pl.svg" alt="PL" class="lc-flag-icon"> 6470 <div class="lc-language-info"> 6471 <span class="lc-language-name do-not-translate">Polski</span> 6472 <span class="lc-language-current">Polish</span> 6473 </div> 6474 </a> 6475 <a href="https://www.letsroam.com/pt/store" 6476 class="lc-language-link " 6477 data-language="pt"> 6478 <img src="https://cdnjs.cloudflare.com/ajax/libs/flag-icon-css/6.6.6/flags/4x3/pt.svg" alt="PT" class="lc-flag-icon"> 6479 <div class="lc-language-info"> 6480 <span class="lc-language-name do-not-translate">Português</span> 6481 <span class="lc-language-current">Portuguese</span> 6482 </div> 6483 </a> 6484 <a href="https://www.letsroam.com/es/store" 6485 class="lc-language-link " 6486 data-language="es"> 6487 <img src="https://cdnjs.cloudflare.com/ajax/libs/flag-icon-css/6.6.6/flags/4x3/es.svg" alt="ES" class="lc-flag-icon"> 6488 <div class="lc-language-info">
6489 <span class="lc-language-name do-not-translate">Español</span> 6490 <span class="lc-language-current">Spanish</span> 6491 </div> 6492 </a> 6493 <a href="https://www.letsroam.com/sv/store" 6494 class="lc-language-link " 6495 data-language="sv"> 6496 <img src="https://cdnjs.cloudflare.com/ajax/libs/flag-icon-css/6.6.6/flags/4x3/se.svg" alt="SV" class="lc-flag-icon"> 6497 <div class="lc-language-info"> 6498 <span class="lc-language-name do-not-translate">Svenska</span> 6499 <span class="lc-language-current">Swedish</span> 6500 </div> 6501 </a> 6502 <a href="https://www.letsroam.com/el/store" 6503 class="lc-language-link " 6504 data-language="el"> 6505 <img src="https://cdnjs.cloudflare.com/ajax/libs/flag-icon-css/6.6.6/flags/4x3/gr.svg" alt="EL" class="lc-flag-icon"> 6506 <div class="lc-language-info"> 6507 <span class="lc-language-name do-not-translate">Îλληνικά</span> 6508 <span class="lc-language-current">Greek</span> 6509 </div> 6510 </a> 6511 <a href="https://www.letsroam.com/tr/store" 6512 class="lc-language-link " 6513 data-language="tr"> 6514 <img src="https://cdnjs.cloudflare.com/ajax/libs/flag-icon-css/6.6.6/flags/4x3/tr.svg" alt="TR" class="lc-flag-icon"> 6515 <div class="lc-language-info"> 6516 <span class="lc-language-name do-not-translate">Türkçe</span> 6517 <span class="lc-language-current">Turkish</span> 6518 </div> 6519 </a> 6520 <a href="https://www.letsroam.com/hi/store" 6521 class="lc-language-link " 6522 data-language="hi"> 6523 <img src="https://cdnjs.cloudflare.com/ajax/libs/flag-icon-css/6.6.6/flags/4x3/in.svg" alt="HI" class="lc-flag-icon"> 6524 <div class="lc-language-info"> 6525 <span class="lc-language-name do-not-translate">हिनà¥à¤¦à¥</span> 6526 <span class="lc-language-current">Hindi</span> 6527 </div> 6528 </a> 6529 <a href="https://www.letsroam.com/ar/store" 6530 class="lc-language-link " 6531 data-language="ar"> 6532 <img src="https://cdnjs.cloudflare.com/ajax/libs/flag-icon-css/6.6.6/flags/4x3/sa.svg" alt="AR" class="lc-flag-icon"> 6533 <div class="lc-language-info"> 6534 <span class="lc-language-name do-not-translate">Ø§ÙØ¹Ø±Ø¨ÙØ©</span> 6535 <span class="lc-language-current">Arabic</span> 6536 </div> 6537 </a> 6538 <a href="https://www.letsroam.com/ru/store" 6539 class="lc-language-link " 6540 data-language="ru"> 6541 <img src="https://cdnjs.cloudflare.com/ajax/libs/flag-icon-css/6.6.6/flags/4x3/ru.svg" alt="RU" class="lc-flag-icon"> 6542 <div class="lc-language-info"> 6543 <span class="lc-language-name do-not-translate">Ð ÑÑÑкий</span> 6544 <span class="lc-language-current">Russian</span> 6545 </div> 6546 </a> 6547 <a href="https://www.letsroam.com/fi/store" 6548 class="lc-language-link " 6549 data-language="fi"> 6550 <img src="https://cdnjs.cloudflare.com/ajax/libs/flag-icon-css/6.6.6/flags/4x3/fi.svg" alt="FI" class="lc-flag-icon"> 6551 <div class="lc-language-info"> 6552 <span class="lc-language-name do-not-translate">Suomi</span> 6553 <span class="lc-language-current">Finnish</span> 6554 </div> 6555 </a> 6556 <a href="https://www.letsroam.com/cs/store" 6557 class="lc-language-link " 6558 data-language="cs"> 6559 <img src="https://cdnjs.cloudflare.com/ajax/libs/flag-icon-css/6.6.6/flags/4x3/cz.svg" alt="CS" class="lc-flag-icon"> 6560 <div class="lc-language-info"> 6561 <span class="lc-language-name do-not-translate">ÄeÅ¡tina</span> 6562 <span class="lc-language-current">Czech</span> 6563 </div> 6564 </a> 6565 <a href="https://www.letsroam.com/hu/store" 6566 class="lc-language-link " 6567 data-language="hu"> 6568 <img src="https://cdnjs.cloudflare.com/ajax/libs/flag-icon-css/6.6.6/flags/4x3/hu.svg" alt="HU" class="lc-flag-icon"> 6569 <div class="lc-language-info">
6570 <span class="lc-language-name do-not-translate">Magyar</span> 6571 <span class="lc-language-current">Hungarian</span> 6572 </div> 6573 </a> 6574 <a href="https://www.letsroam.com/ro/store" 6575 class="lc-language-link " 6576 data-language="ro"> 6577 <img src="https://cdnjs.cloudflare.com/ajax/libs/flag-icon-css/6.6.6/flags/4x3/ro.svg" alt="RO" class="lc-flag-icon"> 6578 <div class="lc-language-info"> 6579 <span class="lc-language-name do-not-translate">RomânÄ</span> 6580 <span class="lc-language-current">Romanian</span> 6581 </div> 6582 </a> 6583 <a href="https://www.letsroam.com/he/store" 6584 class="lc-language-link " 6585 data-language="he"> 6586 <img src="https://cdnjs.cloudflare.com/ajax/libs/flag-icon-css/6.6.6/flags/4x3/il.svg" alt="HE" class="lc-flag-icon"> 6587 <div class="lc-language-info"> 6588 <span class="lc-language-name do-not-translate">×¢×ר×ת</span> 6589 <span class="lc-language-current">Hebrew</span> 6590 </div> 6591 </a> 6592 <a href="https://www.letsroam.com/th/store" 6593 class="lc-language-link " 6594 data-language="th"> 6595 <img src="https://cdnjs.cloudflare.com/ajax/libs/flag-icon-css/6.6.6/flags/4x3/th.svg" alt="TH" class="lc-flag-icon"> 6596 <div class="lc-language-info"> 6597 <span class="lc-language-name do-not-translate">à¹à¸à¸¢</span> 6598 <span class="lc-language-current">Thai</span> 6599 </div> 6600 </a> 6601 </div> 6602 </div> 6603 </div> 6604 6605 <!-- Currency and Close stay visible while the language list scrolls. --> 6606 <div class="lc-fixed-bottom-section h-padding__h--16"> 6607 6608 <div class="lc-currency-section h-margin__b--10"> 6609 <div class="lc-section-title h-weight--700 h-text--upper h-size--14 h-margin-m__b--10 h-color--gray3">Currency </div> 6610 <select data-original-currency="usd" id="modalCurrencySelect" class="lc-currency-dropdown"> 6611 <option value="usd" selected> 6612 US Dollars (USD) </option> 6613 <option value="aud" > 6614 Australian Dollar (AUD) </option> 6615 <option value="gbp" > 6616 British Pound (GBP) </option> 6617 <option value="cad" > 6618 Canadian Dollar (CAD) </option> 6619 <option value="eur" > 6620 Euro (EUR) </option> 6621 <option value="nzd" > 6622 New Zealand Dollar (NZD) </option> 6623 <option value="all" > 6624 Albanian Lek (ALL) </option> 6625 <option value="ars" > 6626 Argentine Peso (ARS) </option> 6627 <option value="amd" > 6628 Armenian Dram (AMD) </option> 6629 <option value="azn" > 6630 Azerbaijani Manat (AZN) </option> 6631 <option value="bzd" > 6632 Belize Dollar (BZD) </option> 6633 <option value="bob" > 6634 Bolivian Boliviano (BOB) </option> 6635 <option value="bam" > 6636 Bosnia and Herzegovina Convertible Mark (BAM) </option> 6637 <option value="brl" > 6638 Brazilian Real (BRL) </option> 6639 <option value="bgn" > 6640 Bulgarian Lev (BGN) </option> 6641 <option value="clp" > 6642 Chilean Peso (CLP) </option> 6643 <option value="cny" > 6644 Chinese Yuan (CNY) </option> 6645 <option value="cop" > 6646 Colombian Peso (COP) </option> 6647 <option value="crc" > 6648 Costa Rican Colon (CRC) </option> 6649 <option value="czk" > 6650 Czech Koruna (CZK) </option> 6651 <option value="dkk" > 6652 Danish Krone (DKK) </option> 6653 <option value="dop" > 6654 Dominican Peso (DOP) </option> 6655 <option value="gel" > 6656 Georgian Lari (GEL) </option> 6657 <option value="gtq" > 6658 Guatemalan Quetzal (GTQ) </option> 6659 <option value="hnl" > 6660 Honduran Lempira (HNL) </option> 6661 <option value="huf" > 6662 Hungarian Forint (HUF) </option> 6663 <option value="isk" > 6664 Icelandic Krona (ISK) </option> 6665 <option value="inr" > 6666 Indian Rupee (INR) </option> 6667 <option value="jmd" > 6668 Jamaican Dollar (JMD) </option> 6669 <option value="jpy" > 6670 Japanese Yen (JPY) </option> 6671 <option value="krw" > 6672 Korean Won (KRW) </option> 6673 <option value="mkd" > 6674 Macedonian Denar (MKD) </option> 6675 <option value="mxn" > 6676 Mexican Peso (MXN) </option> 6677 <option value="mdl" > 6678 Moldovan Leu (MDL) </option> 6679 <option value="nio" > 6680 Nicaraguan Cordoba (NIO) </option> 6681 <option value="nok" > 6682 Norwegian Krone (NOK) </option> 6683 <option value="pab" > 6684 Panamanian Balboa (PAB) </option> 6685 <option value="pyg" > 6686 Paraguayan Guarani (PYG) </option> 6687 <option value="pen" > 6688 Peruvian Sol (PEN) </option> 6689 <option value="php" > 6690 Philippine Peso (PHP) </option> 6691 <option value="pln" > 6692 Polish Zloty (PLN) </option> 6693 <option value="ron" > 6694 Romanian Leu (RON) </option>
6695 <option value="rsd" > 6696 Serbian Dinar (RSD) </option> 6697 <option value="zar" > 6698 South African Rand (ZAR) </option> 6699 <option value="sek" > 6700 Swedish Krona (SEK) </option> 6701 <option value="chf" > 6702 Swiss Franc (CHF) </option> 6703 <option value="try" > 6704 Turkish Lira (TRY) </option> 6705 <option value="uyu" > 6706 Uruguayan Peso (UYU) </option> 6707 </select> 6708 </div> 6709 6710 <!-- Close Button --> 6711 <div class="lc-modal-footer h-text--center h-margin__t--20 h-margin__b--10"> 6712 <a type="button" class="lc-close-primary-btn" onclick="lrModalAction('languageAndCurrencyModal', 'close')"> 6713 Close 6714 </a> 6715 </div> 6716 </div> 6717 </div> 6718</div> 6719
6720<script src="/assets/js/common/source/language_and_currency_modal.js?v=1789019171"></script>
6720 6721 6722<style> 6723.lc-language-currency-modal { 6724 /* Shared brand tokens from common/variables/colors.scss. */ 6725 --lc-ink: #1d3a45; 6726 --lc-muted: #505759; 6727 --lc-accent: #c0621a; 6728 --lc-tint: #fdf1e9; 6729 --lc-tint-hover: #fcebde; 6730 --lc-border: #f8d5ba; 6731} 6732 6733#languageAndCurrencyModal { 6734 z-index: 2147483647 !important; 6735} 6736 6737/* Keep the language chooser above the Pope promotion when both are open. */ 6738body.lc-language-modal-open .c-cm__popemail, 6739body.lc-language-modal-open .c-cm__popemail-b { 6740 z-index: 2147483000 !important; 6741} 6742 6743 6744/* Mobile: Full screen modal wrapper */ 6745@media (max-width: 900px) { 6746 .lc-modal-wrapper-container { 6747 max-width: 100% !important; 6748 width: 100% !important; 6749 height: 100vh !important; 6750 max-height: 100vh !important; 6751 border-radius: 0 !important; 6752 margin: 0 !important; 6753 } 6754} 6755 6756.lc-language-currency-modal { 6757 background: white; 6758 border-radius: 12px; 6759 padding: 0; 6760 max-width: 950px; 6761 width: 100%; 6762 max-height: min(calc(100vh - 60px), 860px); 6763 max-height: min(calc(100dvh - 60px), 860px); 6764 display: flex; 6765 flex-direction: column; 6766 overflow: hidden; 6767} 6768 6769@media (max-width: 900px) { 6770 .lc-language-currency-modal { 6771 border-radius: 0; 6772 height: 100vh; 6773 height: 100dvh; 6774 max-height: 100vh; 6775 max-height: 100dvh; 6776 overflow: hidden; 6777 } 6778 #languageAndCurrencyModal { 6779 padding-top: 0 !important; 6780 } 6781} 6782 6783.lc-modal-header { 6784 display: flex; 6785 justify-content: space-between; 6786 align-items: flex-start; 6787 border-bottom: 1px solid #eee; 6788 flex: 0 0 auto; 6789} 6790 6791/* spacing handled by helper classes */ 6792 6793.lc-modal-title { 6794 margin: 0; 6795 width: 100%; 6796 line-height: 1.25; 6797 overflow-wrap: anywhere; 6798} 6799 6800.lc-close-btn { 6801 background: none; 6802 border: none; 6803 font-size: 24px; 6804 cursor: pointer; 6805 color: #666; 6806 padding: 0; 6807 width: 30px; 6808 height: 30px; 6809 display: flex; 6810 align-items: center; 6811 justify-content: center; 6812} 6813 6814.lc-close-btn:hover { 6815 color: #333; 6816} 6817 6818.lc-modal-content { 6819 display: flex; 6820 flex-direction: column; 6821 padding: 0; 6822 flex: 1 1 auto; 6823 min-height: 0; /* allow children to size/scroll correctly in flex container */ 6824 overflow: hidden; 6825} 6826 6827.lc-scrollable-content { 6828 flex: 1 1 auto; 6829 min-height: 0; 6830 overflow-y: auto; 6831 overflow-x: hidden; 6832} 6833 6834.lc-fixed-bottom-section { 6835 flex: 0 0 auto; 6836 padding-bottom: 14px; 6837} 6838 6839.lc-fixed-bottom-section .lc-currency-section { 6840 margin-bottom: 0 !important; 6841} 6842 6843.lc-fixed-bottom-section .lc-modal-footer { 6844 margin: 12px 0 0 !important; 6845 padding: 0 !important; 6846} 6847 6848/* Mobile: Full-screen scrollable content area */ 6849@media (max-width: 900px) { 6850 .lc-scrollable-content { 6851 padding: 16px; 6852 -webkit-overflow-scrolling: touch; 6853 } 6854 6855 .lc-fixed-bottom-section { 6856 background: white; 6857 padding: 14px 16px calc(14px + env(safe-area-inset-bottom)); 6858 border-top: 1px solid #eee; 6859 z-index: 10; 6860 box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.05); 6861 } 6862 6863} 6864 6865 6866.lc-section-title { margin: 0 0 20px 0; } 6867 6868.lc-language-links { 6869 display: grid; 6870 grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); 6871 gap: 12px; 6872} 6873 6874@media (min-width: 600px) { 6875 .lc-language-links { 6876 grid-template-columns: repeat(3, 1fr); 6877 gap: 15px; 6878 } 6879} 6880 6881@media (min-width: 900px) { 6882 .lc-language-links { 6883 grid-template-columns: repeat(5, 1fr); 6884 gap: 15px; 6885 } 6886} 6887 6888.lc-language-link { 6889 display: flex; 6890 align-items: center; 6891 padding: 14px; 6892 border: 2px solid #e1e5e9; 6893 border-radius: 10px; 6894 text-decoration: none; 6895 color: #333; 6896 transition: all 0.3s ease; 6897 position: relative; 6898 background: #fafbfc; 6899} 6900 6901@media (max-width: 900px) { 6902 .lc-language-link { 6903 padding: 10px; 6904 } 6905} 6906 6907.lc-language-link:hover { 6908 border-color: var(--lc-accent); 6909 background-color: var(--lc-tint-hover); 6910 transform: translateY(-2px); 6911 box-shadow: 0 4px 12px rgba(232, 119, 34, 0.12); 6912} 6913 6914.lc-language-link.lc-current { 6915 border-color: var(--lc-accent); 6916 background-color: var(--lc-tint); 6917 box-shadow: 0 2px 8px rgba(232, 119, 34, 0.12); 6918} 6919 6920.lc-flag-icon { 6921 width: 20px; 6922 height: 15px; 6923 margin-right: 8px; 6924 border-radius: 2px; 6925} 6926 6927/* Keep the label and tile geometry intact while navigation is pending. */ 6928.lc-language-loading .lc-flag-icon { 6929 visibility: hidden; 6930} 6931 6932.lc-language-link.lc-language-loading::after {
6933 content: ''; 6934 position: absolute; 6935 left: 16px; 6936 top: 50%; 6937 margin-top: -8px; 6938 width: 16px; 6939 height: 16px; 6940 box-sizing: border-box; 6941 border: 2px solid var(--lc-border); 6942 border-top-color: var(--lc-accent); 6943 border-radius: 50%; 6944 animation: lc-language-spin 0.7s linear infinite; 6945 pointer-events: none; 6946} 6947 6948@media (max-width: 900px) { 6949 .lc-language-link.lc-language-loading::after { 6950 left: 12px; 6951 } 6952} 6953 6954@keyframes lc-language-spin { 6955 to { transform: rotate(360deg); } 6956} 6957 6958@media (prefers-reduced-motion: reduce) { 6959 .lc-language-link.lc-language-loading::after { 6960 animation: none; 6961 } 6962} 6963 6964.lc-language-info { 6965 display: flex; 6966 flex-direction: column; 6967 flex: 1; 6968 min-width: 0; 6969} 6970 6971.lc-language-name { 6972 font-weight: 500; 6973 font-size: 14px; 6974 line-height: 1.2; 6975 color: #2f343a !important; 6976 overflow-wrap: anywhere; 6977} 6978 6979.lc-language-current { 6980 font-size: 11px; 6981 color: #666; 6982 font-weight: 400; 6983 line-height: 1.1; 6984 margin-top: 2px; 6985} 6986 6987/* Prevent page-level theme styles from washing out modal text on ghost pages. */ 6988.lc-language-link, 6989.lc-language-link .do-not-translate, 6990.lc-modal-title, 6991.lc-section-title, 6992.lc-currency-dropdown { 6993 color: #2f343a !important; 6994} 6995 6996.lc-selected-check { 6997 position: absolute; 6998 top: 8px; 6999 right: 8px; 7000 color: var(--lc-accent); 7001 font-weight: bold; 7002 font-size: 14px; 7003} 7004 7005.lc-language-currency-modal .lc-currency-dropdown { 7006 display: block; 7007 margin: 0 !important; 7008 width: 100%; 7009 border: 2px solid #e1e5e9; 7010 border-radius: 10px; 7011 font-size: 15px; 7012 background-color: #fafbfc; 7013 cursor: pointer; 7014 transition: all 0.3s ease; 7015 padding: 0px; 7016 height: 35px; 7017} 7018 7019.lc-currency-dropdown:focus { 7020 outline: 2px solid var(--lc-ink); 7021 outline-offset: 2px; 7022 border-color: var(--lc-accent); 7023 box-shadow: none; 7024} 7025 7026.lc-modal-footer { 7027 text-align: center; 7028} 7029 7030@media (max-width: 900px) { 7031 .lc-currency-section { 7032 margin-bottom: 0; 7033 } 7034} 7035 7036.lc-close-primary-btn { 7037 background-color: var(--orange, #E87722); 7038 color: white; 7039 border: none; 7040 padding: 16px 24px; 7041 border-radius: 10px; 7042 font-size: 16px; 7043 font-weight: 700; 7044 cursor: pointer; 7045 transition: all 0.3s ease; 7046 width: 100%; 7047 text-transform: uppercase; 7048 letter-spacing: 0.5px; 7049 max-width: 500px; 7050 display: inline-flex; 7051 align-items: center; 7052 justify-content: center; 7053 min-height: 52px; 7054 box-sizing: border-box; 7055} 7056 7057.lc-close-primary-btn:hover { 7058 background-color: #d1661a; 7059 transform: translateY(-2px); 7060 box-shadow: 0 6px 20px rgba(232, 119, 34, 0.4); 7061} 7062 7063.lc-close-primary-btn:active { 7064 transform: translateY(0); 7065 box-shadow: 0 2px 8px rgba(232, 119, 34, 0.3); 7066} 7067 7068</style> 7069 </div> 7070 </div> 7071</div> 7072 7073<style> 7074 .c-cm-modal__icon-close { 7075 display: inline-flex; 7076 align-items: center; 7077 justify-content: center; 7078 width: 44px; 7079 height: 44px; 7080 min-width: 44px; 7081 min-height: 44px; 7082 margin: -12px -12px -12px 12px; 7083 padding: 0; 7084 color: #333; 7085 cursor: pointer; 7086 border: 0; 7087 border-radius: 999px; 7088 background: transparent; 7089 } 7090 7091 .c-cm-modal__icon-close:hover, 7092 .c-cm-modal__icon-close:focus { 7093 background: rgba(0, 0, 0, 0.04); 7094 } 7095 7096 .checkmark { 7097 width: 56px; 7098 height: 56px; 7099 border-radius: 50%; 7100 display: block; 7101 stroke-width: 2; 7102 stroke: #fff; 7103 stroke-miterlimit: 10; 7104 box-shadow: inset 0px 0px 0px #ea7722; 7105 animation: fill 0.4s ease-in-out 0.4s forwards, scale 0.3s ease-in-out 0.9s both; 7106 } 7107 7108 .checkmark__circle { 7109 stroke-dasharray: 166; 7110 stroke-dashoffset: 166; 7111 stroke-width: 2; 7112 stroke-miterlimit: 10; 7113 stroke: #ea7722; 7114 fill: none; 7115 animation: stroke 0.6s cubic-bezier(0.65, 0, 0.45, 1) forwards; 7116 } 7117 7118 .checkmark__check { 7119 transform-origin: 50% 50%; 7120 stroke-dasharray: 48; 7121 stroke-dashoffset: 48; 7122 animation: stroke 0.3s cubic-bezier(0.65, 0, 0.45, 1) 0.8s forwards; 7123 } 7124 7125 @keyframes stroke { 7126 100% { 7127 stroke-dashoffset: 0; 7128 } 7129 } 7130 7131 @keyframes scale { 7132 0%, 7133 100% { 7134 transform: none; 7135 } 7136 7137 50% { 7138 transform: scale3d(1.1, 1.1, 1); 7139 } 7140 } 7141 7142 @keyframes fill { 7143 100% { 7144 box-shadow: inset 0px 0px 0px 30px #ea7722; 7145 } 7146 } 7147 7148 @media (max-width: 768px) { 7149 .c-cm-modal__icon-close {
7150 margin: -10px -10px -10px 10px; 7151 } 7152 7153 .modal-v2 { 7154 height: 750px !important; 7155 max-height: 750px !important; 7156 margin-top: -200px !important; 7157 } 7158 7159 .modal-v2-content { 7160 margin-left: 0px !important; 7161 height: 750px !important; 7162 } 7163 } 7164 7165 @media screen and (max-width: 1133px) and (min-width: 768px) { 7166 .modal-v2 { 7167 height: 563px !important; 7168 max-height: 563px !important; 7169 margin-top: -200px !important; 7170 width: 700px !important; 7171 display: flex; 7172 flex-direction: column; 7173 } 7174 7175 .modal-v2-content { 7176 display: flex; 7177 flex-direction: column; 7178 margin-left: 0px !important; 7179 height: 700px !important; 7180 } 7181 } 7182</style> 7183
7184<script> 7185 (function (config) { 7186 function registerModal() { 7187 window.lrRegisterModalFromConfig(config); 7188 } 7189 // Some page layouts emit shared utilities in the footer, after the modal. 7190 if (typeof window.lrRegisterModalFromConfig === 'function') { 7191 registerModal(); 7192 } else { 7193 document.addEventListener('DOMContentLoaded', registerModal, { once: true }); 7194 } 7195 })({"name":"languageAndCurrencyModal","id":"languageAndCurrencyModal","gaView":"","layout":"default","openTriggerId":"languageAndCurrencyModalOpen","backButtonId":"languageAndCurrencyModalBackButton","closeIconId":"languageAndCurrencyModalCloseModal","primaryButtonId":"languageAndCurrencyModalCloseButton","openCallbackCode":"console.log(\u0027language_and_currency_modal opened\u0027); document.body.classList.add(\u0027lc-language-modal-open\u0027); setCookie(\u0027language_and_currency_modal_opened\u0027, \u0027true\u0027, 1);","closeCallbackCode":"document.body.classList.remove(\u0027lc-language-modal-open\u0027);","primaryButtonActionCode":"","closeTargetId":"","trackFormOpen":true}); 7196</script>
7196 7197 7198
7198<script> 7199 try { 7200 var feedbackNavigationEntries = window.performance && window.performance.getEntriesByType 7201 ? window.performance.getEntriesByType('navigation') 7202 : []; 7203 if (!feedbackNavigationEntries[0] || feedbackNavigationEntries[0].type !== 'back_forward') { 7204 window.sessionStorage.removeItem('b2c-simple-feedback-checkout-visited-at'); 7205 } 7206 } catch (error) { 7207 // Feedback cleanup must never interfere with page rendering. 7208 } 7209 </script>
7209 7210 7211 7212<div id="heartbeat_page_loaded"></div> 7213 7214<div id="translation_backlog_clear_div"></div> 7215 7216<div id="loaded_by_var/www/htdocs/"></div> 7217 7218 <div id="loaded_by_livesite" style="display: none;">>Live Site Load: lr-nginx-web!!!</div>
7219<script>if(typeof window.recordCorporateServerDeliveries === "function") window.recordCorporateServerDeliveries([]);</script>
7219 7220 7221 7222 7223 7224 7225 7226
7226<script> 7227 if (typeof window.sendMicrosoftConversion === 'function') { 7228 window.sendMicrosoftConversion(null); 7229 window.sendMicrosoftConversion(null); 7230 } 7231 7232 7233 7234 7235 7236 const trackGoogleLead = function(company) { 7237 7238 // Independent identity and descriptor, before any Google-specific code can fail. 7239 if (company && typeof window.sendMicrosoftConversion === 'function') { 7240 window.sendMicrosoftConversion(company.microsoft_conversion); 7241 } 7242 7243 console.log('trackGoogleLead fired', company) 7244 // defining variables 7245 // Use lead_value_creation if available, otherwise fallback to lead_value 7246 // lead_value_creation may be null for newly created leads before corporate_lead_rating sync 7247 var lead_value_for_tracking = company.lead_value_creation || company.lead_value || 0; 7248 7249 full_event_value = 1 * lead_value_for_tracking; 7250 7251 7252 event_value = 1 * lead_value_for_tracking; 7253 7254 if(company.is_bach_bday) { 7255 // half value for bach bday leads 7256 // works out to 10 for bach, $7 for bday 7257 console.log('trackGoogleLead self booking', {company}); 7258 event_value = event_value / 2; 7259 full_event_value = event_value; 7260 7261 } else { 7262 console.log('not self booking', {company}) 7263 } 7264 7265 if(!(company.category !== 'team-building' && company.category !== 'b2b_partnerships')) { 7266 // non corporate leads only have value on sale 7267 fetchWithParams('/api/corporate/update_company_description/' + company.uuid) 7268 } 7269 7270 7271 7272 7273 event_id = window.location.href.includes('local') ? 'test' : company.UUID; 7274 event_label = company.lead_score_text + ' Lead'; 7275 7276 // error if company is team building 7277 // and no lead score text 7278 if ( 7279 company.category === 'team-building' && 7280 window.isTest && 7281 !company.lead_score_text 7282 ) { 7283 // do not delete 7284 // ever 7285 alert('Dev Error: No company lead value'); 7286 } 7287 7288 // checking that event_id is not test on production 7289 if(!window.location.href.includes('.local.') && event_id == 'test') { 7290 alert('Error: Test on Live') 7291 } 7292 7293 var gtagEventName = ''; 7294 7295 // corporate 7296 if (company["category"].includes('team-building')) { 7297 event_category = 'corporate_lead'; 7298 gtagEventName = WEBSITE_DOMAIN == 'sch' ? 'sch__lead__team_building' : 'lr__lead__team_building' 7299 7300 7301 7302 7303 // bach + birthday 7304 } else { 7305 if(company["category"].includes('bach')) { 7306 gtagEventName = WEBSITE_DOMAIN == 'sch' ? 'sch__lead__bachelorette' : 'lr__lead__bachelorette' 7307 } else if(company["category"].includes('birth')) { 7308 gtagEventName = WEBSITE_DOMAIN == 'sch' ? 'sch__lead__birthday' : 'lr__lead__birthday' 7309 } else if(company["category"].includes('donation') || company["category"].includes('charity')) { 7310 gtagEventName = WEBSITE_DOMAIN == 'sch' ? 'sch__lead__charity' : 'lr__lead__charity' 7311 } else if(company["category"].includes('b2b_partnerships') ) { 7312 gtagEventName = WEBSITE_DOMAIN == 'sch' ? 'sch__lead__b2b_partnerships' : 'lr__lead__b2b_partnerships' 7313 } 7314 event_category =company.category + '_lead'; 7315 } 7316 7317 console.log({gtagEventName}) 7318 7319 if(!window.location.href.includes('is_duplicate_in_last_hour') && typeof window.open_ai_ads_track_with_user === 'function') { 7320 var openAiLeadValue = Number(full_event_value || 0); 7321 var openAiLeadData = { 7322 type: 'customer_action' 7323 }; 7324 if(openAiLeadValue > 0) { 7325 // OpenAI expects monetary values in minor units (cents for USD). 7326 openAiLeadData.amount = Math.round(openAiLeadValue * 100); 7327 openAiLeadData.currency = 'USD'; 7328 } 7329 var openAiLeadUuid = company.UUID || company.uuid || ''; 7330 var openAiLeadUser = { 7331 email: company.email || '', 7332 external_id: openAiLeadUuid, 7333 country: company.geo_country_code || GEO_LOCATION['isoCode'] || '', 7334 city: GEO_LOCATION['city'] || company.location || '', 7335 zip_code: GEO_LOCATION['postal_code'] || '' 7336 }; 7337 window.open_ai_ads_track_with_user('lead_created', openAiLeadData, { 7338 event_id: 'lead_' + openAiLeadUuid 7339 }, openAiLeadUser, function(eventDetails) { 7340 window.open_ai_ads_event_callback(eventDetails, 'lead initial creation', openAiLeadValue); 7341 }); 7342 } 7343 7344 7345 if(full_event_value == 0) { 7346 console.warn('No lead value, no tracking', {company}); 7347 // In test mode, still create the tracking element so tests can pass 7348 // even when lead_value data hasn't been synced yet 7349 if(window.isTest) { 7350 console.log('Test mode: creating google-tracking-done despite 0 lead value'); 7351 const gtagDivZeroValue = document.createElement('div'); 7352 gtagDivZeroValue.style.width = 0; 7353 gtagDivZeroValue.style.height = 0; 7354 gtagDivZeroValue.style.color = 'transparent'; 7355 gtagDivZeroValue.innerText = 'V0'; 7356 gtagDivZeroValue.id = 'google-tracking-done'; 7357 gtagDivZeroValue.setAttribute('data-zero-value', 'true'); 7358 document.body.appendChild(gtagDivZeroValue); 7359 } 7360 return console.log_on_production('full_event_value is 0, no tracking', {company}); 7361 } 7362 7363 7364 //tracking on google 7365 try { 7366 7367 const userData = { 7368 email: company.email, 7369 phone_number: normalizePhoneForGA4(company.phone || null), 7370 address: { 7371 first_name: company.first_name || null, 7372 last_name: company.last_name || null, 7373 city: company.location || GEO_LOCATION['city'] || null, 7374 region: GEO_LOCATION['specific_area_name'] || null, 7375 zip_code: GEO_LOCATION['postal_code'] || null, 7376 country: GEO_COUNTRY || null, 7377 } 7378 } 7379 console.log_on_production({userData}) 7380 gtag_and_microsoft_uet('set', 'user_data', userData); 7381 7382 const leadEventId = "lead_" + company.UUID; 7383 7384 var gtagData = { 7385 'event_id': leadEventId, 7386 'event_category': event_category, // used by generate_lead birth vs bach vs team-building 7387 'event_label': event_label, // used by generate_lead birth vs bach vs team-building 7388 'item_category': company.category, // used by generate_lead birth vs bach vs team-building 7389 'value': full_event_value, 7390 'lr_lead_score': company.lead_score_text, // has meaning 7391 'event_value': full_event_value, 7392 'event_value_full': full_event_value, 7393 'transport_type': 'beacon', 7394 'email': company.email, 7395 'lr_event_id': company.UUID, 7396 'phone_number': normalizePhoneForGA4(company.phone || null), 7397 'first_name': company.first_name || null, 7398 'last_name': company.last_name || null, 7399 'sent_by_server': false, 7400 userData 7401 } 7402 7403 7404 gtagData['event_callback'] = function(event_callback, event_callback_2){ 7405 // sometime multiple tags loaded 7406 // such as ga4 & adwords 7407 if(gtagId != event_callback) { 7408 return console.log('different tag'); 7409 } 7410 console.log_on_production('google lead tracked: ' + gtagEventName, {gtagData, event_callback, event_callback_2}) 7411 const gtagDiv = document.createElement('div'); 7412 gtagDiv.style.width = 0; 7413 gtagDiv.style.height = 0; 7414 gtagDiv.style.color = 'transparent'; 7415 gtagDiv.innerText = `V` + full_event_value; 7416 gtagDiv.id = 'google-tracking-done'; 7417 console.log('google-tracking-done', { gtagDiv, full_event_value, full_event_value }); 7418 document.body.appendChild(gtagDiv); 7419 7420 // finding the actual name called straight from the data layer 7421 // specifically if called with test_ at the beginning 7422 const actualCalledGTAGEventName = findEventNameIsTestOrActual(gtagEventName); 7423 7424 console.log_on_production({actualCalledGTAGEventName}) 7425 if(typeof window.appendGtagSuccess === 'function') { 7426 window.appendGtagSuccess('lead initial creation', actualCalledGTAGEventName || gtagEventName, full_event_value); 7427 } 7428 7429 // inserting into y_tracking_key_event_log 7430 fetchWithParams('/api/api_v1/tracking_key_event_log', {
7431 'analytics_type': 'ga4_browser', 7432 'lead_uuid': company.UUID, 7433 'event_type': actualCalledGTAGEventName, 7434 'parameters': gtagData, 7435 "is_test": window.isTest ? 1 : 0, 7436 "tag_id": event_callback, 7437 'event_value': gtagData.event_value, 7438 "currency": "USD" 7439 }); 7440 fetch('https://heartbeat.uptimerobot.com/m796694980-2ba1d2365ccce16291adf0b3cc67061f01620e3a') 7441 } 7442 7443 7444 window.gtagData = gtagData; 7445 console.log({gtagData}) 7446 if(!window.location.href.includes('is_duplicate_in_last_hour')) { 7447 console.log('sending gtag lead event', {gtagEventName, gtagData}); 7448 gtag_and_microsoft_uet('event', gtagEventName, gtagData); 7449 7450 // Fallback timeout for test environments where Google callback may not fire 7451 // Creates #google-tracking-done after 10s if callback hasn't created it 7452 if(window.isTest) { 7453 setTimeout(function() { 7454 if(!document.querySelector('#google-tracking-done')) { 7455 console.log('google-tracking-done fallback timeout - creating element'); 7456 const gtagDivFallback = document.createElement('div'); 7457 gtagDivFallback.style.width = 0; 7458 gtagDivFallback.style.height = 0; 7459 gtagDivFallback.style.color = 'transparent'; 7460 gtagDivFallback.innerText = 'V' + full_event_value; 7461 gtagDivFallback.id = 'google-tracking-done'; 7462 gtagDivFallback.setAttribute('data-fallback', 'true'); 7463 document.body.appendChild(gtagDivFallback); 7464 } 7465 }, 10000); 7466 } 7467 7468 // tracking on microsoft 7469 // of corporate leads only 7470 if(typeof window.convertGTAGToUET === 'function' && (company.category.includes('team') || company.category.includes('partnership'))) { 7471 convertGTAGToUET('event', 'submit_lead_form', gtagData); 7472 } 7473 } else { 7474 console.log_on_production('is duplicate, no tracking of g') 7475 } 7476 7477 } catch(googleError){ 7478 console.error({googleError}) 7479 if(window.location.href.includes('.local.')) { 7480 alert('Google tracking error') 7481 } 7482 7483 } 7484} 7485 7486const trackFacebookLead = function(company) { 7487 7488 event_id = company.UUID; 7489 console.log('trackFacebookLead: track facebook lead', {company, event_id}) 7490 google_event_value = 1 * company.lead_value; 7491 7492 if(company.show_self_booking) { 7493 // setting to 1 dollar since self booking 7494 console.log('self booking', {company}); 7495 google_event_value = 1; 7496 } else { 7497 console.log('not self booking', {company}) 7498 } 7499 7500 try { 7501 fb_track_safe('track', 'Lead', {currency: "USD", event_id: event_id || company.UUID, value: 1 * google_event_value, content_name: company.category, content_category: company.category}); 7502 } catch(facebookError){ 7503 if(window.location.href.includes('.local.')) { 7504 alert('Facebook tracking error') 7505 } 7506 console.error({facebookError}) 7507 } 7508} 7509 7510const trackFacebookSale = function(company) { 7511 if(company.show_self_booking) { 7512 console.log('trackFacebookSale: self booking track sale', {company}) 7513 7514 } else { 7515 return console.log('trackFacebookSale: not self booking', {company}) 7516 } 7517} 7518 7519 7520const trackGoogleEventSale = function(company) { 7521 if (typeof window.sendMicrosoftConversion === 'function') { 7522 window.sendMicrosoftConversion(null); 7523 } 7524 const isSelfBooking = company.show_self_booking || company.show_virtual_self_booking || company.sch_tid; 7525 7526 const purchaseTrackingMoney = null; 7527 if(!purchaseTrackingMoney) { 7528 return console.error('Purchase tracking skipped: completed charged money unavailable', {company}); 7529 } 7530 const purchaseTrackingCurrency = purchaseTrackingMoney.currency; 7531 7532 7533 7534 const isFreeTrial = company.transaction && 1 * company.transaction.tri
7534al_period_days > 0; 7535 7536 var purchaseEventName = 'purchase'; 7537 if(isFreeTrial) { 7538 purchaseEventName = WEBSITE_DOMAIN == 'sch' ? 'sch__free_trial__team_building' : 'lr__free_trial__team_building'; 7539 } else if(company.category.includes('birthday') || company.category.includes('bach') || company.category.includes('family')) { 7540 purchaseEventName = 'purchase'; 7541 } else if(company.category.includes('team-building') && isSelfBooking) { 7542 purchaseEventName = WEBSITE_DOMAIN == 'sch' ? 'sch__self_purchase__team_building' : 'lr__self_purchase__team_building' 7543 } else if(company.category.includes('team-building') && !isSelfBooking) { 7544 purchaseEventName = WEBSITE_DOMAIN == 'sch' ? 'sch__rep_assisted_purchase__team_building' : 'lr__rep_assisted_purchase__team_building' 7545 } else { 7546 alert('dev error, please contact support'); 7547 purchaseEventName = 'error'; 7548 } 7549 7550 console.log({purchaseEventName}) 7551 7552 7553 7554 var conversion_value = Number(purchaseTrackingMoney.value); 7555 // for free trials giving value of 6 months of subscription times a 50% trial conversion rate 7556 if(isFreeTrial) { 7557 conversion_value = 3 * conversion_value; 7558 } else if(company['selected_package'] == 'membership') { 7559 // for memberships giving value of 6 months 7560 conversion_value = 6 * conversion_value; 7561 } 7562 7563 const userData = { 7564 email: company.email, 7565 phone_number: normalizePhoneForGA4(company.phone || null), 7566 address: { 7567 first_name: company.first_name || null, 7568 last_name: company.last_name || null, 7569 city: company.location || GEO_LOCATION['city'] || null, 7570 region: GEO_LOCATION['specific_area_name'] || null, 7571 zip_code: GEO_LOCATION['postal_code'] || null, 7572 country: GEO_COUNTRY || null, 7573 } 7574 } 7575 7576 console.log_on_production({userData}) 7577 gtag_and_microsoft_uet('set', 'user_data', userData); 7578 7579 console.log({conversion_value}) 7580 7581 var gtag_transaction = { 7582 'transaction_id': 'purchase_', 7583 'event_id': 'purchase_', 7584 'lr_event_id': '', 7585 'email': company.email, 7586 'phone_number': normalizePhoneForGA4(company.phone || null), 7587 'first_name': company.first_name || null, 7588 'last_name': company.last_name || null, 7589 'name': 'Scavenger Hunt', 7590 'value': conversion_value, 7591 'currency': purchaseTrackingCurrency, 7592 'items': [{ item_name: "Let's Roam Corporate Purchase" }], 7593 'user_data': userData, 7594 'sent_by_server': false, 7595 'gclid': company.gclid || null, 7596 } 7597 7598 gtag_transaction['event_callback'] = function(event_callback){ 7599 // sometime multiple tags loaded 7600 // such as ga4 & adwords 7601 if(gtagId != event_callback) { 7602 return console.log('different tag'); 7603 } 7604 console.log_on_production('google purchase tracked: ' + company.category, {event_callback}) 7605 const gtagDiv = document.createElement('div'); 7606 gtagDiv.style.width = 0; 7607 gtagDiv.style.height = 0; 7608 gtagDiv.innerText = `V` + conversion_value; 7609 gtagDiv.setAttribute('data-purchase-test-id', 'purchase-tracked'); 7610 gtagDiv.id = `google-${purchaseEventName}-tracking-done`; 7611 console.log(`google-${purchaseEventName}-tracking-done`, { gtagDiv, conversion_value }); 7612 document.body.appendChild(gtagDiv); 7613 7614 console.log({gtagDiv}) 7615 7616 // finding the actual name called straight from the data layer 7617 // specifically if called with test_ at the beginning 7618 const actualCalledGTAGEventName = findEventNameIsTestOrActual(purchaseEventName); 7619 7620 console.log_on_production({purchaseEventName, actualCalledGTAGEventName, gtag_transaction}) 7621 7622 7623 fetchWithParams('/api/api_v1/tracking_key_event_log', { 7624 analytics_type: 'ga4_browser', 7625 lead_uuid: '', 7626 event_type: actualCalledGTAGEventName, 7627 parameters: gtag_transaction, 7628 is_test: window.isTest ? 1 : 0, 7629 tag_id: event_callback, 7630 event_value: gtag_transaction.value, 7631 currency: gtag_transaction.currency, 7632 }); 7633 } 7634 7635 window.gtag_transaction = gtag_transaction 7636 console.log({gtag_transaction}) 7637 7638 gtag_and_microsoft_uet('event', purchaseEventName, gtag_transaction); 7639 7640 if(typeof window.open_ai_ads_track_with_user === 'function') { 7641 var openAiOrderData = { 7642 type: 'contents', 7643 amount: Math.round(conversion_value * 100), 7644 currency: purchaseTrackingCurrency, 7645 contents: [{ 7646 id: 'corporate_', 7647 name: "Let's Roam Corporate Purchase", 7648 content_type: 'event', 7649 quantity: 1, 7650 amount: Math.round(conversion_value * 100), 7651 currency: purchaseTrackingCurrency 7652 }] 7653 }; 7654 var openAiOrderUser = { 7655 email: company.email || '', 7656 external_id: company.UUID || company.uuid || '', 7657 country: company.geo_country_code || GEO_LOCATION['isoCode'] || '', 7658 city: GEO_LOCATION['city'] || company.location || '', 7659 zip_code: GEO_LOCATION['postal_code'] || '' 7660 }; 7661 window.open_ai_ads_track_with_user('order_created', openAiOrderData, { 7662 event_id: 'purchase_' 7663 }, openAiOrderUser, function(eventDetails) { 7664 window.open_ai_ads_event_callback(eventDetails, 'receipt purchase', conversion_value); 7665 }); 7666 } 7667} 7668 7669 7670 7671 7672const trackFacebookEventSale = function(company) { 7673 if (company.show_virtual_self_booking) { 7674 return console.log('trackFacebookSale: not self booking', { company }); 7675 } 7676 7677 if(company.show_self_booking || company.sch_tid || company['category'] === 'team-building') { 7678 console.log('trackFacebookSale: self booking track sale', {company}) 7679 } else { 7680 return console.log('trackFacebookSale: not self booking', {company}) 7681 } 7682 7683 //GA 7684 7685 const purchaseTrackingMoney = null; 7686 if(!purchaseTrackingMoney) { 7687 return console.error('Purchase tracking skipped: completed charged money unavailable', {company}); 7688 } 7689 var conversion_value = Number(purchaseTrackingMoney.value); 7690 7691 7692 7693 // https://developers.facebook.com/docs/marketing-api/conversions-api/deduplicate-pixel-and-server-events/ 7694 var fb_data = { 7695 corporate_pixel_id: "335740569214664", 7696 value: conversion_value, 7697 currency: purchaseTrackingMoney.currency, 7698 em: ``, 7699 event_id: 'corporate-purchase-', 7700 fn: ``, 7701 ln: ``, 7702 phone: ``, 7703 content_id: 'store', 7704 "city": ``, 7705 "state": `Illinois`, 7706 "zip_code": `60602`, 7707 "country": `US`, 7708 "fbc": `` 7709 } 7710 7711 console.log({fb_data}) 7712 7713 fb_track_safe('track', 'Purchase', fb_data); 7714} 7715 7716 7717 </script>
7717 7718 7719 7720 7721 7722 7723 7724
7725<script defer src="https://www.letsroam.com/assets/js/store/source/helpers.js"></script>
7725 7726 7727 7728 7729 7730 7731 7732 7733 7734 7735 7736 7737 7738 7739<div id="createLeadModal" class="c-cm-modal__full_screen_container modal-fade allModals " data-modal-name="createLeadModal" style="display: none; background-color:#000000aa; "> 7740 <div id="createLeadModalCloseModal" class="c-cm-modal__close-x close-player-players"> 7741 <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-x-icon lucide-x"><path d="M18 6 6 18" /><path d="m6 6 12 12" /></svg> 7742 </div> 7743 <div style="max-width: 850px; border-radius: 34px; overflow: hidden;" class="c-cm-modal__content-container h-padding--0 h-padding-m-0 c-cm-modal__content-container--any"> 7744 <i class="fa fa-chevron-circle-left c-cm-modal__back" id="createLeadModalBackButton"></i> <div style="max-width: 850px; border-radius: 34px; overflow: hidden;" id="vgnSection1" class="c-cm-modal__section c-cm-modal__section--any h-padding--0 h-padding-m-0"> 7745 7746 7747 7748<style>@font-face { 7749 font-family: "Jaunt", Helvetica, sans-serif; 7750 src: url("/assets/fonts/Jaunt.woff2") format("woff2"), url("/assets/fonts/Jaunt.otf") format("opentype"); 7751 font-display: swap; 7752} 7753@font-face { 7754 font-family: "Traverse-Book", Arial, sans-serif; 7755 src: url("/assets/fonts/Traverse-Book.woff2") format("woff2"), url("/assets/fonts/Traverse-Book.otf") format("opentype"); 7756 font-display: swap; 7757} 7758.c-vtb__form-container { 7759 background-size: contain; 7760 background-size: cover; 7761 justify-content: space-around; 7762} 7763@media (max-width: 630px) { 7764 .c-vtb__form-container { 7765 background-position: 50%; 7766 } 7767} 7768.c-vtb__form--wrapper { 7769 max-width: 600px; 7770} 7771.c-vtb__form--inputs { 7772 display: flex; 7773 max-width: 100%; 7774 flex-wrap: wrap; 7775 justify-content: center; 7776} 7777.c-vtb__form--item { 7778 margin-top: 20px; 7779 width: 100%; 7780 max-width: 100%; 7781 text-align: left; 7782 position: relative; 7783} 7784.c-vtb__form--input { 7785 border: 1px solid #f2f2ff; 7786 font-size: 16px; 7787 padding: 5px; 7788 height: 36px; 7789 width: 280px; 7790} 7791.c-vtb__form--input::placeholder { 7792 border: 1px solid #f2f2ff; 7793 font-size: 16px; 7794 padding: 5px; 7795 height: 36px; 7796 width: 280px; 7797} 7798.c-vtb__form--label { 7799 font-size: 16px; 7800 display: block; 7801 font-family: "Traverse-Bold", Arial, sans-serif; 7802 line-height: 20px; 7803 margin-bottom: 7px; 7804} 7805 7806.pristine-error { 7807 display: block; 7808 color: red !important; 7809} 7810 7811.corporate_tb_joy_input { 7812 -webkit-appearance: none !important; 7813 -moz-appearance: none !important; 7814 appearance: none !important; 7815 box-sizing: border-box !important; 7816 min-height: 50px !important; 7817 padding: 25px 16px !important; 7818 background-color: white !important; 7819 border: none !important; 7820 border-radius: 12px !important; 7821 font-size: 16px !important; 7822 width: 100% !important; 7823} 7824 7825input[type=date] { 7826 -webkit-appearance: none !important; 7827 -moz-appearance: none !important; 7828 appearance: none !important; 7829 box-sizing: border-box !important; 7830 min-height: 50px !important; 7831 background-color: white !important; 7832 border: none !important; 7833 border-radius: 12px !important; 7834 font-size: 16px !important; 7835 width: 100% !important; 7836} 7837 7838@media screen and (-webkit-min-device-pixel-ratio: 0) { 7839 .corporate_tb_joy_input, 7840 input[type=date] { 7841 min-height: 50px !important; 7842 line-height: normal !important; 7843 } 7844} 7845 7846/*# sourceMappingURL=team_building_form.css.map */ 7847</style> 7848<!-- Original Generic Lead Form --> 7849<form role="presentation" action="https://www.letsroam.com/team-building" id="glm_form" method="post" accept-charset="utf-8"> 7850<div class='lr-container--generic-lead-form'> 7851 7852 <div class="flex-container"> 7853 <img 7854 class="team-image-1" 7855 src="/assets/images/letsroam/team_building/all/tb_lead_v1.jpg" 7856 alt="team building hunt" 7857 width="366" 7858 height="686" 7859 /> 7860 7861 <div class="form-container" style="max-height: 96vh; overflow: scroll;"> 7862 <h4 class="h-4-styling" data-team-building-test-fill data-team-building-test-prefix="generic"><span id='glm_title'></span></h4> 7863 <p class="p-styling"><span id='glm_subTitle'></span></p> 7864 <p></p> 7865 <div class="c-vtb__form--item h-margin-m__t--10 required_field"> 7866 <input required 7867 value="" 7868 class="c-vtb__form--input h-margin-m__b--0" id="glm_full_name" type="text" name="full_name" 7869 style="width: 100% !important; color: black !important; height: 40px !important; font-size: 15px; font-family: Plus Jakarta Sans, sans-serif;" placeholder="Name" 7870 data-hj-whitelist></input> 7871 <label class="sm-label">
7871Name</label> 7872 </div> 7873 7874 <div class="c-vtb__form--item h-margin-m__t--10 required_field" id="glm_email_wrapper"> 7875 <input required 7876 value="" 7877 class="c-vtb__form--input h-margin-m__b--0" id="glm_email" type="email" name="email" placeholder="E-mail" 7878 style="width: 100% !important; color: black !important; height: 40px !important; font-size: 15px; font-family: Plus Jakarta Sans, sans-serif;" data-hj-whitelist></input> 7879 <label class="sm-label" id="glm_email_label">Email</label> 7880 </div> 7881 <div class="c-vtb__form--item h-margin-m__t--10 required_field" id="glm_company_wrapper"> 7882 <input required 7883 value="" 7884 class="c-vtb__form--input h-margin-m__b--0" id="glm_company" type="text" name="" autocomplete="off" placeholder="Company" 7885 style="width: 100% !important; color: black !important; height: 40px !important; font-size: 15px; font-family: Plus Jakarta Sans, sans-serif;" data-hj-whitelist></input> 7886 <label id="glm_company_label" class="sm-label">Company</label> 7887 </div> 7888 7889 <div class="lr-flex-wrapper-s--column lr-flex-wrapper--wrap"> 7890 <div class="c-vtb__form--item h-margin-m__t--10 required_field h-width--100p lr-flex--1 h-margin-m__r--0 phone-date-items"> 7891 <input required 7892 value="" 7893 class="c-vtb__form--input h-margin-m__b--0 phone-section-v1" id="glm_phone" type="tel" name="phone" 7894 placeholder="Phone Number" style="height: 40px !important; font-size: 15px; font-family: Plus Jakarta Sans, sans-serif;" data-hj-whitelist></input> 7895 <label class="sm-label">Phone</label> 7896 </div> 7897 7898 <div class="c-vtb__form--item h-margin-m__t--10 h-width--100p" id="glm_vip_age_wrapper"> 7899 <input class="c-vtb__form--input h-width--100p" id="glm_vip_age" name="glm_vip_age" placeholder="What age are they turning?" 7900 style="color: black !important; height: 40px !important" autocomplete="city" data-hj-whitelist 7901 type="number"></input> 7902 <label class="sm-label">What age are they turning?</label> 7903 </div> 7904 </div> 7905 <div class="c-vtb__form--item h-margin-m__t--10 required_field date-section-v1 h-width--100p"> 7906 <label class="sm-label" id="glm_event_date_label" style="position: static; transform: none; display: block; margin-bottom: 8px; color: black;">Estimated date of event</label> 7907 <input 7908 value="" 7909 style="padding-bottom: 5px; padding-top: 7px; width: 100% !important; height: 40px !important; font-size: 15px; font-family: Plus Jakarta Sans, sans-serif; padding-left: 18px;" 7910 class="c-vtb__form--input h-margin-m__b--0 date-picker-form-2" id="glm_event_date" 7911 7912 type="date" name="event_date" placeholder="Event Date" data-hj-whitelist min="2026-09-24" data-disallow-past-dates="1"></input> 7913 <div class="c-vtb__form--input h-size-m--15" 7914 style="display: none; position: absolute; left: 0; top: 0; bottom: 0; pointer-events: none; font-size: 15px !important; background: none; border: none; padding-top: 12px; padding-left: 18px;" 7915 id="glm_cover">Event Date 7916 </div> 7917 </div> 7918 <div class="c-vtb__form--item h-margin-m__t--10 required_field"> 7919 <input type="hidden" name="group_size_type" class="c-vtb__form--input" 7920 style="width: 100% !important; color: black !important; height: 40px !important" value="range" /> 7921 <select name="group_size" class="c-vtb__form--input h-margin-m__b--0" id="glm_group_size" required class="form-control" style="width: 100%; color: black !important; font-size: 15px; height: 40px !important; font-family: Plus Jakarta Sans, sans-serif;"> 7922<option value="" selected="selected">How Many People Will Attend</option> 7923<option value="1-5">1-5</option> 7924<option value="6-10">6-10</option> 7925<option value="10-15">10-15</option> 7926<option value="16-20">16-20</option> 7927<option value="21-25">21-25</option> 7928<option value="26-30">26-30</option> 7929<option value="31-35">31-35</option> 7930<option value="36-40">36-40</option> 7931<option value="41-45">41-45</option> 7932<option value="46-50">46-50</option> 7933<option value="51-60">51-60</option> 7934<option value="61-70">61-70</option> 7935<option value="71-80">71-80</option> 7936<option value="81-90">81-90</option> 7937<option value="91-100">91-100</option> 7938<option value="101-125">101-125</option> 7939<option value="126-150">126-150</option> 7940<option value="151-175">151-175</option> 7941<option value="176-200">176-200</option> 7942<option value="201-250">201-250</option> 7943<option value="251-300">251-300</option> 7944<option value="301-350">301-350</option> 7945<option value="351-400">351-400</option> 7946<option value="401-450">401-450</option> 7947<option value="451-500">451-500</option> 7948<option value="501-750">501-750</option> 7949<option value="751-1000">751-1000</option> 7950<option value="1001-2000">1001-2000</option> 7951<option value="2001-3000">2001-3000</option> 7952<option value="3001-4000">3001-4000</option> 7953<option value="4001-5000">4001-5000</option> 7954<option value="5000+">5000+</option> 7955</select> 7956 </div> 7957 7958 <div class="c-vtb__form--item h-margin-m__t--10 required_field" id="glm_event_type_toggle_wrapper" style="display: none;"> 7959 <label class="sm-label" style="position: static; transform: none; display: block; margin-bottom: 8px; color: black;">What type of event?</label> 7960 <div class="glm-radio-group" id="glm_event_type_toggle"> 7961 <label class="glm-radio-option glm-radio-option--selected"> 7962 <input type="radio" name="glm_event_type_toggle_input" value="scavenger_hunt" checked>
7963 <span class="glm-radio-label">In-Person</span> 7964 </label> 7965 <label class="glm-radio-option"> 7966 <input type="radio" name="glm_event_type_toggle_input" value="virtual"> 7967 <span class="glm-radio-label">Virtual</span> 7968 </label> 7969 </div> 7970 </div> 7971 7972 <div class="c-vtb__form--item h-margin-m__t--10 required_field" id="glm_event_category_wrapper"> 7973 <select name="event_category" class="c-vtb__form--input h-margin-m__b--0" id="glm_event_category" required class="form-control" style="width: 100%; color: black !important; font-size: 15px; height: 40px !important; font-family: Plus Jakarta Sans, sans-serif;"> 7974<option value="" selected="selected">What type of event are you looking to put on?</option> 7975<option value="scavenger_hunt">Scavenger Hunts & In Person Events</option> 7976<option value="virtual">Virtual Team Building Games</option> 7977<option value="virtual_escape_room">Virtual Escape Room</option> 7978<option value="virtual_murder_mystery">Virtual Murder Mystery</option> 7979<option value="virtual_coworker_feud">Virtual Coworker Feud</option> 7980<option value="virtual_wellness">Virtual Wellness Or Virtual Yoga Class</option> 7981</select> 7982 </div> 7983 7984 <div class="c-vtb__form--item h-margin-m__t--10 required_field" id="glm_city_wrapper"> 7985 <input required value="" 7986 class="c-vtb__form--input h-margin-m__b--0" id="glm_city" type="text" name="city" placeholder="Enter your city" 7987 style="width: 100% !important; color: black !important; height: 40px !important; font-size: 15px; font-family: Plus Jakarta Sans, sans-serif;" autocomplete="city" 7988 data-hj-whitelist></input> 7989 <label class="sm-label" id="glm_city_label">Event Location</label> 7990 </div> 7991 7992 <div class="c-vtb__form--item h-margin-m__t--10 required_field"> 7993 <input value="" required class="c-vtb__form--input h-margin-m__b--0" id="glm_lead_event_notes" type="text" name="lead_event_notes" placeholder="Tell us about your event vision / goals" style="width: 100%; color: black !important; font-size: 15px; height: 40px !important; font-family: Plus Jakarta Sans, sans-serif;" required data-hj-whitelist></input> 7994 <label for="lead_event_notes" class="sm-label">Tell Us About Your Event Vision / Goals</label> 7995 </div> 7996 7997 <input 7998 type="hidden" 7999 id="is_ai_hunt" 8000 name="is_ai_hunt" 8001 class="c-vtb__form--input" 8002 style="width: 100% !important; color: black !important; height: 40px !important" 8003 value="" /> 8004 8005 <input 8006 type="hidden" 8007 id="hunt_id" 8008 name="hunt_id" 8009 class="c-vtb__form--input" 8010 style="width: 100% !important; color: black !important; height: 40px !important" 8011 value="" /> 8012 8013 <button class="lr-btn lr-btn__primary h-padding__v--10 h-margin__t--20" 8014 style="width: 100% !important; font-size: 20px; " id="glm_start_primary_button" type="submit" >SUBMIT<img 8015 loading="lazy" 8016 class="h-margin__l--8" 8017 src="/assets/images/common/vectors/diagonal_arrow.svg" 8018 alt="Diagonal Arrow" width="13" height="13"></button> 8019 </div> 8020 </form> 8021 </div> 8022</div> 8023 8024<style> 8025 .c-vtb__form--input { 8026 background: var(--white1); 8027 font-size: 15px; 8028 padding: 13px 0 0 12px; 8029 transition: 0.1s all ease; 8030 min-height: 35px; 8031 border-radius: 6px; 8032 } 8033 8034 .c-vtb__form--input.form-control-no-label, 8035 select.c-vtb__form--input { 8036 padding: 0 0 0 12px; 8037 } 8038 8039 /* need greater specificity - add a class to the placeholder you are trying to target here */ 8040 ::placeholder { 8041 color: black; 8042 opacity: 1; 8043 font-size: 18px; 8044 } 8045 8046 /* need greater specificity */ 8047 input[type="date"]::-webkit-calendar-picker-indicator { 8048 background: transparent; 8049 bottom: 0; 8050 color: transparent; 8051 cursor: pointer; 8052 height: auto; 8053 left: 0; 8054 position: absolute; 8055 right: 0; 8056 top: 0; 8057 width: auto; 8058 } 8059 8060 /* greater specificty */ 8061 .flex-container { 8062 display: flex; 8063 flex-direction: row; 8064 align-items: stretch; 8065 } 8066 8067 .team-image-1 { 8068 object-fit: cover; 8069 } 8070 8071 /* greater specificty */ 8072 .form-container { 8073 padding: 0 10px; 8074 margin: 0 35px; 8075 } 8076 8077 .date-picker-form-2 { 8078 position: relative; 8079 padding-left: 18px; 8080 padding-bottom: 5px; 8081 } 8082 8083 #glm_event_date { 8084 appearance: auto !important; 8085 -webkit-appearance: auto !important; 8086 box-sizing: border-box; 8087 min-height: 40px; 8088 padding: 0 14px !important; 8089 line-height: 40px; 8090 border: 1px solid #d9deea; 8091 border-radius: 6px; 8092 background: var(--white1) !important; 8093 color: black !important; 8094 } 8095 8096 #glm_event_date::-webkit-calendar-picker-indicator { 8097 background: transparent; 8098 color: transparent; 8099 cursor: pointer; 8100 height: auto; 8101 left: 0; 8102 margin: 0; 8103 position: absolute; 8104 right: 0; 8105 top: 0; 8106 bottom: 0; 8107 width: auto; 8108 } 8109 8110 #glm_event_date::-webkit-datetime-edit, 8111 #glm_event_date::-webkit-datetime-edit-fields-wrapper { 8112 padding: 0; 8113 } 8114 8115 #glm_event_date::-webkit-date-and-time-value { 8116 min-height: auto; 8117 text-align: left; 8118 } 8119 8120 .date-section-v1 { 8121 display: flex; 8122 flex-direction: column; 8123 } 8124 8125 #glm_event_date_label { 8126 position: static !important; 8127 transform: none !important; 8128 display: block !important; 8129 margin-bottom: 8px !important; 8130 color: black !important; 8131 opacity: 1 !important; 8132 visibility: visible !important; 8133 line-height: 1.3; 8134 width: 100%; 8135 } 8136 8137 .glm-radio-group { 8138 display: flex; 8139 gap: 8px; 8140 } 8141 8142 .glm-radio-option { 8143 flex: 1; 8144 display: flex; 8145 align-items: center; 8146 justify-content: center; 8147 min-height: 40px; 8148 padding: 10px 12px; 8149 border: 1px solid #d9deea; 8150 border-radius: 8px; 8151 cursor: pointer; 8152 background: #f6f8fc; 8153 box-sizing: border-box; 8154 transition: border-color 0.2s, background-color 0.2s; 8155 } 8156 8157 .glm-radio-option input[type="radio"] { 8158 display: none; 8159 } 8160 8161 .glm-radio-label { 8162 font-size: 15px; 8163 font-weight: 600; 8164 color: #1d3a45; 8165 } 8166 8167 .glm-radio-option--selected { 8168 border-color: #E87722; 8169 background: rgba(232, 119, 34, 0.08); 8170 } 8171 8172 /* Version 1 */ 8173 /* For desktop screens */ 8174 .team-image-1 { 8175 height: 100%; 8176 width: 40%; 8177 } 8178 8179 /* you defined form-container above */ 8180 .form-container { 8181 width: 60%; 8182 margin-bottom: 20px; 8183 } 8184 8185 .h-4-styling { 8186 margin-top: 20px; 8187 font-weight: 700; 8188 font-size: 34px; 8189 text-align: left; 8190 } 8191 8192 /* make more specific */ 8193 .p-styling { 8194 text-align: left; 8195 font-size: 14.78px; 8196 line-height: 1.5; 8197 overflow-wrap: break-word; 8198 word-wrap: break-word; 8199 } 8200 8201 .phone-section-v1 { 8202 color: black !important; 8203 width: 100%; 8204 } 8205 8206 /* For mobile screens */ 8207 @media (max-width: 768px) { 8208 .h-4-styling { 8209 font-size: 20px; 8210 margin: 5px; 8211 padding-right: 30px; 8212 text-align: left; 8213 } 8214 8215 .p-styling { 8216 font-size: 12px; 8217 line-height: 1.5; 8218 overflow-wrap: break-word; 8219 word-wrap: break-word; 8220 margin: 5px; 8221 padding-right: 40px; 8222 text-align: left; 8223 } 8224 8225 .flex-container { 8226 flex-direction: column; 8227 overflow: hidden; 8228 margin-bottom: 20px; 8229 } 8230 8231 .team-image-1 { 8232 width: 100%; 8233 height: 110px; 8234 object-fit: cover; 8235 object-position: center; 8236 } 8237 8238 @media (max-height: 750px) { 8239 .team-image-1 { 8240 display: none; 8241 } 8242 } 8243 8244 .form-container { 8245 width: 100%; 8246 margin: 0px; 8247 padding: 20px; 8248 } 8249 8250 .phone-section-v1 { 8251 color: black !important; 8252 width: 100%; 8253 } 8254 } 8255 8256 .c-vtb__form--input::placeholder { 8257 color: black; 8258 opacity: 1; 8259 } 8260 8261 /* Style the placeholder option */ 8262 #glm_event_category option[value=""] { 8263 color: #888; 8264 font-style: italic; 8265 } 8266 8267 /* Form container height will be set dynamically via JavaScript */ 8268 .form-container { 8269 /* min-height will be set dynamically based on content */ 8270 } 8271 8272 .team-image-2 { 8273 width: 100%; 8274 height: 100%; 8275 object-fit: cover; 8276 overflow: hidden; 8277 } 8278 8279 .team-image-overlay { 8280 width: 100%; 8281 height: 100%; 8282 overflow: hidden; 8283 object-fit: cover; 8284 } 8285 8286 .generic-form-row { 8287 display: flex; 8288 flex-flow: row wrap; 8289 align-content: center; 8290 width: 100%; 8291 margin: 0 10px 0 10px; 8292 } 8293 8294 .form-container-2 { 8295 width: 60%; 8296 display: flex; 8297 flex-direction: column; 8298 align-items: center; 8299 } 8300 8301 .lr-container--generic-lead-form { 8302 display: flex; 8303 font-family: Plus Jakarta Sans, sans-serif; 8304 } 8305 8306 /* make more speific */ 8307 .image-section { 8308 width: 40%; 8309 position: relative; 8310 overflow: hidden; 8311 display: flex; 8312 flex-direction: column; 8313 justify-content: flex-start; 8314 } 8315 8316 .heading-v2 { 8317 position: relative; 8318 z-index: 2; 8319 text-align: center; 8320 padding: 40px; 8321 margin-bottom: 30%; 8322 } 8323 8324 .generic-form-items { 8325 margin: 17px; 8326 } 8327 8328 @media (max-width: 768px) { 8329 .image-section { 8330 width: 100%; 8331 height: 200px; 8332 position: relative; 8333 overflow: hidden; 8334 display: flex; 8335 flex-direction: column; 8336 justify-content: center; 8337 align-items: center; 8338 } 8339 8340 .lr-container--generic-lead-form { 8341 display: flex; 8342 flex-direction: column; 8343 } 8344 8345 .name-email-section { 8346 display: flex; 8347 flex-direction: row; 8348 align-content: center; 8349 justify-content: center; 8350 gap: 0px; 8351 } 8352 8353 .team-image-2 { 8354 width: 100%; 8355 height: 200px; 8356 object-fit: cover; 8357 position: relative; 8358 } 8359 8360 .team-image-overlay { 8361 width: 110%; 8362 height: 200px; 8363 object-fit: cover; 8364 position: relative; 8365 } 8366 8367 .heading-v2 { 8368 position: relative; 8369 z-index: 2; 8370 text-align: center; 8371 margin-top: 100px; 8372 padding: 40px; 8373 } 8374 8375 .generic-form-items { 8376 flex: 0 1 auto; 8377 margin: 10px 0px; 8378 gap: 0px; 8379 } 8380 8381 .generic-form-row { 8382 gap: 0px; 8383 margin-bottom: 0px; 8384 } 8385 8386 8387<style> 8388/* Additional placeholder styles for the shorter team-building form */ 8389.generic-lead-modal__form-input::placeholder { 8390 color: #1d3a45 !important; 8391 font-size: 14px !important; 8392} 8393 8394.generic-lead-modal__form-input::-webkit-input-placeholder { 8395 color: #1d3a45 !important; 8396 font-size: 14px !important; 8397} 8398 8399.generic-lead-modal__form-input::-moz-placeholder { 8400 color: #1d3a45 !important; 8401 font-size: 14px !important; 8402} 8403 8404.generic-lead-modal__form-input:-ms-input-placeholder { 8405 color: #1d3a45 !important; 8406 font-size: 14px !important; 8407} 8408 8409.generic-lead-modal__form-input::-ms-input-placeholder { 8410 color: #1d3a45 !important; 8411 font-size: 14px !important; 8412} 8413</style> 8414
8415<script> 8416 window.LR_GENERIC_LEAD_FORM_CONFIG = { 8417 useLessFieldsForm: true, 8418 cityIsPrepopulated: false, 8419 minDate: "2026-09-24" }; 8420</script>
vendor: 1 bytes, line 8420
8420
8421<script src="/assets/js/letsroam/source/generic_lead_form.js?v=3"></script>
vendor: 1 bytes, line 8421
8421
8422<script src="/assets/js/letsroam/source/team_building_test_data.js?v=1"></script>
8422 8423 8424<style> 8425/* Cross-browser placeholder styling for the shorter team-building form */ 8426.generic-lead-modal .generic-lead-modal__form .generic-lead-modal__form-input::placeholder { 8427 color: #1d3a45 !important; 8428 opacity: 1 !important; 8429} 8430 8431.generic-lead-modal .generic-lead-modal__form .generic-lead-modal__form-input::-webkit-input-placeholder { 8432 color: #1d3a45 !important; 8433 opacity: 1 !important; 8434} 8435 8436.generic-lead-modal .generic-lead-modal__form .generic-lead-modal__form-input::-moz-placeholder { 8437 color: #1d3a45 !important; 8438 opacity: 1 !important; 8439} 8440 8441.generic-lead-modal .generic-lead-modal__form .generic-lead-modal__form-input:-ms-input-placeholder { 8442 color: #1d3a45 !important; 8443 opacity: 1 !important; 8444} 8445 8446.generic-lead-modal .generic-lead-modal__form .generic-lead-modal__form-input::-ms-input-placeholder { 8447 color: #1d3a45 !important; 8448 opacity: 1 !important; 8449} 8450 8451/* Even more specific backup */ 8452div.generic-lead-modal div.generic-lead-modal__form input.generic-lead-modal__form-input::placeholder { 8453 color: #1d3a45 !important; 8454 opacity: 1 !important; 8455} 8456 8457div.generic-lead-modal div.generic-lead-modal__form input.generic-lead-modal__form-input::-webkit-input-placeholder { 8458 color: #1d3a45 !important; 8459 opacity: 1 !important; 8460} 8461</style> 8462 </div> 8463 </div> 8464</div> 8465 8466<style> 8467 .c-cm-modal__icon-close { 8468 display: inline-flex; 8469 align-items: center; 8470 justify-content: center; 8471 width: 44px; 8472 height: 44px; 8473 min-width: 44px; 8474 min-height: 44px; 8475 margin: -12px -12px -12px 12px; 8476 padding: 0; 8477 color: #333; 8478 cursor: pointer; 8479 border: 0; 8480 border-radius: 999px; 8481 background: transparent; 8482 } 8483 8484 .c-cm-modal__icon-close:hover, 8485 .c-cm-modal__icon-close:focus { 8486 background: rgba(0, 0, 0, 0.04); 8487 } 8488 8489 .checkmark { 8490 width: 56px; 8491 height: 56px; 8492 border-radius: 50%; 8493 display: block; 8494 stroke-width: 2; 8495 stroke: #fff; 8496 stroke-miterlimit: 10; 8497 box-shadow: inset 0px 0px 0px #ea7722; 8498 animation: fill 0.4s ease-in-out 0.4s forwards, scale 0.3s ease-in-out 0.9s both; 8499 } 8500 8501 .checkmark__circle { 8502 stroke-dasharray: 166; 8503 stroke-dashoffset: 166; 8504 stroke-width: 2; 8505 stroke-miterlimit: 10; 8506 stroke: #ea7722; 8507 fill: none; 8508 animation: stroke 0.6s cubic-bezier(0.65, 0, 0.45, 1) forwards; 8509 } 8510 8511 .checkmark__check { 8512 transform-origin: 50% 50%; 8513 stroke-dasharray: 48; 8514 stroke-dashoffset: 48; 8515 animation: stroke 0.3s cubic-bezier(0.65, 0, 0.45, 1) 0.8s forwards; 8516 } 8517 8518 @keyframes stroke { 8519 100% { 8520 stroke-dashoffset: 0; 8521 } 8522 } 8523 8524 @keyframes scale { 8525 0%, 8526 100% { 8527 transform: none; 8528 } 8529 8530 50% { 8531 transform: scale3d(1.1, 1.1, 1); 8532 } 8533 } 8534 8535 @keyframes fill { 8536 100% { 8537 box-shadow: inset 0px 0px 0px 30px #ea7722; 8538 } 8539 } 8540 8541 @media (max-width: 768px) { 8542 .c-cm-modal__icon-close { 8543 margin: -10px -10px -10px 10px; 8544 } 8545 8546 .modal-v2 { 8547 height: 750px !important; 8548 max-height: 750px !important; 8549 margin-top: -200px !important; 8550 } 8551 8552 .modal-v2-content { 8553 margin-left: 0px !important; 8554 height: 750px !important; 8555 } 8556 } 8557 8558 @media screen and (max-width: 1133px) and (min-width: 768px) { 8559 .modal-v2 { 8560 height: 563px !important; 8561 max-height: 563px !important; 8562 margin-top: -200px !important; 8563 width: 700px !important; 8564 display: flex; 8565 flex-direction: column; 8566 } 8567 8568 .modal-v2-content { 8569 display: flex; 8570 flex-direction: column; 8571 margin-left: 0px !important; 8572 height: 700px !important; 8573 } 8574 } 8575</style> 8576
8577<script> 8578 (function (config) { 8579 function registerModal() { 8580 window.lrRegisterModalFromConfig(config); 8581 } 8582 // Some page layouts emit shared utilities in the footer, after the modal. 8583 if (typeof window.lrRegisterModalFromConfig === 'function') { 8584 registerModal(); 8585 } else { 8586 document.addEventListener('DOMContentLoaded', registerModal, { once: true }); 8587 } 8588 })({"name":"createLeadModal","id":"createLeadModal","gaView":"createLeadModal","layout":"default","openTriggerId":"createLeadModalOpen","backButtonId":"createLeadModalBackButton","closeIconId":"createLeadModalCloseModal","primaryButtonId":"createLeadModalCloseButton","openCallbackCode":"if (typeof window.hideSupportChatWidget === \u0027function\u0027) { window.hideSupportChatWidget(); }","closeCallbackCode":"if (typeof window.showSupportChatWidget === \u0027function\u0027) { window.showSupportChatWidget(); }","primaryButtonActionCode":"","closeTargetId":"btnSubmitForm","trackFormOpen":true}); 8589</script>
8589 8590 8591 8592 <!-- Facebook Pixel Code --> 8593
8593<script defer src="/assets/js/common/source/facebook_tracking.js?v=1789590145"></script>
8593 8594
8594<script> 8595window.LR_MICROSOFT_TAG_ID = "187081962"; 8596window.LR_MICROSOFT_CONSENT = "G"; 8597window.LR_MICROSOFT_VISITOR_ID = ""; 8598window.uetq = window.uetq || []; 8599if (typeof window.uetq.push === 'function') window.uetq.push('consent', 'default', {ad_storage: window.LR_MICROSOFT_CONSENT === 'D' ? 'denied' : 'granted'}); 8600</script>
vendor: 1 bytes, line 8600
8600
8601<script src="/assets/js/common/microsoft_uet.js?v=1789110527"></script>
vendor: 1 bytes, line 8601
8601
8602<script> 8603(function(w,d){ 8604 var script=d.createElement('script'); 8605 script.src='https://bat.bing.com/bat.js'; 8606 script.async=true; 8607 script.onload=function(){ 8608 try { 8609 if(typeof w.UET !== 'function') throw new Error('UET unavailable'); 8610 w.uetq=new w.UET({ti:w.LR_MICROSOFT_TAG_ID, enableAutoSpaTracking:true, q:w.uetq}); 8611 w.uetq.push('pageLoad'); 8612 if (typeof w.initializeMicrosoftConversionQueues === 'function') w.initializeMicrosoftConversionQueues(); 8613 w.LR_MICROSOFT_LIBRARY_STATUS='ready'; 8614 if (typeof w.persistMicrosoftBrowserDedup === 'function') w.persistMicrosoftBrowserDedup(); 8615 } catch(e) { w.LR_MICROSOFT_LIBRARY_STATUS='failed'; } 8616 }; 8617 script.onerror=function(){w.LR_MICROSOFT_LIBRARY_STATUS='failed';}; 8618 d.head.appendChild(script); 8619 // Microsoft's recommended browser ID sync, with the same anonymous ID as CAPI. 8620 // No raw identity, additional goals, or server-side page-view events. 8621 if (w.LR_MICROSOFT_CONSENT !== 'D' && /^[a-f0-9]{32}$/.test(w.LR_MICROSOFT_VISITOR_ID || '')) { 8622 try { 8623 const key='lr_ms_identity_sync'; 8624 if (w.sessionStorage.getItem(key) !== w.LR_MICROSOFT_VISITOR_ID) { 8625 const pixel=new Image(); 8626 pixel.src='https://c.bing.com/c.gif?Red3=BACID_253031068&VID=' + encodeURIComponent(w.LR_MICROSOFT_VISITOR_ID); 8627 w.sessionStorage.setItem(key,w.LR_MICROSOFT_VISITOR_ID); 8628 } 8629 } catch(e) { /* Optional matching aid; never a checkout dependency. */ } 8630 } 8631})(window,document); 8632if (typeof window.registerMicrosoftConversion === 'function') { 8633 window.registerMicrosoftConversion(null); 8634} 8635</script>
8635 8636 8637 8638<!-- loading ga4 for the site -->
vendor: 59 bytes, lines 8638-8639
8638 8639<script src="https://www.googletagmanager.com/gtag/js?id=
8639G-9MYPY20JBG
vendor: 13 bytes, lines 8639-8640
8639"></script> 8640
8641<script> 8642 8643 console.log('gtag loaded') 8644 8645 window.dataLayer = window.dataLayer || []; 8646 // make sure matches with header_utilities.php 8647 8648 // generating the ab data to send to google 8649 var abData = []; 8650 var abString = "" 8651 if(abData && Object.keys(abData)) { 8652 Object.keys(abData).map((key, index) => { 8653 abString += (`${key}-${abData[key]},` ) 8654 }) 8655 } 8656 8657 // Send each AB test as individual user property for GA4 segmentation 8658 // This allows filtering conversions by AB test variant in GA4 Explorations 8659 // User properties persist across sessions for the same user 8660 // GA4 has 24 character limit on user property names, so we truncate 8661 var abUserProperties = {}; 8662 if(abData && Object.keys(abData).length > 0) { 8663 Object.keys(abData).forEach(function(key) { 8664 // GA4 user property names max 24 chars, truncate if needed 8665 var propertyName = ('ab_' + key).substring(0, 24); 8666 abUserProperties[propertyName] = String(abData[key]); 8667 }); 8668 gtag_and_microsoft_uet('set', 'user_properties', abUserProperties); 8669 // console.log_on_production('GA4 AB test user properties set:', abUserProperties); 8670 } 8671 8672 console.log('event_callback triggered 1'); 8673 8674 var gtagConfigSettings = { 8675 ab_data: abString, 8676 page_title: document.title, 8677 referrer: "", 8678 ip_address: GEO_LOCATION[''] 8679 }; 8680 8681 8682 8683 8684 // https://developers.google.com/tag-platform/gtagjs/reference#config 8685 gtag_and_microsoft_uet('js', new Date()); 8686 8687 var gtagId = 'G-9MYPY20JBG' 8688 var googleAdsId = 'AW-878770880' 8689 8690 console.log_on_production({gtagId, googleAdsId}) 8691 8692 // setting config which does the initial page load 8693 // additional page info 8694 // https://developers.google.com/analytics/devguides/collection/ga4/reference/config#page_title 8695 gtag_and_microsoft_uet('config', gtagId, gtagConfigSettings); 8696 8697 8698 console.log_on_production({gtagConfigSettings}) 8699 8700 8701 // google ads tage manager 8702 8703 gtag_and_microsoft_uet('config', googleAdsId); 8704 8705 8706 // dummy test event for testing.js 8707 // window.isTest is defined in header_utilities 8708 if(window.isTest) { 8709 gtag_and_microsoft_uet('event', 'test_event', { 8710 event_callback: function() { 8711 console.log('test event callback'); 8712 // Adding a test element for automated tests 8713 8714 // prevent multiple loading 8715 if(document.querySelector('#gtag-loaded')) { 8716 return; 8717 } 8718 var gtagTestElement = document.createElement('div'); 8719 gtagTestElement.id = 'gtag-loaded'; 8720 gtagTestElement.setAttribute('data-test-id', 'gtag-loaded'); 8721 document.body.appendChild(gtagTestElement); 8722 } 8723 }); 8724 } 8725 8726 8727 8728 // logging that its done 8729 console.log_on_production('loading individual gtag (not gtm)', {gtagId, gtagConfigSettings, dataLayer: JSON.stringify(window.dataLayer) }) 8730 8731 8732 gtag_and_microsoft_uet('get', gtagId, 'session_id', function(sessionId) { 8733 console.log_on_production('gtag session_id', sessionId) 8734 setCookie('session_id', sessionId) 8735 }) 8736 8737 gtag_and_microsoft_uet('get', gtagId, 'client_id', function(client_id) { 8738 console.log_on_production('gtag client_id', client_id) 8739 setCookie('client_id', client_id) 8740 }) 8741 8742 8743 8744 8745</script>
8745 8746 8747 8748 8749
8749<script> 8750 const trackingData = {"WEB_UNIQUE_ID":"bot_89be54e802","web_unique_id":"bot_89be54e802","is_bot":true,"user_agent":"Mozilla\/5.0 AppleWebKit\/537.36 (KHTML, like Gecko; compatible; PageSourceSearchBot\/1.0; +https:\/\/pagesourcesearch.com\/bot) Chrome\/128.0.0.0 Safari\/537.36","ip_address":"181.215.65.75","isp":"","device_type":"desktop","website_domain":"www.letsroam.com","lat":"41.85003","long":"-87.65005","last_viewed_hunt_id":null,"lr_partner_id":null,"gclid":null,"fbclid":null,"ttclid":null,"msclkid":null,"ab_data":null,"geo_country":null,"geo_city":null,"geo_state":null,"geo_lat_long":null,"submission_url":null,"orig_referer":null,"entry_url":"https:\/\/www.letsroam.com\/store","entry_url_from_cookie":"https:\/\/www.letsroam.com\/store","last_pages":"https:\/\/www.letsroam.com\/store","has_seen_gift_page":null,"last_check_query":null,"current_page":"https:\/\/www.letsroam.com\/store","is_dev":false,"tracking_recovered_count":0,"tracking_recovered_different_user_agent_count":0,"last_paid_visit_date":null,"utm_source":null,"utm_medium":null,"utm_content":null,"utm_campaign":null,"utm_category":null,"utm_campaign_name":null,"utm_term":null,"keyword":null,"first_visit":1790241872,"date_first_visit":"26-09-24 03:24:32","last_paid_utm_source":null,"last_paid_utm_campaign":null,"last_paid_utm_category":null}; 8751 console.log_on_production({trackingData: trackingData}) 8752 </script>
8752 8753 8754 8755 8756
8757<script> 8758 window.profileChatwootData = []; 8759 window.chatwootURL = 'https://www.letsroam.com/assets/js/common/source/chatwoot_general.js?cv=v12.2.6354ccd'; 8760 window.chatwootYourEventURL = ''; 8761 window.chatwootWebsiteToken = '8aMbb516KW5o5obiJcfpnkKb'; 8762 window.chatRootSDKURL = 'https://app.chatwoot.com/packs/js/sdk.js'; 8763 window.chatRootBaseURL = 'https://app.chatwoot.com'; 8764 window.chatwootDebugStagingBundleURL = ''; 8765 window.chatwootRecentMessageCookieName = 'lr_chatwoot_recent_message'; 8766 window.loadChatwootOnMobile = false; 8767 window.chatwootSupportConfig = Object.assign( 8768 {}, 8769 window.chatwootSupportConfig || {}, 8770 {"accountId":null,"inboxId":null,"baseUrl":"https:\/\/app.chatwoot.com","websiteToken":"8aMbb516KW5o5obiJcfpnkKb","identifier":null,"identifierHash":null,"baseIdentifier":null,"allowTestReset":false,"enableLocalDebugUi":false,"supportContextUrl":null,"contextAttributesUrl":null,"debugDataUrl":null}, 8771 { 8772 websiteToken: window.chatwootWebsiteToken, 8773 baseUrl: window.chatRootBaseURL, 8774 }, 8775 [] ); 8776 window.chatwootAttributes = (function () { 8777 var defaultAttributes = {"currentUrl":"https://www.letsroam.com/store","user_chat_length_preference":"The user prefers detailed, multi-step answers. Try to answer in as few messages as possible. For things like how to start a hunt, answer in one message. Use the user attributes for details like join code.","app_download_link":"https://www.letsroam.com/scavenger_hunt_app"}; 8778 var managedAttributeKeys = ["currentUrl","user_chat_length_preference","app_download_link"]; 8779 var attributes = defaultAttributes; 8780 8781 try { 8782 attributes = JSON.parse(localStorage.getItem('chatwootAttributes')) || defaultAttributes; 8783 } catch (e) {} 8784 8785 if (!attributes || typeof attributes !== 'object' || Array.isArray(attributes)) { 8786 attributes = defaultAttributes; 8787 } 8788 8789 Object.keys(attributes).forEach(function (key) { 8790 if (key.indexOf('page-') === 0) { 8791 delete attributes[key]; 8792 } 8793 }); 8794 8795 managedAttributeKeys.forEach(function (key) { 8796 if (Object.prototype.hasOwnProperty.call(defaultAttributes, key)) { 8797 attributes[key] = defaultAttributes[key]; 8798 } else { 8799 delete attributes[key]; 8800 } 8801 }); 8802 8803 return attributes; 8804 })(); 8805 function storeUserAttributes() { 8806 try { 8807 localStorage.setItem( 8808 'chatwootAttributes', 8809 JSON.stringify(window.chatwootAttributes || {}) 8810 ); 8811 } catch (e) {} 8812 } 8813 function addChatWootAttribute(key, value) { 8814 if (!!value) { 8815 window.chatwootAttributes[key] = value; 8816 } else { 8817 delete window.chatwootAttributes[key]; 8818 } 8819 storeUserAttributes(); 8820 if ( 8821 window.$chatwoot && 8822 typeof window.$chatwoot.setCustomAttributes === 'function' 8823 ) { 8824 window.$chatwoot.setCustomAttributes(window.chatwootAttributes); 8825 } 8826 } 8827 function addChatWootAttributes(attributes) { 8828 Object.keys(attributes || {}).forEach(function (key) { 8829 if (attributes[key]) { 8830 window.chatwootAttributes[key] = attributes[key]; 8831 } else { 8832 delete window.chatwootAttributes[key]; 8833 } 8834 }); 8835 storeUserAttributes(); 8836 if ( 8837 window.$chatwoot && 8838 typeof window.$chatwoot.setCustomAttributes === 'function' 8839 ) { 8840 window.$chatwoot.setCustomAttributes(window.chatwootAttributes); 8841 } 8842 } 8843 function isChatwootWidgetOpen() { 8844 var widgetHolder = document.querySelector('.woot-widget-holder'); 8845 8846 return !!widgetHolder && !widgetHolder.classList.contains('woot--hide'); 8847 } 8848 8849 // Reason: openSupportChat has always called highlightSupportChatWidget when 8850 // the widget is already open, but the function was never written, so every 8851 // re-open on the contact page threw. It draws attention to the already-open 8852 // widget, which is what the call site expects. 8853 function highlightSupportChatWidget() { 8854 var widgetHolder = document.querySelector('.woot-widget-holder'); 8855 if (!widgetHolder) { 8856 return; 8857 } 8858 8859 // Inline styling keeps this independent of the conditional <style> blocks 8860 // further down this file, which only render for some page types. 8861 var previousBoxShadow = widgetHolder.style.boxShadow; 8862 var previousTransition = widgetHolder.style.transition; 8863 8864 widgetHolder.style.transition = 'box-shadow 200ms ease-in-out'; 8865 widgetHolder.style.boxShadow = '0 0 0 3px rgba(232, 119, 34, 0.85)'; 8866 8867 setTimeout(function () { 8868 widgetHolder.style.boxShadow = previousBoxShadow; 8869 widgetHolder.style.transition = previousTransition; 8870 }, 1200); 8871 } 8872 8873 function openSupportChat(attempt = 0) { 8874 window.__chatwootUserRequestedOpen = true; 8875 if(window.$chatwoot && typeof window.$chatwoot.toggle == 'function') { 8876 if (isChatwootWidgetOpen()) { 8877 if (false && typeof window.$chatwoot.toggleBubbleVisibility == 'function') { 8878 window.$chatwoot.toggleBubbleVisibility('show'); 8879 } 8880 highlightSupportChatWidget(); 8881 return; 8882 } 8883 8884 if ( 8885 true && typeof window.$chatwoot.toggleBubbleVisibility == 'function' 8886 ) { 8887 window.$chatwoot.toggleBubbleVisibility('hide'); 8888 } else if ( 8889 false && typeof window.$chatwoot.toggleBubbleVisibility == 'function' 8890 ) { 8891 window.$chatwoot.toggleBubbleVisibility('show'); 8892 } 8893 window.$chatwoot.toggle('open'); 8894 if ( 8895 false && typeof window.$chatwoot.toggleBubbleVisibility == 'function' 8896 ) { 8897 setTimeout(function () { 8898 window.$chatwoot.toggleBubbleVisibility('show'); 8899 }, 60); 8900 } 8901 return; 8902 } 8903 8904 window.__chatwootOpenAfterLoad = true; 8905 if (attempt === 0 && typeof window.loadChatwootSupportScript === 'function') { 8906 window.loadChatwootSupportScript(); 8907 } 8908 if (attempt < 20) { 8909 setTimeout(function () { 8910 openSupportChat(attempt + 1); 8911 }, 250); 8912 } 8913 } 8914 window.addEventListener('chatwoot:on-message', function (e) { var d = e.detail || {}, t = String(d.sender_type || (d.sender && d.sender.type) || '').toLowerCase(); if (t && t !== 'contact' && t !== 'user' && t !== 'visitor') return; document.cookie = window.chatwootRecentMessageCookieName + '=1;max-age=300;path=/;SameSite=Lax'; }); 8915 window.syncChatwootLayering = function () { 8916 document.querySelectorAll('#btnMainBottomCheckout.mobileScrollContent').forEach(function (el) { el.style.setProperty('z-index', '2147483002', 'important'); }); 8917 document.querySelectorAll('#cw-bubble-holder, .woot-widget-bubble, #lrChatwootMockButton').forEach(function (el) { el.style.setProperty('z-index', '2147483001', 'important'); }); 8918 document.querySelectorAll('#cw-widget-holder, .woot-widget-holder').forEach(function (el) { el.style.setProperty('z-index', '2147483003', 'important'); }); 8919 }; 8920 8921 window.addEventListener('chatwoot:ready', function () { 8922 window.chatwootReady = true; 8923 var mockButton = document.getElementById('lrChatwootMockButton'); if (mockButton) mockButton.remove(); 8924 window.syncChatwootLayering(); 8925 window.$chatwoot.setCustomAttributes(window.chatwootAttributes); 8926 if (!window.__chatwootContactMobileAutoOpened && window.innerWidth <= 950 && false) { window.__chatwootContactMobileAutoOpened = true; setTimeout(function () { openSupportChat(); }, 60); } 8927 if (window.__chatwootOpenAfterLoad && window.__chatwootUserRequestedOpen && window.$chatwoot && typeof window.$chatwoot.toggle === 'function') { window.__chatwootOpenAfterLoad = false; window.$chatwoot.toggle('open'); } 8928 }); 8929 8930</script>
8930 8931 <style> 8932 @media (max-width: 950px) { 8933 #cw-widget-holder, 8934 #cw-bubble-holder, 8935 .woot-widget-holder, 8936 .woot-widget-bubble { 8937 display: none !important; 8938 visibility: hidden !important; 8939 opacity: 0 !important; 8940 pointer-events: none !important; 8941 } 8942 } 8943 </style> 8944 <style> 8945 #cw-bubble-holder, 8946 .woot-widget-bubble, 8947 #lrChatwootMockButton { 8948 z-index: 800 !important; 8949 } 8950 8951 #cw-widget-holder, 8952 .woot-widget-holder { 8953 z-index: 9998 !important; 8954 } 8955 8956 8957 #btnMainBottomCheckout.mobileScrollContent { 8958 z-index: 2147483002 !important; 8959 } 8960 8961 #cw-bubble-holder, 8962 .woot-widget-bubble, 8963 #lrChatwootMockButton { 8964 z-index: 2147483001 !important; 8965 } 8966 8967 #cw-widget-holder, 8968 .woot-widget-holder { 8969 z-index: 2147483003 !important; 8970 } 8971 </style> 8972 <style> 8973 #lrChatwootMockButton { position: fixed; right: 20px; bottom: 20px; width: 64px; height: 64px; padding: 0; border: 0; border-radius: 100px; background: #E87722; box-shadow: 0 8px 24px rgba(0, 0, 0, 0.16); cursor: pointer; overflow: hidden; } 8974 #lrChatwootMockButton:hover { box-shadow: 0 8px 32px rgba(0, 0, 0, 0.4); } 8975 #lrChatwootMockButton svg { display: block; width: 24px; height: 24px; margin: 20px; } 8976 @media (max-width: 950px) { #lrChatwootMockButton { display: none; } } </style> 8977 <button id="lrChatwootMockButton" type="button" aria-label="Open chat" onclick="window.__chatwootUserRequestedOpen=true;window.__chatwootOpenAfterLoad=true;loadChatwootSupportScript()"> 8978 <svg width="24" height="24" viewBox="0 0 240 240" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M240.808 240.808H122.123C56.6994 240.808 3.45695 187.562 3.45695 122.122C3.45695 56.7031 56.6994 3.45697 122.124 3.45697C187.566 3.45697 240.808 56.7031 240.808 122.122V240.808Z" fill="#FFFFFF"></path></svg> 8979 </button>
8980<script 8981 type="text/javascript"> 8982 (function () { 8983 window.loadChatwootSupportScript = function loadChatwootSupportScript() { 8984 if (!window.__chatwootSupportScriptLoaded && !document.querySelector('script[data-chatwoot-support-script="1"]')) { 8985 var script = document.createElement('script'); 8986 script.defer = true; 8987 script.type = 'text/javascript'; 8988 script.src = window.chatwootURL; 8989 script.dataset.chatwootSupportScript = '1'; 8990 document.body.appendChild(script); 8991 window.__chatwootSupportScriptLoaded = true; 8992 } else { 8993 window.__chatwootSupportScriptLoaded = true; 8994 } 8995 8996 if ( 8997 window.chatwootYourEventURL && 8998 !window.__chatwootYourEventScriptLoaded && 8999 !document.querySelector('script[data-chatwoot-your-event-script="1"]') 9000 ) { 9001 var yourEventScript = document.createElement('script'); 9002 yourEventScript.defer = true; 9003 yourEventScript.type = 'text/javascript'; 9004 yourEventScript.src = window.chatwootYourEventURL; 9005 yourEventScript.dataset.chatwootYourEventScript = '1'; 9006 document.body.appendChild(yourEventScript); 9007 window.__chatwootYourEventScriptLoaded = true; 9008 } 9009 9010 if ( 9011 window.chatwootDebugStagingBundleURL && 9012 !window.__chatwootDebugStagingBundleScriptLoaded && 9013 !document.querySelector('script[data-chatwoot-debug-staging-script="1"]') 9014 ) { 9015 var debugBundleScript = document.createElement('script'); 9016 debugBundleScript.defer = true; 9017 debugBundleScript.type = 'text/javascript'; 9018 debugBundleScript.src = window.chatwootDebugStagingBundleURL; 9019 debugBundleScript.dataset.chatwootDebugStagingScript = '1'; 9020 document.body.appendChild(debugBundleScript); 9021 window.__chatwootDebugStagingBundleScriptLoaded = true; 9022 } 9023 9024 if (window.__chatwootOpenAfterLoad && window.__chatwootUserRequestedOpen && window.chatwootReady && window.$chatwoot && typeof window.$chatwoot.toggle === 'function') { 9025 window.__chatwootOpenAfterLoad = false; 9026 window.$chatwoot.toggle('open'); 9027 } 9028 } 9029 9030 function maybeLoadChatwootSupportScript() { 9031 if (window.innerWidth > 950 || window.loadChatwootOnMobile) { 9032 window.loadChatwootSupportScript(); 9033 } 9034 } 9035 9036 window.addEventListener('mousemove', function (e) { var b = document.getElementById('lrChatwootMockButton'), r = b && b.getBoundingClientRect(), p = r ? Math.max(r.width, r.height) * (window.innerWidth > 950 ? 1 : 0) : 0; if (r && e.clientX >= r.left - p && e.clientX <= r.right + p && e.clientY >= r.top - p && e.clientY <= r.bottom + p) window.loadChatwootSupportScript(); }, { passive: true }); 9037 })(); 9038</script>
9038 9039 9040 9041 9042 9043 9044 9045 </body> 9046</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.