{"id":3797,"date":"2025-09-08T20:53:18","date_gmt":"2025-09-08T20:53:18","guid":{"rendered":"https:\/\/godsgalaxygame.com\/GGG\/?page_id=3797"},"modified":"2026-09-27T08:15:32","modified_gmt":"2026-09-27T08:15:32","slug":"first-you","status":"publish","type":"page","link":"https:\/\/godsgalaxygame.com\/GGG\/first-you\/","title":{"rendered":"First You"},"content":{"rendered":"\r\n<!-- =====================\r\nPOP-UP BEFORE RESERVATION (LEVEL 2)\r\n===================== -->\r\n\r\n<style>\r\n  #reservePopupOverlay {\r\n    position: fixed;\r\n    top: 0; left: 0;\r\n    width: 100%; height: 100%;\r\n    background: rgba(0,0,0,0.85);\r\n    display: none;\r\n    justify-content: center;\r\n    align-items: center;\r\n    z-index: 999999;\r\n  }\r\n\r\n  #reservePopup {\r\n    background: #111;\r\n    border: 2px solid #ffffff55;\r\n    padding: 30px 35px;\r\n    border-radius: 18px;\r\n    text-align: center;\r\n    width: 300px;\r\n    box-shadow: 0 0 25px #ffffff88;\r\n  }\r\n\r\n  #reservePopup h2 {\r\n    color: white;\r\n    font-size: 20px;\r\n    margin-bottom: 25px;\r\n  }\r\n\r\n  .reserve-btn {\r\n    padding: 10px 20px;\r\n    margin: 8px;\r\n    border-radius: 10px;\r\n    border: none;\r\n    cursor: pointer;\r\n    font-weight: bold;\r\n    font-size: 15px;\r\n  }\r\n\r\n  .yes-tours {\r\n    background: #6a00ff;\r\n    color: white;\r\n    box-shadow: 0 0 12px #6a00ff;\r\n  }\r\n\r\n  .no-continue {\r\n    background: #ff0066;\r\n    color: white;\r\n    box-shadow: 0 0 12px #ff0066;\r\n  }\r\n<\/style>\r\n\r\n<div id=\"reservePopupOverlay\">\r\n  <div id=\"reservePopup\">\r\n    <h2>Would you like to see Thematic Tours of the area?<\/h2>\r\n    <button class=\"reserve-btn yes-tours\" onclick=\"goToThematic()\">Yes<\/button>\r\n    <button class=\"reserve-btn no-continue\" onclick=\"handleReserveClick()\">No<\/button>\r\n  <\/div>\r\n<\/div>\r\n\r\n<script>\r\n  const THEMATIC_URL = \"\/GGG\/thematic-tours\/\"; \r\n  const ELEMENTS_URL = \"https:\/\/godsgalaxygame.com\/GGG\/medayork-pyramid-2\/?travelclub=1\";\r\n\r\n  function openReservePopup() {\r\n    document.getElementById(\"reservePopupOverlay\").style.display = \"flex\";\r\n  }\r\n\r\n  function goToThematic() {\r\n  if (window.gggOpenThematicGate) {\r\n    window.gggOpenThematicGate(THEMATIC_URL); \/\/ opens popup from footer\r\n  } else {\r\n    window.location.href = THEMATIC_URL; \/\/ fallback if footer missing\r\n  }\r\n}\r\n\r\n\r\n  function continueReservation() {\r\n    window.location.href = ELEMENTS_URL;\r\n  }\r\n<\/script>\r\n\r\n\r\n\r\n<!-- BLOQUE 2 - First You Cube V19 Completo + Mapa Circular + API -->\r\n<style>\r\n  @media (max-width: 768px) {\r\n    #glowMapContainer { margin-top: -55px !important; }\r\n  }\r\n<\/style>\r\n\r\n<div id=\"firstCubeContainer\" style=\"opacity:1; pointer-events:auto; transition:opacity .6s ease;\">\r\n  <!-- ESCENA CUBO -->\r\n  <div class=\"cube-scene\" style=\"width:180px; height:180px; perspective:1000px; position:fixed; bottom:20px; left:20px; z-index:1000;\">\r\n    <div class=\"cube\" id=\"firstCube\" style=\"width:100%; height:100%; position:relative; transform-style:preserve-3d; transform:rotateX(0deg) rotateY(0deg); transition:transform .3s ease;\">\r\n      <!-- FRONT -->\r\n      <div class=\"face front\" style=\"width:180px; height:180px; background:transparent; border:2px solid white; box-shadow:0 0 20px white; position:absolute; transform:rotateY(0deg) translateZ(90px); display:flex; flex-direction:column; justify-content:center; align-items:center; font-family:Orbitron;\">\r\n        <div style=\"font-size:42px; color:white; text-shadow:0 0 15px white;\">\ud83e\udef5<\/div>\r\n        <div style=\"font-size:16px; color:white; font-weight:bold; text-shadow:0 0 10px white; margin-top:6px;\">First You<\/div>\r\n      <\/div>\r\n\r\n      <!-- BACK (Transportation tools panel) -->\r\n      <div class=\"face back\" style=\"width:180px; height:180px; background:#000; border:2px solid white; box-shadow:0 0 15px white; position:absolute; transform:rotateY(180deg) translateZ(90px); font-family:Orbitron,sans-serif;\">\r\n        <!-- Sol central -->\r\n        <img decoding=\"async\" src=\"http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/06\/1000065346-scaled.jpg\"\r\n             style=\"width:70px; height:70px; border-radius:50%; position:absolute; top:50%; left:50%; transform:translate(-50%, -50%); box-shadow:0 0 20px white;\" \/>\r\n\r\n        <!-- Reserve -->\r\n        <a onclick=\"openReservePopup()\" \r\n   style=\"position:absolute; top:8px; left:8px; width:44px; height:44px; border-radius:50%; background-image:url('http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/06\/Screenshot_20240108-225452_Chrome-scaled.jpg'); background-size:cover; box-shadow:0 0 12px cyan; cursor:pointer;\"\r\n   title=\"Reserve\"><\/a>\r\n\r\n        <!-- Bliss Coin -->\r\n        <div onclick=\"openBlissCoinPopup()\"\r\n             style=\"position:absolute; top:8px; right:8px; width:44px; height:44px; border-radius:50%; background:#222; font-size:40px; display:flex; justify-content:center; align-items:center; color:white; box-shadow:0 0 10px cyan; cursor:pointer;\"\r\n             title=\"Pay with Bliss Coin\">\ud83d\udcb3<\/div>\r\n\r\n        <!-- Coupon -->\r\n        <a href=\"https:\/\/godsgalaxygame.com\/GGG\/discounts-gift\/\" target=\"_blank\"\r\n           style=\"position:absolute; bottom:8px; left:8px; width:44px; height:44px; border-radius:50%;\r\n                  background-image:url('http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/06\/Screenshot_20240108-225546_Chrome.jpg');\r\n                  background-size:cover; box-shadow:0 0 12px cyan; cursor:pointer;\"\r\n           title=\"Get Coupons\"><\/a>\r\n\r\n        <!-- Become a Host -->\r\n        <a href=\"https:\/\/luxus2.godaddysites.com\/\" target=\"_blank\"\r\n           style=\"position:absolute; bottom:8px; right:8px; width:44px; height:44px; border-radius:50%;\r\n                  background-image:url('http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/06\/Screenshot_20240108-224514_Chrome-scaled.jpg');\r\n                  background-size:cover; box-shadow:0 0 12px cyan;\"\r\n           title=\"Become a Host\"><\/a>\r\n      <\/div>\r\n\r\n      <!-- RIGHT (Spa) -->\r\n      <div class=\"face right\" style=\"width:180px; height:180px; background:#000; border:2px solid beige; box-shadow:0 0 15px beige; position:absolute; transform:rotateY(90deg) translateZ(90px); font-family:Orbitron;\">\r\n        <button onclick=\"showHostButtons &#038;&#038; showHostButtons('spa-kids')\" style=\"position:absolute; top:8px; left:27px; width:126px; height:17px; border:1px solid beige; color:white; background:transparent;\">Kids<\/button>\r\n        <button onclick=\"showHostButtons &#038;&#038; showHostButtons('spa-women')\"   style=\"position:absolute; bottom:8px; left:27px; width:126px; height:17px; border:1px solid beige; color:white; background:transparent;\">Women<\/button>\r\n        <button onclick=\"showHostButtons &#038;&#038; showHostButtons('spa-men')\" style=\"position:absolute; top:27px; left:8px; height:126px; width:17px; border:1px solid beige; color:white; writing-mode:vertical-rl; background:transparent;\">Men<\/button>\r\n        <button onclick=\"showHostButtons &#038;&#038; showHostButtons('spa-pets')\"           style=\"position:absolute; top:27px; right:8px; height:126px; width:17px; border:1px solid beige; color:white; writing-mode:vertical-lr; background:transparent;\">Pets<\/button>\r\n        <div style=\"position:absolute; top:50%; left:50%; transform:translate(-50%, -50%); text-align:center;\">\r\n          <div style=\"color:beige; font-size:16px; font-weight:bold;\">Spa<\/div>\r\n          <img decoding=\"async\" src=\"http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/06\/Screenshot_20250612_075245_Gallery.jpg\" style=\"width:65px; height:65px; border-radius:50%; box-shadow:0 0 12px beige;\">\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <!-- LEFT (Beauty) -->\r\n      <div class=\"face left\" style=\"width:180px; height:180px; background:#000; border:2px solid #00ccff; box-shadow:0 0 15px #00ccff; position:absolute; transform:rotateY(-90deg) translateZ(90px); font-family:Orbitron;\">\r\n        <button onclick=\"showHostButtons &#038;&#038; showHostButtons('beauty-kids')\"   style=\"position:absolute; top:8px; left:27px; width:126px; height:17px; border:1px solid #00ccff; color:white; background:transparent;\">Kids<\/button>\r\n        <button onclick=\"showHostButtons &#038;&#038; showHostButtons('beauty-women')\"      style=\"position:absolute; bottom:8px; left:27px; width:126px; height:17px; border:1px solid #00ccff; color:white; background:transparent;\">Women<\/button>\r\n        <button onclick=\"showHostButtons &#038;&#038; showHostButtons('beauty-men')\"    style=\"position:absolute; top:27px; left:8px; height:126px; width:17px; border:1px solid #00ccff; color:white; writing-mode:vertical-rl; background:transparent;\">Men<\/button>\r\n        <button onclick=\"showHostButtons &#038;&#038; showHostButtons('beauty-pets')\"              style=\"position:absolute; top:27px; right:8px; height:126px; width:17px; border:1px solid #00ccff; color:white; writing-mode:vertical-lr; background:transparent;\">Pets<\/button>\r\n        <div style=\"position:absolute; top:50%; left:50%; transform:translate(-50%, -50%); text-align:center;\">\r\n          <div style=\"color:#00ccff; font-size:16px; font-weight:bold;\">Beauty<\/div>\r\n          <img decoding=\"async\" src=\"http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/06\/Screenshot_20250612_075344_Gallery.jpg\" style=\"width:65px; height:65px; border-radius:50%; box-shadow:0 0 12px #00ccff;\">\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <!-- TOP (Dinner) -->\r\n      <div class=\"face top\" style=\"width:180px; height:180px; background:#000; border:2px solid green; box-shadow:0 0 15px #33ff33; position:absolute; transform:rotateX(90deg) translateZ(90px); font-family:Orbitron;\">\r\n        <button onclick=\"showHostButtons &#038;&#038; showHostButtons('dinner-kids')\"    style=\"position:absolute; top:8px; left:27px; width:126px; height:17px; border:1px solid green; color:white; background:transparent;\">Kids<\/button>\r\n        <button onclick=\"showHostButtons &#038;&#038; showHostButtons('dinner-women')\"       style=\"position:absolute; bottom:8px; left:27px; width:126px; height:17px; border:1px solid green; color:white; background:transparent;\">Women<\/button>\r\n        <button onclick=\"showHostButtons &#038;&#038; showHostButtons('dinner-men')\"     style=\"position:absolute; top:27px; left:8px; height:126px; width:17px; border:1px solid green; color:white; writing-mode:vertical-rl; background:transparent;\">Men<\/button>\r\n        <button onclick=\"showHostButtons &#038;&#038; showHostButtons('dinner-pets')\"               style=\"position:absolute; top:27px; right:8px; height:126px; width:17px; border:1px solid green; color:white; writing-mode:vertical-lr; background:transparent;\">Pets<\/button>\r\n        <div style=\"position:absolute; top:50%; left:50%; transform:translate(-50%, -50%); text-align:center;\">\r\n          <div style=\"color:#33ff33; font-size:16px; font-weight:bold;\">Dinner<\/div>\r\n          <img decoding=\"async\" src=\"http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/06\/Screenshot_20250612_075305_Gallery.jpg\" style=\"width:65px; height:65px; border-radius:50%; box-shadow:0 0 12px #33ff33;\">\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <!-- BOTTOM (Events) -->\r\n      <div class=\"face bottom\" style=\"width:180px; height:180px; background:#000; border:2px solid red; box-shadow:0 0 15px red; position:absolute; transform:rotateX(-90deg) translateZ(90px); font-family:Orbitron;\">\r\n        <button onclick=\"showHostButtons &#038;&#038; showHostButtons('events-kids')\"  style=\"position:absolute; top:8px; left:27px; width:126px; height:17px; border:1px solid red; color:white; background:transparent;\">Kids<\/button>\r\n        <button onclick=\"showHostButtons &#038;&#038; showHostButtons('events-women')\"     style=\"position:absolute; bottom:8px; left:27px; width:126px; height:17px; border:1px solid red; color:white; background:transparent;\">Women<\/button>\r\n        <button onclick=\"showHostButtons &#038;&#038; showHostButtons('events-men')\"   style=\"position:absolute; top:27px; left:8px; height:126px; width:17px; border:1px solid red; color:white; writing-mode:vertical-rl; background:transparent;\">Men<\/button>\r\n        <button onclick=\"showHostButtons &#038;&#038; showHostButtons('events-pets')\"             style=\"position:absolute; top:27px; right:8px; height:126px; width:17px; border:1px solid red; color:white; writing-mode:vertical-lr; background:transparent;\">Pets<\/button>\r\n        <div style=\"position:absolute; top:50%; left:50%; transform:translate(-50%, -50%); text-align:center;\">\r\n          <div style=\"color:red; font-size:16px; font-weight:bold;\">Events<\/div>\r\n          <img decoding=\"async\" src=\"http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/06\/Screenshot_20250612_075325_Gallery.jpg\" style=\"width:65px; height:65px; border-radius:50%; box-shadow:0 0 12px red;\">\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <!-- MAPA CIRCULAR -->\r\n  <div id=\"glowMapContainer\" style=\"opacity:1; pointer-events:auto; transition:opacity .6s ease; margin:0 auto; margin-top:-95px; margin-bottom:40px; width:320px; height:320px; border-radius:50%; overflow:hidden; border:6px solid rgba(0,255,255,.6); box-shadow:0 0 25px cyan; position:relative; z-index:900;\">\r\n    <div id=\"googleMap\" style=\"width:100%; height:100%;\"><\/div>\r\n  <\/div>\r\n<\/div>\r\n\r\n<!-- Google Maps API -->\r\n<script src=\"https:\/\/maps.googleapis.com\/maps\/api\/js?key=AIzaSyDLPhx98z9AgoqXS6VeoESE9NV6URuOhiE&#038;callback=initMap\" async defer><\/script>\r\n\r\n<script>\r\n  \/* Compatibility: either call activatefirstCube() or activatefirstCube(), both target this block *\/\r\n  function activatefirstCube(){\r\n    const rrGrid = document.getElementById('rrGrid'); if (rrGrid) rrGrid.style.display = 'none';\r\n    const container = document.getElementById('firstCubeContainer'); if (container){ container.style.opacity='1'; container.style.pointerEvents='auto'; }\r\n    const map = document.getElementById('glowMapContainer'); if (map){ map.style.opacity='1'; map.style.pointerEvents='auto'; }\r\n    if (typeof initMap === 'function') initMap();\r\n  }\r\n  function activatefirstCube(){ activatefirstCube(); } \/* fallback name used elsewhere *\/\r\n\r\n  function initMap() {\r\n    const map = new google.maps.Map(document.getElementById('googleMap'), {\r\n      center: { lat: 6.2414088, lng: -75.22951 },  \/\/ Bliss Glamping\r\n      zoom: 15, disableDefaultUI: true, gestureHandling: \"greedy\"\r\n    });\r\n    new google.maps.Marker({ position: { lat: 6.2414088, lng: -75.22951 }, map, title: \"Bliss Glamping\" });\r\n    window.ggMap = map;\r\n  }\r\n<\/script>\r\n\r\n<!-- POP-UP para Bliss Coin -->\r\n<div id=\"blissCoinPopup\" style=\"display:none; position:fixed; top:0; left:0; width:100%; height:100%; background:rgba(0,0,0,0.9); z-index:9999; justify-content:center; align-items:center; font-family:Orbitron;\">\r\n  <div style=\"background:#111; padding:30px 20px; border:2px solid cyan; border-radius:20px; color:white; width:300px; text-align:center; box-shadow:0 0 20px cyan;\">\r\n    <h3 style=\"font-size:18px;\">\ud83d\udcb3 Pay with Bliss Coin<\/h3>\r\n    <p style=\"font-size:14px;\">Enter your digital wallet #:<\/p>\r\n    <input type=\"text\" placeholder=\"Your Wallet #\" style=\"width:90%; padding:8px; border-radius:10px; border:1px solid white; background:#000; color:white; margin-top:8px;\" \/>\r\n    <p style=\"margin-top:14px;\">Send payment to:<\/p>\r\n    <div style=\"margin:8px auto; padding:6px; background:#222; border:1px solid cyan; border-radius:8px;\">\r\n      <code style=\"font-size:13px;\">HOST-WALLET-ADDRESS-123<\/code>\r\n    <\/div>\r\n    <button onclick=\"closeBlissCoinPopup()\" style=\"margin-top:12px; padding:6px 16px; border-radius:10px; background:cyan; border:none; color:#000; font-weight:bold; cursor:pointer;\">\r\n      Close\r\n    <\/button>\r\n  <\/div>\r\n<\/div>\r\n\r\n<script>\r\n  function openBlissCoinPopup() { document.getElementById('blissCoinPopup').style.display = 'flex'; }\r\n  function closeBlissCoinPopup() { document.getElementById('blissCoinPopup').style.display = 'none'; }\r\n\r\n  \/* Optional safety: stub showHostButtons if not defined elsewhere *\/\r\n  if (typeof window.showHostButtons !== 'function') {\r\n    window.showHostButtons = function(id){ console.log('showHostButtons:', id); };\r\n  }\r\n<\/script>\r\n\r\n\r\n\r\n<!-- =========================================\r\nFIRST YOU \u2014 PREVIEW ON MAP (ONE-BLOCK VERSION)\r\n- Click any .host-circle (Kids \/ Women \/ Men \/ Pets)\r\n- Shows \"See Preview\" button\r\n- Clicking the button opens a circular media preview (image or video) centered on the map\r\n- Edit media in PREVIEW_MEDIA below\r\n========================================= -->\r\n<script>\r\n(() => {\r\n  \/* ============ 1) EDIT YOUR MEDIA HERE ============ *\/\r\n  const PREVIEW_MEDIA = {\r\n    \/\/ SPA (beige)\r\n    \"spa-kids\":  { type:\"image\", src:\"http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/06\/Screenshot_20250609_201035_One-UI-Home.jpg\" },\r\n    \"spa-women\": { type:\"image\", src:\"http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/06\/Screenshot_20240821_173212_Instagram.jpg\" },\r\n    \"spa-men\":   { type:\"image\", src:\"http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/06\/Screenshot_20240823_233326_Chrome.jpg\" },\r\n    \"spa-pets\":  { type:\"image\", src:\"http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/06\/Screenshot_20240824_022520_PowerPoint.jpg\" },\r\n\r\n    \/\/ BEAUTY (cyan)\r\n    \"beauty-kids\":  { type:\"image\", src:\"http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/06\/Screenshot_20250609_201035_One-UI-Home.jpg\" },\r\n    \"beauty-women\": { type:\"image\", src:\"http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/06\/Screenshot_20240821_175227_Instagram.jpg\" },\r\n    \"beauty-men\":   { type:\"image\", src:\"http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/06\/Screenshot_20240823_214134_Google.jpg\" },\r\n    \"beauty-pets\":  { type:\"image\", src:\"http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/06\/Screenshot_20240824_035333_PowerPoint.jpg\" },\r\n\r\n    \/\/ DINNER (green)\r\n    \"dinner-kids\":  { type:\"image\", src:\"http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/06\/Screenshot_20250609_201035_One-UI-Home.jpg\" },\r\n    \"dinner-women\": { type:\"video\", src:\"https:\/\/youtu.be\/dQw4w9WgXcQ\" }, \/* example video: replace *\/\r\n    \"dinner-men\":   { type:\"image\", src:\"http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/06\/Screenshot_20240823_214134_Google.jpg\" },\r\n    \"dinner-pets\":  { type:\"image\", src:\"http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/06\/Screenshot_20240824_022932_PowerPoint.jpg\" },\r\n\r\n    \/\/ EVENTS (red)\r\n    \"events-kids\":  { type:\"image\", src:\"http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/06\/Screenshot_20250609_201035_One-UI-Home.jpg\" },\r\n    \"events-women\": { type:\"video\", src:\"https:\/\/www.instagram.com\/reel\/Cu5CJ2TscIt\/\" }, \/* non-embeddable \u2192 opens link *\/\r\n    \"events-men\":   { type:\"video\", src:\"https:\/\/www.instagram.com\/reel\/Cu5CJ2TscIt\/\" },\r\n    \"events-pets\":  { type:\"image\", src:\"http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/06\/Screenshot_20240824_022520_PowerPoint.jpg\" }\r\n  };\r\n\r\n  \/* ============ 2) INTERNALS (no edits needed) ============ *\/\r\n  let state = { key:null, type:null, src:null, title:null };\r\n\r\n  const until = (fn, timeout=8000, every=120) => new Promise((res, rej) => {\r\n    const t0 = performance.now();\r\n    const tick = () => {\r\n      const out = fn();\r\n      if (out) return res(out);\r\n      if (performance.now() - t0 > timeout) return rej(new Error('timeout'));\r\n      setTimeout(tick, every);\r\n    };\r\n    tick();\r\n  });\r\n\r\n  const getBgURL = (el) => {\r\n    const bg = (getComputedStyle(el).backgroundImage || '').trim();\r\n    return bg.replace(\/^url\\((['\"]?)(.*)\\1\\)$\/,'$2');\r\n  };\r\n\r\n  const make = (tag, attrs={}, html='') => {\r\n    const el = document.createElement(tag);\r\n    Object.entries(attrs).forEach(([k,v]) => el.setAttribute(k, v));\r\n    if (html) el.innerHTML = html;\r\n    return el;\r\n  };\r\n\r\n  const embedFrom = (url) => {\r\n    const yt = url.match(\/(?:youtu\\.be\\\/|youtube\\.com\\\/watch\\?v=)([\\w\\-]+)\/i);\r\n    const vm = url.match(\/vimeo\\.com\\\/(\\d+)\/i);\r\n    if (yt) return `<iframe src=\"https:\/\/www.youtube.com\/embed\/${yt[1]}?rel=0&#038;playsinline=1\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" allowfullscreen><\/iframe>`;\r\n    if (vm) return `<iframe src=\"https:\/\/player.vimeo.com\/video\/${vm[1]}\" allow=\"autoplay; fullscreen; picture-in-picture; clipboard-write\" allowfullscreen><\/iframe>`;\r\n    \/\/ Unknown\/blocked: just a link\r\n    return `<a href=\"${url}\" target=\"_blank\" style=\"color:#00ffff; font-weight:900; text-decoration:underline;\">Open video<\/a>`;\r\n  };\r\n\r\n  function injectStyles(){\r\n    if (document.getElementById('fy-preview-styles')) return;\r\n    const css = `\r\n#glowMapContainer{ position:relative; }\r\n#fySeePreview{ position:absolute; left:50%; bottom:10px; transform:translateX(-50%); padding:8px 14px;\r\n  border-radius:999px; border:2px solid rgba(0,255,255,.7); background:rgba(0,0,0,.65); color:#eafcff;\r\n  font-family:Orbitron,system-ui,sans-serif; font-weight:900; letter-spacing:.2px; box-shadow:0 0 16px rgba(0,255,255,.45);\r\n  cursor:pointer; z-index:1200; display:none; }\r\n#fySeePreview:hover{ box-shadow:0 0 22px rgba(0,255,255,.85); }\r\n#fyPreviewOverlay{ position:absolute; inset:0; display:none; place-items:center;\r\n  background: radial-gradient(ellipse at 50% 50%, rgba(0,0,0,.30), rgba(0,0,0,.65) 70%);\r\n  z-index:1300; }\r\n.fy-preview-circle{ width: clamp(200px, 62%, 300px); aspect-ratio:1\/1; border-radius:50%; border:4px solid rgba(0,255,255,.75);\r\n  box-shadow: 0 0 28px rgba(0,255,255,.6), inset 0 0 22px rgba(0,255,255,.25); background:#000; overflow:hidden; position:relative;\r\n  display:grid; place-items:center; }\r\n.fy-closeX{ position:absolute; top:6px; right:8px; z-index:2; border:0; background:rgba(0,0,0,.55); color:#9fefff;\r\n  font-size:20px; font-weight:900; width:28px; height:28px; border-radius:50%; cursor:pointer; line-height:26px; box-shadow:0 0 10px rgba(0,255,255,.35); }\r\n#fyPreviewMedia{ width:92%; height:92%; display:grid; place-items:center; }\r\n#fyPreviewMedia img{ width:100%; height:100%; object-fit:cover; border-radius:50%; display:block; }\r\n#fyPreviewMedia iframe{ width:100%; height:100%; border:0; border-radius:50%; }`;\r\n    const style = make('style', { id:'fy-preview-styles' }, css);\r\n    document.head.appendChild(style);\r\n  }\r\n\r\n  function mountUI(mapWrap){\r\n    if (document.getElementById('fySeePreview')) return;\r\n    const btn = make('button', { id:'fySeePreview', 'aria-haspopup':'dialog' }, '\ud83d\udc41\ufe0f See Preview');\r\n    const overlay = make('div', { id:'fyPreviewOverlay', 'aria-hidden':'true' });\r\n    overlay.innerHTML = `\r\n      <div class=\"fy-preview-circle\" role=\"dialog\" aria-label=\"Map preview\">\r\n        <button class=\"fy-closeX\" aria-label=\"Close preview\">\u00d7<\/button>\r\n        <div id=\"fyPreviewMedia\"><\/div>\r\n      <\/div>`;\r\n    mapWrap.appendChild(btn);\r\n    mapWrap.appendChild(overlay);\r\n\r\n    \/\/ Wiring\r\n    const media = document.getElementById('fyPreviewMedia');\r\n    const closeBtn = overlay.querySelector('.fy-closeX');\r\n\r\n    btn.addEventListener('click', () => {\r\n      media.innerHTML = state.type === 'video'\r\n        ? embedFrom(state.src)\r\n        : `<img decoding=\"async\" src=\"${state.src}\" alt=\"${state.title || 'Preview'}\">`;\r\n      overlay.style.display = 'grid';\r\n      overlay.setAttribute('aria-hidden','false');\r\n    });\r\n\r\n    const close = () => {\r\n      overlay.style.display = 'none';\r\n      overlay.setAttribute('aria-hidden','true');\r\n      media.innerHTML = '';\r\n    };\r\n    closeBtn.addEventListener('click', close);\r\n    overlay.addEventListener('click', (e)=>{ if(e.target === overlay) close(); });\r\n    window.addEventListener('keydown', (e)=>{ if(e.key==='Escape') close(); }, { passive:true });\r\n\r\n    return { btn, overlay, media };\r\n  }\r\n\r\n  function hookCircles(btnRef){\r\n    const wrap = document.getElementById('firstHostButtons');\r\n    if (!wrap) return;\r\n\r\n    wrap.addEventListener('click', (e) => {\r\n      const el = e.target.closest('.host-circle');\r\n      if (!el) return;\r\n\r\n\/\/ Detect key like \"spa-kids\", \"beauty-women\", etc.\r\nconst classList = [...el.classList];\r\nconst key = classList.find(c => PREVIEW_MEDIA[c]) || classList.find(c => \/-(kids|women|men|pets)$\/.test(c)) || null;\r\n\r\nconst title = el.getAttribute('title') || '';\r\nconst fallbackImg = getBgURL(el);\r\n\r\n\/\/ ALWAYS use the circle's background image for the preview\r\nstate = {\r\n  key,\r\n  type: 'image',\r\n  src: fallbackImg,\r\n  title\r\n      };\r\n\r\n      \/\/ Show CTA\r\n      if (btnRef) btnRef.style.display = 'block';\r\n\r\n      \/\/ Also recentre the map if your other code didn\u2019t run\r\n      const lat = parseFloat(el.dataset.lat);\r\n      const lng = parseFloat(el.dataset.lng);\r\n      if (Number.isFinite(lat) && Number.isFinite(lng)) {\r\n        if (typeof window.focusOnHost === 'function') {\r\n          window.focusOnHost(lat, lng);\r\n        } else if (window.ggMap && window.google) {\r\n          const pos = new google.maps.LatLng(lat, lng);\r\n          ggMap.setCenter(pos);\r\n          ggMap.setZoom(15);\r\n          new google.maps.Marker({ position: pos, map: ggMap });\r\n        }\r\n      }\r\n    }, { passive:true });\r\n  }\r\n\r\n  async function boot(){\r\n    try{\r\n      injectStyles();\r\n\r\n      \/\/ Wait until the map container exists\r\n      const mapWrap = await until(() => document.getElementById('glowMapContainer'));\r\n      const refs = mountUI(mapWrap);\r\n      \/\/ Wait until the host circles container exists\r\n      await until(() => document.getElementById('firstHostButtons'));\r\n      hookCircles(refs?.btn);\r\n      \/\/ If the page re-renders, re-mount\r\n      new MutationObserver(() => {\r\n        if (!document.getElementById('fySeePreview') && document.getElementById('glowMapContainer')) {\r\n          const nrefs = mountUI(document.getElementById('glowMapContainer'));\r\n          hookCircles(nrefs?.btn);\r\n        }\r\n      }).observe(document.body, { childList:true, subtree:true });\r\n\r\n      console.log('%c[FirstYou Preview] Ready','color:#0ff');\r\n    }catch(e){\r\n      console.warn('[FirstYou Preview] init failed:', e);\r\n    }\r\n  }\r\n\r\n  if (document.readyState === 'loading') {\r\n    document.addEventListener('DOMContentLoaded', boot);\r\n  } else {\r\n    boot();\r\n  }\r\n})();\r\n<\/script>\r\n\r\n\r\n\r\n<!-- ESTILOS -->\r\n<style>\r\n  #floatingButtons {\r\n    position: fixed;\r\n    top: 14px;\r\n    right: 14px;\r\n    display: flex;\r\n    flex-direction: row;\r\n    gap: 10px;\r\n    z-index: 3000;\r\n  }\r\n\r\n  #favoritesBtn, #signinBtn {\r\n    font-size: 15px;\r\n    padding: 6px 10px;\r\n    border-radius: 8px;\r\n    border: 2px solid white;\r\n    color: white;\r\n    background: rgba(0, 0, 0, 0.6);\r\n    cursor: pointer;\r\n    box-shadow: 0 0 8px cyan;\r\n    font-family: Orbitron;\r\n  }\r\n\r\n  #favoritesBtn:hover::after {\r\n    content: ' Double click a Host to add \ud83d\udc98';\r\n    font-size: 10px;\r\n    margin-left: 8px;\r\n    color: cyan;\r\n  }\r\n\r\n  #signinBtn:hover::after {\r\n    content: ' Sign in to save your Favorites';\r\n    font-size: 10px;\r\n    margin-left: 8px;\r\n    color: cyan;\r\n  }\r\n#pyramidBtn {\r\n    width: 38px;\r\n    height: 38px;\r\n    background-color: black;\r\n    border: 2px solid white;\r\n    border-radius: 50%;\r\n    box-shadow: 0 0 10px cyan; \/* glow *\/\r\n    display: flex;\r\n    justify-content: center;\r\n    align-items: center;\r\n    font-size: 20px; \/* emoji size *\/\r\n    cursor: pointer;\r\n    margin-top: 2px; \/* align with rose *\/\r\n  }\r\n\r\n  #pyramidBtn:hover {\r\n    transform: scale(1.2);\r\n  }\r\n\r\n  #swipeImage {\r\n    position: fixed;\r\n    top: 0;\r\n    left: 50%;\r\n    transform: translateX(-50%);\r\n    width: 160px;\r\n    z-index: 1200;\r\n    display: none;\r\n  }\r\n#swipeImage {\r\n  display: none !important;\r\n}\r\n\r\n<\/style>\r\n\r\n<!-- BOTONES FLOTANTES -->\r\n<div id=\"floatingButtons\">\r\n<button\r\n    id=\"pyramidBtn\"\r\n    title=\"Back to MedaYork Pyramid\"\r\n    onclick=\"window.location.href='https:\/\/godsgalaxygame.com\/GGG\/medayork-pyramid-2\/';\">\r\n    \ud83e\uddca\r\n  <\/button>\r\n  <button id=\"favoritesBtn\">\ud83d\udc96<\/button>\r\n  <button id=\"signinBtn\">Sign In \/ Sign Up<\/button>\r\n<\/div>\r\n\r\n<!-- IMAGEN DE SWIPE -->\r\n<img decoding=\"async\" id=\"swipeImage\" src=\"https:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/06\/Screenshot_20250627_154147_Gallery.jpg\" alt=\"Swipe\" \/>\r\n\r\n<!-- SCRIPT DE FUNCIONALIDAD -->\r\n<script>\r\n  \/\/ Movimiento del cubo First You\r\n  let isDragging = false, startX, startY, rotateX = 0, rotateY = 0;\r\n  const cube = document.getElementById('firstCube');\r\n\r\n  function updateRotation(x, y) {\r\n    cube.style.transform = `rotateX(${x}deg) rotateY(${y}deg)`;\r\n  }\r\n\r\n  function onMouseDown(e) {\r\n    isDragging = true;\r\n    startX = e.clientX;\r\n    startY = e.clientY;\r\n  }\r\n\r\n  function onMouseMove(e) {\r\n    if (!isDragging) return;\r\n    const deltaX = e.clientX - startX;\r\n    const deltaY = e.clientY - startY;\r\n    rotateY += deltaX * 0.5;\r\n    rotateX -= deltaY * 0.5;\r\n    updateRotation(rotateX, rotateY);\r\n    startX = e.clientX;\r\n    startY = e.clientY;\r\n  }\r\n\r\n  function onMouseUp() {\r\n    isDragging = false;\r\n  }\r\n\r\n  function onTouchStart(e) {\r\n    isDragging = true;\r\n    startX = e.touches[0].clientX;\r\n    startY = e.touches[0].clientY;\r\n  }\r\n\r\n  function onTouchMove(e) {\r\n    if (!isDragging) return;\r\n    const deltaX = e.touches[0].clientX - startX;\r\n    const deltaY = e.touches[0].clientY - startY;\r\n    rotateY += deltaX * 0.5;\r\n    rotateX -= deltaY * 0.5;\r\n    updateRotation(rotateX, rotateY);\r\n    startX = e.touches[0].clientX;\r\n    startY = e.touches[0].clientY;\r\n  }\r\n\r\n  function onTouchEnd() {\r\n    isDragging = false;\r\n  }\r\n\r\n  const cubeContainer = document.querySelector('.cube-scene');\r\n  if (cubeContainer) {\r\n    cubeContainer.addEventListener('mousedown', onMouseDown);\r\n    window.addEventListener('mousemove', onMouseMove);\r\n    window.addEventListener('mouseup', onMouseUp);\r\n    cubeContainer.addEventListener('touchstart', onTouchStart);\r\n    window.addEventListener('touchmove', onTouchMove);\r\n    window.addEventListener('touchend', onTouchEnd);\r\n  }\r\n\r\n  \/\/ Mostrar swipe cuando aparece el cubo\r\n  const observer = new MutationObserver(() => {\r\n    const first = document.getElementById('firstCubeContainer');\r\n    if (first && first.style.opacity === \"1\") {\r\n      const swipe = document.getElementById('swipeImage');\r\n      swipe.style.display = 'block';\r\n      setTimeout(() => {\r\n        swipe.style.display = 'none';\r\n      }, 3500);\r\n      observer.disconnect();\r\n    }\r\n  });\r\n  observer.observe(document.body, { childList: true, subtree: true });\r\n\r\n  \/\/ Sistema de favoritos \ud83d\udc96 \u2192 \ud83d\udc98\r\n  const favorites = [];\r\n\r\n  function toggleFavorite(id, imgUrl, mapLat, mapLng) {\r\n    if (!favorites.some(f => f.id === id)) {\r\n      favorites.push({ id, imgUrl, lat: mapLat, lng: mapLng });\r\n      document.getElementById(\"favoritesBtn\").textContent = \"\ud83d\udc98\";\r\n      console.log(\"Favorito agregado:\", id);\r\n    }\r\n  }\r\n\r\n  function clearFavorites() {\r\n    favorites.length = 0;\r\n    document.getElementById(\"favoritesBtn\").textContent = \"\ud83d\udc96\";\r\n  }\r\n\r\nfunction handleReserveClick() {\r\n  \/\/ Use favorites if they exist, otherwise empty array\r\n  const selected = Array.isArray(favorites) ? favorites : [];\r\n\r\n  \/\/ If there ARE favorites \u2192 send email\r\n  if (selected.length > 0) {\r\n    const lines = selected.map((f, i) =>\r\n      `${i + 1}. ${f.id} (${f.lat}, ${f.lng})`\r\n    );\r\n\r\n    const subject = encodeURIComponent(\"GGG \u2013 Selected Hosts\");\r\n    const body = encodeURIComponent(\r\n      \"User selected the following hosts:\\n\\n\" +\r\n      lines.join(\"\\n\")\r\n    );\r\n\r\n    \/\/ Send email\r\n    window.location.href =\r\n      `mailto:edwardraigozallc@gmail.com?subject=${subject}&body=${body}`;\r\n  }\r\n\r\n  \/\/ ALWAYS go to Travel Club (favorites or not)\r\n  setTimeout(() => {\r\n    window.location.href =\r\n      \"https:\/\/godsgalaxygame.com\/GGG\/medayork-pyramid-2\/?travelclub=1\";\r\n  }, 600);\r\n}\r\n\r\n\r\n\r\n  function focusOnHost(lat, lng) {\r\n    if (window.ggMap) {\r\n      window.ggMap.setCenter({ lat, lng });\r\n      window.ggMap.setZoom(15);\r\n      new google.maps.Marker({ position: { lat, lng }, map: window.ggMap });\r\n    }\r\n  }\r\n\r\n  document.getElementById(\"favoritesBtn\").addEventListener(\"click\", () => {\r\n    if (favorites.length === 0) return;\r\n    document.querySelectorAll('.host-circle').forEach(btn => btn.style.display = 'none');\r\n    favorites.forEach(fav => {\r\n      const existing = document.querySelector(`.${fav.id}`);\r\n      if (existing) existing.style.display = 'inline-block';\r\n    });\r\n  });\r\n<\/script>\r\n\r\n\r\n\r\n<!-- HOST CIRCLES \u2014 CSS (First \/ First You) -->\r\n<style>\r\n  \/* container (over the map) *\/\r\n  #firstHostButtons{\r\n    display:none;                 \/* hidden until a sub-option is clicked *\/\r\n    position:absolute;\r\n    top:50%; left:50%;\r\n    transform:translate(-50%,-50%);\r\n    width:100%; max-width:500px; height:500px;\r\n    pointer-events:none;          \/* turned ON in JS when shown *\/\r\n    z-index:3000;\r\n  }\r\n\r\n  \/* circles *\/\r\n  #firstHostButtons .host-circle{\r\n    width:80px; height:80px; border-radius:50%;\r\n    border:2px solid #fff; box-shadow:0 0 14px #fff;\r\n    background-size:cover; background-position:center;\r\n    position:absolute; pointer-events:auto; cursor:pointer;\r\n    transition:transform .3s, box-shadow .3s;\r\n  }\r\n  #firstHostButtons .host-circle:hover{ transform:scale(1.15); box-shadow:0 0 20px cyan; }\r\n\r\n  \/* desktop placement (around the circular map) *\/\r\n  #firstHostButtons .kids   { top:0%;    left:10%; }\r\n  #firstHostButtons .women  { top:71%;   right:10%; }\r\n  #firstHostButtons .men    { bottom:12%; left:10%; }\r\n  #firstHostButtons .pets   { bottom:84%; right:10%; }\r\n\r\n  \/* phone: make a single row under the map *\/\r\n  @media (max-width:768px){\r\n    #firstHostButtons{\r\n      position:relative; top:auto; left:auto; transform:none;\r\n      height:auto; margin-top:-35px;\r\n      display:none;               \/* still hidden by default *\/\r\n      flex-wrap:nowrap; justify-content:center; gap:10px;\r\n    }\r\n    #firstHostButtons .host-circle{ position:relative; width:75px; height:75px; margin:0 6px; }\r\n  }\r\n<\/style>\r\n\r\n<!-- HOST CIRCLES \u2014 HTML (First: Spa \/ Beauty \/ Dinner \/ Events) -->\r\n<div id=\"firstHostButtons\">\r\n  <!-- SPA (beige) -->\r\n  <button class=\"host-circle spa-kids kids\"\r\n    data-lat=\"6.241568778606768\" data-lng=\"-75.22695655776336\"\r\n    style=\"border-color:beige; box-shadow:0 0 14px beige; background-image:url('http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/12\/Screenshot_20240731_124531_Instagram.jpg');\"\r\n    title=\"Spa \u2022 Kids\"><\/button>\r\n\r\n  <button class=\"host-circle spa-women women\"\r\n    data-lat=\"6.241568778606768\" data-lng=\"-75.22695655776336\"\r\n    style=\"border-color:beige; box-shadow:0 0 14px beige; background-image:url('http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/12\/Screenshot_20240824_084215_Instagram.jpg');\"\r\n    title=\"Spa \u2022 Women\"><\/button>\r\n\r\n  <button class=\"host-circle spa-men men\"\r\n    data-lat=\"6.244462832205367\" data-lng=\"-75.21507856307613\"\r\n    style=\"border-color:beige; box-shadow:0 0 14px beige; background-image:url('http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/12\/Screenshot_20240827_070648_Maps.jpg');\"\r\n    title=\"Spa \u2022 Men\"><\/button>\r\n\r\n  <button class=\"host-circle spa-pets pets\"\r\n    data-lat=\"6.13799\" data-lng=\"-75.26699\"\r\n    style=\"border-color:beige; box-shadow:0 0 14px beige; background-image:url('http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/12\/Screenshot_20240827_115337_Maps.jpg');\"\r\n    title=\"Spa \u2022 Pets\"><\/button>\r\n\r\n  <!-- BEAUTY (cyan) -->\r\n  <button class=\"host-circle beauty-kids kids\"\r\n    data-lat=\"6.241568778606768\" data-lng=\"-75.22695655776336\"\r\n    style=\"border-color:#00ccff; box-shadow:0 0 14px #00ccff; background-image:url('http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/12\/Screenshot_20240731_124531_Instagram.jpg');\"\r\n    title=\"Beauty \u2022 Kids\"><\/button>\r\n\r\n  <button class=\"host-circle beauty-women women\"\r\n    data-lat=\"6.241568778606768\" data-lng=\"-75.22695655776336\"\r\n    style=\"border-color:#00ccff; box-shadow:0 0 14px #00ccff; background-image:url('http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/12\/Screenshot_20240827_070750_Maps.jpg');\"\r\n    title=\"Beauty \u2022 Women\"><\/button>\r\n\r\n  <button class=\"host-circle beauty-men men\"\r\n    data-lat=\"6.23397\" data-lng=\"-75.15935\"\r\n    style=\"border-color:#00ccff; box-shadow:0 0 14px #00ccff; background-image:url('http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/12\/Screenshot_20240827_115210_Instagram.jpg');\"\r\n    title=\"Beauty \u2022 Men\"><\/button>\r\n\r\n  <button class=\"host-circle beauty-pets pets\"\r\n    data-lat=\"6.13799\" data-lng=\"-75.26699\"\r\n    style=\"border-color:#00ccff; box-shadow:0 0 14px #00ccff; background-image:url('http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/12\/Screenshot_20240827_115337_Maps.jpg');\"\r\n    title=\"Beauty \u2022 Pets\"><\/button>\r\n\r\n  <!-- DINNER (green) -->\r\n  <button class=\"host-circle dinner-kids kids\"\r\n    data-lat=\"6.20489\" data-lng=\"-75.20140\"\r\n    style=\"border-color:green; box-shadow:0 0 14px green; background-image:url('http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/12\/Screenshot_20240827_121751_Maps.jpg');\"\r\n    title=\"Dinner \u2022 Kids\"><\/button>\r\n\r\n  <button class=\"host-circle dinner-women women\"\r\n    data-lat=\"6.24153\" data-lng=\"-75.18858\"\r\n    style=\"border-color:green; box-shadow:0 0 14px green; background-image:url('http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/12\/Screenshot_20240825_073049_Google.jpg');\"\r\n    title=\"Dinner \u2022 Women\"><\/button>\r\n\r\n  <button class=\"host-circle dinner-men men\"\r\n    data-lat=\"6.22520\" data-lng=\"-75.17747\"\r\n    style=\"border-color:green; box-shadow:0 0 14px green; background-image:url('http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/12\/Screenshot_20240823_214533_Chrome.jpg');\"\r\n    title=\"Dinner \u2022 Men\"><\/button>\r\n\r\n  <button class=\"host-circle dinner-pets pets\"\r\n    data-lat=\"6.13799\" data-lng=\"-75.26699\"\r\n    style=\"border-color:green; box-shadow:0 0 14px green; background-image:url('http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/12\/Screenshot_20240827_115337_Maps.jpg');\"\r\n    title=\"Dinner \u2022 Pets\"><\/button>\r\n\r\n  <!-- EVENTS (red) -->\r\n  <button class=\"host-circle events-kids kids\"\r\n    data-lat=\"6.22900\" data-lng=\"-75.17912\"\r\n    style=\"border-color:red; box-shadow:0 0 14px red; background-image:url('http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/12\/Screenshot_20240827_125632_Chrome.jpg');\"\r\n    title=\"Events \u2022 Kids\"><\/button>\r\n\r\n  <button class=\"host-circle events-women women\"\r\n    data-lat=\"6.2288021\" data-lng=\"-75.2142911\"\r\n    style=\"border-color:red; box-shadow:0 0 14px red; background-image:url('http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/12\/Screenshot_20240827_121923_YouTube.jpg');\"\r\n    title=\"Events \u2022 Women\"><\/button>\r\n\r\n  <button class=\"host-circle events-men men\"\r\n    data-lat=\"6.244462832205367\" data-lng=\"-75.21507856307613\"\r\n    style=\"border-color:red; box-shadow:0 0 14px red; background-image:url('http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/12\/Screenshot_20240827_132528_Chrome.jpg');\"\r\n    title=\"Events \u2022 Men\"><\/button>\r\n\r\n  <button class=\"host-circle events-pets pets\"\r\n    data-lat=\"6.13799\" data-lng=\"-75.26699\"\r\n    style=\"border-color:red; box-shadow:0 0 14px red; background-image:url('http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/12\/Screenshot_20240827_115337_Maps.jpg');\"\r\n    title=\"Events \u2022 Pets\"><\/button>\r\n<\/div>\r\n\r\n<!-- HOST CIRCLES \u2014 JS (First) -->\r\n<script>\r\n  \/* Show only the requested key, e.g., 'spa-kids' *\/\r\n  window.showHostButtons = function(suboption){\r\n    const wrap = document.getElementById('firstHostButtons');\r\n    if(!wrap) return;\r\n\r\n    \/\/ Hide all circles\r\n    wrap.querySelectorAll('.host-circle').forEach(el => el.style.display = 'none');\r\n\r\n    \/\/ Show only the requested group (class names include exact key)\r\n    const shown = wrap.querySelectorAll('.' + suboption);\r\n    shown.forEach(el => el.style.display = 'inline-block');\r\n\r\n    \/\/ Reveal the container and allow clicks if at least one item is found\r\n    if (shown.length){\r\n      wrap.style.display = 'flex';\r\n      wrap.style.pointerEvents = 'auto';\r\n    }\r\n  };\r\n\r\n  \/\/ dbl-tap \/ dbl-click to favorite (uses your existing API if present)\r\n  document.addEventListener('DOMContentLoaded', () => {\r\n    const wrap = document.getElementById('firstHostButtons');\r\n    if(!wrap) return;\r\n\r\n    wrap.querySelectorAll('.host-circle').forEach(btn => {\r\n      btn.addEventListener('dblclick', () => {\r\n        const id  = btn.classList[1]; \/\/ e.g., 'spa-kids'\r\n        const img = (btn.style.backgroundImage || '').slice(5, -2);\r\n        const lat = parseFloat(btn.dataset.lat);\r\n        const lng = parseFloat(btn.dataset.lng);\r\n        if (typeof toggleFavorite === 'function') toggleFavorite(id, img, lat, lng);\r\n      });\r\n    });\r\n\r\n    \/\/ Center the map when any host circle is clicked (scoped to this block)\r\n    wrap.addEventListener('click', (e) => {\r\n      const btn = e.target.closest('.host-circle');\r\n      if (!btn) return;\r\n\r\n      const lat = parseFloat(btn.dataset.lat);\r\n      const lng = parseFloat(btn.dataset.lng);\r\n      if (!Number.isFinite(lat) || !Number.isFinite(lng)) return;\r\n\r\n      if (typeof window.focusOnHost === 'function') {\r\n        focusOnHost(lat, lng);\r\n        return;\r\n      }\r\n      if (window.ggMap && window.google) {\r\n        const pos = new google.maps.LatLng(lat, lng);\r\n        ggMap.setCenter(pos);\r\n        ggMap.setZoom(15);\r\n        new google.maps.Marker({ position: pos, map: ggMap });\r\n      }\r\n    });\r\n  });\r\n<\/script>\r\n\r\n\r\n\r\n&#8211; AVATAR &#8211;>\r\n<div id=\"avatarContainer\" onclick=\"showAvatarCloud()\" \r\n     style=\"position:fixed; bottom:80px; right:20px; z-index:9999; cursor:pointer; display:none;\">\r\n  <img decoding=\"async\" src=\"http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/07\/Screenshot_20231118-120724_Instagram-scaled.jpg\" \r\n       style=\"width:180px; height:auto; border-radius: 50% \/ 30%; object-fit: cover; box-shadow: 0 0 12px aqua; filter: invert(100%) contrast(120%) brightness(110%);\">\r\n<\/div>\r\n\r\n<!-- CLOUD BUBBLE -->\r\n<div id=\"avatarCloud\" style=\"position:fixed; bottom:310px; right:30px; max-width:250px; background:rgba(0,0,0,0.7); \r\n     color:white; font-family:Orbitron, sans-serif; font-size:12px; line-height:16px; border-radius:20px 20px 20px 0px; \r\n     padding:14px 16px; box-shadow:0 0 15px aqua; display:none; z-index:9999; text-align:center;\r\n     border: 1px solid aqua;\">\r\n  <div id=\"avatarCloudMsg\">Loading&#8230;<\/div>\r\n  <div style=\"margin-top:10px;\">\r\n    <button onclick=\"acceptAvatarSuggestion()\" style=\"background:lime; color:black; border:none; padding:6px 10px; font-weight:bold;\">Yes<\/button>\r\n    <button onclick=\"dismissAvatarCloud()\" style=\"background:aqua; color:white; border:none; padding:6px 10px; font-weight:bold;\">No<\/button>\r\n  <\/div>\r\n  <div style=\"position:absolute; bottom:-18px; right:10px; width:0; height:0; border-left:10px solid transparent; \r\n              border-right:10px solid transparent; border-top:18px solid rgba(0,255,255,0.6); filter:blur(0.5px);\">\r\n  <\/div>\r\n<\/div>\r\n\r\n<!-- MOBILE ASSISTANT BUTTON -->\r\n<div id=\"avatarMobileBtn\" onclick=\"toggleMobileAvatar()\" style=\"display:none;\">\r\n  \ud83d\udc64 Assistant\r\n<\/div>\r\n\r\n<!-- ESTILOS -->\r\n<style>\r\n  #avatarMobileBtn {\r\n    position: fixed;\r\n    bottom: 18px;\r\n    right: 18px;\r\n    z-index: 9999;\r\n    background: rgba(0, 0, 0, 0.7);\r\n    color: white;\r\n    font-family: Orbitron, sans-serif;\r\n    font-size: 13px;\r\n    padding: 10px 14px;\r\n    border: 2px solid aqua;\r\n    border-radius: 14px;\r\n    box-shadow: 0 0 12px aqua;\r\n    cursor: pointer;\r\n    display: flex;\r\n    align-items: center;\r\n    gap: 8px;\r\n  }\r\n\r\n  @media (min-width: 769px) {\r\n    #avatarMobileBtn {\r\n      display: none !important;\r\n    }\r\n  }\r\n\r\n  @media (max-width: 768px) {\r\n    #avatarContainer {\r\n      bottom: 30px !important;\r\n      right: 90px !important;\r\n      width: 100px !important;\r\n      display: none;\r\n      pointer-events: none;\r\n    }\r\n\r\n    #avatarContainer img {\r\n      width: 100%;\r\n      height: auto;\r\n      border-radius: 50% \/ 30%;\r\n      object-fit: cover;\r\n      filter: grayscale(0%) brightness(1.1) contrast(1.2);\r\n      box-shadow: 0 0 12px aqua;\r\n    }\r\n  }\r\n\r\n  @media (min-width: 769px) {\r\n    #avatarContainer {\r\n      pointer-events: auto;\r\n    }\r\n  }\r\n<\/style>\r\n\r\n<!-- L\u00d3GICA -->\r\n<script>\r\n  const entertainmentQuestions = [\r\n    \"Ready to see what\u2019s out there today?\",\r\n    \"Want entertainment options nearby?\",\r\n    \"Looking for something fun to do?\",\r\n    \"Need ideas for your free time?\",\r\n    \"Want something exciting tonight?\"\r\n  ];\r\n\r\n  const gastronomyQuestions = [\r\n    \"Want to see gastronomy options nearby?\",\r\n    \"Ready to have dinner tonight?\",\r\n    \"Would you like some brunch spots?\",\r\n    \"Hungry for something special?\",\r\n    \"Looking for restaurants around you?\"\r\n  ];\r\n\r\n  function showAvatarCloud(forcedType = null) {\r\n    const hour = new Date().getHours();\r\n    const type = forcedType || (hour % 2 === 0 ? \"gastronomy\" : \"entertainment\");\r\n    const question = (type === \"gastronomy\" ? gastronomyQuestions : entertainmentQuestions)[Math.floor(Math.random() * 5)];\r\n\r\n    document.getElementById(\"avatarCloudMsg\").innerText = question;\r\n    document.getElementById(\"avatarCloud\").style.display = \"block\";\r\n  }\r\n\r\n  function acceptAvatarSuggestion() {\r\n    dismissAvatarCloud();\r\n    alert(\"\u2705 Showing Aries recommendations near you...\");\r\n  }\r\n\r\n  function dismissAvatarCloud() {\r\n    document.getElementById(\"avatarCloud\").style.display = \"none\";\r\n  }\r\n\r\n  \/\/ \ud83d\udcbb Show avatar automatically after 3 seconds (desktop only)\r\n  function showAvatarAssistant() {\r\n    const avatar = document.getElementById(\"avatarContainer\");\r\n    if (window.innerWidth > 768) {\r\n      avatar.style.display = \"block\";\r\n      avatar.style.pointerEvents = \"auto\";\r\n    }\r\n  }\r\n  setTimeout(showAvatarAssistant, 3000);\r\n\r\n  \/\/ \ud83d\udcf1 Toggle mobile avatar on\/off\r\n  let avatarVisible = false;\r\n  function toggleMobileAvatar() {\r\n    const avatar = document.getElementById(\"avatarContainer\");\r\n    const btn = document.getElementById(\"avatarMobileBtn\");\r\n\r\n    if (!avatarVisible) {\r\n      avatar.style.display = \"block\";\r\n      avatar.style.pointerEvents = \"auto\";\r\n      showAvatarCloud();\r\n      btn.innerHTML = \"\u274c Close\";\r\n    } else {\r\n      avatar.style.display = \"none\";\r\n      avatar.style.pointerEvents = \"none\";\r\n      dismissAvatarCloud();\r\n      btn.innerHTML = \"\ud83d\udc64 Assistant\";\r\n    }\r\n\r\n    avatarVisible = !avatarVisible;\r\n  }\r\n\r\n  \/\/ \ud83d\udcf1 Show mobile button on load\r\n  window.addEventListener(\"load\", () => {\r\n    if (window.innerWidth <= 768) {\r\n      document.getElementById(\"avatarMobileBtn\").style.display = \"flex\";\r\n    }\r\n  });\r\n<\/script>\r\n\r\n\r\n\r\n<!-- =========================================================\r\nBLISS TRAVEL CLUB \u2014 HOST NETWORK V11 \u2014 INTEGRATED PARTNER PORTAL\r\nFULL-SCREEN HIDDEN PAGE \/ HOST INTELLIGENCE \/ PARTNER ACCOUNT\r\n\r\nOPEN:\r\n?partnerportal=1\r\n\r\nREQUIRES ACTIVE PHP:\r\n- BLISS TRAVEL CLUB \u2014 HOST ACCOUNT LOGIN V1\r\n- BLISS TRAVEL CLUB \u2014 HOST PLACEMENT BUILDER V1\r\n- BLISS TRAVEL CLUB \u2014 HOST PARTNER ACCOUNTS V1\r\n- BLISS TRAVEL CLUB \u2014 PARTNER PLACEMENT LINKS V1\r\n\r\nIMPORTANT:\r\n- Replace the entire old V5\/V6 Partner Portal block with this.\r\n- Paste into ONE Custom HTML block.\r\n- Do not change display values.\r\n========================================================= -->\r\n\r\n<style>\r\n\/* EXACT HIDDEN-PAGE SHELL \u2014 SAME ARCHITECTURE AS THE WORKING CONTROL PANEL *\/\r\nhtml.bpp9-open,\r\nbody.bpp9-open{\r\n  margin:0!important;\r\n  padding:0!important;\r\n  width:100%!important;\r\n  max-width:none!important;\r\n  height:100%!important;\r\n  min-height:100%!important;\r\n  overflow:hidden!important;\r\n  background:#02040a!important;\r\n}\r\n\r\nbody.bpp9-hard-hide > *:not(#bpp9){\r\n  display:none!important;\r\n  visibility:hidden!important;\r\n  pointer-events:none!important;\r\n}\r\n\r\nbody.bpp9-hard-hide #bpp9,\r\nbody.bpp9-hard-hide #bpp9 *{\r\n  visibility:visible!important;\r\n}\r\n\r\nbody.bpp9-hard-hide #bpp9{\r\n  display:block!important;\r\n  pointer-events:auto!important;\r\n}\r\n\r\nbody.bpp9-open #page,\r\nbody.bpp9-open #content,\r\nbody.bpp9-open #primary,\r\nbody.bpp9-open #main,\r\nbody.bpp9-open .site,\r\nbody.bpp9-open .site-content,\r\nbody.bpp9-open .content-area,\r\nbody.bpp9-open .site-main,\r\nbody.bpp9-open .entry,\r\nbody.bpp9-open .entry-content,\r\nbody.bpp9-open .wp-site-blocks,\r\nbody.bpp9-open .wp-block-post-content,\r\nbody.bpp9-open .wp-block-group,\r\nbody.bpp9-open .wp-block-html{\r\n  width:100%!important;\r\n  max-width:none!important;\r\n  min-width:0!important;\r\n  margin:0!important;\r\n  padding:0!important;\r\n  transform:none!important;\r\n}\r\n#bpp9{\r\n  display:none;\r\n  position:fixed!important;\r\n  inset:0!important;\r\n  width:100vw!important;\r\n  min-width:100vw!important;\r\n  max-width:100vw!important;\r\n  height:100vh!important;\r\n  min-height:100vh!important;\r\n  max-height:100vh!important;\r\n  margin:0!important;\r\n  padding:0!important;\r\n  z-index:2147483647!important;\r\n  isolation:isolate!important;\r\n  overflow:auto!important;\r\n  pointer-events:auto!important;\r\n  visibility:visible!important;\r\n  opacity:1!important;\r\n  color:#f7fbff;\r\n  background:\r\n    radial-gradient(circle at 12% 8%,rgba(61,218,255,.18),transparent 26%),\r\n    radial-gradient(circle at 86% 12%,rgba(128,92,255,.20),transparent 30%),\r\n    linear-gradient(180deg,#02040a 0%,#050a14 55%,#02040a 100%);\r\n  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,\"Segoe UI\",sans-serif;\r\n}\r\n\r\n#bpp9,\r\n#bpp9 *{\r\n  box-sizing:border-box !important;\r\n}\r\n\r\n#bpp9 button,\r\n#bpp9 input,\r\n#bpp9 textarea,\r\n#bpp9 select{\r\n  font:inherit !important;\r\n}\r\n\r\n.bpp9-hidden{display:none !important;}\r\n\r\n.bpp9-wrap{\r\n  min-height:100dvh;\r\n  width:100%;\r\n}\r\n\r\n.bpp9-top{\r\n  position:sticky;\r\n  top:0;\r\n  z-index:50;\r\n  height:72px;\r\n  display:flex;\r\n  align-items:center;\r\n  justify-content:space-between;\r\n  gap:18px;\r\n  padding:0 28px;\r\n  border-bottom:1px solid rgba(255,255,255,.07);\r\n  background:rgba(2,4,10,.80);\r\n  backdrop-filter:blur(18px);\r\n  -webkit-backdrop-filter:blur(18px);\r\n}\r\n\r\n.bpp9-brand{\r\n  display:flex;\r\n  align-items:center;\r\n  gap:12px;\r\n  min-width:0;\r\n}\r\n\r\n.bpp9-logo{\r\n  width:40px;\r\n  height:40px;\r\n  display:grid;\r\n  place-items:center;\r\n  border-radius:12px;\r\n  border:1px solid rgba(97,232,255,.28);\r\n  background:\r\n    linear-gradient(145deg,rgba(97,232,255,.15),rgba(131,100,255,.14));\r\n  box-shadow:0 0 32px rgba(71,217,255,.10);\r\n  color:#fff;\r\n  font-weight:900;\r\n  letter-spacing:-.06em;\r\n}\r\n\r\n.bpp9-brand strong{\r\n  display:block;\r\n  font-size:.88rem;\r\n  letter-spacing:.03em;\r\n}\r\n\r\n.bpp9-brand small{\r\n  display:block;\r\n  margin-top:2px;\r\n  color:rgba(229,242,255,.45);\r\n  font-size:.61rem;\r\n  letter-spacing:.12em;\r\n  text-transform:uppercase;\r\n}\r\n\r\n.bpp9-top-actions{\r\n  display:flex;\r\n  align-items:center;\r\n  gap:8px;\r\n}\r\n\r\n.bpp9-btn{\r\n  min-height:42px;\r\n  padding:10px 15px;\r\n  border:1px solid rgba(255,255,255,.10);\r\n  border-radius:12px;\r\n  color:#eef9ff;\r\n  background:rgba(255,255,255,.035);\r\n  cursor:pointer !important;\r\n  pointer-events:auto !important;\r\n  font-weight:850;\r\n  transition:.16s ease;\r\n}\r\n\r\n.bpp9-btn:hover{\r\n  transform:translateY(-1px);\r\n  border-color:rgba(90,230,255,.34);\r\n  background:rgba(87,225,255,.07);\r\n}\r\n\r\n.bpp9-btn.primary{\r\n  color:#041017;\r\n  border-color:transparent;\r\n  background:linear-gradient(135deg,#72e8f6,#8cb8ff 56%,#a98cff);\r\n  box-shadow:0 14px 36px rgba(95,205,255,.14);\r\n}\r\n\r\n.bpp9-btn.good{\r\n  color:#06120c;\r\n  border-color:transparent;\r\n  background:linear-gradient(135deg,#7bf0ae,#6de7f5);\r\n}\r\n\r\n.bpp9-btn:disabled{\r\n  opacity:.35 !important;\r\n  cursor:not-allowed !important;\r\n  transform:none !important;\r\n}\r\n\r\n.bpp9-hero{\r\n  min-height:calc(100dvh - 72px);\r\n  display:grid;\r\n  grid-template-columns:minmax(0,1.3fr) minmax(360px,.7fr);\r\n  align-items:center;\r\n  gap:48px;\r\n  padding:64px clamp(28px,6vw,92px) 74px;\r\n}\r\n\r\n.bpp9-eyebrow{\r\n  color:#7ce9f7;\r\n  font-size:.68rem;\r\n  font-weight:950;\r\n  letter-spacing:.18em;\r\n  text-transform:uppercase;\r\n}\r\n\r\n.bpp9-hero h1{\r\n  margin:14px 0 0;\r\n  max-width:900px;\r\n  font-size:clamp(3.3rem,7vw,7.4rem);\r\n  line-height:.88;\r\n  letter-spacing:-.065em;\r\n  font-weight:800;\r\n}\r\n\r\n.bpp9-gradient{\r\n  background:linear-gradient(110deg,#ffffff 14%,#8eeaf8 52%,#b49bff 90%);\r\n  -webkit-background-clip:text;\r\n  background-clip:text;\r\n  color:transparent;\r\n}\r\n\r\n.bpp9-lead{\r\n  max-width:780px;\r\n  margin:24px 0 0;\r\n  color:rgba(230,243,255,.65);\r\n  font-size:clamp(1rem,1.5vw,1.15rem);\r\n  line-height:1.75;\r\n}\r\n\r\n.bpp9-chip-row{\r\n  display:flex;\r\n  flex-wrap:wrap;\r\n  gap:8px;\r\n  margin-top:24px;\r\n}\r\n\r\n.bpp9-chip{\r\n  padding:8px 11px;\r\n  border:1px solid rgba(255,255,255,.08);\r\n  border-radius:999px;\r\n  color:rgba(239,248,255,.72);\r\n  background:rgba(255,255,255,.022);\r\n  font-size:.70rem;\r\n  font-weight:780;\r\n}\r\n\r\n.bpp9-access{\r\n  padding:24px;\r\n  border:1px solid rgba(255,255,255,.09);\r\n  border-radius:22px;\r\n  background:\r\n    linear-gradient(180deg,rgba(255,255,255,.046),rgba(255,255,255,.022));\r\n  box-shadow:0 35px 100px rgba(0,0,0,.30);\r\n}\r\n\r\n.bpp9-access h2{\r\n  margin:0;\r\n  font-size:1.15rem;\r\n}\r\n\r\n.bpp9-access p{\r\n  margin:7px 0 0;\r\n  color:rgba(228,241,255,.52);\r\n  font-size:.79rem;\r\n  line-height:1.55;\r\n}\r\n\r\n.bpp9-access-grid{\r\n  display:grid;\r\n  gap:10px;\r\n  margin-top:20px;\r\n}\r\n\r\n.bpp9-action-card{\r\n  width:100%;\r\n  display:flex;\r\n  align-items:center;\r\n  justify-content:space-between;\r\n  gap:16px;\r\n  padding:16px 17px;\r\n  text-align:left;\r\n  border:1px solid rgba(255,255,255,.09);\r\n  border-radius:15px;\r\n  color:#f6fbff;\r\n  background:#07101b;\r\n  cursor:pointer !important;\r\n  pointer-events:auto !important;\r\n}\r\n\r\n.bpp9-action-card:hover{\r\n  border-color:rgba(104,231,247,.34);\r\n  background:#091522;\r\n}\r\n\r\n.bpp9-action-card strong{\r\n  display:block;\r\n  font-size:.88rem;\r\n}\r\n\r\n.bpp9-action-card small{\r\n  display:block;\r\n  margin-top:3px;\r\n  color:rgba(229,241,255,.49);\r\n  font-size:.67rem;\r\n  line-height:1.42;\r\n}\r\n\r\n.bpp9-arrow{\r\n  color:#77e9f7;\r\n  font-size:1.15rem;\r\n}\r\n\r\n.bpp9-page{\r\n  min-height:calc(100dvh - 72px);\r\n  padding:34px clamp(22px,5vw,72px) 70px;\r\n}\r\n\r\n.bpp9-page-inner{\r\n  width:min(1320px,100%);\r\n  margin:0 auto;\r\n}\r\n\r\n.bpp9-panel{\r\n  padding:30px;\r\n  border:1px solid rgba(255,255,255,.09);\r\n  border-radius:22px;\r\n  background:\r\n    linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.017));\r\n  box-shadow:0 28px 78px rgba(0,0,0,.22);\r\n}\r\n\r\n.bpp9-panel-head{\r\n  display:flex;\r\n  justify-content:space-between;\r\n  align-items:flex-start;\r\n  gap:20px;\r\n  margin-bottom:24px;\r\n}\r\n\r\n.bpp9-panel h1,\r\n.bpp9-panel h2{\r\n  margin:7px 0 0;\r\n}\r\n\r\n.bpp9-copy{\r\n  max-width:780px;\r\n  margin:8px 0 0;\r\n  color:rgba(229,242,255,.56);\r\n  font-size:.83rem;\r\n  line-height:1.64;\r\n}\r\n\r\n.bpp9-grid2{\r\n  display:grid;\r\n  grid-template-columns:repeat(2,minmax(0,1fr));\r\n  gap:13px;\r\n}\r\n\r\n.bpp9-field{\r\n  display:flex;\r\n  flex-direction:column;\r\n  gap:7px;\r\n}\r\n\r\n.bpp9-field.full{\r\n  grid-column:1\/-1;\r\n}\r\n\r\n.bpp9-field label{\r\n  color:rgba(231,243,255,.54);\r\n  font-size:.61rem;\r\n  font-weight:950;\r\n  letter-spacing:.11em;\r\n  text-transform:uppercase;\r\n}\r\n\r\n.bpp9-input,\r\n.bpp9-textarea{\r\n  width:100% !important;\r\n  border:1px solid rgba(255,255,255,.10) !important;\r\n  border-radius:12px !important;\r\n  outline:none !important;\r\n  color:#f8fbff !important;\r\n  background:#060e18 !important;\r\n}\r\n\r\n.bpp9-input{\r\n  min-height:46px !important;\r\n  padding:11px 13px !important;\r\n}\r\n\r\n.bpp9-textarea{\r\n  min-height:115px !important;\r\n  padding:12px 13px !important;\r\n  resize:vertical;\r\n}\r\n\r\n.bpp9-input:focus,\r\n.bpp9-textarea:focus{\r\n  border-color:rgba(110,232,247,.55) !important;\r\n  box-shadow:0 0 0 3px rgba(110,232,247,.06) !important;\r\n}\r\n\r\n.bpp9-actions{\r\n  display:flex;\r\n  justify-content:space-between;\r\n  gap:10px;\r\n  flex-wrap:wrap;\r\n  margin-top:24px;\r\n}\r\n\r\n.bpp9-progress{\r\n  display:grid;\r\n  grid-template-columns:repeat(4,1fr);\r\n  gap:8px;\r\n  margin-bottom:18px;\r\n}\r\n\r\n.bpp9-progress span{\r\n  height:4px;\r\n  border-radius:999px;\r\n  background:rgba(255,255,255,.08);\r\n}\r\n\r\n.bpp9-progress span.active{\r\n  background:linear-gradient(90deg,#70e8f7,#a98cff);\r\n}\r\n\r\n.bpp9-question{\r\n  padding:20px 0;\r\n  border-bottom:1px solid rgba(255,255,255,.07);\r\n}\r\n\r\n.bpp9-question:last-child{\r\n  border-bottom:0;\r\n}\r\n\r\n.bpp9-question h3{\r\n  margin:0;\r\n  font-size:1rem;\r\n}\r\n\r\n.bpp9-question p{\r\n  margin:6px 0 13px;\r\n  color:rgba(231,243,255,.52);\r\n  font-size:.77rem;\r\n  line-height:1.55;\r\n}\r\n\r\n.bpp9-options{\r\n  display:flex;\r\n  flex-wrap:wrap;\r\n  gap:8px;\r\n}\r\n\r\n.bpp9-choice{\r\n  position:relative;\r\n}\r\n\r\n.bpp9-choice input{\r\n  position:absolute;\r\n  opacity:0;\r\n  pointer-events:none;\r\n}\r\n\r\n.bpp9-choice span{\r\n  display:block;\r\n  padding:9px 12px;\r\n  border:1px solid rgba(255,255,255,.10);\r\n  border-radius:999px;\r\n  color:rgba(241,248,255,.72);\r\n  background:rgba(255,255,255,.024);\r\n  cursor:pointer !important;\r\n  pointer-events:auto !important;\r\n  font-size:.73rem;\r\n  font-weight:820;\r\n}\r\n\r\n.bpp9-choice input:checked + span{\r\n  color:#061117;\r\n  border-color:transparent;\r\n  background:linear-gradient(135deg,#78eaf7,#91b8ff);\r\n}\r\n\r\n.bpp9-rec-head{\r\n  display:flex;\r\n  justify-content:space-between;\r\n  align-items:center;\r\n  gap:16px;\r\n  margin-bottom:18px;\r\n}\r\n\r\n.bpp9-counter{\r\n  padding:8px 12px;\r\n  border:1px solid rgba(123,240,175,.22);\r\n  border-radius:999px;\r\n  color:#83efb2;\r\n  background:rgba(123,240,175,.05);\r\n  font-size:.69rem;\r\n  font-weight:900;\r\n}\r\n\r\n.bpp9-rec-grid{\r\n  display:grid;\r\n  grid-template-columns:repeat(3,minmax(0,1fr));\r\n  gap:11px;\r\n}\r\n\r\n.bpp9-rec{\r\n  position:relative;\r\n  min-height:180px;\r\n  padding:17px;\r\n  border:1px solid rgba(255,255,255,.09);\r\n  border-radius:16px;\r\n  background:#060f1a;\r\n  cursor:pointer !important;\r\n  pointer-events:auto !important;\r\n  transition:.16s ease;\r\n}\r\n\r\n.bpp9-rec:hover{\r\n  transform:translateY(-2px);\r\n  border-color:rgba(110,231,247,.28);\r\n}\r\n\r\n.bpp9-rec.selected{\r\n  border-color:#75e7f6;\r\n  background:\r\n    linear-gradient(180deg,rgba(103,231,247,.085),rgba(103,231,247,.025));\r\n  box-shadow:0 0 0 2px rgba(103,231,247,.05);\r\n}\r\n\r\n.bpp9-rec-num{\r\n  width:26px;\r\n  height:26px;\r\n  display:grid;\r\n  place-items:center;\r\n  border-radius:9px;\r\n  color:#061117;\r\n  background:#79e8f6;\r\n  font-size:.66rem;\r\n  font-weight:950;\r\n}\r\n\r\n.bpp9-score{\r\n  position:absolute;\r\n  right:16px;\r\n  top:16px;\r\n  color:#ead48d;\r\n  font-size:.64rem;\r\n  font-weight:900;\r\n}\r\n\r\n.bpp9-route{\r\n  margin-top:18px;\r\n  color:#7be7f6;\r\n  font-size:.63rem;\r\n  line-height:1.5;\r\n  font-weight:950;\r\n  text-transform:uppercase;\r\n  letter-spacing:.03em;\r\n}\r\n\r\n.bpp9-rec h4{\r\n  margin:7px 0 0;\r\n  font-size:.91rem;\r\n}\r\n\r\n.bpp9-rec p{\r\n  margin:7px 0 0;\r\n  color:rgba(229,242,255,.50);\r\n  font-size:.70rem;\r\n  line-height:1.45;\r\n}\r\n\r\n.bpp9-dashboard{\r\n  display:grid;\r\n  grid-template-columns:230px minmax(0,1fr);\r\n  gap:16px;\r\n  align-items:start;\r\n}\r\n\r\n.bpp9-side{\r\n  position:sticky;\r\n  top:92px;\r\n  padding:18px;\r\n}\r\n\r\n.bpp9-side h3{\r\n  margin:10px 0 0;\r\n}\r\n\r\n.bpp9-side-email{\r\n  margin-top:4px;\r\n  color:rgba(229,242,255,.45);\r\n  font-size:.68rem;\r\n  word-break:break-word;\r\n}\r\n\r\n.bpp9-nav{\r\n  display:grid;\r\n  gap:6px;\r\n  margin-top:20px;\r\n}\r\n\r\n.bpp9-nav button{\r\n  width:100%;\r\n  padding:10px 11px;\r\n  text-align:left;\r\n  border:1px solid transparent;\r\n  border-radius:10px;\r\n  color:rgba(238,247,255,.62);\r\n  background:transparent;\r\n  cursor:pointer !important;\r\n  pointer-events:auto !important;\r\n  font-size:.75rem;\r\n  font-weight:850;\r\n}\r\n\r\n.bpp9-nav button.active{\r\n  color:#061017;\r\n  background:linear-gradient(135deg,#76e9f7,#9da9ff);\r\n}\r\n\r\n.bpp9-main{\r\n  min-width:0;\r\n}\r\n\r\n.bpp9-stat-grid{\r\n  display:grid;\r\n  grid-template-columns:repeat(4,minmax(0,1fr));\r\n  gap:10px;\r\n  margin-top:18px;\r\n}\r\n\r\n.bpp9-stat{\r\n  padding:15px;\r\n  border:1px solid rgba(255,255,255,.08);\r\n  border-radius:14px;\r\n  background:#060e18;\r\n}\r\n\r\n.bpp9-stat small{\r\n  display:block;\r\n  color:rgba(231,243,255,.45);\r\n  font-size:.57rem;\r\n  font-weight:950;\r\n  letter-spacing:.09em;\r\n  text-transform:uppercase;\r\n}\r\n\r\n.bpp9-stat strong{\r\n  display:block;\r\n  margin-top:8px;\r\n  font-size:1.12rem;\r\n}\r\n\r\n.bpp9-card-grid{\r\n  display:grid;\r\n  grid-template-columns:repeat(auto-fill,minmax(240px,1fr));\r\n  gap:10px;\r\n  margin-top:16px;\r\n}\r\n\r\n.bpp9-mini{\r\n  padding:14px;\r\n  border:1px solid rgba(255,255,255,.08);\r\n  border-radius:14px;\r\n  background:#060e18;\r\n}\r\n\r\n.bpp9-mini strong{\r\n  display:block;\r\n  margin-top:7px;\r\n}\r\n\r\n.bpp9-mini small{\r\n  display:block;\r\n  margin-top:5px;\r\n  color:rgba(230,242,255,.44);\r\n}\r\n\r\n.bpp9-summary{\r\n  display:grid;\r\n  grid-template-columns:repeat(auto-fill,minmax(220px,1fr));\r\n  gap:10px;\r\n  margin-top:16px;\r\n}\r\n\r\n.bpp9-summary-item{\r\n  padding:14px;\r\n  border:1px solid rgba(255,255,255,.08);\r\n  border-radius:14px;\r\n  background:#060e18;\r\n}\r\n\r\n.bpp9-summary-item span{\r\n  display:block;\r\n  color:#7be7f6;\r\n  font-size:.61rem;\r\n  font-weight:950;\r\n  text-transform:uppercase;\r\n}\r\n\r\n.bpp9-summary-item strong{\r\n  display:block;\r\n  margin-top:7px;\r\n  font-size:.81rem;\r\n  line-height:1.5;\r\n}\r\n\r\n.bpp9-ti{\r\n  display:grid;\r\n  grid-template-columns:minmax(0,1fr) auto;\r\n  align-items:center;\r\n  gap:18px;\r\n  margin-top:12px;\r\n  padding:18px;\r\n  border:1px solid rgba(237,210,128,.17);\r\n  border-radius:15px;\r\n  background:\r\n    linear-gradient(135deg,rgba(239,210,128,.045),rgba(255,255,255,.014));\r\n}\r\n\r\n.bpp9-ti-price{\r\n  color:#ead58d;\r\n  font-size:1.18rem;\r\n  font-weight:950;\r\n}\r\n\r\n.bpp9-admin{\r\n  position:fixed;\r\n  right:11px;\r\n  bottom:10px;\r\n  z-index:2147483647;\r\n  width:30px;\r\n  height:30px;\r\n  display:grid;\r\n  place-items:center;\r\n  padding:0;\r\n  border:1px solid rgba(255,255,255,.08);\r\n  border-radius:50%;\r\n  color:rgba(255,255,255,.24);\r\n  background:rgba(255,255,255,.02);\r\n  cursor:pointer !important;\r\n  opacity:.35;\r\n}\r\n\r\n.bpp9-admin:hover{\r\n  opacity:1;\r\n  color:#7be7f6;\r\n}\r\n\r\n.bpp9-modal-layer{\r\n  display:none;\r\n  position:fixed;\r\n  inset:0;\r\n  z-index:2147483647;\r\n  place-items:center;\r\n  padding:18px;\r\n  background:rgba(0,3,8,.80);\r\n  backdrop-filter:blur(12px);\r\n  -webkit-backdrop-filter:blur(12px);\r\n}\r\n\r\n.bpp9-modal-layer.open{\r\n  display:grid;\r\n}\r\n\r\n.bpp9-modal{\r\n  width:min(470px,100%);\r\n  padding:24px;\r\n  border:1px solid rgba(255,255,255,.11);\r\n  border-radius:20px;\r\n  background:#07101b;\r\n  box-shadow:0 35px 100px rgba(0,0,0,.45);\r\n}\r\n\r\n.bpp9-toast{\r\n  position:fixed;\r\n  left:50%;\r\n  bottom:20px;\r\n  z-index:2147483647;\r\n  max-width:min(520px,calc(100% - 28px));\r\n  padding:11px 14px;\r\n  border:1px solid rgba(111,231,247,.35);\r\n  border-radius:11px;\r\n  color:#f7fbff;\r\n  background:#091522;\r\n  box-shadow:0 20px 60px rgba(0,0,0,.35);\r\n  opacity:0;\r\n  pointer-events:none;\r\n  transform:translate(-50%,18px);\r\n  transition:.18s ease;\r\n  text-align:center;\r\n  font-size:.77rem;\r\n  font-weight:760;\r\n}\r\n\r\n.bpp9-toast.show{\r\n  opacity:1;\r\n  transform:translate(-50%,0);\r\n}\r\n\r\n@media(max-width:940px){\r\n  .bpp9-hero{\r\n    grid-template-columns:1fr;\r\n    gap:28px;\r\n    min-height:auto;\r\n    padding-top:44px;\r\n  }\r\n  .bpp9-rec-grid{\r\n    grid-template-columns:repeat(2,minmax(0,1fr));\r\n  }\r\n  .bpp9-dashboard{\r\n    grid-template-columns:1fr;\r\n  }\r\n  .bpp9-side{\r\n    position:relative;\r\n    top:auto;\r\n  }\r\n  .bpp9-nav{\r\n    grid-template-columns:repeat(4,minmax(0,1fr));\r\n  }\r\n}\r\n\r\n@media(max-width:650px){\r\n  .bpp9-top{\r\n    padding:0 14px;\r\n  }\r\n  .bpp9-brand small{\r\n    display:none;\r\n  }\r\n  .bpp9-top-actions .bpp9-btn:first-child{\r\n    display:none;\r\n  }\r\n  .bpp9-hero{\r\n    padding:34px 16px 58px;\r\n  }\r\n  .bpp9-hero h1{\r\n    font-size:clamp(2.75rem,14vw,4.3rem);\r\n  }\r\n  .bpp9-page{\r\n    padding:22px 12px 60px;\r\n  }\r\n  .bpp9-panel{\r\n    padding:19px;\r\n  }\r\n  .bpp9-grid2,\r\n  .bpp9-rec-grid,\r\n  .bpp9-stat-grid{\r\n    grid-template-columns:1fr;\r\n  }\r\n  .bpp9-nav{\r\n    grid-template-columns:repeat(2,minmax(0,1fr));\r\n  }\r\n  .bpp9-ti{\r\n    grid-template-columns:1fr;\r\n  }\r\n}\r\n\r\n.bpp9-disclosure {\r\n  margin-top:16px;\r\n  padding:15px 17px;\r\n  border:1px solid rgba(123,231,246,.18);\r\n  border-radius:14px;\r\n  color:rgba(231,243,255,.68);\r\n  background:rgba(123,231,246,.035);\r\n  font-size:.72rem;\r\n  line-height:1.65;\r\n}\r\n\r\n.bpp9-disclosure strong {\r\n  color:#ffffff;\r\n}\r\n\r\n.bpp9-package-grid {\r\n  display:grid;\r\n  grid-template-columns:repeat(3,minmax(0,1fr));\r\n  gap:12px;\r\n  margin-top:18px;\r\n}\r\n\r\n.bpp9-package {\r\n  display:flex;\r\n  flex-direction:column;\r\n  min-height:220px;\r\n  padding:18px;\r\n  border:1px solid rgba(255,255,255,.10);\r\n  border-radius:16px;\r\n  background:\r\n    linear-gradient(\r\n      145deg,\r\n      rgba(121,232,246,.06),\r\n      rgba(255,255,255,.018)\r\n    );\r\n}\r\n\r\n.bpp9-package.featured {\r\n  border-color:rgba(121,232,246,.40);\r\n  box-shadow:\r\n    0 0 26px rgba(72,220,240,.08);\r\n}\r\n\r\n.bpp9-package small {\r\n  color:#7be7f6;\r\n  font-size:.62rem;\r\n  font-weight:950;\r\n  letter-spacing:.08em;\r\n  text-transform:uppercase;\r\n}\r\n\r\n.bpp9-package strong {\r\n  display:block;\r\n  margin-top:10px;\r\n  color:#ffffff;\r\n  font-size:1.15rem;\r\n}\r\n\r\n.bpp9-package-price {\r\n  display:block;\r\n  margin-top:8px;\r\n  color:#ead58d;\r\n  font-size:1.2rem;\r\n  font-weight:950;\r\n}\r\n\r\n.bpp9-package p {\r\n  margin:12px 0 18px;\r\n  color:rgba(231,243,255,.56);\r\n  font-size:.70rem;\r\n  line-height:1.55;\r\n}\r\n\r\n.bpp9-package .bpp9-btn {\r\n  width:100%;\r\n  margin-top:auto;\r\n}\r\n\r\n@media (max-width:760px) {\r\n  .bpp9-package-grid {\r\n    grid-template-columns:1fr;\r\n  }\r\n}\r\n\r\n\r\n\/* V11 integrated premium visual system *\/\r\n\r\n  html.bpp9-open,body.bpp9-open{background:#080c1c!important}\r\n  #bpp9{--v11-purple:#a991ff;--v11-cyan:#8ceaff;--v11-line:rgba(164,179,255,.23);font-family:Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif!important;background:radial-gradient(ellipse at 15% 0%,#202c57 0%,transparent 46%),radial-gradient(ellipse at 90% 12%,#34234f 0%,transparent 38%),#080c1c!important;color:#f5f6ff!important}\r\n  #bpp9 *,#bpp9 *::before,#bpp9 *::after{box-sizing:border-box}\r\n  #bpp9 .bpp9-wrap{max-width:1400px;margin:auto}\r\n  #bpp9 .bpp9-top{background:rgba(9,14,33,.78)!important;backdrop-filter:blur(18px);border-bottom:1px solid var(--v11-line)!important}\r\n  #bpp9 .bpp9-logo{background:linear-gradient(145deg,#9a8bff,#64e4f6)!important;color:#12132c!important;box-shadow:0 0 32px #8e7cff66}\r\n  #bpp9 .bpp9-hero{position:relative;overflow:hidden;border:1px solid var(--v11-line)!important;border-radius:28px!important;background:linear-gradient(125deg,#1a2853 0%,#302450 55%,#0d1a34 100%)!important;box-shadow:0 24px 90px #0006!important;padding:clamp(24px,5vw,65px)!important;gap:clamp(20px,4vw,54px)!important}\r\n  #bpp9 .bpp9-hero:before{content:'';position:absolute;width:370px;height:370px;right:18%;top:-220px;background:#9c7bff55;filter:blur(85px);border-radius:50%;pointer-events:none}\r\n  #bpp9 .bpp9-hero h1{font-size:clamp(2.6rem,5.6vw,5.4rem)!important;line-height:1.07!important;letter-spacing:-.055em!important;max-width:780px}\r\n  #bpp9 .bpp9-gradient{background:linear-gradient(100deg,#c4b5ff,#8eeaff,#f3d9ff)!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important}\r\n  #bpp9 .bpp9-lead{font-size:clamp(1rem,1.5vw,1.18rem)!important;line-height:1.75!important;color:#d4ddf4!important;max-width:620px}\r\n  #bpp9 .bpp9-access,#bpp9 .bpp9-panel{border:1px solid var(--v11-line)!important;background:linear-gradient(145deg,rgba(28,39,77,.94),rgba(14,22,45,.97))!important;border-radius:24px!important;box-shadow:0 14px 48px #0003!important}\r\n  #bpp9 .bpp9-access{backdrop-filter:blur(20px);padding:clamp(20px,3vw,34px)!important}\r\n  #bpp9 .bpp9-action-card,#bpp9 .bpp9-mini,#bpp9 .bpp9-stat,#bpp9 .bpp9-summary-item{background:#172647!important;border:1px solid #566b9c65!important;border-radius:18px!important;transition:transform .2s,border-color .2s,box-shadow .2s}\r\n  #bpp9 .bpp9-action-card:hover,#bpp9 .bpp9-mini:hover{transform:translateY(-3px);border-color:#a991ff!important;box-shadow:0 12px 28px #0005}\r\n  #bpp9 .bpp9-btn.primary,#bpp9 .bpp9-btn.good{background:linear-gradient(110deg,#a78bff,#81dfff)!important;color:#111832!important;border:0!important;font-weight:850!important;box-shadow:0 5px 25px #8d8af044}\r\n  #bpp9 .bpp9-btn{border-radius:13px!important;min-height:43px}\r\n  #bpp9 .bpp9-eyebrow,#bpp9 .bpp9-route{color:#9eeaff!important;letter-spacing:.13em!important}\r\n  #bpp9 .bpp9-copy,#bpp9 .bpp9-disclosure{color:#c0cbe7!important;line-height:1.7!important}\r\n  #bpp9 .bpp9-input{background:#0f1b37!important;border:1px solid #4a608a!important;border-radius:13px!important;color:#fff!important;min-height:46px}\r\n  #bpp9 .bpp9-input:focus{border-color:#b2a1ff!important;outline:2px solid #9b8fff55!important}\r\n  #bpp9 .bpp9-choice{border-radius:15px!important;border:1px solid #4b5d87!important;background:#182746!important;min-height:50px;transition:background .15s,border-color .15s,transform .15s}\r\n  #bpp9 .bpp9-choice:has(input:checked){background:#39336b!important;border-color:#b7a6ff!important;box-shadow:0 0 0 1px #b7a6ff55}\r\n  #bpp9 .bpp9-choice:hover{border-color:#96dff4!important;transform:translateY(-1px)}\r\n  #bpp9 .bpp9-question{border:1px solid #52618a70!important;border-radius:21px!important;background:linear-gradient(145deg,#1b2b4e,#111d39)!important;padding:clamp(18px,3vw,28px)!important;margin:0 0 14px!important}\r\n  #bpp9 .bpp9-question h3{font-size:clamp(1.25rem,2.5vw,1.8rem)!important;color:#fff!important}\r\n  #bpp9 .bpp9-rec-grid{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr))!important;gap:15px!important}\r\n  #bpp9 .bpp9-rec{position:relative;border:1px solid #4b618d!important;border-radius:21px!important;background:linear-gradient(145deg,#1d2b50,#151d3a)!important;min-height:225px!important;padding:22px!important;cursor:pointer;transition:transform .18s,border-color .18s,box-shadow .18s}\r\n  #bpp9 .bpp9-rec:hover{transform:translateY(-4px);border-color:#9eeaff!important;box-shadow:0 18px 36px #0005}\r\n  #bpp9 .bpp9-rec.selected{background:linear-gradient(145deg,#3c3276,#1b3158)!important;border:2px solid #b8a7ff!important;box-shadow:0 0 30px #9580ff35!important}\r\n  #bpp9 .bpp9-rec:focus-visible{outline:3px solid #8ceaff;outline-offset:3px}\r\n  #bpp9 .bpp9-counter{background:#252b62!important;color:#fff!important;border:1px solid #a991ff!important;border-radius:16px!important;font-size:1rem!important}\r\n  #bpp9 .bpp9-package{border:1px solid #546c9a!important;background:linear-gradient(150deg,#1d2b50,#151d38)!important;border-radius:22px!important;padding:24px!important;min-height:280px!important}\r\n  #bpp9 .bpp9-package.featured{border-color:#b49fff!important;box-shadow:0 0 32px #9680ff25!important}\r\n  #bpp9 .bpp9-package-price{color:#bdaaff!important}\r\n  #bpp9 .bpp9-nav button.active{background:linear-gradient(100deg,#a991ff,#8ceaff)!important;color:#111832!important}\r\n  #bpp9 .bpp9-stat strong{font-size:1.65rem!important;color:#fff}\r\n  #bpp9 .bpp9-stat small{color:#a7c9f2!important}\r\n  #bpp9 .v11-wizard-head{padding:17px 19px;margin:0 0 17px;border:1px solid #5269a0;border-radius:18px;background:#15274b}\r\n  #bpp9 .v11-wizard-head strong{display:block;font-size:1.05rem;margin:0 0 11px}\r\n  #bpp9 .v11-track{height:6px;border-radius:20px;background:#344668;overflow:hidden}\r\n  #bpp9 .v11-track span{display:block;height:100%;border-radius:20px;background:linear-gradient(90deg,#a991ff,#8ceaff);transition:width .25s}\r\n  #bpp9 .v11-wizard-controls{display:flex;justify-content:space-between;gap:12px;margin:16px 0;flex-wrap:wrap}\r\n  #bpp9 .v11-wizard-controls button{padding:12px 19px;border-radius:12px;border:1px solid #758bbd;background:#1e315a;color:white;cursor:pointer;font-weight:750}\r\n  #bpp9 .v11-wizard-controls button:last-child{background:linear-gradient(110deg,#a991ff,#8ceaff);color:#101733;border:0}\r\n  #bpp9 .v11-wizard-controls button:disabled{opacity:.4;cursor:not-allowed}\r\n  #bpp9 .v11-market-intro{padding:17px 20px;margin:15px 0 20px;border:1px solid #6279b5;border-radius:18px;background:linear-gradient(120deg,#253469,#25204b)}\r\n  #bpp9 .v11-market-intro strong{display:block;font-size:1.1rem;color:white;margin-bottom:6px}\r\n  #bpp9 .v11-market-intro p{color:#d2dcf4;line-height:1.65;margin:0}\r\n  #bpp9 .v11-market-tag{display:inline-block;margin-top:13px;padding:7px 10px;border:1px solid #9deaff80;border-radius:99px;color:#a4eaff;font-size:.75rem;font-weight:750}\r\n  #bpp9 .v11-package-note{color:#a7badf;font-size:.8rem;line-height:1.5;margin:8px 0}\r\n  @media(max-width:760px){#bpp9 .bpp9-hero{padding:24px!important;border-radius:20px!important}#bpp9 .bpp9-hero h1{font-size:clamp(2.1rem,10vw,3.4rem)!important}#bpp9 .bpp9-top{padding:12px!important}#bpp9 .bpp9-rec-grid{grid-template-columns:1fr!important}#bpp9 .bpp9-rec{min-height:180px!important}#bpp9 .bpp9-panel{padding:17px!important}#bpp9 .bpp9-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}\r\n  @media(prefers-reduced-motion:reduce){#bpp9 *,#bpp9 *:before,#bpp9 *:after{transition:none!important;animation:none!important}}\r\n  \r\n<\/style>\r\n\r\n<div id=\"bpp9\" aria-hidden=\"true\" data-build=\"V11-INTEGRATED\">\r\n  <div class=\"bpp9-wrap\">\r\n\r\n    <header class=\"bpp9-top\">\r\n      <div class=\"bpp9-brand\">\r\n        <div class=\"bpp9-logo\">B<\/div>\r\n        <div>\r\n          <strong>Bliss Partner<\/strong>\r\n          <small>Travel Placement Intelligence<\/small>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <div class=\"bpp9-top-actions\">\r\n        <button class=\"bpp9-btn\" type=\"button\" data-bpp9=\"login\">Partner Sign In<\/button>\r\n        <button class=\"bpp9-btn primary\" type=\"button\" data-bpp9=\"start\">Become a Host<\/button>\r\n      <\/div>\r\n    <\/header>\r\n\r\n    <!-- LANDING -->\r\n    <section id=\"bpp9Landing\">\r\n      <div class=\"bpp9-hero\">\r\n\r\n        <div>\r\n          <div class=\"bpp9-eyebrow\">Bliss Travel \u00b7 Partner Network<\/div>\r\n\r\n          <h1>\r\n            Put your business\r\n            <span class=\"bpp9-gradient\">inside the journey.<\/span>\r\n          <\/h1>\r\n\r\n          <p class=\"bpp9-lead\">\r\n  Bliss Host Intelligence uses information supplied by your business to identify\r\n  advertising locations within Bliss Travel that may fit your services.\r\n  We show 12 placement suggestions, and you may select your first 5 free.\r\n<\/p>\r\n\r\n<div class=\"bpp9-disclosure\">\r\n  <strong>About the platform:<\/strong>\r\n  Bliss Travel is a marketing and discovery platform operated by Limitless for Marketing.\r\n  Participating businesses are independent providers. A placement is advertising space\r\n  within the Bliss Travel platform and does not constitute an endorsement, certification,\r\n  partnership, agency relationship, or guarantee of traffic, inquiries, reservations,\r\n  or sales. Limitless for Marketing does not provide, operate, control, or guarantee\r\n  the travel services advertised by participating businesses.\r\n<\/div>\r\n\r\n<div class=\"bpp9-chip-row\">\r\n            <span class=\"bpp9-chip\">Host Intelligence<\/span>\r\n            <span class=\"bpp9-chip\">12 placement recommendations<\/span>\r\n            <span class=\"bpp9-chip\">5 free placements<\/span>\r\n            <span class=\"bpp9-chip\">Saved Partner account<\/span>\r\n          <\/div>\r\n        <\/div>\r\n\r\n        <aside class=\"bpp9-access\">\r\n          <h2>Partner access<\/h2>\r\n          <p>Choose your path.<\/p>\r\n\r\n          <div class=\"bpp9-access-grid\">\r\n            <button class=\"bpp9-action-card\" type=\"button\" data-bpp9=\"start\">\r\n              <span>\r\n                <strong>Become a Host<\/strong>\r\n                <small>Answer the Host Intelligence questionnaire and choose up to 5 free placements.<\/small>\r\n              <\/span>\r\n              <span class=\"bpp9-arrow\">\u2192<\/span>\r\n            <\/button>\r\n\r\n            <button class=\"bpp9-action-card\" type=\"button\" data-bpp9=\"login\">\r\n              <span>\r\n                <strong>Partner Sign In<\/strong>\r\n                <small>Return to your placements, profile and Host Intelligence.<\/small>\r\n              <\/span>\r\n              <span class=\"bpp9-arrow\">\u2192<\/span>\r\n            <\/button>\r\n          <\/div>\r\n        <\/aside>\r\n\r\n      <\/div>\r\n    <\/section>\r\n\r\n    <!-- LOGIN -->\r\n    <section id=\"bpp9Login\" class=\"bpp9-hidden\">\r\n      <div class=\"bpp9-page\">\r\n        <div class=\"bpp9-page-inner\">\r\n          <div class=\"bpp9-panel\" style=\"width:min(620px,100%);margin:30px auto 0;\">\r\n            <div class=\"bpp9-panel-head\">\r\n              <div>\r\n                <div class=\"bpp9-eyebrow\">Existing Partner<\/div>\r\n                <h1>Welcome back.<\/h1>\r\n                <p class=\"bpp9-copy\">Sign in to your Bliss Partner account.<\/p>\r\n              <\/div>\r\n              <button class=\"bpp9-btn\" type=\"button\" data-bpp9=\"home\">Back<\/button>\r\n            <\/div>\r\n\r\n            <div class=\"bpp9-grid2\">\r\n              <div class=\"bpp9-field full\">\r\n                <label>Email<\/label>\r\n                <input id=\"bpp9LoginEmail\" class=\"bpp9-input\" type=\"email\" autocomplete=\"email\">\r\n              <\/div>\r\n\r\n              <div class=\"bpp9-field full\">\r\n                <label>Password<\/label>\r\n                <input id=\"bpp9LoginPassword\" class=\"bpp9-input\" type=\"password\" autocomplete=\"current-password\">\r\n              <\/div>\r\n            <\/div>\r\n\r\n            <div class=\"bpp9-actions\">\r\n              <span><\/span>\r\n              <button class=\"bpp9-btn primary\" type=\"button\" data-bpp9=\"login-submit\">Sign In<\/button>\r\n            <\/div>\r\n          <\/div>\r\n        <\/div>\r\n      <\/div>\r\n    <\/section>\r\n\r\n    <!-- ONBOARDING -->\r\n    <section id=\"bpp9Onboarding\" class=\"bpp9-hidden\">\r\n      <div class=\"bpp9-page\">\r\n        <div class=\"bpp9-page-inner\">\r\n\r\n          <div class=\"bpp9-progress\">\r\n            <span id=\"bpp9P1\" class=\"active\"><\/span>\r\n            <span id=\"bpp9P2\"><\/span>\r\n            <span id=\"bpp9P3\"><\/span>\r\n            <span id=\"bpp9P4\"><\/span>\r\n          <\/div>\r\n\r\n          <!-- STEP 1 -->\r\n          <div id=\"bpp9Step1\" class=\"bpp9-panel\">\r\n            <div class=\"bpp9-panel-head\">\r\n              <div>\r\n                <div class=\"bpp9-eyebrow\">01 \u00b7 Partner basics<\/div>\r\n                <h1>Tell us who you are.<\/h1>\r\n                <p class=\"bpp9-copy\">\r\n                  Only the information needed to create your Partner account.\r\n                  Images, videos, booking links and richer business content belong inside the account later.\r\n                <\/p>\r\n              <\/div>\r\n            <\/div>\r\n\r\n            <div class=\"bpp9-grid2\">\r\n              <div class=\"bpp9-field\">\r\n                <label>Business Name *<\/label>\r\n                <input id=\"bpp9Business\" class=\"bpp9-input\" type=\"text\">\r\n              <\/div>\r\n\r\n              <div class=\"bpp9-field\">\r\n                <label>Contact Name *<\/label>\r\n                <input id=\"bpp9Contact\" class=\"bpp9-input\" type=\"text\">\r\n              <\/div>\r\n\r\n              <div class=\"bpp9-field\">\r\n                <label>Email *<\/label>\r\n                <input id=\"bpp9Email\" class=\"bpp9-input\" type=\"email\">\r\n              <\/div>\r\n\r\n              <div class=\"bpp9-field\">\r\n                <label>Phone<\/label>\r\n                <input id=\"bpp9Phone\" class=\"bpp9-input\" type=\"tel\">\r\n              <\/div>\r\n\r\n              <div class=\"bpp9-field\">\r\n                <label>City \/ Area<\/label>\r\n                <input id=\"bpp9Location\" class=\"bpp9-input\" type=\"text\" placeholder=\"Example: Medell\u00edn, Antioquia\">\r\n              <\/div>\r\n\r\n              <div class=\"bpp9-field\">\r\n                <label>Password *<\/label>\r\n                <input id=\"bpp9Password\" class=\"bpp9-input\" type=\"password\" autocomplete=\"new-password\">\r\n              <\/div>\r\n\r\n              <div class=\"bpp9-field full\">\r\n                <label>Confirm Password *<\/label>\r\n                <input id=\"bpp9Confirm\" class=\"bpp9-input\" type=\"password\" autocomplete=\"new-password\">\r\n              <\/div>\r\n            <\/div>\r\n\r\n            <div class=\"bpp9-actions\">\r\n              <button class=\"bpp9-btn\" type=\"button\" data-bpp9=\"home\">Back<\/button>\r\n              <button class=\"bpp9-btn primary\" type=\"button\" data-bpp9=\"to-intel\">Continue to Host Intelligence<\/button>\r\n            <\/div>\r\n          <\/div>\r\n\r\n          <!-- STEP 2 -->\r\n          <div id=\"bpp9Step2\" class=\"bpp9-panel bpp9-hidden\">\r\n            <div class=\"bpp9-panel-head\">\r\n              <div>\r\n                <div class=\"bpp9-eyebrow\">02 \u00b7 Host Intelligence<\/div>\r\n                <h1>Who are you best for?<\/h1>\r\n                <p class=\"bpp9-copy\">\r\n                  These answers use the same matching dimensions as the Travel Intelligence system,\r\n                  but from the business side.\r\n                <\/p>\r\n              <\/div>\r\n            <\/div>\r\n\r\n            <div id=\"bpp9Questions\"><\/div>\r\n\r\n            <div class=\"bpp9-actions\">\r\n              <button class=\"bpp9-btn\" type=\"button\" data-bpp9=\"back-basics\">Back<\/button>\r\n              <button class=\"bpp9-btn primary\" type=\"button\" data-bpp9=\"recommend\">Show My 12 Recommendations<\/button>\r\n            <\/div>\r\n          <\/div>\r\n\r\n          <!-- STEP 3 -->\r\n          <div id=\"bpp9Step3\" class=\"bpp9-panel bpp9-hidden\">\r\n            <div class=\"bpp9-rec-head\">\r\n              <div>\r\n                <div class=\"bpp9-eyebrow\">03 \u00b7 Bliss Travel match<\/div>\r\n                <h1 style=\"margin:7px 0 0;\">Choose your free placements.<\/h1>\r\n<p class=\"bpp9-copy\">\r\n  Select between 1 and 5 suggested placements. You may use any remaining\r\n  free placement spaces later from your Partner account.\r\n<\/p>\r\n              <\/div>\r\n              <div id=\"bpp9Counter\" class=\"bpp9-counter\">0 selected \u00b7 5 available<\/div>\r\n            <\/div>\r\n\r\n            <div id=\"bpp9RecGrid\" class=\"bpp9-rec-grid\"><\/div>\r\n\r\n            <div class=\"bpp9-actions\">\r\n              <button class=\"bpp9-btn\" type=\"button\" data-bpp9=\"back-intel\">Change Answers<\/button>\r\n              <button id=\"bpp9Create\" class=\"bpp9-btn good\" type=\"button\" data-bpp9=\"create\" disabled>\r\n  Create Account With Selected Placements\r\n<\/button>\r\n            <\/div>\r\n          <\/div>\r\n\r\n        <\/div>\r\n      <\/div>\r\n    <\/section>\r\n\r\n    <!-- DASHBOARD -->\r\n    <section id=\"bpp9Dashboard\" class=\"bpp9-hidden\">\r\n      <div class=\"bpp9-page\">\r\n        <div class=\"bpp9-page-inner\">\r\n\r\n          <div class=\"bpp9-dashboard\">\r\n\r\n            <aside class=\"bpp9-panel bpp9-side\">\r\n              <div class=\"bpp9-eyebrow\">Bliss Partner<\/div>\r\n              <h3 id=\"bpp9SideBusiness\">Bliss Travel<\/h3>\r\n              <div id=\"bpp9SideEmail\" class=\"bpp9-side-email\"><\/div>\r\n\r\n              <div class=\"bpp9-nav\">\r\n                <button class=\"active\" type=\"button\" data-bpp9-dash=\"placements\">Bliss Travel<\/button>\r\n                <button type=\"button\" data-bpp9-dash=\"intel\">Host Intelligence<\/button>\r\n                <button type=\"button\" data-bpp9-dash=\"ti\">Travel Intelligence<\/button>\r\n                <button type=\"button\" data-bpp9-dash=\"profile\">Profile<\/button>\r\n              <\/div>\r\n\r\n              <button class=\"bpp9-btn\" style=\"width:100%;margin-top:18px;\" type=\"button\" data-bpp9=\"logout\">Sign Out<\/button>\r\n            <\/aside>\r\n\r\n            <main class=\"bpp9-main\">\r\n\r\n              <div id=\"bpp9DashPlacements\" class=\"bpp9-dash-view\">\r\n                <section class=\"bpp9-panel\">\r\n                  <div class=\"bpp9-eyebrow\">Bliss Travel placements<\/div>\r\n                  <h2 style=\"margin:7px 0 0;\">My Placement Cards<\/h2>\r\n                  <p class=\"bpp9-copy\">\r\n                    These exact Bliss Travel routes are saved to your Partner account.\r\n                  <\/p>\r\n\r\n                  <div class=\"bpp9-stat-grid\">\r\n                    <div class=\"bpp9-stat\">\r\n                      <small>Current Plan<\/small>\r\n                      <strong id=\"bpp9Plan\">5 Free<\/strong>\r\n                    <\/div>\r\n                    <div class=\"bpp9-stat\">\r\n                      <small>Selected<\/small>\r\n                      <strong id=\"bpp9Used\">0<\/strong>\r\n                    <\/div>\r\n                    <div class=\"bpp9-stat\">\r\n                      <small>Limit<\/small>\r\n                      <strong id=\"bpp9Limit\">5<\/strong>\r\n                    <\/div>\r\n                    <div class=\"bpp9-stat\">\r\n                      <small>Live Cards<\/small>\r\n                      <strong id=\"bpp9Live\">0<\/strong>\r\n                    <\/div>\r\n                  <\/div>\r\n\r\n                  <div id=\"bpp9PlacementGrid\" class=\"bpp9-card-grid\"><\/div>\r\n                <\/section>\r\n\r\n                <section class=\"bpp9-panel\" style=\"margin-top:14px;\">\r\n  <div class=\"bpp9-eyebrow\">Expand Your Bliss Travel Visibility<\/div>\r\n\r\n  <h2 style=\"margin:7px 0 0;\">\r\n    Purchase Additional Placement Capacity\r\n  <\/h2>\r\n\r\n  <p class=\"bpp9-copy\">\r\n    Select a plan to increase the total number of advertising placements\r\n    available to your business. Your new limit becomes active after payment\r\n    is verified.\r\n  <\/p>\r\n\r\n  <div class=\"bpp9-package-grid\">\r\n\r\n    <article class=\"bpp9-package\">\r\n      <small>Placement Plan<\/small>\r\n      <strong>10 Placements<\/strong>\r\n      <span class=\"bpp9-package-price\">Price to be announced<\/span>\r\n\r\n      <p>\r\n        Increase your account limit to a total of 10 placements.\r\n      <\/p>\r\n\r\n      <button\r\n        class=\"bpp9-btn primary\"\r\n        type=\"button\"\r\n        data-bpp9-checkout=\"routes_10\">\r\n        Purchase 10 Placements\r\n      <\/button>\r\n    <\/article>\r\n\r\n    <article class=\"bpp9-package featured\">\r\n      <small>Placement Plan<\/small>\r\n      <strong>20 Placements<\/strong>\r\n      <span class=\"bpp9-package-price\">Price to be announced<\/span>\r\n\r\n      <p>\r\n        Increase your account limit to a total of 20 placements.\r\n      <\/p>\r\n\r\n      <button\r\n        class=\"bpp9-btn primary\"\r\n        type=\"button\"\r\n        data-bpp9-checkout=\"routes_20\">\r\n        Purchase 20 Placements\r\n      <\/button>\r\n    <\/article>\r\n\r\n    <article class=\"bpp9-package\">\r\n      <small>Placement Plan<\/small>\r\n      <strong>30 Placements<\/strong>\r\n      <span class=\"bpp9-package-price\">Price to be announced<\/span>\r\n\r\n      <p>\r\n        Increase your account limit to a total of 30 placements.\r\n      <\/p>\r\n\r\n      <button\r\n        class=\"bpp9-btn primary\"\r\n        type=\"button\"\r\n        data-bpp9-checkout=\"routes_30\">\r\n        Purchase 30 Placements\r\n      <\/button>\r\n    <\/article>\r\n\r\n  <\/div>\r\n\r\n  <div class=\"bpp9-disclosure\">\r\n    Purchasing a placement plan does not guarantee a specific position,\r\n    number of views, inquiries, reservations, revenue, or sales. Placements\r\n    remain subject to platform requirements and review.\r\n  <\/div>\r\n<\/section>\r\n              <\/div>\r\n\r\n              <div id=\"bpp9DashIntel\" class=\"bpp9-dash-view bpp9-hidden\">\r\n\r\n  <section class=\"bpp9-panel\">\r\n\r\n    <div class=\"bpp9-panel-head\">\r\n      <div>\r\n        <div class=\"bpp9-eyebrow\">Host Intelligence<\/div>\r\n        <h2 style=\"margin:7px 0 0;\">Your Business Match Profile<\/h2>\r\n        <p class=\"bpp9-copy\">\r\n          These answers help identify Bliss Travel advertising placements that may be relevant to your business. Placement suggestions do not guarantee publication, position, impressions, inquiries, reservations, or sales.\r\n        <\/p>\r\n      <\/div>\r\n\r\n      <button\r\n        class=\"bpp9-btn primary\"\r\n        type=\"button\"\r\n        data-bpp9=\"edit-intel\">\r\n        Edit Host Intelligence\r\n      <\/button>\r\n    <\/div>\r\n\r\n    <div id=\"bpp9IntelSummary\" class=\"bpp9-summary\"><\/div>\r\n\r\n  <\/section>\r\n\r\n\r\n  <section\r\n    id=\"bpp9IntelEditor\"\r\n    class=\"bpp9-panel bpp9-hidden\"\r\n    style=\"margin-top:14px;\">\r\n\r\n    <div class=\"bpp9-panel-head\">\r\n      <div>\r\n        <div class=\"bpp9-eyebrow\">Edit Host Intelligence<\/div>\r\n        <h2 style=\"margin:7px 0 0;\">Update Your Business Match Profile<\/h2>\r\n        <p class=\"bpp9-copy\">\r\n          Change your answers and Bliss will recalculate your placement recommendations.\r\n        <\/p>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <div id=\"bpp9IntelEditQuestions\"><\/div>\r\n\r\n    <div class=\"bpp9-actions\">\r\n      <button\r\n        class=\"bpp9-btn\"\r\n        type=\"button\"\r\n        data-bpp9=\"cancel-intel-edit\">\r\n        Cancel\r\n      <\/button>\r\n\r\n      <button\r\n        class=\"bpp9-btn good\"\r\n        type=\"button\"\r\n        data-bpp9=\"save-intel-edit\">\r\n        Save & Recalculate\r\n      <\/button>\r\n    <\/div>\r\n\r\n  <\/section>\r\n\r\n<\/div>\r\n\r\n              <div id=\"bpp9DashTi\" class=\"bpp9-dash-view bpp9-hidden\">\r\n                <section class=\"bpp9-panel\">\r\n                  <div class=\"bpp9-eyebrow\">Travel Intelligence<\/div>\r\n                  <h2 style=\"margin:7px 0 0;\">Become eligible to appear in matched advertising placements<\/h2>\r\n                  <p class=\"bpp9-copy\">\r\n                    Your Host Intelligence profile already tells Bliss who matches your business.\r\n                    Travel Intelligence activates recommendation eligibility.\r\n                  <\/p>\r\n\r\n                  <div class=\"bpp9-ti\">\r\n                    <div>\r\n                      <strong>Travel Intelligence<\/strong>\r\n                      <p class=\"bpp9-copy\">Eligibility for profile-based placement matching<\/p>\r\n                    <\/div>\r\n                    <div>\r\n                      <div class=\"bpp9-ti-price\">$39\/month<\/div>\r\n                      <button\r\n  class=\"bpp9-btn primary\"\r\n  type=\"button\"\r\n  data-bpp9-checkout=\"travel_intelligence\">\r\n  Activate for $39\/month\r\n<\/button>\r\n                    <\/div>\r\n                  <\/div>\r\n\r\n                  <div class=\"bpp9-ti\">\r\n                    <div>\r\n                      <strong>TI Boost<\/strong>\r\n                      <p class=\"bpp9-copy\">Optional paid visibility boost within eligible placements while Travel Intelligence is active.<\/p>\r\n                    <\/div>\r\n                    <div>\r\n                      <div class=\"bpp9-ti-price\">+$6.99\/month<\/div>\r\n                      <button\r\n  class=\"bpp9-btn primary\"\r\n  type=\"button\"\r\n  data-bpp9-checkout=\"ti_boost\">\r\n  Add Boost for $6.99\/month\r\n<\/button>\r\n                    <\/div>\r\n                  <\/div>\r\n                <\/section>\r\n              <\/div>\r\n\r\n              <div id=\"bpp9DashProfile\" class=\"bpp9-dash-view bpp9-hidden\">\r\n                <section class=\"bpp9-panel\">\r\n                  <div class=\"bpp9-eyebrow\">Partner Profile<\/div>\r\n                  <h2 style=\"margin:7px 0 0;\">Business Information<\/h2>\r\n\r\n                  <div class=\"bpp9-grid2\" style=\"margin-top:18px;\">\r\n                    <div class=\"bpp9-field\">\r\n                      <label>Business Name<\/label>\r\n                      <input id=\"bpp9ProfileBusiness\" class=\"bpp9-input\" type=\"text\">\r\n                    <\/div>\r\n\r\n                    <div class=\"bpp9-field\">\r\n                      <label>Contact Name<\/label>\r\n                      <input id=\"bpp9ProfileContact\" class=\"bpp9-input\" type=\"text\">\r\n                    <\/div>\r\n\r\n                    <div class=\"bpp9-field\">\r\n                      <label>Email<\/label>\r\n                      <input id=\"bpp9ProfileEmail\" class=\"bpp9-input\" type=\"email\">\r\n                    <\/div>\r\n\r\n                    <div class=\"bpp9-field\">\r\n                      <label>Phone<\/label>\r\n                      <input id=\"bpp9ProfilePhone\" class=\"bpp9-input\" type=\"tel\">\r\n                    <\/div>\r\n                  <\/div>\r\n\r\n                  <div class=\"bpp9-actions\">\r\n                    <span><\/span>\r\n                    <button class=\"bpp9-btn primary\" type=\"button\" data-bpp9=\"save-profile\">Save Profile<\/button>\r\n                  <\/div>\r\n                <\/section>\r\n              <\/div>\r\n\r\n            <\/main>\r\n          <\/div>\r\n\r\n        <\/div>\r\n      <\/div>\r\n    <\/section>\r\n\r\n  <\/div>\r\n\r\n  <!-- hidden admin entrance -->\r\n  <button id=\"bpp9AdminBtn\" class=\"bpp9-admin\" type=\"button\" title=\"Admin\">\u2022<\/button>\r\n\r\n  <div id=\"bpp9AdminModal\" class=\"bpp9-modal-layer\">\r\n    <div class=\"bpp9-modal\">\r\n      <div class=\"bpp9-eyebrow\">Bliss Admin<\/div>\r\n      <h2 style=\"margin:7px 0 0;\">Control Access<\/h2>\r\n      <p class=\"bpp9-copy\">\r\n        Admin access uses your existing WordPress administrator session.\r\n      <\/p>\r\n\r\n      <div class=\"bpp9-actions\">\r\n        <button class=\"bpp9-btn\" type=\"button\" data-bpp9=\"admin-close\">Cancel<\/button>\r\n        <button class=\"bpp9-btn\" type=\"button\" data-bpp9=\"wp-admin\">WordPress Admin<\/button>\r\n        <button class=\"bpp9-btn primary\" type=\"button\" data-bpp9=\"control-panel\">Partner Control Panel<\/button>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <div id=\"bpp9Toast\" class=\"bpp9-toast\"><\/div>\r\n<\/div>\r\n\r\n<script>\r\n(function(){\r\n\r\n\"use strict\";\r\n\r\nvar bpp9Started = false;\r\n\r\nfunction activateBPP9(){\r\n\r\n  var params =\r\n    new URLSearchParams(\r\n      window.location.search\r\n    );\r\n\r\n  var open =\r\n    params.get(\r\n      \"partnerportal\"\r\n    ) === \"1\";\r\n\r\n  if(!open){\r\n    return null;\r\n  }\r\n\r\n  var root =\r\n    document.getElementById(\r\n      \"bpp9\"\r\n    );\r\n\r\n  if(!root){\r\n    console.error(\r\n      \"[Bliss Partner Portal] #bpp9 not found.\"\r\n    );\r\n    return null;\r\n  }\r\n\r\n  \/*\r\n   * Put the hidden overlay directly under BODY before\r\n   * hiding the WordPress page around it.\r\n   *\/\r\n  if(\r\n    root.parentElement !==\r\n    document.body\r\n  ){\r\n    document.body.appendChild(\r\n      root\r\n    );\r\n  }\r\n\r\n  document.documentElement\r\n    .classList\r\n    .add(\r\n      \"bpp9-open\"\r\n    );\r\n\r\n  document.body\r\n    .classList\r\n    .add(\r\n      \"bpp9-open\",\r\n      \"bpp9-hard-hide\"\r\n    );\r\n\r\n  root.style.setProperty(\r\n    \"display\",\r\n    \"block\",\r\n    \"important\"\r\n  );\r\n\r\n  root.style.setProperty(\r\n    \"visibility\",\r\n    \"visible\",\r\n    \"important\"\r\n  );\r\n\r\n  root.style.setProperty(\r\n    \"opacity\",\r\n    \"1\",\r\n    \"important\"\r\n  );\r\n\r\n  root.style.setProperty(\r\n    \"pointer-events\",\r\n    \"auto\",\r\n    \"important\"\r\n  );\r\n\r\n  root.setAttribute(\r\n    \"aria-hidden\",\r\n    \"false\"\r\n  );\r\n\r\n  root.scrollTop = 0;\r\n\r\n  return root;\r\n}\r\n\r\n\r\nfunction initBPP9(){\r\n\r\n  if(bpp9Started){\r\n    return;\r\n  }\r\n\r\n  var root =\r\n    activateBPP9();\r\n\r\n  if(!root){\r\n    return;\r\n  }\r\n\r\n  bpp9Started = true;\r\n  root.setAttribute(\"data-partner-ready\",\"1\");\r\n\r\n  var AJAX_URL = \"\/GGG\/wp-admin\/admin-ajax.php\";\r\n\r\n  var CSRF = \"\";\r\n  var currentAccount = {};\r\n  var currentBuilder = {};\r\n  var onboardingIntelligence = {};\r\n  var onboardingRecommendations = [];\r\n  var onboardingSelected = [];\r\n\r\n  \/*\r\n   * BLISS PARTNER STRIPE PAYMENT LINKS\r\n   *\r\n   * Replace each PASTE_STRIPE... value with its real\r\n   * Stripe Payment Link.\r\n   *\/\r\n  var BPP9_CHECKOUTS = {\r\n\r\n    routes_10: {\r\n      name: \"10 Placements\",\r\n      price: \"ENTER PRICE\",\r\n      url: \"PASTE_STRIPE_LINK_FOR_10_PLACEMENTS\"\r\n    },\r\n\r\n    routes_20: {\r\n      name: \"20 Placements\",\r\n      price: \"ENTER PRICE\",\r\n      url: \"PASTE_STRIPE_LINK_FOR_20_PLACEMENTS\"\r\n    },\r\n\r\n    routes_30: {\r\n      name: \"30 Placements\",\r\n      price: \"ENTER PRICE\",\r\n      url: \"PASTE_STRIPE_LINK_FOR_30_PLACEMENTS\"\r\n    },\r\n\r\n    travel_intelligence: {\r\n      name: \"Travel Intelligence\",\r\n      price: \"$39\/month\",\r\n      url: \"PASTE_STRIPE_LINK_FOR_TRAVEL_INTELLIGENCE\"\r\n    },\r\n\r\n    ti_boost: {\r\n      name: \"TI Boost\",\r\n      price: \"$6.99\/month\",\r\n      url: \"PASTE_STRIPE_LINK_FOR_TI_BOOST\"\r\n    }\r\n\r\n  };\r\n\r\n  function el(id){\r\n    return document.getElementById(id);\r\n  }\r\n\r\n  function esc(value){\r\n    return String(value == null ? \"\" : value)\r\n      .replace(\/&\/g,\"&amp;\")\r\n      .replace(\/<\/g,\"&lt;\")\r\n      .replace(\/>\/g,\"&gt;\")\r\n      .replace(\/\"\/g,\"&quot;\")\r\n      .replace(\/'\/g,\"&#039;\");\r\n  }\r\n\r\n  function toast(message){\r\n    var box = el(\"bpp9Toast\");\r\n    if(!box) return;\r\n    box.textContent = String(message || \"\");\r\n    box.classList.add(\"show\");\r\n    clearTimeout(box._t);\r\n    box._t = setTimeout(function(){\r\n      box.classList.remove(\"show\");\r\n    },3800);\r\n  }\r\n\r\n  function post(action,values){\r\n    values = values || {};\r\n\r\n    var body = new URLSearchParams();\r\n    body.append(\"action\",action);\r\n\r\n    Object.keys(values).forEach(function(key){\r\n      body.append(key,values[key]);\r\n    });\r\n\r\n    return fetch(AJAX_URL,{\r\n      method:\"POST\",\r\n      credentials:\"same-origin\",\r\n      headers:{\r\n        \"Content-Type\":\"application\/x-www-form-urlencoded; charset=UTF-8\"\r\n      },\r\n      body:body.toString()\r\n    })\r\n    .then(function(response){\r\n\r\n      return response.text().then(function(raw){\r\n\r\n        return {\r\n          status:response.status,\r\n          statusText:response.statusText || \"\",\r\n          url:response.url || AJAX_URL,\r\n          raw:raw\r\n        };\r\n\r\n      });\r\n\r\n    })\r\n    .then(function(packet){\r\n\r\n      var raw =\r\n        String(\r\n          packet.raw || \"\"\r\n        ).trim();\r\n\r\n      var result;\r\n\r\n      try{\r\n\r\n        result =\r\n          JSON.parse(\r\n            raw\r\n          );\r\n\r\n      }catch(error){\r\n\r\n        console.error(\r\n          \"[BLISS PARTNER AJAX RAW RESPONSE]\",\r\n          packet\r\n        );\r\n\r\n        var preview =\r\n          raw\r\n            .replace(\/\\\\s+\/g,\" \")\r\n            .trim()\r\n            .slice(0,1200);\r\n\r\n        throw new Error(\r\n          \"BLISS AJAX DEBUG \u2014 HTTP \" +\r\n          packet.status +\r\n          (\r\n            packet.statusText\r\n              ? \" \" + packet.statusText\r\n              : \"\"\r\n          ) +\r\n          \" \u2014 \" +\r\n          (\r\n            preview ||\r\n            \"EMPTY RESPONSE\"\r\n          )\r\n        );\r\n      }\r\n\r\n      if(!result || result.success !== true){\r\n        throw new Error(\r\n          result &&\r\n          result.data &&\r\n          result.data.message\r\n            ? result.data.message\r\n            : \"Partner Portal request failed.\"\r\n        );\r\n      }\r\n\r\n      return result.data || {};\r\n    });\r\n  }\r\n\r\n  var screens = [\r\n    \"bpp9Landing\",\r\n    \"bpp9Login\",\r\n    \"bpp9Onboarding\",\r\n    \"bpp9Dashboard\"\r\n  ];\r\n\r\n  function showScreen(id){\r\n    screens.forEach(function(screenId){\r\n      var node = el(screenId);\r\n      if(node){\r\n        node.classList.toggle(\"bpp9-hidden\",screenId !== id);\r\n      }\r\n    });\r\n\r\n    root.scrollTop = 0;\r\n  }\r\n\r\n  function showStep(step){\r\n    [1,2,3].forEach(function(n){\r\n      var node = el(\"bpp9Step\"+n);\r\n      if(node){\r\n        node.classList.toggle(\"bpp9-hidden\",n !== step);\r\n      }\r\n    });\r\n\r\n    [1,2,3,4].forEach(function(n){\r\n      var bar = el(\"bpp9P\"+n);\r\n      if(bar){\r\n        bar.classList.toggle(\"active\",n <= step);\r\n      }\r\n    });\r\n\r\n    root.scrollTop = 0;\r\n  }\r\n\r\n  var INTEL = {\r\n    businessTypes:[\r\n      \"Accommodation\",\r\n      \"Restaurant \/ Food\",\r\n      \"Tour \/ Experience\",\r\n      \"Transportation\",\r\n      \"Concierge \/ Local Service\",\r\n      \"Nightlife\",\r\n      \"Entertainment \/ Events\",\r\n      \"Wellness\",\r\n      \"Medical\",\r\n      \"Shopping \/ Fashion\",\r\n      \"Culture \/ Art\",\r\n      \"Other\"\r\n    ],\r\n    travelingWith:[\r\n      \"Solo\",\"Couple\",\"Friends\",\"Family\",\"Kids\",\"Business Group\",\"Pet\"\r\n    ],\r\n    travelStyles:[\r\n      \"Balanced\",\"Luxury\",\"Local &#038; Authentic\",\"Adventure\",\"Relaxation\",\r\n      \"Romantic\",\"Family\",\"Business\",\"Wellness\"\r\n    ],\r\n    budgets:[\r\n      \"$\",\"$$\",\"$$$\",\"$$$$\",\"Flexible\"\r\n    ],\r\n    tripLengths:[\r\n      \"1\u20133 Days\",\"4\u20136 Days\",\"7 Days\",\"2 Weeks\",\"1 Month\",\"Long-Term\"\r\n    ],\r\n    transportation:[\r\n      \"Private Driver\",\"Ride Share\",\"Rental Car\",\"Walking\",\r\n      \"Public Transportation\",\"Luxury Transportation\",\"Flexible\"\r\n    ],\r\n    paces:[\r\n      \"Slow &#038; Relaxed\",\"Balanced\",\"Active\",\"Full Schedule\"\r\n    ],\r\n    interests:[\r\n      \"Food\",\"Coffee\",\"Nature\",\"Nightlife\",\"Local Culture\",\"History\",\"Luxury\",\r\n      \"Shopping\",\"Wellness\",\"Medical Tourism\",\"Entertainment\",\"Adventure\",\r\n      \"Sustainability\",\"Family Activities\",\"Romantic Experiences\"\r\n    ],\r\n    foodStyle:[\r\n      \"Local Flavor\",\"Premium Dining\",\"Coffee\",\"Brunch\",\"Vegetarian\",\r\n      \"Seafood\",\"Steak\",\"Family Dining\",\"Romantic Dining\",\"Street Food\"\r\n    ],\r\n    preferredTimes:[\r\n      \"Early Morning\",\"Morning\",\"Afternoon\",\"Evening\",\"Late Night\"\r\n    ]\r\n  };\r\n\r\n  function question(title,description,key,options){\r\n    var html = \"\";\r\n\r\n    options.forEach(function(option){\r\n      html +=\r\n        '<label class=\"bpp9-choice\">' +\r\n          '<input type=\"checkbox\" data-intel=\"'+esc(key)+'\" value=\"'+esc(option)+'\">' +\r\n          '<span>'+esc(option)+'<\/span>' +\r\n        '<\/label>';\r\n    });\r\n\r\n    return (\r\n      '<div class=\"bpp9-question\">' +\r\n        '<h3>'+esc(title)+'<\/h3>' +\r\n        '<p>'+esc(description)+'<\/p>' +\r\n        '<div class=\"bpp9-options\">'+html+'<\/div>' +\r\n      '<\/div>'\r\n    );\r\n  }\r\n\r\n  function renderQuestions(){\r\n    el(\"bpp9Questions\").innerHTML =\r\n      question(\r\n        \"What kind of business are you?\",\r\n        \"Choose every category that accurately describes what you provide.\",\r\n        \"businessTypes\",\r\n        INTEL.businessTypes\r\n      ) +\r\n      question(\r\n        \"Who is your experience best for?\",\r\n        \"Which traveler groups are a strong fit for your business?\",\r\n        \"travelingWith\",\r\n        INTEL.travelingWith\r\n      ) +\r\n      question(\r\n        \"Which travel styles fit your business?\",\r\n        \"Think about the experience travelers actually receive from you.\",\r\n        \"travelStyles\",\r\n        INTEL.travelStyles\r\n      ) +\r\n      question(\r\n        \"What budgets do you serve?\",\r\n        \"Select every spending level that genuinely fits.\",\r\n        \"budgets\",\r\n        INTEL.budgets\r\n      ) +\r\n      question(\r\n        \"What trip lengths fit your business?\",\r\n        \"Choose the travel durations that make sense for your product or service.\",\r\n        \"tripLengths\",\r\n        INTEL.tripLengths\r\n      ) +\r\n      question(\r\n        \"How do your travelers usually move?\",\r\n        \"Select transportation patterns compatible with your experience.\",\r\n        \"transportation\",\r\n        INTEL.transportation\r\n      ) +\r\n      question(\r\n        \"What pace fits your experience?\",\r\n        \"How relaxed or active is the experience you provide?\",\r\n        \"paces\",\r\n        INTEL.paces\r\n      ) +\r\n      question(\r\n        \"Which traveler interests match you best?\",\r\n        \"These answers strongly influence placement recommendations.\",\r\n        \"interests\",\r\n        INTEL.interests\r\n      ) +\r\n      question(\r\n        \"Which food styles fit?\",\r\n        \"Skip this section if food is not relevant.\",\r\n        \"foodStyle\",\r\n        INTEL.foodStyle\r\n      ) +\r\n      question(\r\n        \"When is your experience strongest?\",\r\n        \"Select the times travelers are most likely to use or enjoy what you offer.\",\r\n        \"preferredTimes\",\r\n        INTEL.preferredTimes\r\n      ) +\r\n      '<div class=\"bpp9-question\">' +\r\n        '<h3>Accessibility<\/h3>' +\r\n        '<p>Can your business accommodate accessibility-friendly traveler needs?<\/p>' +\r\n        '<div class=\"bpp9-options\">' +\r\n          '<label class=\"bpp9-choice\">' +\r\n            '<input id=\"bpp9Accessibility\" type=\"checkbox\">' +\r\n            '<span>Accessibility-Friendly<\/span>' +\r\n          '<\/label>' +\r\n        '<\/div>' +\r\n      '<\/div>';\r\n  }\r\n\r\nfunction intelEditQuestion(title,description,key,options,currentIntel){\r\n\r\n  currentIntel =\r\n    currentIntel &&\r\n    typeof currentIntel === \"object\"\r\n      ? currentIntel\r\n      : {};\r\n\r\n  var selected =\r\n    Array.isArray(currentIntel[key])\r\n      ? currentIntel[key]\r\n      : [];\r\n\r\n  var html = \"\";\r\n\r\n  options.forEach(function(option){\r\n\r\n    var checked =\r\n      selected.indexOf(option) !== -1\r\n        ? \" checked\"\r\n        : \"\";\r\n\r\n    html +=\r\n      '<label class=\"bpp9-choice\">' +\r\n        '<input type=\"checkbox\" ' +\r\n        'data-intel-edit=\"'+esc(key)+'\" ' +\r\n        'value=\"'+esc(option)+'\"'+checked+'>' +\r\n        '<span>'+esc(option)+'<\/span>' +\r\n      '<\/label>';\r\n  });\r\n\r\n  return (\r\n    '<div class=\"bpp9-question\">' +\r\n      '<h3>'+esc(title)+'<\/h3>' +\r\n      '<p>'+esc(description)+'<\/p>' +\r\n      '<div class=\"bpp9-options\">'+html+'<\/div>' +\r\n    '<\/div>'\r\n  );\r\n}\r\n\r\n\r\nfunction renderIntelEditor(){\r\n\r\n  var intel =\r\n    currentBuilder &&\r\n    currentBuilder.host_intelligence &&\r\n    typeof currentBuilder.host_intelligence === \"object\"\r\n      ? currentBuilder.host_intelligence\r\n      : {};\r\n\r\n  var wrap =\r\n    el(\"bpp9IntelEditQuestions\");\r\n\r\n  if(!wrap){\r\n    return;\r\n  }\r\n\r\n  wrap.innerHTML =\r\n\r\n    intelEditQuestion(\r\n      \"What kind of business are you?\",\r\n      \"Choose every category that accurately describes what you provide.\",\r\n      \"businessTypes\",\r\n      INTEL.businessTypes,\r\n      intel\r\n    ) +\r\n\r\n    intelEditQuestion(\r\n      \"Who is your experience best for?\",\r\n      \"Which traveler groups are a strong fit for your business?\",\r\n      \"travelingWith\",\r\n      INTEL.travelingWith,\r\n      intel\r\n    ) +\r\n\r\n    intelEditQuestion(\r\n      \"Which travel styles fit your business?\",\r\n      \"Think about the experience travelers actually receive from you.\",\r\n      \"travelStyles\",\r\n      INTEL.travelStyles,\r\n      intel\r\n    ) +\r\n\r\n    intelEditQuestion(\r\n      \"What budgets fit your business?\",\r\n      \"Select the traveler spending levels that realistically match you.\",\r\n      \"budgets\",\r\n      INTEL.budgets,\r\n      intel\r\n    ) +\r\n\r\n    intelEditQuestion(\r\n      \"What trip lengths fit?\",\r\n      \"Which trip lengths make sense for travelers choosing your business?\",\r\n      \"tripLengths\",\r\n      INTEL.tripLengths,\r\n      intel\r\n    ) +\r\n\r\n    intelEditQuestion(\r\n      \"How do your travelers usually move?\",\r\n      \"Select transportation patterns compatible with your experience.\",\r\n      \"transportation\",\r\n      INTEL.transportation,\r\n      intel\r\n    ) +\r\n\r\n    intelEditQuestion(\r\n      \"What pace fits your experience?\",\r\n      \"How relaxed or active is the experience you provide?\",\r\n      \"paces\",\r\n      INTEL.paces,\r\n      intel\r\n    ) +\r\n\r\n    intelEditQuestion(\r\n      \"Which traveler interests match you best?\",\r\n      \"These answers strongly influence placement recommendations.\",\r\n      \"interests\",\r\n      INTEL.interests,\r\n      intel\r\n    ) +\r\n\r\n    intelEditQuestion(\r\n      \"Which food styles fit?\",\r\n      \"Skip this section if food is not relevant.\",\r\n      \"foodStyle\",\r\n      INTEL.foodStyle,\r\n      intel\r\n    ) +\r\n\r\n    intelEditQuestion(\r\n      \"When is your experience strongest?\",\r\n      \"Select the times travelers are most likely to use or enjoy what you offer.\",\r\n      \"preferredTimes\",\r\n      INTEL.preferredTimes,\r\n      intel\r\n    ) +\r\n\r\n    '<div class=\"bpp9-question\">' +\r\n      '<h3>Accessibility<\/h3>' +\r\n      '<p>Can your business accommodate accessibility-friendly traveler needs?<\/p>' +\r\n      '<div class=\"bpp9-options\">' +\r\n        '<label class=\"bpp9-choice\">' +\r\n          '<input id=\"bpp9EditAccessibility\" type=\"checkbox\" ' +\r\n          (intel.accessibilityFriendly ? \"checked\" : \"\") +\r\n          '>' +\r\n          '<span>Accessibility-Friendly<\/span>' +\r\n        '<\/label>' +\r\n      '<\/div>' +\r\n    '<\/div>';\r\n}\r\n\r\n\r\nfunction collectEditedIntelligence(){\r\n\r\n  var data = {\r\n    businessTypes:[],\r\n    travelingWith:[],\r\n    travelStyles:[],\r\n    budgets:[],\r\n    tripLengths:[],\r\n    transportation:[],\r\n    paces:[],\r\n    interests:[],\r\n    foodStyle:[],\r\n    preferredTimes:[],\r\n    accessibilityFriendly:false\r\n  };\r\n\r\n  root\r\n    .querySelectorAll(\r\n      \"[data-intel-edit]:checked\"\r\n    )\r\n    .forEach(function(input){\r\n\r\n      var key =\r\n        input.getAttribute(\r\n          \"data-intel-edit\"\r\n        );\r\n\r\n      if(Array.isArray(data[key])){\r\n        data[key].push(input.value);\r\n      }\r\n    });\r\n\r\n  var accessibility =\r\n    el(\"bpp9EditAccessibility\");\r\n\r\n  data.accessibilityFriendly =\r\n    !!(\r\n      accessibility &&\r\n      accessibility.checked\r\n    );\r\n\r\n  return data;\r\n}\r\n\r\n  function collectIntelligence(){\r\n    var data = {\r\n      businessTypes:[],\r\n      travelingWith:[],\r\n      travelStyles:[],\r\n      budgets:[],\r\n      tripLengths:[],\r\n      transportation:[],\r\n      paces:[],\r\n      interests:[],\r\n      foodStyle:[],\r\n      preferredTimes:[],\r\n      accessibilityFriendly:false\r\n    };\r\n\r\n    root.querySelectorAll(\"[data-intel]:checked\").forEach(function(input){\r\n      var key = input.getAttribute(\"data-intel\");\r\n\r\n      if(Array.isArray(data[key])){\r\n        data[key].push(input.value);\r\n      }\r\n    });\r\n\r\n    data.accessibilityFriendly =\r\n      !!(el(\"bpp9Accessibility\") && el(\"bpp9Accessibility\").checked);\r\n\r\n    return data;\r\n  }\r\n\r\n  var ASTRO = {\r\n    Aries:[\"Romantic\",\"Views\",\"Wild\",\"Exotic\"],\r\n    Taurus:[\"Discover\",\"Mystery\",\"Gastronomic\",\"Luxury\"],\r\n    Gemini:[\"Futuristic\",\"Relax\",\"Spa\",\"Nature\"],\r\n    Cancer:[\"Nite\",\"Relax\",\"Elegant\",\"Nature\"],\r\n    Leo:[\"Vibrant\",\"Mystery\",\"Gastronomic\",\"Nature\"],\r\n    Virgo:[\"Organized\",\"Mystery\",\"Artistic\",\"Luxury\"],\r\n    Libra:[\"Romantic\",\"Relax\",\"Organized\",\"Luxury\"],\r\n    Scorpio:[\"Discover\",\"Archeology\",\"Organized\",\"Gastronomic\"],\r\n    Sagittarius:[\"Discover\",\"Archeology\",\"Gastronomic\",\"Savage\"],\r\n    Capricorn:[\"Vibrant\",\"Relax\",\"Elegant\",\"Luxury\"],\r\n    Aquarius:[\"Futurist\",\"Memorable\",\"Elegant\",\"Luxury\"],\r\n    Pisces:[\"Artistic\",\"Relax\",\"Spa\",\"Nature\"]\r\n  };\r\n\r\n  function astro(sign,category,style,tags){\r\n    return {\r\n      section:\"astro\",\r\n      sign:sign,\r\n      category:category,\r\n      style:style,\r\n      card_name:\"\",\r\n      tags:tags,\r\n      reason:\"Astro Travel placement aligned with the experience and traveler profile you described.\"\r\n    };\r\n  }\r\n\r\n  function explore(guide,option,suboption,tags){\r\n    return {\r\n      section:\"explore\",\r\n      guide:guide,\r\n      category:guide,\r\n      option:option,\r\n      suboption:suboption,\r\n      card_name:\"\",\r\n      tags:tags,\r\n      reason:\"Explore Medell\u00edn route aligned with the traveler needs and experience type you described.\"\r\n    };\r\n  }\r\n\r\n  function service(serviceName,request,tags){\r\n    return {\r\n      section:\"services\",\r\n      service:serviceName,\r\n      category:serviceName,\r\n      serviceRequest:request,\r\n      option:request,\r\n      suboption:request,\r\n      card_name:\"\",\r\n      tags:tags,\r\n      reason:\"Local Services placement aligned with the service behavior your business provides.\"\r\n    };\r\n  }\r\n\r\n  function evolution(stage,parent,experience,tags){\r\n    return {\r\n      section:\"evolution\",\r\n      stage:stage,\r\n      category:stage,\r\n      parent:parent,\r\n      option:parent,\r\n      experience:experience,\r\n      suboption:experience,\r\n      card_name:\"\",\r\n      tags:tags,\r\n      reason:\"Personal Evolution route aligned with the traveler interests and experience style you described.\"\r\n    };\r\n  }\r\n\r\n  function candidateLibrary(){\r\n    var list = [];\r\n\r\n    Object.keys(ASTRO).forEach(function(sign){\r\n      ASTRO[sign].forEach(function(style){\r\n        list.push(astro(sign,\"Accommodations\",style,[\"Accommodation\",style,\"Luxury\",\"Romantic\",\"Relaxation\",\"Nature\"]));\r\n        list.push(astro(sign,\"Restaurants\",style,[\"Restaurant \/ Food\",\"Food\",style,\"Premium Dining\",\"Local Flavor\"]));\r\n        list.push(astro(sign,\"Entertainment\",style,[\"Entertainment \/ Events\",\"Entertainment\",\"Nightlife\",style,\"Evening\"]));\r\n        list.push(astro(sign,\"VIP\",style,[\"Luxury\",\"$$$$\",\"Luxury Transportation\",style]));\r\n      });\r\n    });\r\n\r\n    [\r\n      [\"Accommodations\",\"High-Rise\",\"1\u20133 Days\",[\"Accommodation\",\"1\u20133 Days\",\"Luxury\"]],\r\n      [\"Accommodations\",\"High-Rise\",\"4\u20136 Days\",[\"Accommodation\",\"4\u20136 Days\",\"Luxury\"]],\r\n      [\"Accommodations\",\"Historic\",\"1\u20133 Days\",[\"Accommodation\",\"History\",\"Local & Authentic\"]],\r\n      [\"Accommodations\",\"Eco-Stay\",\"7 Days\",[\"Accommodation\",\"Nature\",\"Sustainability\",\"7 Days\"]],\r\n      [\"Accommodations\",\"Mansions\",\"1\u20133 Days\",[\"Accommodation\",\"Luxury\",\"$$$$\",\"1\u20133 Days\"]],\r\n      [\"Transportation\",\"Heli\",\"Around\",[\"Transportation\",\"Luxury Transportation\",\"Luxury\"]],\r\n      [\"Transportation\",\"Heli\",\"Adventure\",[\"Transportation\",\"Luxury Transportation\",\"Adventure\"]],\r\n      [\"Transportation\",\"Yacht\",\"Adventure\",[\"Transportation\",\"Luxury\",\"Adventure\"]],\r\n      [\"Transportation\",\"Car\",\"Around\",[\"Transportation\",\"Rental Car\"]],\r\n      [\"Transportation\",\"Driver\",\"Around\",[\"Transportation\",\"Private Driver\"]],\r\n      [\"Transportation\",\"Driver\",\"Go-To\",[\"Transportation\",\"Private Driver\"]],\r\n      [\"Discover\",\"Adventure\",\"Air Adventures\",[\"Tour \/ Experience\",\"Adventure\"]],\r\n      [\"Discover\",\"Adventure\",\"Water Sports\",[\"Tour \/ Experience\",\"Adventure\"]],\r\n      [\"Discover\",\"Adventure\",\"Horseback Experiences\",[\"Tour \/ Experience\",\"Adventure\",\"Nature\"]],\r\n      [\"Discover\",\"Ancestral\",\"Indigenous Heritage\",[\"Tour \/ Experience\",\"Local Culture\",\"History\",\"Local & Authentic\"]],\r\n      [\"Discover\",\"Cultural\",\"Art & Creativity\",[\"Tour \/ Experience\",\"Local Culture\",\"Culture \/ Art\"]],\r\n      [\"Discover\",\"Cultural\",\"Farms & Flavors\",[\"Tour \/ Experience\",\"Food\",\"Local Culture\"]],\r\n      [\"Discover\",\"Historic\",\"Antioquia Origins\",[\"Tour \/ Experience\",\"History\"]],\r\n      [\"Entertainment\",\"Concerts\",\"VIP Concert Experience\",[\"Entertainment \/ Events\",\"Entertainment\",\"Luxury\",\"Evening\"]],\r\n      [\"Entertainment\",\"Fashion\",\"Live Fashion Shows\",[\"Entertainment \/ Events\",\"Shopping \/ Fashion\",\"Shopping\",\"Evening\"]],\r\n      [\"Entertainment\",\"Comedy\",\"Live Comedy Shows\",[\"Entertainment \/ Events\",\"Entertainment\",\"Evening\"]],\r\n      [\"Entertainment\",\"Sports\",\"Attend a Live Game\",[\"Entertainment \/ Events\",\"Entertainment\",\"Family Activities\"]],\r\n      [\"Medical Tourism\",\"Vision Care\",\"Eye Exams & Diagnostics\",[\"Medical\",\"Medical Tourism\"]],\r\n      [\"Medical Tourism\",\"Dental Care\",\"Cosmetic Dentistry & Smile Design\",[\"Medical\",\"Medical Tourism\"]],\r\n      [\"Medical Tourism\",\"Aesthetic Care\",\"Recovery & Aftercare\",[\"Medical\",\"Medical Tourism\",\"Wellness\"]],\r\n      [\"Medical Tourism\",\"Regenerative Medicine\",\"Recovery & Wellness Support\",[\"Medical\",\"Medical Tourism\",\"Wellness\"]]\r\n    ].forEach(function(row){\r\n      list.push(explore(row[0],row[1],row[2],row[3]));\r\n    });\r\n\r\n    [\r\n      [\"Private Driver\",\"Airport Pickup\",[\"Transportation\",\"Private Driver\"]],\r\n      [\"Private Driver\",\"Airport Drop-Off\",[\"Transportation\",\"Private Driver\"]],\r\n      [\"Private Driver\",\"Private City Driver\",[\"Transportation\",\"Private Driver\"]],\r\n      [\"Private Driver\",\"Full-Day Private Driver\",[\"Transportation\",\"Private Driver\"]],\r\n      [\"Private Driver\",\"Night Driver\",[\"Transportation\",\"Private Driver\",\"Nightlife\",\"Late Night\"]],\r\n      [\"Private Driver\",\"VIP Chauffeur\",[\"Transportation\",\"Private Driver\",\"Luxury\",\"Luxury Transportation\"]],\r\n      [\"Concierge\",\"Arrival Preparation\",[\"Concierge \/ Local Service\"]],\r\n      [\"Concierge\",\"Accommodation Setup\",[\"Concierge \/ Local Service\",\"Accommodation\"]],\r\n      [\"Concierge\",\"Activity Coordination\",[\"Concierge \/ Local Service\",\"Tour \/ Experience\"]],\r\n      [\"Concierge\",\"Personal Assistance\",[\"Concierge \/ Local Service\"]],\r\n      [\"Translator\",\"Live Translator\",[\"Concierge \/ Local Service\",\"Local Culture\"]],\r\n      [\"Translator\",\"Business Translation\",[\"Concierge \/ Local Service\",\"Business\"]],\r\n      [\"Local Guide\",\"Nature Guide\",[\"Tour \/ Experience\",\"Nature\"]],\r\n      [\"Local Guide\",\"Cultural Guide\",[\"Tour \/ Experience\",\"Local Culture\"]],\r\n      [\"Local Guide\",\"History Guide\",[\"Tour \/ Experience\",\"History\"]],\r\n      [\"Local Guide\",\"Food Guide\",[\"Tour \/ Experience\",\"Food\"]],\r\n      [\"Local Guide\",\"Private Local Guide\",[\"Tour \/ Experience\",\"Local & Authentic\"]],\r\n      [\"Nightlife Help\",\"Nightlife Guide\",[\"Nightlife\",\"Evening\",\"Late Night\"]],\r\n      [\"Nightlife Help\",\"Table and Club Access\",[\"Nightlife\",\"Luxury\",\"Late Night\"]],\r\n      [\"Nightlife Help\",\"Rooftop Experience\",[\"Nightlife\",\"Evening\",\"Romantic Experiences\"]],\r\n      [\"Reservations\",\"Restaurant Reservation\",[\"Restaurant \/ Food\",\"Food\"]],\r\n      [\"Reservations\",\"Private Experience\",[\"Tour \/ Experience\",\"Luxury\"]],\r\n      [\"VIP Custom Support\",\"Romantic Setup\",[\"Luxury\",\"Romantic\",\"Romantic Experiences\",\"Couple\"]],\r\n      [\"VIP Custom Support\",\"Private Event Coordination\",[\"Luxury\",\"Entertainment \/ Events\"]]\r\n    ].forEach(function(row){\r\n      list.push(service(row[0],row[1],row[2]));\r\n    });\r\n\r\n    [\r\n      [\"Gastronomic\",\"Culinary Skills\",\"Learn to Cook\",[\"Food\",\"Tour \/ Experience\"]],\r\n      [\"Gastronomic\",\"Culinary Experiences\",\"Cooking Classes\",[\"Food\",\"Tour \/ Experience\"]],\r\n      [\"Gastronomic\",\"Culinary Experiences\",\"Private Dining\",[\"Food\",\"Premium Dining\",\"Romantic Dining\"]],\r\n      [\"Gastronomic\",\"Food Discovery\",\"Food Festivals\",[\"Food\",\"Entertainment\"]],\r\n      [\"Conference\",\"Creative Learning\",\"Exclusive Sessions\",[\"Business\",\"Tour \/ Experience\"]],\r\n      [\"Conference\",\"Digital Innovation\",\"Industry Conferences\",[\"Business\",\"Entertainment \/ Events\"]],\r\n      [\"Cosmic\",\"Universal Love\",\"Relationship Retreats\",[\"Romantic Experiences\",\"Wellness\"]],\r\n      [\"Cosmic\",\"Healing Journey\",\"Recovery Retreats\",[\"Wellness\",\"Relaxation\"]],\r\n      [\"Entrepreneur\",\"Inspiration\",\"Founder Lessons\",[\"Business\"]],\r\n      [\"Entrepreneur\",\"Growth Mindset\",\"Innovate\",[\"Business\"]],\r\n      [\"Insight\",\"Mindful Movement\",\"Wellness Retreats\",[\"Wellness\",\"Relaxation\"]],\r\n      [\"Insight\",\"Mindful Movement\",\"Scenic Yoga\",[\"Wellness\",\"Nature\"]],\r\n      [\"Insight\",\"Nature Connection\",\"Forest Connection\",[\"Nature\",\"Wellness\"]],\r\n      [\"Insight\",\"Meditation and Energy\",\"Reiki Wellness\",[\"Wellness\",\"Relaxation\"]]\r\n    ].forEach(function(row){\r\n      list.push(evolution(row[0],row[1],row[2],row[3]));\r\n    });\r\n\r\n    return list;\r\n  }\r\n\r\n  function routeLabel(item){\r\n    if(item.section === \"astro\"){\r\n      return [\"Astro Travel\",item.sign,item.category,item.style].filter(Boolean).join(\" \u2192 \");\r\n    }\r\n\r\n    if(item.section === \"explore\"){\r\n      return [\"Explore Medell\u00edn\",item.guide || item.category,item.option,item.suboption].filter(Boolean).join(\" \u2192 \");\r\n    }\r\n\r\n    if(item.section === \"services\"){\r\n      return [\"Local Services\",item.service,item.serviceRequest].filter(Boolean).join(\" \u2192 \");\r\n    }\r\n\r\n    return [\"Personal Evolution\",item.stage,item.parent,item.experience].filter(Boolean).join(\" \u2192 \");\r\n  }\r\n\r\n  function selectedValues(intel){\r\n    var output = [];\r\n\r\n    Object.keys(intel).forEach(function(key){\r\n      if(Array.isArray(intel[key])){\r\n        intel[key].forEach(function(v){\r\n          output.push(String(v).trim().toLowerCase());\r\n        });\r\n      }\r\n    });\r\n\r\n    return output;\r\n  }\r\n\r\n  function scoreCandidate(candidate,intel){\r\n    var values = selectedValues(intel);\r\n    var tags = (candidate.tags || [])\r\n      .filter(Boolean)\r\n      .map(function(v){\r\n        return String(v).trim().toLowerCase();\r\n      });\r\n\r\n    var score = 0;\r\n\r\n    tags.forEach(function(tag){\r\n      if(values.indexOf(tag) !== -1){\r\n        score += 6;\r\n      }\r\n    });\r\n\r\n    (intel.businessTypes || []).forEach(function(v){\r\n      if(tags.indexOf(String(v).toLowerCase()) !== -1){\r\n        score += 20;\r\n      }\r\n    });\r\n\r\n    (intel.interests || []).forEach(function(v){\r\n      if(tags.indexOf(String(v).toLowerCase()) !== -1){\r\n        score += 15;\r\n      }\r\n    });\r\n\r\n    (intel.travelStyles || []).forEach(function(v){\r\n      var x = String(v).toLowerCase();\r\n\r\n      if(tags.indexOf(x) !== -1){\r\n        score += 12;\r\n      }\r\n\r\n      if(\r\n        x === \"relaxation\" &&\r\n        (\r\n          tags.indexOf(\"relax\") !== -1 ||\r\n          tags.indexOf(\"wellness\") !== -1\r\n        )\r\n      ){\r\n        score += 10;\r\n      }\r\n\r\n      if(\r\n        x === \"local & authentic\" &&\r\n        (\r\n          tags.indexOf(\"local culture\") !== -1 ||\r\n          tags.indexOf(\"local flavor\") !== -1\r\n        )\r\n      ){\r\n        score += 10;\r\n      }\r\n    });\r\n\r\n    (intel.budgets || []).forEach(function(v){\r\n      if(tags.indexOf(String(v).toLowerCase()) !== -1){\r\n        score += 8;\r\n      }\r\n    });\r\n\r\n    (intel.preferredTimes || []).forEach(function(v){\r\n      if(tags.indexOf(String(v).toLowerCase()) !== -1){\r\n        score += 6;\r\n      }\r\n    });\r\n\r\n    return score;\r\n  }\r\n\r\n  function generateRecommendations(intel){\r\n    var scored = candidateLibrary()\r\n      .map(function(item,index){\r\n        var copy = Object.assign({},item);\r\n        copy.score = scoreCandidate(item,intel);\r\n        copy._order = index;\r\n        return copy;\r\n      })\r\n      .sort(function(a,b){\r\n        return (b.score - a.score) || (a._order - b._order);\r\n      });\r\n\r\n    var chosen = [];\r\n    var sectionCounts = {\r\n      astro:0,\r\n      explore:0,\r\n      services:0,\r\n      evolution:0\r\n    };\r\n\r\n    scored.forEach(function(candidate){\r\n      if(chosen.length >= 12){\r\n        return;\r\n      }\r\n\r\n      if(sectionCounts[candidate.section] >= 4){\r\n        return;\r\n      }\r\n\r\n      var duplicate = chosen.some(function(item){\r\n        return routeLabel(item) === routeLabel(candidate);\r\n      });\r\n\r\n      if(duplicate){\r\n        return;\r\n      }\r\n\r\n      var copy = Object.assign({},candidate);\r\n\r\n      copy.selection_id =\r\n        \"recommendation_\" +\r\n        Date.now() +\r\n        \"_\" +\r\n        chosen.length;\r\n\r\n      delete copy.tags;\r\n      delete copy._order;\r\n\r\n      chosen.push(copy);\r\n      sectionCounts[candidate.section]++;\r\n    });\r\n\r\n    return chosen;\r\n  }\r\n\r\n  function renderRecommendations(){\r\n    var grid = el(\"bpp9RecGrid\");\r\n\r\n    grid.innerHTML = onboardingRecommendations.map(function(item,index){\r\n\r\n      var selected = onboardingSelected.some(function(x){\r\n        return x.selection_id === item.selection_id;\r\n      });\r\n\r\n      return (\r\n        '<article class=\"bpp9-rec '+(selected ? \"selected\" : \"\")+'\" data-rec-index=\"'+index+'\">' +\r\n          '<div class=\"bpp9-rec-num\">'+(index+1)+'<\/div>' +\r\n          '<div class=\"bpp9-score\">Match '+Math.round(item.score)+'<\/div>' +\r\n          '<div class=\"bpp9-route\">'+esc(routeLabel(item))+'<\/div>' +\r\n          '<h4>'+(selected ? \"Selected\" : \"Recommended Placement\")+'<\/h4>' +\r\n          '<p>'+esc(item.reason || \"Recommended from your Host Intelligence profile.\")+'<\/p>' +\r\n        '<\/article>'\r\n      );\r\n    }).join(\"\");\r\n\r\n    var selectedCount =\r\n  onboardingSelected.length;\r\n\r\nvar availableCount =\r\n  Math.max(\r\n    0,\r\n    5 - selectedCount\r\n  );\r\n\r\nel(\"bpp9Counter\").textContent =\r\n  selectedCount +\r\n  \" selected \u00b7 \" +\r\n  availableCount +\r\n  \" available\";\r\n\r\nel(\"bpp9Create\").disabled =\r\n  selectedCount < 1 ||\r\n  selectedCount > 5;\r\n  }\r\n\r\n  function renderDashboard(){\r\n    var profile = currentBuilder.profile || {};\r\n    var intel = currentBuilder.host_intelligence || {};\r\n    var placements = Array.isArray(currentBuilder.placements)\r\n      ? currentBuilder.placements\r\n      : [];\r\n\r\n    el(\"bpp9SideBusiness\").textContent =\r\n      profile.business_name ||\r\n      currentAccount.business_name ||\r\n      \"Placements\";\r\n\r\n    el(\"bpp9SideEmail\").textContent =\r\n      currentAccount.email || \"\";\r\n\r\n    var plan = currentBuilder.plan || \"free_5\";\r\n\r\n    el(\"bpp9Plan\").textContent =\r\n      plan === \"free_5\"\r\n        ? \"5 Free\"\r\n        : plan.replace(\"routes_\",\"\") + \" Placements\";\r\n\r\n    el(\"bpp9Used\").textContent =\r\n      String(placements.length);\r\n\r\n    el(\"bpp9Limit\").textContent =\r\n      String(currentBuilder.limit || 5);\r\n\r\n    var live = Array.isArray(currentAccount.placements)\r\n      ? currentAccount.placements.length\r\n      : 0;\r\n\r\n    el(\"bpp9Live\").textContent =\r\n      String(live);\r\n\r\n    el(\"bpp9PlacementGrid\").innerHTML =\r\n      placements.length\r\n        ? placements.map(function(item,index){\r\n            return (\r\n              '<div class=\"bpp9-mini\">' +\r\n                '<div class=\"bpp9-route\">'+esc(routeLabel(item))+'<\/div>' +\r\n                '<strong>'+esc(item.card_name || profile.business_name || \"Bliss Travel Placement\")+'<\/strong>' +\r\n                '<small>Placement '+(index+1)+'<\/small>' +\r\n              '<\/div>'\r\n            );\r\n          }).join(\"\")\r\n        : '<div class=\"bpp9-mini\"><strong>No placements saved yet.<\/strong><\/div>';\r\n\r\n    var summary = [];\r\n\r\n    Object.keys(intel).forEach(function(key){\r\n      var value = intel[key];\r\n\r\n      if(Array.isArray(value) && value.length){\r\n        summary.push({\r\n          key:key.replace(\/([A-Z])\/g,\" $1\"),\r\n          value:value.join(\", \")\r\n        });\r\n      }\r\n    });\r\n\r\n    if(intel.accessibilityFriendly){\r\n      summary.push({\r\n        key:\"Accessibility\",\r\n        value:\"Accessibility-Friendly\"\r\n      });\r\n    }\r\n\r\n    el(\"bpp9IntelSummary\").innerHTML =\r\n      summary.length\r\n        ? summary.map(function(item){\r\n            return (\r\n              '<div class=\"bpp9-summary-item\">' +\r\n                '<span>'+esc(item.key)+'<\/span>' +\r\n                '<strong>'+esc(item.value)+'<\/strong>' +\r\n              '<\/div>'\r\n            );\r\n          }).join(\"\")\r\n        : '<div class=\"bpp9-summary-item\"><strong>No Host Intelligence saved yet.<\/strong><\/div>';\r\n\r\n    el(\"bpp9ProfileBusiness\").value =\r\n      profile.business_name ||\r\n      currentAccount.business_name ||\r\n      \"\";\r\n\r\n    el(\"bpp9ProfileContact\").value =\r\n      currentAccount.contact_name || \"\";\r\n\r\n    el(\"bpp9ProfileEmail\").value =\r\n      currentAccount.email || \"\";\r\n\r\n    el(\"bpp9ProfilePhone\").value =\r\n      currentAccount.phone || \"\";\r\n  }\r\n\r\n  function loadDashboard(){\r\n    return post(\"bliss_host_session_portal_load_v1\")\r\n      .then(function(portal){\r\n\r\n        if(portal.csrf){\r\n          CSRF = portal.csrf;\r\n        }\r\n\r\n        currentAccount =\r\n          portal.account ||\r\n          currentAccount;\r\n\r\n        return post(\"bliss_host_session_builder_load_v1\");\r\n      })\r\n      .then(function(builder){\r\n\r\n        if(builder.csrf){\r\n          CSRF = builder.csrf;\r\n        }\r\n\r\n        currentBuilder =\r\n          builder.builder || {};\r\n\r\n        renderDashboard();\r\n        showScreen(\"bpp9Dashboard\");\r\n      });\r\n  }\r\n\r\n  function createAccount(){\r\n    var business = el(\"bpp9Business\").value.trim();\r\n\r\n    return post(\r\n      \"bliss_host_account_register_v1\",\r\n      {\r\n        business_name:business,\r\n        contact_name:el(\"bpp9Contact\").value.trim(),\r\n        email:el(\"bpp9Email\").value.trim(),\r\n        phone:el(\"bpp9Phone\").value.trim(),\r\n        whatsapp:\"\",\r\n        password:el(\"bpp9Password\").value,\r\n        confirm_password:el(\"bpp9Confirm\").value\r\n      }\r\n    )\r\n    .then(function(register){\r\n\r\n      CSRF = register.csrf || \"\";\r\n      currentAccount = register.account || {};\r\n\r\n      var selected =\r\n        onboardingSelected.map(function(item,index){\r\n\r\n          var copy =\r\n            Object.assign({},item);\r\n\r\n          copy.selection_id =\r\n            \"free_\" +\r\n            Date.now() +\r\n            \"_\" +\r\n            index;\r\n\r\n          copy.card_name =\r\n            business;\r\n\r\n          return copy;\r\n        });\r\n\r\n      return post(\r\n        \"bliss_host_session_builder_save_v1\",\r\n        {\r\n          csrf:CSRF,\r\n          plan:\"free_5\",\r\n          profile:JSON.stringify({\r\n            business_name:business,\r\n            public_name:business,\r\n            type:(onboardingIntelligence.businessTypes || []).join(\", \"),\r\n            location:el(\"bpp9Location\").value.trim(),\r\n            price:\"\",\r\n            image:\"\",\r\n            images:[],\r\n            description:\"\",\r\n            website_url:\"\",\r\n            video_url:\"\",\r\n            reserve_url:\"\"\r\n          }),\r\n          placements:JSON.stringify(selected),\r\n          intelligence:JSON.stringify(onboardingIntelligence),\r\n          recommendations:JSON.stringify(onboardingRecommendations)\r\n        }\r\n      );\r\n    })\r\n    .then(function(saved){\r\n      currentBuilder = saved.builder || {};\r\n      return loadDashboard();\r\n    });\r\n  }\r\n\r\n  document.addEventListener(\"click\",function(event){\r\n\r\n    var target =\r\n      event.target &&\r\n      event.target.closest\r\n        ? event.target\r\n        : null;\r\n\r\n    if(!target){\r\n      return;\r\n    }\r\n\r\n    var insidePortal =\r\n      target.closest(\"#bpp9\");\r\n\r\n    if(!insidePortal){\r\n      return;\r\n    }\r\n\r\n    \/*\r\n     * PARTNER STRIPE CHECKOUT BUTTONS\r\n     *\/\r\n    var checkoutButton =\r\n      target.closest(\r\n        \"[data-bpp9-checkout]\"\r\n      );\r\n\r\n    if(checkoutButton){\r\n\r\n      event.preventDefault();\r\n      event.stopPropagation();\r\n\r\n      var checkoutKey =\r\n        checkoutButton.getAttribute(\r\n          \"data-bpp9-checkout\"\r\n        );\r\n\r\n      var checkout =\r\n        BPP9_CHECKOUTS[\r\n          checkoutKey\r\n        ];\r\n\r\n      if(!checkout){\r\n        toast(\r\n          \"This payment option is unavailable.\"\r\n        );\r\n        return;\r\n      }\r\n\r\n      if(\r\n        !checkout.url ||\r\n        checkout.url.indexOf(\r\n          \"PASTE_STRIPE_LINK\"\r\n        ) !== -1\r\n      ){\r\n        toast(\r\n          \"The Stripe Payment Link for \" +\r\n          checkout.name +\r\n          \" has not been added yet.\"\r\n        );\r\n        return;\r\n      }\r\n\r\n      var hostId =\r\n        currentAccount &&\r\n        currentAccount.host_id\r\n          ? String(\r\n              currentAccount.host_id\r\n            )\r\n          : \"\";\r\n\r\n      if(!hostId){\r\n        toast(\r\n          \"Please sign in to your Partner account before purchasing.\"\r\n        );\r\n        return;\r\n      }\r\n\r\n      var hostEmail =\r\n        currentAccount &&\r\n        currentAccount.email\r\n          ? String(\r\n              currentAccount.email\r\n            )\r\n          : \"\";\r\n\r\n      var checkoutUrl;\r\n\r\n      try {\r\n\r\n        checkoutUrl =\r\n          new URL(\r\n            checkout.url,\r\n            window.location.href\r\n          );\r\n\r\n      } catch(error) {\r\n\r\n        toast(\r\n          \"The Stripe Payment Link is invalid.\"\r\n        );\r\n        return;\r\n      }\r\n\r\n      \/*\r\n       * Stripe returns client_reference_id in the\r\n       * checkout.session.completed webhook.\r\n       *\/\r\n      checkoutUrl.searchParams.set(\r\n        \"client_reference_id\",\r\n        hostId\r\n      );\r\n\r\n      if(hostEmail){\r\n        checkoutUrl.searchParams.set(\r\n          \"prefilled_email\",\r\n          hostEmail\r\n        );\r\n      }\r\n\r\n      var confirmed =\r\n        window.confirm(\r\n          \"Continue to Stripe to purchase \" +\r\n          checkout.name +\r\n          \" for \" +\r\n          checkout.price +\r\n          \"?\\n\\n\" +\r\n          \"Advertising placement, position, traffic, inquiries, reservations, revenue and sales are not guaranteed.\"\r\n        );\r\n\r\n      if(!confirmed){\r\n        return;\r\n      }\r\n\r\n      window.location.href =\r\n        checkoutUrl.toString();\r\n\r\n      return;\r\n    }\r\n\r\n    var rec =\r\n      target.closest(\"[data-rec-index]\");\r\n\r\n    if(rec){\r\n\r\n      var index =\r\n        Number(\r\n          rec.getAttribute(\r\n            \"data-rec-index\"\r\n          )\r\n        );\r\n\r\n      var item =\r\n        onboardingRecommendations[index];\r\n\r\n      if(!item){\r\n        return;\r\n      }\r\n\r\n      var existing =\r\n        onboardingSelected.findIndex(function(x){\r\n          return x.selection_id === item.selection_id;\r\n        });\r\n\r\n      if(existing >= 0){\r\n\r\n        onboardingSelected.splice(existing,1);\r\n\r\n      }else{\r\n\r\n        if(onboardingSelected.length >= 5){\r\n  toast(\r\n    \"Your free plan includes up to 5 placements. Remove one before selecting another.\"\r\n  );\r\n  return;\r\n}\r\n\r\n        onboardingSelected.push(item);\r\n      }\r\n\r\n      renderRecommendations();\r\n      return;\r\n    }\r\n\r\n    var dash =\r\n      target.closest(\"[data-bpp9-dash]\");\r\n\r\n    if(dash){\r\n\r\n      var view =\r\n        dash.getAttribute(\r\n          \"data-bpp9-dash\"\r\n        );\r\n\r\n      root\r\n        .querySelectorAll(\r\n          \"[data-bpp9-dash]\"\r\n        )\r\n        .forEach(function(btn){\r\n          btn.classList.toggle(\"active\",btn === dash);\r\n        });\r\n\r\n      root\r\n        .querySelectorAll(\r\n          \".bpp9-dash-view\"\r\n        )\r\n        .forEach(function(node){\r\n          node.classList.add(\"bpp9-hidden\");\r\n        });\r\n\r\n      var map = {\r\n        placements:\"bpp9DashPlacements\",\r\n        intel:\"bpp9DashIntel\",\r\n        ti:\"bpp9DashTi\",\r\n        profile:\"bpp9DashProfile\"\r\n      };\r\n\r\n      if(map[view] && el(map[view])){\r\n        el(map[view]).classList.remove(\"bpp9-hidden\");\r\n      }\r\n\r\n      return;\r\n    }\r\n\r\n    var button =\r\n      target.closest(\"[data-bpp9]\");\r\n\r\n    if(!button){\r\n      return;\r\n    }\r\n\r\n    var action =\r\n      button.getAttribute(\r\n        \"data-bpp9\"\r\n      );\r\n\r\n    if(action === \"home\"){\r\n      showScreen(\"bpp9Landing\");\r\n      return;\r\n    }\r\n\r\n    if(action === \"login\"){\r\n      showScreen(\"bpp9Login\");\r\n      return;\r\n    }\r\n\r\n    if(action === \"start\"){\r\n      showScreen(\"bpp9Onboarding\");\r\n      showStep(1);\r\n      return;\r\n    }\r\n\r\n    if(action === \"back-basics\"){\r\n      showStep(1);\r\n      return;\r\n    }\r\n\r\n    if(action === \"back-intel\"){\r\n      showStep(2);\r\n      return;\r\n    }\r\n\r\n    if(action === \"to-intel\"){\r\n\r\n      var business =\r\n        el(\"bpp9Business\").value.trim();\r\n\r\n      var contact =\r\n        el(\"bpp9Contact\").value.trim();\r\n\r\n      var email =\r\n        el(\"bpp9Email\").value.trim();\r\n\r\n      var pass =\r\n        el(\"bpp9Password\").value;\r\n\r\n      var confirm =\r\n        el(\"bpp9Confirm\").value;\r\n\r\n      if(!business || !contact || !email || !pass || !confirm){\r\n        toast(\"Complete the required fields first.\");\r\n        return;\r\n      }\r\n\r\n      if(pass.length < 8){\r\n        toast(\"Password must contain at least 8 characters.\");\r\n        return;\r\n      }\r\n\r\n      if(pass !== confirm){\r\n        toast(\"The passwords do not match.\");\r\n        return;\r\n      }\r\n\r\n      showStep(2);\r\n      return;\r\n    }\r\n\r\n    if(action === \"recommend\"){\r\n\r\n      onboardingIntelligence =\r\n        collectIntelligence();\r\n\r\n      if(!onboardingIntelligence.businessTypes.length){\r\n        toast(\"Choose at least one business type.\");\r\n        return;\r\n      }\r\n\r\n     if(\r\n  !onboardingIntelligence.interests.length\r\n){\r\n\r\n  if(\r\n    !onboardingIntelligence.travelStyles.length\r\n  ){\r\n\r\n    toast(\r\n      \"Choose at least one travel style or traveler interest.\"\r\n    );\r\n\r\n    return;\r\n  }\r\n}\r\n\r\n      onboardingRecommendations =\r\n        generateRecommendations(\r\n          onboardingIntelligence\r\n        );\r\n\r\n      onboardingSelected = [];\r\n\r\n      renderRecommendations();\r\n      showStep(3);\r\n\r\n      return;\r\n    }\r\n\r\n    if(action === \"create\"){\r\n\r\n  if(\r\n    onboardingSelected.length < 1 ||\r\n    onboardingSelected.length > 5\r\n  ){\r\n    toast(\r\n      \"Choose between 1 and 5 placements to create your Partner account.\"\r\n    );\r\n    return;\r\n  }\r\n\r\n      button.disabled = true;\r\n      var oldText = button.textContent;\r\n      button.textContent = \"Creating Account...\";\r\n\r\n      createAccount()\r\n        .then(function(){\r\n          toast(\r\n  \"Your Partner account and selected placements are saved. Any unused free placement spaces remain available.\"\r\n);\r\n        })\r\n        .catch(function(error){\r\n          toast(error.message);\r\n          button.disabled = false;\r\n          button.textContent = oldText;\r\n        });\r\n\r\n      return;\r\n    }\r\n\r\n    if(action === \"login-submit\"){\r\n\r\n      button.disabled = true;\r\n      var loginOldText =\r\n        button.textContent;\r\n\r\n      button.textContent =\r\n        \"Signing In...\";\r\n\r\n      post(\r\n        \"bliss_host_account_login_v1\",\r\n        {\r\n          email:el(\"bpp9LoginEmail\").value.trim(),\r\n          password:el(\"bpp9LoginPassword\").value\r\n        }\r\n      )\r\n      .then(function(login){\r\n        CSRF = login.csrf || \"\";\r\n        currentAccount = login.account || {};\r\n        return loadDashboard();\r\n      })\r\n      .catch(function(error){\r\n        toast(error.message);\r\n      })\r\n      .finally(function(){\r\n        button.disabled = false;\r\n        button.textContent = loginOldText;\r\n      });\r\n\r\n      return;\r\n    }\r\n\r\n    if(action === \"logout\"){\r\n\r\n      post(\r\n        \"bliss_host_account_logout_v1\",\r\n        {\r\n          csrf:CSRF\r\n        }\r\n      )\r\n      .catch(function(){})\r\n      .finally(function(){\r\n\r\n        CSRF = \"\";\r\n        currentAccount = {};\r\n        currentBuilder = {};\r\n\r\n        showScreen(\r\n          \"bpp9Landing\"\r\n        );\r\n      });\r\n\r\n      return;\r\n    }\r\n\r\nif(action === \"edit-intel\"){\r\n\r\n  renderIntelEditor();\r\n\r\n  el(\"bpp9IntelEditor\")\r\n    .classList\r\n    .remove(\"bpp9-hidden\");\r\n\r\n  el(\"bpp9IntelEditor\")\r\n    .scrollIntoView({\r\n      behavior:\"smooth\",\r\n      block:\"start\"\r\n    });\r\n\r\n  return;\r\n}\r\n\r\n\r\nif(action === \"cancel-intel-edit\"){\r\n\r\n  el(\"bpp9IntelEditor\")\r\n    .classList\r\n    .add(\"bpp9-hidden\");\r\n\r\n  return;\r\n}\r\n\r\n\r\nif(action === \"save-intel-edit\"){\r\n\r\n  var newIntel =\r\n    collectEditedIntelligence();\r\n\r\n  if(!newIntel.businessTypes.length){\r\n\r\n    toast(\r\n      \"Choose at least one business type.\"\r\n    );\r\n\r\n    return;\r\n  }\r\n\r\n  if(\r\n    !newIntel.interests.length &&\r\n    !newIntel.travelStyles.length\r\n  ){\r\n\r\n    toast(\r\n      \"Choose at least one travel style or traveler interest.\"\r\n    );\r\n\r\n    return;\r\n  }\r\n\r\n  var newRecommendations =\r\n    generateRecommendations(\r\n      newIntel\r\n    );\r\n\r\n  button.disabled = true;\r\n\r\n  var intelOldText =\r\n    button.textContent;\r\n\r\n  button.textContent =\r\n    \"Saving...\";\r\n\r\n  post(\r\n    \"bliss_host_session_builder_save_v1\",\r\n    {\r\n      csrf:CSRF,\r\n\r\n      plan:\r\n        currentBuilder.plan ||\r\n        \"free_5\",\r\n\r\n      profile:\r\n        JSON.stringify(\r\n          currentBuilder.profile ||\r\n          {}\r\n        ),\r\n\r\n      placements:\r\n        JSON.stringify(\r\n          Array.isArray(\r\n            currentBuilder.placements\r\n          )\r\n            ? currentBuilder.placements\r\n            : []\r\n        ),\r\n\r\n      intelligence:\r\n        JSON.stringify(\r\n          newIntel\r\n        ),\r\n\r\n      recommendations:\r\n        JSON.stringify(\r\n          newRecommendations\r\n        )\r\n    }\r\n  )\r\n  .then(function(saved){\r\n\r\n    currentBuilder =\r\n      saved.builder ||\r\n      currentBuilder;\r\n\r\n    renderDashboard();\r\n\r\n    el(\"bpp9IntelEditor\")\r\n      .classList\r\n      .add(\"bpp9-hidden\");\r\n\r\n    toast(\r\n      \"Host Intelligence updated. Your recommendations were recalculated.\"\r\n    );\r\n  })\r\n  .catch(function(error){\r\n\r\n    toast(\r\n      error.message\r\n    );\r\n  })\r\n  .finally(function(){\r\n\r\n    button.disabled = false;\r\n\r\n    button.textContent =\r\n      intelOldText;\r\n  });\r\n\r\n  return;\r\n}\r\n\r\n    if(action === \"save-profile\"){\r\n\r\n      post(\r\n        \"bliss_host_session_profile_save_v1\",\r\n        {\r\n          csrf:CSRF,\r\n          business_name:el(\"bpp9ProfileBusiness\").value.trim(),\r\n          contact_name:el(\"bpp9ProfileContact\").value.trim(),\r\n          email:el(\"bpp9ProfileEmail\").value.trim(),\r\n          phone:el(\"bpp9ProfilePhone\").value.trim(),\r\n          whatsapp:\"\"\r\n        }\r\n      )\r\n      .then(function(saved){\r\n        currentAccount = saved.account || currentAccount;\r\n        renderDashboard();\r\n        toast(\"Profile saved.\");\r\n      })\r\n      .catch(function(error){\r\n        toast(error.message);\r\n      });\r\n\r\n      return;\r\n    }\r\n\r\n    if(action === \"admin-close\"){\r\n      el(\"bpp9AdminModal\").classList.remove(\"open\");\r\n      return;\r\n    }\r\n\r\n    if(action === \"wp-admin\"){\r\n      window.location.href = \"\/GGG\/wp-admin\/\";\r\n      return;\r\n    }\r\n\r\n    if(action === \"control-panel\"){\r\n\r\n      if(\r\n        window.BlissTravelControlPanel &&\r\n        typeof window.BlissTravelControlPanel.openView === \"function\"\r\n      ){\r\n        el(\"bpp9AdminModal\").classList.remove(\"open\");\r\n        window.BlissTravelControlPanel.openView(\"partners\");\r\n        toast(\"Partner Accounts opened.\");\r\n      }else{\r\n        toast(\"The Travel Control Panel is not loaded on this page. Use WordPress Admin until the exact Control Panel page is connected.\");\r\n      }\r\n\r\n      return;\r\n    }\r\n\r\n  },true); \/* CAPTURE: Partner Portal receives the click before older First You handlers. *\/\r\n\r\n  el(\"bpp9AdminBtn\")\r\n    .addEventListener(\r\n      \"click\",\r\n      function(){\r\n        el(\"bpp9AdminModal\")\r\n          .classList\r\n          .add(\"open\");\r\n      }\r\n    );\r\n\r\n  el(\"bpp9AdminModal\")\r\n    .addEventListener(\r\n      \"click\",\r\n      function(event){\r\n        if(\r\n          event.target ===\r\n          el(\"bpp9AdminModal\")\r\n        ){\r\n          el(\"bpp9AdminModal\")\r\n            .classList\r\n            .remove(\"open\");\r\n        }\r\n      }\r\n    );\r\n\r\n  renderQuestions();\r\n\r\n  post(\"bliss_host_account_me_v1\")\r\n  .then(function(me){\r\n\r\n    if(!me){\r\n  showScreen(\"bpp9Landing\");\r\n  return null;\r\n}\r\n\r\nif(me.signed_in !== true){\r\n  showScreen(\"bpp9Landing\");\r\n  return null;\r\n}\r\n\r\n    CSRF =\r\n      me.csrf\r\n        ? me.csrf\r\n        : \"\";\r\n\r\n    currentAccount =\r\n      me.account\r\n        ? me.account\r\n        : {};\r\n\r\n    return loadDashboard();\r\n  })\r\n    .catch(function(){\r\n      showScreen(\"bpp9Landing\");\r\n    });\r\n}\r\n\r\nif(\r\n  document.readyState ===\r\n  \"loading\"\r\n){\r\n  document.addEventListener(\r\n    \"DOMContentLoaded\",\r\n    initBPP9\r\n  );\r\n}else{\r\n  initBPP9();\r\n}\r\n\r\n})();\r\n<\/script>\r\n\r\n\r\n<!-- V11 guided onboarding and placement enhancements; original V9.1 backend calls retained -->\r\n<script id=\"bliss-host-v11-integrated\">\r\n  (function(){\r\n    'use strict';\r\n    if(new URLSearchParams(location.search).get('partnerportal')!=='1')return;\r\n    var started=false, wizardIndex=0, wizardQuestions=[], wizardHead, wizardControls;\r\n    function $(id){return document.getElementById(id)}\r\n    function visible(el){return el && !el.classList.contains('bpp9-hidden')}\r\n    function wizardPaint(){\r\n      if(!wizardQuestions.length || !visible($('bpp9Step2')))return;\r\n      wizardIndex=Math.max(0,Math.min(wizardIndex,wizardQuestions.length-1));\r\n      wizardQuestions.forEach(function(q,i){q.style.display=i===wizardIndex?'':'none'});\r\n      wizardHead.querySelector('strong').textContent='Question '+(wizardIndex+1)+' of '+wizardQuestions.length;\r\n      wizardHead.querySelector('.v11-track span').style.width=((wizardIndex+1)\/wizardQuestions.length*100)+'%';\r\n      wizardControls.querySelector('[data-v11-prev]').disabled=wizardIndex===0;\r\n      wizardControls.querySelector('[data-v11-next]').textContent=wizardIndex===wizardQuestions.length-1?'View my 12 recommendations':'Next question \u2192';\r\n      var original=$('bpp9Step2').querySelector('[data-bpp9=\"recommend\"]');\r\n      if(original)original.style.display='none';\r\n    }\r\n    function makeWizard(){\r\n      var container=$('bpp9Questions'), step=$('bpp9Step2');if(!container||!step)return;\r\n      wizardQuestions=Array.from(container.querySelectorAll(':scope > .bpp9-question'));\r\n      if(!wizardQuestions.length)return;\r\n      wizardHead=document.createElement('div');wizardHead.className='v11-wizard-head';\r\n      wizardHead.innerHTML='<strong>Question 1<\/strong><div class=\"v11-track\"><span style=\"width:9%\"><\/span><\/div>';\r\n      container.parentNode.insertBefore(wizardHead,container);\r\n      wizardControls=document.createElement('div');wizardControls.className='v11-wizard-controls';\r\n      wizardControls.innerHTML='<button type=\"button\" data-v11-prev>\u2190 Previous<\/button><button type=\"button\" data-v11-next>Next question \u2192<\/button>';\r\n      container.parentNode.insertBefore(wizardControls,container.nextSibling);\r\n      wizardControls.addEventListener('click',function(e){\r\n        var b=e.target.closest('button');if(!b)return;\r\n        if(b.hasAttribute('data-v11-prev'))wizardIndex--;\r\n        else if(wizardIndex<wizardQuestions.length-1)wizardIndex++;\r\n        else {var original=step.querySelector('[data-bpp9=\"recommend\"]');if(original)original.click();return;}\r\n        wizardPaint();step.scrollIntoView({block:'start',behavior:'smooth'});\r\n      });\r\n      wizardPaint();\r\n    }\r\n    function improveMarket(){\r\n      var grid=$('bpp9RecGrid');if(!grid)return;\r\n      var step=$('bpp9Step3');if(!step.querySelector('.v11-market-intro')){\r\n        var intro=document.createElement('div');intro.className='v11-market-intro';\r\n        intro.innerHTML='<strong>12 recommended locations. Your first 5 are free.<\/strong><p>These recommendations come from your Host Intelligence answers. Select between one and five placements; any unused free spaces remain available in your account. Placements are subject to approval.<\/p><span class=\"v11-market-tag\">PERSONALIZED PLACEMENT MARKETPLACE<\/span>';\r\n        grid.parentNode.insertBefore(intro,grid);\r\n      }\r\n      Array.from(grid.querySelectorAll('.bpp9-rec')).forEach(function(card){\r\n        card.setAttribute('role','button');card.setAttribute('tabindex','0');\r\n        card.setAttribute('aria-pressed',card.classList.contains('selected')?'true':'false');\r\n        if(!card.dataset.v11Keyboard){card.dataset.v11Keyboard='1';card.addEventListener('keydown',function(e){if(e.key==='Enter'||e.key===' '){e.preventDefault();card.click()}})}\r\n      });\r\n    }\r\n    function improvePackages(){\r\n      var packages=Array.from(document.querySelectorAll('#bpp9 .bpp9-package'));\r\n      packages.forEach(function(p){if(p.querySelector('.v11-package-note'))return;\r\n        var title=p.querySelector('strong'),price=p.querySelector('.bpp9-package-price');\r\n        if(price && \/ENTER PRICE\/i.test(price.textContent)){price.textContent='Price to be announced';}\r\n        if(title){var note=document.createElement('p');note.className='v11-package-note';note.textContent='Total account capacity, including your five free placements. Payment activation requires verified checkout.';title.after(note)}\r\n      });\r\n    }\r\n    function init(){\r\n      if(started||!$('bpp9')||!$('bpp9Questions'))return;\r\n      started=true;makeWizard();improveMarket();improvePackages();\r\n      var observer=new MutationObserver(function(){\r\n        if(visible($('bpp9Step2')))wizardPaint();\r\n        if(visible($('bpp9Step3')))improveMarket();\r\n      });\r\n      observer.observe($('bpp9Step2'),{attributes:true,attributeFilter:['class']});\r\n      observer.observe($('bpp9Step3'),{attributes:true,attributeFilter:['class']});\r\n      observer.observe($('bpp9RecGrid'),{childList:true});\r\n      $('bpp9RecGrid').addEventListener('click',function(){setTimeout(improveMarket,0)});\r\n      document.addEventListener('click',function(e){\r\n        var b=e.target.closest('#bpp9 [data-bpp9]');if(!b)return;\r\n        var action=b.getAttribute('data-bpp9');\r\n        if(action==='to-intel'||action==='back-intel'){setTimeout(function(){wizardIndex=0;wizardPaint()},0)}\r\n        if(action==='start'){wizardIndex=0}\r\n      });\r\n    }\r\n    if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',function(){setTimeout(init,0)});\r\n    else setTimeout(init,0);\r\n  })();\r\n  <\/script>\r\n\r\n","protected":false},"excerpt":{"rendered":"<p>Would you like to see Thematic Tours of the area? Yes No \ud83e\udef5 First You \ud83d\udcb3 Kids Women Men Pets Spa Kids Women Men Pets Beauty Kids Women Men Pets Dinner Kids Women Men Pets Events \ud83d\udcb3 Pay with Bliss Coin Enter your digital wallet #: Send payment to: HOST-WALLET-ADDRESS-123 Close \ud83e\uddca \ud83d\udc96 Sign In [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-3797","page","type-page","status-publish","hentry"],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/godsgalaxygame.com\/GGG\/wp-json\/wp\/v2\/pages\/3797","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/godsgalaxygame.com\/GGG\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/godsgalaxygame.com\/GGG\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/godsgalaxygame.com\/GGG\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/godsgalaxygame.com\/GGG\/wp-json\/wp\/v2\/comments?post=3797"}],"version-history":[{"count":114,"href":"https:\/\/godsgalaxygame.com\/GGG\/wp-json\/wp\/v2\/pages\/3797\/revisions"}],"predecessor-version":[{"id":10852,"href":"https:\/\/godsgalaxygame.com\/GGG\/wp-json\/wp\/v2\/pages\/3797\/revisions\/10852"}],"wp:attachment":[{"href":"https:\/\/godsgalaxygame.com\/GGG\/wp-json\/wp\/v2\/media?parent=3797"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}