{"id":2752,"date":"2025-07-07T23:42:49","date_gmt":"2025-07-07T23:42:49","guid":{"rendered":"https:\/\/godsgalaxygame.com\/GGG\/?page_id=2752"},"modified":"2026-01-01T06:16:57","modified_gmt":"2026-01-01T06:16:57","slug":"entertainment","status":"publish","type":"page","link":"https:\/\/godsgalaxygame.com\/GGG\/entertainment\/","title":{"rendered":"Entertainment"},"content":{"rendered":"\n<!-- =====================\nPOP-UP BEFORE RESERVATION (LEVEL 3 \u2192 EVOLUTION TOURS)\n===================== -->\n\n<style>\n  #evoReservePopupOverlay {\n    position: fixed;\n    top: 0; left: 0;\n    width: 100%; height: 100%;\n    background: rgba(0,0,0,0.85);\n    display: none;\n    justify-content: center;\n    align-items: center;\n    z-index: 999999;\n  }\n\n  #evoReservePopup {\n    background: #111;\n    border: 2px solid #ffffff55;\n    padding: 30px 35px;\n    border-radius: 18px;\n    text-align: center;\n    width: 300px;\n    box-shadow: 0 0 25px #ffffff88;\n  }\n\n  #evoReservePopup h2 {\n    color: white;\n    font-size: 20px;\n    margin-bottom: 25px;\n  }\n\n  .evo-reserve-btn {\n    padding: 10px 20px;\n    margin: 8px;\n    border-radius: 10px;\n    border: none;\n    cursor: pointer;\n    font-weight: bold;\n    font-size: 15px;\n  }\n\n  .evo-yes {\n    background: #6a00ff;\n    color: white;\n    box-shadow: 0 0 12px #6a00ff;\n  }\n\n  .evo-no {\n    background: #ff0066;\n    color: white;\n    box-shadow: 0 0 12px #ff0066;\n  }\n<\/style>\n\n<div id=\"evoReservePopupOverlay\">\n  <div id=\"evoReservePopup\">\n    <h2>Would you like to see Evolution Tours of the area?<\/h2>\n    <button class=\"evo-reserve-btn evo-yes\" onclick=\"goToEvolution()\">Yes<\/button>\n    <button class=\"evo-reserve-btn evo-no\" onclick=\"handleReserveClick()\">No<\/button>\n  <\/div>\n<\/div>\n\n<script>\n  const EVOLUTION_URL = \"\/GGG\/evolution-tours\/\";          \/\/ Level 4 page\n  const ELEMENTS_URL_3 = \"https:\/\/godsgalaxygame.com\/GGG\/medayork-pyramid-2\/?travelclub=1\"; \/\/ Same Elements Club (change if needed)\n\n  function openEvolutionPopup() {\n    document.getElementById(\"evoReservePopupOverlay\").style.display = \"flex\";\n  }\n\n  function goToEvolution() {\n  if (window.openEvolutionGate) {\n    window.openEvolutionGate(); \/\/ opens Evolution popup from footer\n  } else {\n    window.location.href = EVOLUTION_URL; \/\/ fallback if footer missing\n  }\n}\n\n  function continueReservationFromThematic() {\n    window.location.href = ELEMENTS_URL_3;\n  }\n<\/script>\n\n\n\n<!-- BLOQUE 2 - Entertainment Cube V19 Completo + Mapa Circular + API -->\n<style>\n  @media (max-width: 768px) {\n    #glowMapContainer {\n      margin-top: -55px !important;\n    }\n  }\n<\/style>\n<div id=\"entertainmentCubeContainer\" style=\"opacity:1; pointer-events: auto; transition: opacity 0.6s ease;\">\n  <!-- ESCENA CUBO -->\n  <div class=\"cube-scene\" style=\"width:180px; height:180px; perspective:1000px; position:fixed; bottom:20px; left:20px; z-index:1000;\">\n    <div class=\"cube\" id=\"entertainmentCube\" style=\"width:100%; height:100%; position:relative; transform-style:preserve-3d; transform:rotateX(0deg) rotateY(0deg); transition:transform 0.3s ease;\">\n   <!-- FRONT -->\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;\">\n        <div style=\"font-size:42px; color:white; text-shadow:0 0 15px white;\">\ud83c\udfad<\/div>\n        <div style=\"font-size:16px; color:white; font-weight:bold; text-shadow:0 0 10px white; margin-top:6px;\">Entertainment<\/div>\n      <\/div>\n\n      <!-- Cara Trasera del Cubo: Transportation -->\n<!-- Back Face - Transportation Cube - Nuevo Dise\u00f1o con Botones Circulares -->\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;\">\n\n  <!-- Sol central -->\n  <img decoding=\"async\" src=\"http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/06\/1000065346-scaled.jpg\"\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;\" \/>\n\n  <!-- Reserve -->\n  <a onclick=\"openEvolutionPopup()\"\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;\"\n   title=\"Reserve\"><\/a>\n\n  <!-- Bliss Coin -->\n  <div onclick=\"openBlissCoinPopup()\"\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;\"\n       title=\"Pay with Bliss Coin\">\ud83d\udcb3<\/div>\n\n  <!-- Coupon Button (Bottom-Left Corner) -->\n<a href=\"https:\/\/godsgalaxygame.com\/GGG\/discounts-gift\/\"\n   target=\"_blank\"\n   style=\"position: absolute;\n          bottom: 8px;\n          left: 8px;\n          width: 44px;\n          height: 44px;\n          border-radius: 50%;\n          background-image: url('http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/06\/Screenshot_20240108-225546_Chrome.jpg');\n          background-size: cover;\n          box-shadow: 0 0 12px cyan;\n          cursor: pointer;\"\n   title=\"Get Coupons\">\n<\/a>\n\n  <!-- Become a Host -->\n  <a href=\"https:\/\/luxus2.godaddysites.com\/\" target=\"_blank\"\n     style=\"position:absolute; bottom:8px; right:8px; width:44px; height:44px; border-radius:50%; background-image:url('http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/06\/Screenshot_20240108-224514_Chrome-scaled.jpg'); background-size:cover; box-shadow:0 0 12px cyan;\"\n     title=\"Become a Host\"><\/a>\n<\/div>\n\n\n\n      <!-- RIGHT (Concerts) -->\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;\">\n        <button onclick=\"showHostButtons('concer-backs')\" style=\"position:absolute; top:8px; left:27px; width:126px; height:17px; border:1px solid beige; color:white; background:transparent;\">Backstage<\/button>\n        <button onclick=\"showHostButtons('concer-cabin')\" style=\"position:absolute; bottom:8px; left:27px; width:126px; height:17px; border:1px solid beige; color:white; background:transparent;\">Cabin<\/button>\n        <button onclick=\"showHostButtons('concer-vip')\" style=\"position:absolute; top:27px; left:8px; height:126px; width:17px; border:1px solid beige; color:white; writing-mode:vertical-rl; background:transparent;\">VIP<\/button>\n        <button onclick=\"showHostButtons('concer-ots')\" style=\"position:absolute; top:27px; right:8px; height:126px; width:17px; border:1px solid beige; color:white; writing-mode:vertical-lr; background:transparent;\">On The Stage<\/button>\n        <div style=\"position:absolute; top:50%; left:50%; transform:translate(-50%, -50%); text-align:center;\">\n          <div style=\"color:beige; font-size:16px; font-weight:bold;\">Concerts<\/div>\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;\">\n        <\/div>\n      <\/div>\n\n      <!-- LEFT (Fashion) -->\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;\">\n        <button onclick=\"showHostButtons('fash-live')\" style=\"position:absolute; top:8px; left:27px; width:126px; height:17px; border:1px solid #00ccff; color:white; background:transparent;\">Live<\/button>\n        <button onclick=\"showHostButtons('fash-malls')\" style=\"position:absolute; bottom:8px; left:27px; width:126px; height:17px; border:1px solid #00ccff; color:white; background:transparent;\">Malls<\/button>\n        <button onclick=\"showHostButtons('fash-online')\" style=\"position:absolute; top:27px; left:8px; height:126px; width:17px; border:1px solid #00ccff; color:white; writing-mode:vertical-rl; background:transparent;\">Online<\/button>\n        <button onclick=\"showHostButtons('fash-dwt')\" style=\"position:absolute; top:27px; right:8px; height:126px; width:17px; border:1px solid #00ccff; color:white; writing-mode:vertical-lr; background:transparent;\">Downtown<\/button>\n        <div style=\"position:absolute; top:50%; left:50%; transform:translate(-50%, -50%); text-align:center;\">\n          <div style=\"color:#00ccff; font-size:16px; font-weight:bold;\">Fashion<\/div>\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;\">\n        <\/div>\n      <\/div>\n\n      <!-- TOP (Comedy) -->\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;\">\n        <button onclick=\"showHostButtons('come-show')\" style=\"position:absolute; top:8px; left:27px; width:126px; height:17px; border:1px solid green; color:white; background:transparent;\">Show<\/button>\n        <button onclick=\"showHostButtons('come-stand')\" style=\"position:absolute; bottom:8px; left:27px; width:126px; height:17px; border:1px solid green; color:white; background:transparent;\">Stand-Up<\/button>\n        <button onclick=\"showHostButtons('come-guide')\" style=\"position:absolute; top:27px; left:8px; height:126px; width:17px; border:1px solid green; color:white; writing-mode:vertical-rl; background:transparent;\">Guide<\/button>\n        <button onclick=\"showHostButtons('come-book')\" style=\"position:absolute; top:27px; right:8px; height:126px; width:17px; border:1px solid green; color:white; writing-mode:vertical-lr; background:transparent;\">Book<\/button>\n        <div style=\"position:absolute; top:50%; left:50%; transform:translate(-50%, -50%); text-align:center;\">\n          <div style=\"color:#33ff33; font-size:16px; font-weight:bold;\">Comedy<\/div>\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;\">\n        <\/div>\n      <\/div>\n\n      <!-- BOTTOM (Sports) -->\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;\">\n        <button onclick=\"showHostButtons('sport-lesson')\" style=\"position:absolute; top:8px; left:27px; width:126px; height:17px; border:1px solid red; color:white; background:transparent;\">Lessons<\/button>\n        <button onclick=\"showHostButtons('sport-game')\" style=\"position:absolute; bottom:8px; left:27px; width:126px; height:17px; border:1px solid red; color:white; background:transparent;\">Game<\/button>\n        <button onclick=\"showHostButtons('sport-play')\" style=\"position:absolute; top:27px; left:8px; height:126px; width:17px; border:1px solid red; color:white; writing-mode:vertical-rl; background:transparent;\">Play<\/button>\n        <button onclick=\"showHostButtons('sport-tour')\" style=\"position:absolute; top:27px; right:8px; height:126px; width:17px; border:1px solid red; color:white; writing-mode:vertical-lr; background:transparent;\">Tour<\/button>\n        <div style=\"position:absolute; top:50%; left:50%; transform:translate(-50%, -50%); text-align:center;\">\n          <div style=\"color:red; font-size:16px; font-weight:bold;\">Sports<\/div>\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;\">\n        <\/div>\n      <\/div>\n\n    <\/div>\n  <\/div>\n\n  <!-- MAPA CIRCULAR -->\n  <div id=\"glowMapContainer\" style=\"opacity:1; pointer-events:auto; transition: opacity 0.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,0.6); box-shadow: 0 0 25px cyan; position: relative; z-index: 900;\">\n    <div id=\"googleMap\" style=\"width:100%; height:100%;\"><\/div>\n  <\/div>\n<\/div>\n\n<!-- Google Maps API (clave v\u00e1lida y correcta) -->\n<script src=\"https:\/\/maps.googleapis.com\/maps\/api\/js?key=AIzaSyDLPhx98z9AgoqXS6VeoESE9NV6URuOhiE&#038;callback=initMap\" async defer><\/script>\n\n<script>\n  function activateentertainmentCube() {\n    \/\/ Oculta el grid de opciones\n    const rrGrid = document.getElementById(\"rrGrid\");\n    if (rrGrid) {\n      rrGrid.style.display = \"none\";\n    }\n\n    \/\/ Muestra el contenedor del cubo Entertainment\n    const container = document.getElementById(\"entertainmentContainer\");\n    if (container) {\n      container.style.opacity = \"1\";\n      container.style.pointerEvents = \"auto\";\n    }\n\n    \/\/ Muestra el mapa\n    const map = document.getElementById(\"glowMapContainer\");\n    if (map) {\n      map.style.opacity = \"1\";\n      map.style.pointerEvents = \"auto\";\n    }\n\n    \/\/ Reinicia el mapa si es necesario\n    if (typeof initMap === \"function\") {\n      initMap();\n    }\n  }\n<\/script>\n<script>\n function initMap() {\n  const map = new google.maps.Map(document.getElementById(\"googleMap\"), {\n    center: { lat: 6.2414088, lng: -75.22951 },  \/\/ Bliss Glamping\n    zoom: 15,\n    disableDefaultUI: true,\n    gestureHandling: \"greedy\"\n  });\n\n  \/\/ \ud83d\udfe2 Add this to show the marker\n  const marker = new google.maps.Marker({\n    position: { lat: 6.2414088, lng: -75.22951 },\n    map: map,\n    title: \"Bliss Glamping\"\n  });\n\n  \/\/ Optional: save the map to global variable if needed later\n  window.ggMap = map;\n}\n<\/script>\n<!-- POP-UP para Bliss Coin -->\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;\">\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;\">\n    <h3 style=\"font-size:18px;\">\ud83d\udcb3 Pay with Bliss Coin<\/h3>\n    <p style=\"font-size:14px;\">Enter your digital wallet #:<\/p>\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;\" \/>\n    <p style=\"margin-top:14px;\">Send payment to:<\/p>\n    <div style=\"margin:8px auto; padding:6px; background:#222; border:1px solid cyan; border-radius:8px;\">\n      <code style=\"font-size:13px;\">HOST-WALLET-ADDRESS-123<\/code>\n    <\/div>\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;\">\n      Close\n    <\/button>\n  <\/div>\n<\/div>\n\n<script>\n  function openBlissCoinPopup() {\n    document.getElementById('blissCoinPopup').style.display = 'flex';\n  }\n  function closeBlissCoinPopup() {\n    document.getElementById('blissCoinPopup').style.display = 'none';\n  }\n<\/script>\n\n\n\n<!-- ============================\nGLOBAL PREVIEW + SHOW ROUTE\n(para Entertainment \/ Level 3)\n============================ -->\n<script>\n(() => {\n  \/* ============ 1) VIDEOS POR SUBOPCI\u00d3N (PREVIEW) ============ *\/\n  \/\/ La clave debe ser una clase que tenga el c\u00edrculo .host-circle\n  const PREVIEW_MEDIA = {\n    \/* ---------- CONCERTS ---------- *\/\n    \"concer-back\": {\n      type: \"video\",\n      src: \"https:\/\/youtu.be\/oRJ-PnV2B9w?si=gebReu1I5Eknpoqn\"\n    },\n    \"concer-cabin\": {\n      type: \"video\",\n      src: \"https:\/\/youtu.be\/oRJ-PnV2B9w?si=gebReu1I5Eknpoqn\"\n    },\n    \"concer-vip\": {\n      type: \"video\",\n      src: \"https:\/\/youtu.be\/oRJ-PnV2B9w?si=gebReu1I5Eknpoqn\"\n    },\n    \"concer-ots\": {\n      type: \"video\",\n      src: \"https:\/\/youtu.be\/oRJ-PnV2B9w?si=gebReu1I5Eknpoqn\"\n    },\n\n    \/* ---------- FASHION ---------- *\/\n    \"fash-live\": {\n      type: \"video\",\n      src: \"https:\/\/youtu.be\/rwo3Jg5eKs4?si=-YnVH4d-hbrZlwkc\" \/\/ Fashion MDE (Live)\n    },\n    \"fash-malls\": {\n      type: \"video\",\n      src: \"https:\/\/youtu.be\/rwo3Jg5eKs4?si=-YnVH4d-hbrZlwkc\"\n    },\n    \"fash-online\": {\n      type: \"video\",\n      src: \"https:\/\/youtu.be\/jige1LvSxzs?si=AO8Tu5RGaHakTz8S\"\n    },\n    \"fash-dwt\": {\n      type: \"video\",\n      src: \"https:\/\/youtu.be\/tTMSm8JIPVA?si=GUgJScbPXS21BHAf\"\n    },\n\n    \/* ---------- COMEDY ---------- *\/\n    \"come-show\": {\n      type: \"video\",\n      src: \"https:\/\/youtu.be\/eg7uv9Fv_50?si=KXuDibUALpDYW30e\"\n    },\n    \"come-stand\": {\n      type: \"video\",\n      src: \"https:\/\/youtu.be\/8E5M53OG4Bc?si=JTRrRoGhiotruhbo\"\n    },\n    \"come-guide\": {\n      type: \"video\",\n      src: \"https:\/\/youtu.be\/qxcttyxF2UI?si=hbxpN2lgX6O5P20y\"\n    },\n    \"come-book\": {\n      type: \"video\",\n      src: \"https:\/\/youtu.be\/qxcttyxF2UI?si=I0L_7qF4Zmq8YUsS\"\n    },\n\n    \/* ---------- SPORTS ---------- *\/\n    \"sport-lesson\": {\n      type: \"video\",\n      src: \"https:\/\/youtu.be\/lC3DnTfaee4?si=y4y2-a5A1wC45bym\"\n    },\n    \"sport-game\": {\n      type: \"video\",\n      src: \"https:\/\/youtu.be\/6JBj5M7XlL4?si=lAVm7zAQN1G7pD3l\"\n    },\n    \"sport-play\": {\n      type: \"video\",\n      src: \"https:\/\/youtu.be\/tgMM2ReUjrc?si=l4EpAPzDMZ0G728K\"\n    },\n    \"sport-tour\": {\n      type: \"video\",\n      src: \"https:\/\/youtu.be\/uh75BT6SuZQ?si=BgMAcScV5YFHcSut\"\n    }\n  };\n\n  \/* ============ 1.5) RUTAS KML POR SUBOPCI\u00d3N (SHOW ROUTE) ============ *\/\n  const ROUTE_KMLS = {\n    \/* ---------- CONCERTS (misma ruta para las 4 subopciones) ---------- *\/\n    \"concer-back\": \"https:\/\/godsgalaxygame.com\/Kml\/Entertainment%20Concerts.kml\",\n    \"concer-cabin\": \"https:\/\/godsgalaxygame.com\/Kml\/Entertainment%20Concerts.kml\",\n    \"concer-vip\":   \"https:\/\/godsgalaxygame.com\/Kml\/Entertainment%20Concerts.kml\",\n    \"concer-ots\":   \"https:\/\/godsgalaxygame.com\/Kml\/Entertainment%20Concerts.kml\",\n\n    \/* ---------- FASHION ---------- *\/\n    \"fash-live\":   \"https:\/\/godsgalaxygame.com\/Kml\/Fashion%20MDE.kml\",\n    \"fash-malls\":  \"https:\/\/godsgalaxygame.com\/Kml\/Fashion%20Malls.kml\",\n    \"fash-online\": \"https:\/\/godsgalaxygame.com\/Kml\/Fashion%20Online.kml\",\n    \"fash-dwt\":    \"https:\/\/godsgalaxygame.com\/Kml\/Fashion%20Downtown.kml\",\n\n    \/* ---------- COMEDY ---------- *\/\n    \"come-show\":  \"https:\/\/godsgalaxygame.com\/Kml\/Comedy%20Show.kml\",\n    \"come-stand\": \"https:\/\/godsgalaxygame.com\/Kml\/Comedy%20Stand-Up.kml\",\n    \"come-guide\": \"https:\/\/godsgalaxygame.com\/Kml\/Comedy%20Guide.kml\",\n    \"come-book\":  \"https:\/\/godsgalaxygame.com\/Kml\/Comedy%20Book.kml\",\n\n    \/* ---------- SPORTS ---------- *\/\n    \"sport-lesson\": \"https:\/\/godsgalaxygame.com\/Kml\/Sports%20Lessons.kml\",\n    \"sport-game\":   \"https:\/\/godsgalaxygame.com\/Kml\/Sports%20Games.kml\",\n    \"sport-play\":   \"https:\/\/godsgalaxygame.com\/Kml\/Sports%20Play.kml\",\n    \"sport-tour\":   \"https:\/\/godsgalaxygame.com\/Kml\/Sport%20Tours.kml\"\n  };\n\n  \/* ============ 2) ESTADO INTERNO ============ *\/\n  let state = { key: null, type: null, src: null, title: null };\n  let currentKmlLayer = null;\n\n  const until = (fn, timeout = 8000, every = 120) => new Promise((res, rej) => {\n    const t0 = performance.now();\n    const tick = () => {\n      const out = fn();\n      if (out) return res(out);\n      if (performance.now() - t0 > timeout) return rej(new Error('timeout'));\n      setTimeout(tick, every);\n    };\n    tick();\n  });\n\n  const getBgURL = (el) => {\n    const bg = (getComputedStyle(el).backgroundImage || '').trim();\n    return bg.replace(\/^url\\((['\"]?)(.*)\\1\\)$\/, '$2');\n  };\n\n  const make = (tag, attrs = {}, html = '') => {\n    const el = document.createElement(tag);\n    Object.entries(attrs).forEach(([k, v]) => el.setAttribute(k, v));\n    if (html) el.innerHTML = html;\n    return el;\n  };\n\n  \/\/ Convierte YouTube\/Vimeo en iframe con AUTOPLAY\n  const embedFrom = (url) => {\n    if (\/youtube\\.com\\\/embed\\\/\/i.test(url)) {\n      const hasQuery = url.includes(\"?\");\n      return `<iframe src=\"${url}${hasQuery ? \"&#038;\" : \"?\"}autoplay=1&#038;rel=0&#038;playsinline=1\"\n        allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\"\n        allowfullscreen><\/iframe>`;\n    }\n\n    const yt = url.match(\/(?:youtu\\.be\\\/|youtube\\.com\\\/watch\\?v=)([\\w\\-]+)\/i);\n    const vm = url.match(\/vimeo\\.com\\\/(\\d+)\/i);\n\n    if (yt) {\n      const id = yt[1];\n      return `<iframe src=\"https:\/\/www.youtube.com\/embed\/${id}?autoplay=1&#038;rel=0&#038;playsinline=1\"\n        allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\"\n        allowfullscreen><\/iframe>`;\n    }\n\n    if (vm) {\n      const id = vm[1];\n      return `<iframe src=\"https:\/\/player.vimeo.com\/video\/${id}?autoplay=1\"\n        allow=\"autoplay; fullscreen; picture-in-picture; clipboard-write\"\n        allowfullscreen><\/iframe>`;\n    }\n\n    return `<a href=\"${url}\" target=\"_blank\" style=\"color:#00ffff; font-weight:900; text-decoration:underline;\">Open video<\/a>`;\n  };\n\n  \/* ============ 3) ESTILOS + UI EN EL MAPA ============ *\/\n  function injectStyles() {\n    if (document.getElementById('ggg-preview-styles')) return;\n    const css = `\n#glowMapContainer{ position:relative; }\n#accSeePreview, #accShowRoute{\n  position:absolute; left:50%; transform:translateX(-50%);\n  padding:8px 14px;\n  border-radius:999px; border:2px solid rgba(0,255,255,.7);\n  background:rgba(0,0,0,.65); color:#eafcff;\n  font-family:Orbitron,system-ui,sans-serif; font-weight:900; letter-spacing:.2px;\n  box-shadow:0 0 16px rgba(0,255,255,.45);\n  cursor:pointer; z-index:1200; display:none;\n}\n#accSeePreview{ bottom:46px; }\n#accShowRoute{ bottom:10px; }\n\n#accSeePreview:hover, #accShowRoute:hover{\n  box-shadow:0 0 22px rgba(0,255,255,.85);\n}\n#accPreviewOverlay{\n  position:absolute; inset:0; display:none; place-items:center;\n  background: radial-gradient(ellipse at 50% 50%, rgba(0,0,0,.30), rgba(0,0,0,.65) 70%);\n  z-index:1300;\n}\n.acc-preview-circle{\n  width: clamp(200px, 62%, 300px); aspect-ratio:1\/1;\n  border-radius:50%; border:4px solid rgba(0,255,255,.75);\n  box-shadow: 0 0 28px rgba(0,255,255,.6), inset 0 0 22px rgba(0,255,255,.25);\n  background:#000; overflow:hidden; position:relative;\n  display:grid; place-items:center;\n}\n.acc-closeX{\n  position:absolute; top:6px; right:8px; z-index:2;\n  border:0; background:rgba(0,0,0,.55); color:#9fefff;\n  font-size:20px; font-weight:900; width:28px; height:28px;\n  border-radius:50%; cursor:pointer; line-height:26px;\n  box-shadow:0 0 10px rgba(0,255,255,.35);\n}\n#accPreviewMedia{ width:92%; height:92%; display:grid; place-items:center; }\n#accPreviewMedia img{ width:100%; height:100%; object-fit:cover; border-radius:50%; display:block; }\n#accPreviewMedia iframe{ width:100%; height:100%; border:0; border-radius:50%; }`;\n    const style = make('style', { id: 'ggg-preview-styles' }, css);\n    document.head.appendChild(style);\n  }\n\n  function mountUI(mapWrap) {\n    if (document.getElementById('accSeePreview')) {\n      return {\n        btnPreview: document.getElementById('accSeePreview'),\n        btnRoute: document.getElementById('accShowRoute'),\n        overlay: document.getElementById('accPreviewOverlay'),\n        media: document.getElementById('accPreviewMedia')\n      };\n    }\n\n    const btnPrev = make('button', { id: 'accSeePreview', 'aria-haspopup': 'dialog' }, '\ud83d\udc41\ufe0f See Preview');\n    const btnRoute = make('button', { id: 'accShowRoute', 'aria-haspopup': 'false' }, '\ud83d\udccd Show Route');\n\n    const overlay = make('div', { id: 'accPreviewOverlay', 'aria-hidden': 'true' });\n    overlay.innerHTML = `\n      <div class=\"acc-preview-circle\" role=\"dialog\" aria-label=\"Map preview\">\n        <button class=\"acc-closeX\" aria-label=\"Close preview\">\u00d7<\/button>\n        <div id=\"accPreviewMedia\"><\/div>\n      <\/div>`;\n\n    mapWrap.appendChild(btnPrev);\n    mapWrap.appendChild(btnRoute);\n    mapWrap.appendChild(overlay);\n\n    const media = document.getElementById('accPreviewMedia');\n    const closeBtn = overlay.querySelector('.acc-closeX');\n\n    \/\/ Abrir PREVIEW\n    btnPrev.addEventListener('click', () => {\n      if (!state.src) return;\n      media.innerHTML = state.type === 'video'\n        ? embedFrom(state.src)\n        : `<img decoding=\"async\" src=\"${state.src}\" alt=\"${state.title || 'Preview'}\">`;\n\n      overlay.style.display = 'grid';\n      overlay.setAttribute('aria-hidden', 'false');\n    });\n\n    \/\/ Cerrar PREVIEW\n    const close = () => {\n      overlay.style.display = 'none';\n      overlay.setAttribute('aria-hidden', 'true');\n      media.innerHTML = '';\n    };\n    closeBtn.addEventListener('click', close);\n    overlay.addEventListener('click', (e) => { if (e.target === overlay) close(); });\n    window.addEventListener('keydown', (e) => { if (e.key === 'Escape') close(); }, { passive: true });\n\n    \/\/ CLICK EN SHOW ROUTE (zoom fijo 13)\n    btnRoute.addEventListener('click', () => {\n      if (!state.key) return;\n      const url = ROUTE_KMLS[state.key];\n      if (!url || !window.ggMap || !window.google) return;\n\n      \/\/ Limpia la ruta anterior\n      if (currentKmlLayer) {\n        currentKmlLayer.setMap(null);\n        currentKmlLayer = null;\n      }\n\n      \/\/ Carga la nueva ruta y deja que el KML mueva el mapa\n      currentKmlLayer = new google.maps.KmlLayer({\n        url,\n        map: window.ggMap,\n        suppressInfoWindows: false,\n        preserveViewport: false\n      });\n\n      \/\/ Cuando el KML termine de cargar, forzamos zoom 13 SIEMPRE\n      google.maps.event.addListenerOnce(currentKmlLayer, 'status_changed', () => {\n        google.maps.event.addListenerOnce(window.ggMap, 'idle', () => {\n          window.ggMap.setZoom(13);\n        });\n      });\n    });\n\n    return { btnPreview: btnPrev, btnRoute, overlay, media };\n  }\n\n  \/* ============ 4) LEER CLAVE DESDE EL C\u00cdRCULO ============ *\/\n  function keyFromClasses(el) {\n    const classes = [...el.classList];\n    \/\/ Primero busca una clase que exista en PREVIEW_MEDIA o ROUTE_KMLS\n    const anyKnown = classes.find(c => PREVIEW_MEDIA[c] || ROUTE_KMLS[c]);\n    return anyKnown || null;\n  }\n\n  function hookCircles(btnPrev, btnRoute) {\n    const wrap = document.getElementById('hostButtons');\n    if (!wrap) return;\n\n    wrap.addEventListener('click', (e) => {\n      const el = e.target.closest('.host-circle');\n      if (!el) return;\n\n      const key = keyFromClasses(el);\n      const cfg = key ? PREVIEW_MEDIA[key] : null;\n      const title = el.getAttribute('title') || '';\n\n      const fallbackImg = getBgURL(el);\n      state = {\n        key,\n        type: cfg?.type || 'image',\n        src:  cfg?.src || fallbackImg,\n        title\n      };\n\n      \/\/ See Preview: se muestra si tenemos ALGO que mostrar (video o imagen)\n      if (btnPrev) {\n        btnPrev.style.display = state.src ? 'block' : 'none';\n      }\n\n      \/\/ Show Route: solo si existe KML para esa key\n      if (btnRoute) {\n        btnRoute.style.display = (key && ROUTE_KMLS[key]) ? 'block' : 'none';\n      }\n\n    }, { passive: true });\n  }\n\n  \/* ============ 5) ARRANQUE ============ *\/\n  async function boot() {\n    try {\n      injectStyles();\n\n      \/\/ Espera a que exista el mapa y el contenedor\n      await until(() => window.ggMap && document.getElementById('glowMapContainer'));\n      const mapWrap = document.getElementById('glowMapContainer');\n      const refs = mountUI(mapWrap);\n\n      \/\/ Espera a que exista hostButtons\n      await until(() => document.getElementById('hostButtons'));\n      hookCircles(refs.btnPreview, refs.btnRoute);\n\n      console.log('%c[GGG Entertainment Preview+Route] Ready', 'color:#0ff');\n    } catch (e) {\n      console.warn('[GGG Entertainment Preview+Route] init failed:', e);\n    }\n  }\n\n  if (document.readyState === 'loading') {\n    document.addEventListener('DOMContentLoaded', boot);\n  } else {\n    boot();\n  }\n})();\n<\/script>\n\n\n\n<!-- BLOQUE 3 \u2013 Movimiento + Swipe + SignIn + Favoritos (First You) -->\n\n<!-- ESTILOS -->\n<style>\n  #floatingButtons {\n    position: fixed;\n    top: 14px;\n    right: 14px;\n    display: flex;\n    flex-direction: row;\n    gap: 10px;\n    z-index: 3000;\n  }\n\n  #favoritesBtn, #signinBtn {\n    font-size: 15px;\n    padding: 6px 10px;\n    border-radius: 8px;\n    border: 2px solid white;\n    color: white;\n    background: rgba(0, 0, 0, 0.6);\n    cursor: pointer;\n    box-shadow: 0 0 8px cyan;\n    font-family: Orbitron;\n  }\n\n  #favoritesBtn:hover::after {\n    content: ' Double click a Host to add \ud83d\udc98';\n    font-size: 10px;\n    margin-left: 8px;\n    color: cyan;\n  }\n#pyramidBtn {\n    width: 38px;\n    height: 38px;\n    background-color: black;\n    border: 2px solid white;\n    border-radius: 50%;\n    box-shadow: 0 0 10px cyan; \/* glow *\/\n    display: flex;\n    justify-content: center;\n    align-items: center;\n    font-size: 20px; \/* emoji size *\/\n    cursor: pointer;\n    margin-top: 2px; \/* align with rose *\/\n  }\n\n  #pyramidBtn:hover {\n    transform: scale(1.2);\n  }\n\n#roseBtn {\n  width: 38px;\n  height: 38px;\n  background-color: black; \/* Keep black background *\/\n  background-image: url('http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/07\/ChatGPT-Image-Jul-7-2025-05_11_38-PM.png');\n  background-size: cover;\n  background-position: center;\n  border: 2px solid white; \/* Optional white border *\/\n  border-radius: 50%;\n  box-shadow: 0 0 10px white; \/* White glow around the button *\/\n  cursor: pointer;\n  margin-top: 2px; \/* Adjust position to align with others *\/\n}\n\n#roseBtn:hover {\n  transform: scale(1.2);\n}\n\n  #signinBtn:hover::after {\n    content: ' Sign in to save your Favorites';\n    font-size: 10px;\n    margin-left: 8px;\n    color: cyan;\n  }\n\n  #swipeImage {\n    position: fixed;\n    top: 0;\n    left: 50%;\n    transform: translateX(-50%);\n    width: 160px;\n    z-index: 1200;\n    display: none;\n  }\n#swipeImage {\n  display: none !important;\n}\n\n<\/style>\n\n<!-- BOTONES FLOTANTES -->\n<div id=\"floatingButtons\">\n<button\n    id=\"pyramidBtn\"\n    title=\"Back to MedaYork Pyramid\"\n    onclick=\"window.location.href='https:\/\/godsgalaxygame.com\/GGG\/medayork-pyramid-2\/';\">\n    \ud83e\uddca\n  <\/button>\n<button id=\"roseBtn\"><\/button>\n\n  <button id=\"favoritesBtn\">\ud83d\udc96<\/button>\n  <button id=\"signinBtn\">Sign In \/ Sign Up<\/button>\n<\/div>\n\n<!-- IMAGEN DE SWIPE -->\n<img decoding=\"async\" id=\"swipeImage\" src=\"https:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/06\/Screenshot_20250627_154147_Gallery.jpg\" alt=\"Swipe\" \/>\n\n<!-- SCRIPT DE FUNCIONALIDAD -->\n<script>\n  \/\/ Movimiento del cubo Entertainment\n  let isDragging = false, startX, startY, rotateX = 0, rotateY = 0;\n  const cube = document.getElementById('entertainmentCube');\n\n  function updateRotation(x, y) {\n    cube.style.transform = `rotateX(${x}deg) rotateY(${y}deg)`;\n  }\n\n  function onMouseDown(e) {\n    isDragging = true;\n    startX = e.clientX;\n    startY = e.clientY;\n  }\n\n  function onMouseMove(e) {\n    if (!isDragging) return;\n    const deltaX = e.clientX - startX;\n    const deltaY = e.clientY - startY;\n    rotateY += deltaX * 0.5;\n    rotateX -= deltaY * 0.5;\n    updateRotation(rotateX, rotateY);\n    startX = e.clientX;\n    startY = e.clientY;\n  }\n\n  function onMouseUp() {\n    isDragging = false;\n  }\n\n  function onTouchStart(e) {\n    isDragging = true;\n    startX = e.touches[0].clientX;\n    startY = e.touches[0].clientY;\n  }\n\n  function onTouchMove(e) {\n    if (!isDragging) return;\n    const deltaX = e.touches[0].clientX - startX;\n    const deltaY = e.touches[0].clientY - startY;\n    rotateY += deltaX * 0.5;\n    rotateX -= deltaY * 0.5;\n    updateRotation(rotateX, rotateY);\n    startX = e.touches[0].clientX;\n    startY = e.touches[0].clientY;\n  }\n\n  function onTouchEnd() {\n    isDragging = false;\n  }\n\n  const cubeContainer = document.querySelector('.cube-scene');\n  if (cubeContainer) {\n    cubeContainer.addEventListener('mousedown', onMouseDown);\n    window.addEventListener('mousemove', onMouseMove);\n    window.addEventListener('mouseup', onMouseUp);\n    cubeContainer.addEventListener('touchstart', onTouchStart);\n    window.addEventListener('touchmove', onTouchMove);\n    window.addEventListener('touchend', onTouchEnd);\n  }\n\n  \/\/ Swipe image cuando aparece el cubo\n  const observer = new MutationObserver(() => {\n    const entertainment = document.getElementById('entertainmentCubeContainer');\n    if (entertainment && entertainment.style.opacity === \"1\") {\n      const swipe = document.getElementById('swipeImage');\n      swipe.style.display = 'block';\n      setTimeout(() => {\n        swipe.style.display = 'none';\n      }, 3500);\n      observer.disconnect();\n    }\n  });\n  observer.observe(document.body, { childList: true, subtree: true });\n\n  \/\/ Sistema de favoritos \ud83d\udc96 \u2192 \ud83d\udc98\n  const favorites = [];\n\n  function toggleFavorite(id, imgUrl, mapLat, mapLng) {\n    if (!favorites.some(f => f.id === id)) {\n      favorites.push({ id, imgUrl, lat: mapLat, lng: mapLng });\n      document.getElementById(\"favoritesBtn\").textContent = \"\ud83d\udc98\";\n      console.log(\"Favorito agregado:\", id);\n    }\n  }\nfunction handleReserveClick() {\n  const TRAVEL_CLUB_URL = \"https:\/\/godsgalaxygame.com\/GGG\/medayork-pyramid-2\/?travelclub=1\";\n  const selected = Array.isArray(favorites) ? favorites : [];\n\n  \/\/ If there ARE favorites \u2192 send email\n  if (selected.length > 0) {\n    const lines = selected.map((f, i) => {\n      const id = f.id || `Host ${i+1}`;\n      const lat = (f.lat ?? \"\");\n      const lng = (f.lng ?? \"\");\n      return `${i + 1}. ${id}${(lat !== \"\" && lng !== \"\") ? ` (${lat}, ${lng})` : \"\"}`;\n    });\n\n    const subject = encodeURIComponent(\"GGG \u2013 Selected Hosts\");\n    const body = encodeURIComponent(\n      \"User selected the following hosts:\\n\\n\" + lines.join(\"\\n\")\n    );\n\n    window.location.href =\n      `mailto:edwardraigozallc@gmail.com?subject=${subject}&body=${body}`;\n  }\n\n  \/\/ ALWAYS go to Travel Club (favorites or not)\n  setTimeout(() => {\n    window.location.href = TRAVEL_CLUB_URL;\n  }, 650);\n}\n\n  function clearFavorites() {\n    favorites.length = 0;\n    document.getElementById(\"favoritesBtn\").textContent = \"\ud83d\udc96\";\n  }\n\n  function focusOnHost(lat, lng) {\n    if (window.ggMap) {\n      window.ggMap.setCenter({ lat, lng });\n      window.ggMap.setZoom(15);\n      new google.maps.Marker({ position: { lat, lng }, map: window.ggMap });\n    }\n  }\n\n  document.getElementById(\"favoritesBtn\").addEventListener(\"click\", () => {\n    if (favorites.length === 0) return;\n    document.querySelectorAll('.host-circle').forEach(btn => btn.style.display = 'none');\n    favorites.forEach(fav => {\n      const existing = document.querySelector(`.${fav.id}`);\n      if (existing) existing.style.display = 'inline-block';\n    });\n  });\n<\/script>\n\n\n\n<!-- HOST CIRCLES \u2014 CSS (Entertainment) -->\n<style>\n  \/* container *\/\n  #hostButtons{\n    display:none;                 \/* hidden until a sub-option is clicked *\/\n    position:absolute;\n    top:50%; left:50%;\n    transform:translate(-50%,-50%);\n    width:100%; max-width:500px; height:500px;\n    pointer-events:none;          \/* turned ON in JS when shown *\/\n    z-index:3000;\n  }\n\n  \/* buttons *\/\n  #hostButtons .host-circle{\n    width:80px; height:80px; border-radius:50%;\n    border:2px solid #fff; box-shadow:0 0 14px #fff;\n    background-size:cover; background-position:center;\n    position:absolute; pointer-events:auto; cursor:pointer;\n    transition:transform .3s, box-shadow .3s;\n  }\n  #hostButtons .host-circle:hover{ transform:scale(1.15); box-shadow:0 0 20px cyan; }\n\n  \/* desktop placement (around the circle) *\/\n  #hostButtons .one    { top:4%;    left:10%; }\n  #hostButtons .five   { top:4%;    right:10%; }\n  #hostButtons .seven  { bottom:8%; left:10%; }\n  #hostButtons .month  { bottom:8%; right:10%; }\n\n  \/* color accents per family (match cube face glows) *\/\n  #hostButtons .concer { border-color:beige;   box-shadow:0 0 14px beige; }\n  #hostButtons .fash { border-color:#00ccff; box-shadow:0 0 14px #00ccff; }\n  #hostButtons .come  { border-color:#33ff33; box-shadow:0 0 14px #33ff33; }\n  #hostButtons .sport { border-color:red;     box-shadow:0 0 14px red; }\n\n  \/* phone: turn into one row under the map *\/\n  @media (max-width:768px){\n    #hostButtons{\n      position:relative; top:auto; left:auto; transform:none;\n      height:auto; margin-top:-35px;\n      display:none;               \/* still hidden by default *\/\n      flex-wrap:nowrap; justify-content:center; gap:10px;\n    }\n    #hostButtons .host-circle{ position:relative; width:75px; height:75px; margin:0 6px; }\n  }\n<\/style>\n\n<!-- HOST CIRCLES \u2014 HTML (Entertainment: Concerts\n \/ Fashion \/ Comedy \/ Sports) -->\n<div id=\"hostButtons\">\n  <!-- Concerts (beige) -->\n  <button class=\"host-circle concer concer-backs one\"\n    data-lat=\"6.2414088\" data-lng=\"-75.22951\"\n    style=\"background-image:url('http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/12\/Screenshot_20240903_114026_Google.jpg');\"\n    title=\"Concerts \u2022 Backstage\"><\/button>\n\n  <button class=\"host-circle concer concer-cabin five\"\n    data-lat=\"6.22663\" data-lng=\"-75.1831\"\n    style=\"background-image:url('http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/12\/Screenshot_20240903_125632_Facebook.jpg');\"\n    title=\"Concerts \u2022 Cabin\"><\/button>\n\n  <button class=\"host-circle concer concer-vip seven\"\n    data-lat=\"6.2288021\" data-lng=\"-75.2142911\"\n    style=\"background-image:url('http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/12\/Screenshot_20240902_194811_Google.jpg');\"\n    title=\"Concerts \u2022 VIP\"><\/button>\n\n  <button class=\"host-circle concer concer-ots month\"\n    data-lat=\"6.24426\" data-lng=\"-75.217632\"\n    style=\"background-image:url('http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/12\/Screenshot_20240903_125927_Facebook.jpg');\"\n    title=\"Concerts \u2022 On The Stage\"><\/button>\n\n  <!-- Fashion (cyan) -->\n  <button class=\"host-circle fash fash-live one\"\n    data-lat=\"6.2414088\" data-lng=\"-75.2315485\"\n    style=\"background-image:url('http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/12\/Screenshot_20240903_132328_Instagram.jpg');\"\n    title=\"Fashion \u2022 Live\"><\/button>\n\n  <button class=\"host-circle fash fash-malls five\"\n    data-lat=\"6.24426\" data-lng=\"-75.217632\"\n    style=\"background-image:url('http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/12\/Screenshot_20240903_133138_Chrome.jpg');\"\n    title=\"Fashion \u2022 Malls\"><\/button>\n\n  <button class=\"host-circle fash fash-online seven\"\n    data-lat=\"6.2083202\" data-lng=\"-75.5677995\"\n    style=\"background-image:url('http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/12\/Screenshot_20240903_134058_YouTube.jpg');\"\n    title=\"Fashion \u2022 Malls\"><\/button>\n\n  <button class=\"host-circle fash fash-dwt month\"\n    data-lat=\"6.2252116\" data-lng=\"-75.1800426\"\n    style=\"background-image:url('http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/12\/Screenshot_20240903_134319_Chrome.jpg');\"\n    title=\"Fashion \u2022 Downtown\"><\/button>\n\n  <!-- Comedy (green) -->\n  <button class=\"host-circle come come-show one\"\n    data-lat=\"6.2414088\" data-lng=\"-75.22951\"\n    style=\"background-image:url('http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/12\/Screenshot_20240903_141959_Google.jpg');\"\n    title=\"Comedy \u2022 Show\"><\/button>\n\n  <button class=\"host-circle come come-stand five\"\n    data-lat=\"6.22663\" data-lng=\"-75.1831\"\n    style=\"background-image:url('http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/12\/Screenshot_20240903_142025_Google.jpg');\"\n    title=\"Comedy \u2022 Stand-Up\"><\/button>\n\n  <button class=\"host-circle come come-guide seven\"\n    data-lat=\"6.2288021\" data-lng=\"-75.2142911\"\n    style=\"background-image:url('http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/12\/Screenshot_20240903_143308_Chrome.jpg');\"\n    title=\"Comedy \u2022 Guide\"><\/button>\n\n  <button class=\"host-circle come come-book month\"\n    data-lat=\"6.24426\" data-lng=\"-75.217632\"\n    style=\"background-image:url('http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/12\/Screenshot_20240903_145443_Google.jpg');\"\n    title=\"Comedy \u2022 Book\"><\/button>\n\n  <!-- Sports (red) -->\n  <button class=\"host-circle sport sport-lesson one\"\n    data-lat=\"6.2414088\" data-lng=\"-75.22951\"\n    style=\"background-image:url('http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/12\/Screenshot_20240903_153155_Maps.jpg');\"\n    title=\"Sports \u2022 Lessons\"><\/button>\n\n  <button class=\"host-circle sport sport-game five\"\n    data-lat=\"6.22663\" data-lng=\"-75.1831\"\n    style=\"background-image:url('http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/12\/Screenshot_20240903_155540_Google-Earth.jpg');\"\n    title=\"Sports \u2022 Game\"><\/button>\n\n  <button class=\"host-circle sport sport-play seven\"\n    data-lat=\"6.2288021\" data-lng=\"-75.2142911\"\n    style=\"background-image:url('http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/12\/Screenshot_20240903_155957_Instagram.jpg');\"\n    title=\"Sports \u2022 Play\"><\/button>\n\n  <button class=\"host-circle sport sport-tour month\"\n    data-lat=\"6.24426\" data-lng=\"-75.217632\"\n    style=\"background-image:url('http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/12\/Screenshot_20240903_163711_YouTube.jpg');\"\n    title=\"Sport \u2022 Tours\"><\/button>\n<\/div>\n\n<!-- HOST CIRCLES \u2014 JS (Entertainment) -->\n<script>\n  \/* Show only the requested key, e.g., 'concer-back' *\/\n  function showHostButtons(suboption){\n    const wrap = document.getElementById('hostButtons');\n    if(!wrap) return;\n\n    \/\/ hide all\n    wrap.querySelectorAll('.host-circle').forEach(el => el.style.display = 'none');\n\n    \/\/ show only requested group (class names include exact key)\n    wrap.querySelectorAll('.' + suboption).forEach(el => el.style.display = 'inline-block');\n\n    \/\/ reveal the container and allow clicks\n    wrap.style.display = 'flex';\n    wrap.style.pointerEvents = 'auto';\n  }\n\n  \/\/ dbl-tap \/ dbl-click to favorite (uses your existing toggleFavorite)\n  document.addEventListener('DOMContentLoaded', () => {\n    document.querySelectorAll('#hostButtons .host-circle').forEach(btn => {\n      btn.addEventListener('dblclick', (e) => {\n        e.preventDefault();\n\n        \/\/ \u2705 Get the specific key like \"heli-around\" \/ \"yacht-goto\"\n        const id = [...btn.classList].find(c =>\n          c.includes('-') &&\n          !['host-circle','around','goto','emergency','adventure'].includes(c)\n        );\n\n        if (!id) {\n          console.warn(\"No favorite id found for button:\", btn.className);\n          return;\n        }\n\n        \/\/ background-image: url(\"...\") or url('...')\n        const bg = btn.style.backgroundImage || '';\n        const img = bg.startsWith('url(')\n          ? bg.slice(4, -1).replace(\/^[\"']|[\"']$\/g, '')\n          : '';\n\n        const lat = parseFloat(btn.dataset.lat);\n        const lng = parseFloat(btn.dataset.lng);\n\n        if (typeof toggleFavorite === 'function') {\n          toggleFavorite(id, img, lat, lng);\n        } else {\n          console.warn(\"toggleFavorite() is not defined yet.\");\n        }\n      });\n    });\n  });\n\n  \/* Center the map when any host circle is clicked *\/\n  document.addEventListener('click', function (e) {\n    const btn = e.target.closest('#hostButtons .host-circle');\n    if (!btn) return;\n\n    const lat = parseFloat(btn.dataset.lat);\n    const lng = parseFloat(btn.dataset.lng);\n    if (!Number.isFinite(lat) || !Number.isFinite(lng)) return;\n\n    if (typeof window.focusOnHost === 'function') {\n      focusOnHost(lat, lng);\n      return;\n    }\n\n    if (window.ggMap && window.google) {\n      const pos = new google.maps.LatLng(lat, lng);\n      ggMap.setCenter(pos);\n      ggMap.setZoom(15);\n      new google.maps.Marker({ position: pos, map: ggMap });\n    }\n  });\n<\/script>\n\n\n\n&#8211; AVATAR &#8211;>\n<div id=\"avatarContainer\" onclick=\"showAvatarCloud()\" \n     style=\"position:fixed; bottom:80px; right:20px; z-index:9999; cursor:pointer; display:none;\">\n  <img decoding=\"async\" src=\"http:\/\/godsgalaxygame.com\/GGG\/wp-content\/uploads\/2025\/07\/Screenshot_20231118-120724_Instagram-scaled.jpg\" \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%);\">\n<\/div>\n\n<!-- CLOUD BUBBLE -->\n<div id=\"avatarCloud\" style=\"position:fixed; bottom:310px; right:30px; max-width:250px; background:rgba(0,0,0,0.7); \n     color:white; font-family:Orbitron, sans-serif; font-size:12px; line-height:16px; border-radius:20px 20px 20px 0px; \n     padding:14px 16px; box-shadow:0 0 15px aqua; display:none; z-index:9999; text-align:center;\n     border: 1px solid aqua;\">\n  <div id=\"avatarCloudMsg\">Loading&#8230;<\/div>\n  <div style=\"margin-top:10px;\">\n    <button onclick=\"acceptAvatarSuggestion()\" style=\"background:lime; color:black; border:none; padding:6px 10px; font-weight:bold;\">Yes<\/button>\n    <button onclick=\"dismissAvatarCloud()\" style=\"background:aqua; color:white; border:none; padding:6px 10px; font-weight:bold;\">No<\/button>\n  <\/div>\n  <div style=\"position:absolute; bottom:-18px; right:10px; width:0; height:0; border-left:10px solid transparent; \n              border-right:10px solid transparent; border-top:18px solid rgba(0,255,255,0.6); filter:blur(0.5px);\">\n  <\/div>\n<\/div>\n\n<!-- MOBILE ASSISTANT BUTTON -->\n<div id=\"avatarMobileBtn\" onclick=\"toggleMobileAvatar()\" style=\"display:none;\">\n  \ud83d\udc64 Assistant\n<\/div>\n\n<!-- ESTILOS -->\n<style>\n  #avatarMobileBtn {\n    position: fixed;\n    bottom: 18px;\n    right: 18px;\n    z-index: 9999;\n    background: rgba(0, 0, 0, 0.7);\n    color: white;\n    font-family: Orbitron, sans-serif;\n    font-size: 13px;\n    padding: 10px 14px;\n    border: 2px solid aqua;\n    border-radius: 14px;\n    box-shadow: 0 0 12px aqua;\n    cursor: pointer;\n    display: flex;\n    align-items: center;\n    gap: 8px;\n  }\n\n  @media (min-width: 769px) {\n    #avatarMobileBtn {\n      display: none !important;\n    }\n  }\n\n  @media (max-width: 768px) {\n    #avatarContainer {\n      bottom: 30px !important;\n      right: 90px !important;\n      width: 100px !important;\n      display: none;\n      pointer-events: none;\n    }\n\n    #avatarContainer img {\n      width: 100%;\n      height: auto;\n      border-radius: 50% \/ 30%;\n      object-fit: cover;\n      filter: grayscale(0%) brightness(1.1) contrast(1.2);\n      box-shadow: 0 0 12px aqua;\n    }\n  }\n\n  @media (min-width: 769px) {\n    #avatarContainer {\n      pointer-events: auto;\n    }\n  }\n<\/style>\n\n<!-- L\u00d3GICA -->\n<script>\n  const entertainmentQuestions = [\n    \"Ready to see what\u2019s out there today?\",\n    \"Want entertainment options nearby?\",\n    \"Looking for something fun to do?\",\n    \"Need ideas for your free time?\",\n    \"Want something exciting tonight?\"\n  ];\n\n  const gastronomyQuestions = [\n    \"Want to see gastronomy options nearby?\",\n    \"Ready to have dinner tonight?\",\n    \"Would you like some brunch spots?\",\n    \"Hungry for something special?\",\n    \"Looking for restaurants around you?\"\n  ];\n\n  function showAvatarCloud(forcedType = null) {\n    const hour = new Date().getHours();\n    const type = forcedType || (hour % 2 === 0 ? \"gastronomy\" : \"entertainment\");\n    const question = (type === \"gastronomy\" ? gastronomyQuestions : entertainmentQuestions)[Math.floor(Math.random() * 5)];\n\n    document.getElementById(\"avatarCloudMsg\").innerText = question;\n    document.getElementById(\"avatarCloud\").style.display = \"block\";\n  }\n\n  function acceptAvatarSuggestion() {\n    dismissAvatarCloud();\n    alert(\"\u2705 Showing Aries recommendations near you...\");\n  }\n\n  function dismissAvatarCloud() {\n    document.getElementById(\"avatarCloud\").style.display = \"none\";\n  }\n\n  \/\/ \ud83d\udcbb Show avatar automatically after 3 seconds (desktop only)\n  function showAvatarAssistant() {\n    const avatar = document.getElementById(\"avatarContainer\");\n    if (window.innerWidth > 768) {\n      avatar.style.display = \"block\";\n      avatar.style.pointerEvents = \"auto\";\n    }\n  }\n  setTimeout(showAvatarAssistant, 3000);\n\n  \/\/ \ud83d\udcf1 Toggle mobile avatar on\/off\n  let avatarVisible = false;\n  function toggleMobileAvatar() {\n    const avatar = document.getElementById(\"avatarContainer\");\n    const btn = document.getElementById(\"avatarMobileBtn\");\n\n    if (!avatarVisible) {\n      avatar.style.display = \"block\";\n      avatar.style.pointerEvents = \"auto\";\n      showAvatarCloud();\n      btn.innerHTML = \"\u274c Close\";\n    } else {\n      avatar.style.display = \"none\";\n      avatar.style.pointerEvents = \"none\";\n      dismissAvatarCloud();\n      btn.innerHTML = \"\ud83d\udc64 Assistant\";\n    }\n\n    avatarVisible = !avatarVisible;\n  }\n\n  \/\/ \ud83d\udcf1 Show mobile button on load\n  window.addEventListener(\"load\", () => {\n    if (window.innerWidth <= 768) {\n      document.getElementById(\"avatarMobileBtn\").style.display = \"flex\";\n    }\n  });\n<\/script>\n","protected":false},"excerpt":{"rendered":"<p>Would you like to see Evolution Tours of the area? Yes No \ud83c\udfad Entertainment \ud83d\udcb3 Backstage Cabin VIP On The Stage Concerts Live Malls Online Downtown Fashion Show Stand-Up Guide Book Comedy Lessons Game Play Tour Sports \ud83d\udcb3 Pay with Bliss Coin Enter your digital wallet #: Send payment to: HOST-WALLET-ADDRESS-123 Close \ud83e\uddca \ud83d\udc96 Sign [&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-2752","page","type-page","status-publish","hentry"],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/godsgalaxygame.com\/GGG\/wp-json\/wp\/v2\/pages\/2752","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=2752"}],"version-history":[{"count":18,"href":"https:\/\/godsgalaxygame.com\/GGG\/wp-json\/wp\/v2\/pages\/2752\/revisions"}],"predecessor-version":[{"id":6837,"href":"https:\/\/godsgalaxygame.com\/GGG\/wp-json\/wp\/v2\/pages\/2752\/revisions\/6837"}],"wp:attachment":[{"href":"https:\/\/godsgalaxygame.com\/GGG\/wp-json\/wp\/v2\/media?parent=2752"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}