{"product_id":"haunted-cities-haunted-london","title":"Haunted Cities - Haunted London","description":"\u003cstyle\u003e\n      .pacer_desc {\n        font-family: Helvetica Neue;\n      }\n      .pacer_desc .main_width {\n        margin: 0 auto;\n      }\n      .pacer_desc .content_font {\n        font-size: 16px;\n        color: #3a3a3a;\n      }\n      .pacer_desc .section_title {\n        text-align: center;\n        font-weight: bold;\n        font-size: 32px;\n      }\n      .pacer_desc .cp_list {\n        margin-top: 50px;\n        display: flex;\n        background: rgba(196, 196, 196, 0.1);\n        border-radius: 10px;\n        padding: 54px 122px;\n      }\n      .pacer_desc .cp_item {\n        flex: 1;\n        display: flex;\n        flex-direction: column;\n        align-items: center;\n      }\n      .pacer_desc .cp_item + .cp_item {\n        margin-left: 20px;\n      }\n      .pacer_desc .cp_list .cp_img {\n        width: 100%;\n        max-width: 200px;\n        object-fit: contain;\n        border-radius: 1000px;\n      }\n      .pacer_desc .cp_list .cp_name {\n        margin-top: 30px;\n        font-weight: bold;\n        max-width: 220px;\n        word-break: break-word;\n      }\n      .pacer_desc .divider {\n        background: linear-gradient(90.03deg, #740d16 0.02%, #9f2732 99.98%);\n        text-align: center;\n        color: #fff;\n        margin-top: 60px;\n        padding: 10px 0;\n        font-size: 15px;\n        font-weight: 700;\n        width: 100vw;\n        margin-left: calc(50% - 50vw);\n        position: relative;\n      }\n      .pacer_desc .feature {\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n      }\n      .pacer_desc .feature .content,\n      .pacer_desc .feature .feature_img {\n        width: 50%;\n      }\n      .pacer_desc .feature .content + .feature_img,\n      .pacer_desc .feature .feature_img + .content {\n        margin-left: 50px;\n      }\n      .pacer_desc .feature .content .title {\n        font-size: 32px;\n        font-weight: bold;\n      }\n      .pacer_desc .feature .content .content_value {\n        font-size: 16px;\n      }\n      .pacer_desc .medal .medal_desc,\n      .pacer_desc .tshirt .tshirt_desc,\n      .pacer_desc .checkpoint .cp_desc {\n        margin-top: 30px;\n      }\n      .pacer_desc .medal_images {\n        display: flex;\n        margin: 40px 20px 0;\n        justify-content: center;\n        width: 100vw;\n        margin-left: calc(50% - 50vw);\n        align-items: center;\n      }\n      .pacer_desc .medal_images .medal_img {\n        width: 30%;\n        margin-right: 10px;\n        vertical-align: middle;\n        cursor: pointer;\n      }\n      .pacer_desc .medal_images .medal_img.video_item {\n        cursor: initial;\n      }\n      .pacer_desc .medal_img:last-child {\n        margin-right: 0;\n      }\n      .pacer_desc .mobile_video {\n        display: none;\n        width: 100%;\n        \/* height: 300px; *\/\n        object-fit: cover;\n        margin-top: 20px;\n      }\n      .modal_image {\n        position: fixed;\n        top: 0;\n        left: 0;\n        right: 0;\n        bottom: 0;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        background-color: #000;\n        display: none;\n        z-index: 99;\n      }\n      .modal_image .close {\n        position: absolute;\n        top: 35px;\n        right: 70px;\n        font-size: 50px;\n        font-weight: bold;\n        color: #fff;\n        cursor: pointer;\n        transition: 0.3s;\n      }\n      .modal_image .close:hover {\n        color: #ddd;\n      }\n      .modal_image img {\n        max-width: 100%;\n        max-height: 100%;\n        object-fit: contain;\n      }\n      @media screen and (max-width: 800px) {\n        .pacer_desc .medal {\n          width: 100%;\n        }\n        .pacer_desc .medal_images {\n          padding-left: 15px;\n          margin-top: 10px;\n          overflow-x: scroll;\n          justify-content: flex-start;\n          box-sizing: border-box;\n          scrollbar-width: none;\n          margin-left: -15px;\n          padding-right: 15px;\n\n          \/* no video *\/\n          flex-direction: column;\n          margin-left: 0;\n          margin-right: 0;\n          padding: 0;\n          width: 100%;\n        }\n        .pacer_desc .medal_images::-webkit-scrollbar {\n          display: none;\n        }\n        .pacer_desc .medal_images .medal_img {\n          width: 70vw;\n          min-width: auto;\n          height: auto;\n          align-self: flex-start;\n          margin-bottom: 10px;\n          margin-right: 0;\n\n          \/* no video *\/\n          width: 100%;\n        }\n        .pacer_desc .medal_images .medal_img.video_item {\n          display: none;\n        }\n        .pacer_desc .cp_list {\n          margin-top: 20px;\n          padding: 10px;\n        }\n        .modal_image .close {\n          position: absolute;\n          top: 20px;\n          right: 30px;\n          font-size: 40px;\n          font-weight: bold;\n          color: #fff;\n          cursor: pointer;\n          transition: 0.3s;\n        }\n      }\n      @media screen and (max-width: 768px) {\n        .pacer_desc .map_layer .challenge_info .challenge_name {\n          display: none;\n        }\n        .pacer_desc .map_layer .checkpoints_count {\n          color: rgb(191, 191, 191);\n        }\n        .pacer_desc .map iframe {\n          height: 400px !important;\n        }\n        .pacer_desc .mobile_video {\n          display: block;\n        }\n        .pacer_desc .medal {\n          width: 100%;\n        }\n        .pacer_desc .medal_images {\n          padding-left: 15px;\n          margin-top: 10px;\n          overflow-x: scroll;\n          justify-content: flex-start;\n          box-sizing: border-box;\n          scrollbar-width: none;\n          margin-left: -15px;\n          padding-right: 15px;\n\n          \/* no video *\/\n          flex-direction: column;\n          margin-left: 0;\n          margin-right: 0;\n          padding: 0;\n          width: 100%;\n        }\n        .pacer_desc .medal_images::-webkit-scrollbar {\n          display: none;\n        }\n        .pacer_desc .medal_images .medal_img {\n          width: 70vw;\n          min-width: auto;\n          height: auto;\n          align-self: flex-start;\n          margin-bottom: 10px;\n          margin-right: 0;\n\n          \/* no video *\/\n          width: 100%;\n        }\n        .pacer_desc .medal_images .medal_img.video_item {\n          display: none;\n        }\n        .pacer_desc .cp_list {\n          margin-top: 20px;\n          padding: 10px;\n        }\n        .pacer_desc .cp_list .cp_item .cp_img {\n          width: 100%;\n          height: auto;\n        }\n        .pacer_desc .cp_list .cp_name {\n          margin-top: 10px;\n          color: #8f8f8f;\n          font-weight: normal;\n          font-style: italic;\n        }\n        .pacer_desc .feature {\n          flex-direction: column-reverse;\n        }\n        .pacer_desc .feature + .feature {\n          margin-top: 30px;\n        }\n        .pacer_desc .feature.img_first {\n          flex-direction: column;\n        }\n        .pacer_desc .feature .feature_img,\n        .pacer_desc .feature .content {\n          width: 100%;\n        }\n        .pacer_desc .feature .content + .feature_img,\n        .pacer_desc .feature .feature_img + .content {\n          margin-left: 0;\n        }\n        .pacer_desc .feature .content {\n          margin-top: 20px;\n        }\n        .pacer_desc .feature .content .title {\n          text-align: center;\n          width: 80%;\n          margin: 0 auto;\n          font-size: 30px;\n          line-height: initial;\n        }\n        .pacer_desc .medal .medal_desc,\n        .pacer_desc .tshirt .tshirt_desc,\n        .pacer_desc .checkpoint .cp_desc {\n          margin-top: 18px;\n        }\n      }\n    \u003c\/style\u003e\n    \u003cdiv class=\"pacer_desc\" style=\"margin: 0; padding: 0\"\u003e\n      \u003cdiv class=\"info main_width\"\u003e\n        \u003c!-- to_check --\u003e\n        \u003cdiv class=\"info_item content_font\"\u003e\n        Travel 55 km \/ 35 miles in this virtual Haunted London challenge. Explore creepy streets, spooky landmarks, and uncover some of the city's scariest ghost stories along the way.\n        \u003c\/div\u003e\n        \u003cdiv class=\"info_item content_font\" style=\"margin-top: 20px\"\u003e\n          \u003cb\u003eWhen and Where\u003c\/b\u003e - This is a virtual adventure challenge.\n          Participate and complete at anytime, from anywhere in the world.\n        \u003c\/div\u003e\n        \u003cdiv class=\"info_item content_font\" style=\"margin-top: 20px\"\u003e\n          \u003cb\u003eHow\u003c\/b\u003e - Set your own timeframe and finish the required distance\n          with walk, run, bike or any distance-based activities of your choice.\n        \u003c\/div\u003e\n        \u003cdiv class=\"info_item content_font\" style=\"margin-top: 20px\"\u003e\n          \u003cb\u003eRewards\u003c\/b\u003e - Receive a gorgeous finisher medal at your doorstep\n          with worldwide shipping! You will also receive an E-certificate via\n          email, and unlock digital postcards in the app.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"divider\"\u003eGET INSPIRED, BE ACTIVE, AND EARN A MEDAL\u003c\/div\u003e\n      \u003cdiv class=\"medal\" style=\"margin-top: 40px\"\u003e\n      \u003ch2\u003e\n        \u003ch2 class=\"title main_width section_title\"\u003eStunning Haunted London Finisher Medal\u003c\/h2\u003e\n      \u003c\/h2\u003e\n        \u003cdiv class=\"medal_desc main_width content_font\"\u003e\n          Each medal is created with deliberate design and exquisite\n          craftsmanship, and comes in a cushioned showcase box. It's guaranteed\n          not to be like any other medals that you've earned before.\n        \u003c\/div\u003e\n        \u003c!-- to_check --\u003e\n        \u003cvideo crossorigin=\"anonymous\" controls=\"controls\" playsinline=\"\" autoplay=\"autoplay\" loop=\"loop\" muted=\"\" class=\"mobile_video\" src=\"https:\/\/cdn.shopify.com\/videos\/c\/o\/v\/f5d3e605fd69491ca19fe3355e05e5a5.mov\" poster=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0268\/4479\/0865\/files\/poster_86839c1d-de66-49d4-904d-ceb285f14614.jpg?v=1729847684\"\u003e\u003c\/video\u003e\n        \u003cdiv class=\"medal_images\"\u003e\n          \u003c!-- to_check --\u003e\n          \u003cvideo crossorigin=\"anonymous\" autoplay=\"autoplay\" loop=\"loop\" muted=\"\" controls=\"controls\" class=\"medal_img video_item\" src=\"https:\/\/cdn.shopify.com\/videos\/c\/o\/v\/f5d3e605fd69491ca19fe3355e05e5a5.mov\" poster=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0268\/4479\/0865\/files\/poster_86839c1d-de66-49d4-904d-ceb285f14614.jpg?v=1729847684\"\u003e\u003c\/video\u003e\n          \u003c!-- \u003cimg\n          src=\"https:\/\/cdn.pacer.cc\/shopify\/products\/rome\/medal_1.jpeg?width=700\"\n          alt=\"\"\n          class=\"medal_img\"\n        \/\u003e --\u003e\n          \u003c!-- to_check --\u003e\n          \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0268\/4479\/0865\/files\/Shopify_detail_1_3f28382d-13c9-4ca9-83c3-7e84ed43e509.jpg?v=1729847684\u0026amp;width=700\" alt=\"\" class=\"medal_img\"\u003e\n          \u003c!-- to_check --\u003e\n          \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0268\/4479\/0865\/files\/Shopify_detail_2_54fd17de-90f0-4aac-91e9-48e0119173ac.jpg?v=1729847685\u0026amp;width=700\" alt=\"\" class=\"medal_img\"\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"checkpoint main_width\" style=\"margin-top: 40px\"\u003e\n      \u003ch2\u003e\n        \u003ch2 class=\"title section_title\"\u003eHaunted London Virtual Adventure Checkpoints\u003c\/h2\u003e\n      \u003c\/h2\u003e\n        \u003cdiv class=\"cp_desc content_font\"\u003e\n          Unlock new locations along the map as you progress through your\n          challenge. Each new location is a chance to immerse yourself in the\n          virtual experience and learn about local landmarks, history and\n          culture.\n        \u003c\/div\u003e\n        \u003cdiv class=\"cp_list\"\u003e\n          \u003cdiv class=\"cp_item\"\u003e\n            \u003c!-- to_check --\u003e\n            \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0268\/4479\/0865\/files\/registration_checkpoint_1_0f1848eb-474d-48bf-b1c6-259c1165bae2.png?v=1729847684\u0026amp;width=700\" alt=\"\" class=\"cp_img\"\u003e\n            \u003cdiv class=\"cp_name\" style=\"text-align: center; font-size: 13px\"\u003e\n            Tower of London\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n          \u003cdiv class=\"cp_item\"\u003e\n            \u003c!-- to_check --\u003e\n            \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0268\/4479\/0865\/files\/registration_checkpoint_2_ae7fbd78-6e80-4509-92ef-fc8f3909b9d8.png?v=1729847686\u0026amp;width=700\" alt=\"\" class=\"cp_img\"\u003e\n            \u003cdiv class=\"cp_name\" style=\"text-align: center; font-size: 13px\"\u003e\n            Highgate Cemetery\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n          \u003cdiv class=\"cp_item\"\u003e\n            \u003c!-- to_check --\u003e\n            \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0268\/4479\/0865\/files\/registration_checkpoint_3_e348408c-1003-4b1f-998c-80686ec0506f.png?v=1729847684\u0026amp;width=700\" alt=\"\" class=\"cp_img\"\u003e\n            \u003cdiv class=\"cp_name\" style=\"text-align: center; font-size: 13px\"\u003e\n            Hampton Court Palace\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"map\"\u003e\n        \u003cstyle\u003e\n          .pacer_desc .map {\n            margin-top: 30px;\n            position: relative;\n          }\n          .pacer_desc .map iframe {\n            height: 600px;\n          }\n          .pacer_desc .map_layer {\n            position: absolute;\n            top: 0;\n            left: 0;\n            right: 0;\n            background-color: #414141;\n            height: 68px;\n            display: flex;\n            align-items: center;\n            justify-content: space-between;\n            color: #fff;\n            padding: 0 24px;\n            font-family: 'Helvetica Neue';\n            font-style: normal;\n            font-size: 17px;\n            line-height: 21px;\n          }\n          .pacer_desc .map_action_disabled {\n            position: absolute;\n            top: 0;\n            left: 0;\n            right: 0;\n            bottom: 0;\n            background-color: transparent;\n          }\n          .pacer_desc .challenge_info {\n            display: flex;\n            align-items: center;\n          }\n          .pacer_desc iframe {\n            border-width: 0;\n          }\n        \u003c\/style\u003e\n        \u003cdiv class=\"map_layer\"\u003e\n          \u003cdiv class=\"challenge_info\"\u003e\n            \u003cdiv class=\"challenge_name\"\u003eHaunted Adventures - Haunted London \u003c\/div\u003e\n            55 km \/ 35 miles\n          \u003c\/div\u003e\n          \u003cdiv class=\"checkpoints_count\"\u003e8 Checkpopints\u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"map_action_disabled\"\u003e\u003c\/div\u003e\n        \u003ciframe src=\"https:\/\/www.google.com\/maps\/d\/u\/0\/embed?mid=1f5YIZBloNtkkj1LYIUuaVyjev9Hwqgw\u0026amp;ehbc=2E312F\" width=\"100%\"\u003e\u003c\/iframe\u003e\n      \u003c\/div\u003e\n      \u003cdiv style=\"margin-top: 70px;\" class=\"tshirt main_width\"\u003e\n      \u003ch2\u003e\n      \u003ch2 style=\"text-align: center; font-weight: bold;\" class=\"title section_title\"\u003eDesigner Challenge T-Shirts\u003c\/h2\u003e\n      \u003c\/h2\u003e\n      \u003cdiv class=\"tshirt_desc content_font\"\u003eSoft and lightweight, with the right amount of stretch. It’s comfortable and flattering for both men and women. Choose from wide range of colors and sizes. Shirts are shipped right after registration. （*Shirts will cost extra）\u003c\/div\u003e\n      \u003c!-- to_check --\u003e \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0268\/4479\/0865\/files\/Tshirt_0ba8c754-31f7-4de3-aae9-00c2d85ee8f7.jpg?v=1729847684\u0026amp;width=700\" style=\"width: 100%; margin-top: 10px;\" alt=\"\" class=\"tshirt_img\"\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"collection\"\u003e\n        \u003cstyle\u003e\n          .collection {\n            margin-top: 60px;\n          }\n          .collection .complete_collection {\n            font-size: 32px;\n            font-weight: bold;\n            text-align: center;\n          }\n          .collection .collection_tip {\n            margin-top: 10px;\n            font-size: 16px;\n            color: #3a3a3a;\n            text-align: center;\n          }\n          .collection .go_to_pack_wrap {\n            margin-top: 4px;\n            text-align: center;\n          }\n          .collection .go_to_pack {\n            font-size: 16px;\n            color: #891111;\n            cursor: pointer;\n            border-bottom-color: #891111;\n          }\n          .collection .pack_img_wrap {\n            margin-top: 30px;\n          }\n          .collection .pack_img_wrap \u003e a {\n            display: block;\n          }\n          .collection .pack_img_wrap img {\n            width: 100%;\n          }\n          @media screen and (max-width: 768px) {\n            .collection .complete_collection {\n              font-size: 30px;\n              line-height: 34px;\n            }\n          }\n        \u003c\/style\u003e\n        \u003cdiv class=\"complete_collection\"\u003eComplete The 4-medal Collection!\u003c\/div\u003e\n        \u003cdiv class=\"collection_tip\"\u003e\n          Get all the medals in the Haunted Adventures series by completing this challenge and others like it.\n        \u003c\/div\u003e\n        \u003cdiv class=\"go_to_pack_wrap\"\u003eGet the whole pack \u0026gt;\u003c\/div\u003e\n\n        \u003cdiv class=\"pack_img_wrap\"\u003e \u003cimg alt=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0268\/4479\/0865\/files\/shopify_ad_067e0e1b-d503-4cdc-9947-0fb3be616e50.jpg?v=1758882078\u0026amp;width=700\"\u003e \u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"divider\"\u003eFUN VIRTUAL EXPERIENCE\u003c\/div\u003e\n      \u003cdiv class=\"feature img_first\"\u003e\n      \u003cimg class=\"feature_img\" alt=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0268\/4479\/0865\/files\/feature_1.5.png?v=1659083416\u0026amp;width=700\"\u003e \u003c!-- to_check --\u003e\n      \u003cdiv class=\"content\"\u003e\n      \u003ch2\u003e\n      \u003ch2 class=\"title\"\u003e10 Haunted London Digital Postcards\u003c\/h2\u003e\n      \u003c\/h2\u003e\n      \u003cdiv style=\"margin-top: 10px;\" class=\"content_value content_font\"\u003eUnlock vintage postcards when you reach certain checkpoints. Each postcard contains interesting information about the location.\u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"features main_width\" style=\"margin-top: 40px\"\u003e\n        \u003cdiv class=\"feature\"\u003e\n          \u003cdiv class=\"content\"\u003e\n          \u003ch2\u003e\n            \u003ch2 class=\"title\"\u003eImmersive Haunted London Virtual Experience\u003c\/h2\u003e\n          \u003c\/h2\u003e\n            \u003cdiv class=\"content_value content_font\" style=\"margin-top: 10px\"\u003e\n              High-resolution maps, 360° panoramic views, photos and fun facts.\n              Immerse yourself in the journey and learn fun facts about local\n              landmarks, history and culture.\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n          \u003c!-- to_check --\u003e\n          \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0268\/4479\/0865\/files\/Feature_1_d4ed3849-6e0f-43ac-b828-e6f53202acad.jpg?v=1688983915\u0026amp;width=700\" alt=\"\" class=\"feature_img\"\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"feature img_first\"\u003e\n          \u003cimg src=\"https:\/\/cdn.pacer.cc\/shopify\/products\/rome\/feature_2.jpg?width=700\" alt=\"\" class=\"feature_img\"\u003e\n          \u003cdiv class=\"content\"\u003e\n            \u003ch2\u003e\n              \u003ch2 class=\"title\"\u003eWorks With What You Have\u003c\/h2\u003e\n            \u003c\/h2\u003e\n            \u003cdiv class=\"content_value content_font\" style=\"margin-top: 10px\"\u003e\n              Connect Pacer app with your favorite wearables\/apps and easily\n              sync over your workout. Not a fan of fancy stuff? Your phone works\n              just fine too!\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"feature\"\u003e\n          \u003cdiv class=\"content\"\u003e\n            \u003ch2\u003e\n              \u003ch2 class=\"title\"\u003eGlobal Challenge Leaderboards\u003c\/h2\u003e\n            \u003c\/h2\u003e\n            \u003cdiv class=\"content_value content_font\" style=\"margin-top: 10px\"\u003e\n              You don’t have to be alone during the journey! See and compare\n              your performance with other participants with global and friends\n              leaderboards.\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n          \u003cimg src=\"https:\/\/cdn.pacer.cc\/shopify\/products\/rome\/feature_3.jpg?width=700\" alt=\"\" class=\"feature_img\"\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"feature img_first\"\u003e\n          \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0268\/4479\/0865\/files\/39d56ea3ea958f6c219c52d8ea52ff10_b7e030fe-aac1-4ea0-9c3d-3587cf37680b.png?v=1758784605\u0026amp;width=700\" alt=\"\" class=\"feature_img\"\u003e\n          \u003cdiv class=\"content\"\u003e\n            \u003ch2\u003e\n              \u003ch2 class=\"title\"\u003eDigital Haunted London Badges and Perks\u003c\/h2\u003e\n            \u003c\/h2\u003e\n            \u003cdiv class=\"content_value content_font\" style=\"margin-top: 10px\"\u003e\n              Upon completion of each challenge, the participant will unlock a\n              unique badge as well as an E-certificate to print or brag about!\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"modal_image\"\u003e\n\u003cspan class=\"close\"\u003e×\u003c\/span\u003e \u003cimg\u003e\n\u003c\/div\u003e\n      \u003cscript\u003e\n        const modalImageContainerClassName = 'modal_image'\n\n        const medalImages = document.querySelectorAll('.medal_img')\n        const modalImage = document.querySelector('.modal_image')\n        const modalImageImg = document.querySelector('.modal_image img')\n        const modalImageClose = document.querySelector('.modal_image .close')\n\n        const modalImageUtils = (function () {\n          const showModalImage = (src) =\u003e {\n            if (!src) return\n            modalImageImg.src = src\n            modalImage.style.display = 'flex'\n            udpateModalImageWidth()\n          }\n\n          const udpateModalImageWidth = () =\u003e {\n            const windowWidth = window.innerWidth\n            const windowHeight = window.innerHeight\n            if (windowWidth \u003c windowHeight) {\n              modalImageImg.style.width = windowWidth + 'px'\n              modalImageImg.style.height = 'auto'\n            } else {\n              modalImageImg.style.width = 'auto'\n              modalImageImg.style.height = windowHeight + 'px'\n            }\n          }\n          const hideModalImage = () =\u003e {\n            modalImage.style.display = 'none'\n          }\n          return {\n            showModalImage,\n            udpateModalImageWidth,\n            hideModalImage,\n          }\n        })()\n\n        const modalImageListner = (function () {\n          const listenWindowResize = () =\u003e {\n            window.addEventListener('resize', () =\u003e {\n              modalImageUtils.udpateModalImageWidth()\n            })\n          }\n          const listenMedalImageClick = () =\u003e {\n            medalImages.forEach((img) =\u003e {\n              if (img.classList.contains('video_item')) return\n\n              img.addEventListener('click', () =\u003e {\n                const imgSrc = img.src || ''\n                modalImageUtils.showModalImage(imgSrc)\n              })\n            })\n          }\n          const listenModalImageCloseClick = () =\u003e {\n            modalImageClose.addEventListener('click', () =\u003e {\n              modalImageUtils.hideModalImage()\n            })\n            modalImage.addEventListener('click', (e) =\u003e {\n              if (e.target.classList.contains(modalImageContainerClassName)) {\n                modalImageUtils.hideModalImage()\n              }\n            })\n          }\n          const init = () =\u003e {\n            listenWindowResize()\n            listenMedalImageClick()\n            listenModalImageCloseClick()\n          }\n\n          return {\n            init,\n          }\n        })()\n\n        const modalImageMain = () =\u003e {\n          modalImageListner.init()\n        }\n        modalImageMain()\n      \u003c\/script\u003e\n    \u003c\/div\u003e","brand":"Pacer Challenges","offers":[{"title":"Haunted London","offer_id":54160493183294,"sku":"lol1787268514160","price":24.81,"currency_code":"USD","in_stock":true},{"title":"4-Adventure Set(save 28%)","offer_id":54160493216062,"sku":"nte1787268514161","price":85.52,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0942\/4119\/4302\/files\/haunted-cities---haunted-london_1.jpg?v=1787268519","url":"https:\/\/poshstylefashion.shop\/products\/haunted-cities-haunted-london","provider":"My Store","version":"1.0","type":"link"}