{"id":2,"date":"2026-10-19T18:48:36","date_gmt":"2026-10-19T18:48:36","guid":{"rendered":"https:\/\/lilyloom.online\/?page_id=2"},"modified":"2026-10-19T20:38:01","modified_gmt":"2026-10-19T20:38:01","slug":"sample-page","status":"publish","type":"page","link":"https:\/\/lilyloom.online\/","title":{"rendered":"Home"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"2\" class=\"elementor elementor-2\">\n\t\t\t\t<div class=\"elementor-element elementor-element-50a1379 e-con-full e-flex e-con e-parent\" data-id=\"50a1379\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-4848c2c elementor-widget__width-inherit elementor-widget elementor-widget-html\" data-id=\"4848c2c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!DOCTYPE html>\r\n<html lang=\"en\">\r\n<head>\r\n<meta charset=\"UTF-8\" \/>\r\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1, viewport-fit=cover\" \/>\r\n<meta name=\"theme-color\" content=\"#05060a\" \/>\r\n<title>Coming Soon \u2014 Nexora<\/title>\r\n\r\n<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\r\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\r\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Inter:wght@400;500;600&family=Space+Grotesk:wght@500;700&display=swap\" rel=\"stylesheet\">\r\n\r\n<style>\r\n\/* ============ TOKENS ============ *\/\r\n:root{\r\n  --bg:#05060a;\r\n  --fg:#e9edf7;\r\n  --muted:#858ea3;\r\n  --c1:#22d3ee;\r\n  --c2:#a855f7;\r\n  --c3:#ec4899;\r\n  --glass:rgba(255,255,255,.045);\r\n  --stroke:rgba(255,255,255,.09);\r\n  --mx:50%;\r\n  --my:50%;\r\n}\r\n\r\n*{margin:0;padding:0;box-sizing:border-box}\r\nhtml,body{height:100%}\r\n\r\nbody{\r\n  background:var(--bg);\r\n  color:var(--fg);\r\n  font-family:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;\r\n  -webkit-font-smoothing:antialiased;\r\n  text-rendering:optimizeLegibility;\r\n  min-height:100dvh;\r\n  display:grid;\r\n  place-items:center;\r\n  padding:clamp(24px,5vw,64px) clamp(16px,4vw,40px);\r\n  overflow-x:hidden;\r\n  position:relative;\r\n  isolation:isolate;\r\n}\r\n\r\n\/* ============ AURORA BLOBS ============ *\/\r\n.aurora{\r\n  position:fixed;\r\n  inset:-10%;\r\n  z-index:0;\r\n  filter:blur(90px);\r\n  opacity:.85;\r\n  pointer-events:none;\r\n  will-change:transform;\r\n}\r\n.blob{\r\n  position:absolute;\r\n  border-radius:50%;\r\n  mix-blend-mode:screen;\r\n  will-change:transform;\r\n}\r\n.b1{\r\n  width:60vmax;height:60vmax;\r\n  top:-22vmax;left:-18vmax;\r\n  background:radial-gradient(circle at 35% 35%, rgba(34,211,238,.75), transparent 62%);\r\n  animation:drift1 24s ease-in-out infinite alternate;\r\n}\r\n.b2{\r\n  width:55vmax;height:55vmax;\r\n  bottom:-24vmax;right:-16vmax;\r\n  background:radial-gradient(circle at 60% 40%, rgba(168,85,247,.72), transparent 62%);\r\n  animation:drift2 30s ease-in-out infinite alternate;\r\n}\r\n.b3{\r\n  width:44vmax;height:44vmax;\r\n  top:32%;left:52%;\r\n  background:radial-gradient(circle at 50% 50%, rgba(236,72,153,.55), transparent 65%);\r\n  animation:drift3 26s ease-in-out infinite alternate;\r\n}\r\n@keyframes drift1{\r\n  0%{transform:translate3d(0,0,0) scale(1)}\r\n  50%{transform:translate3d(12vw,8vh,0) scale(1.15)}\r\n  100%{transform:translate3d(-4vw,16vh,0) scale(.92)}\r\n}\r\n@keyframes drift2{\r\n  0%{transform:translate3d(0,0,0) scale(1.05)}\r\n  50%{transform:translate3d(-14vw,-10vh,0) scale(.9)}\r\n  100%{transform:translate3d(-6vw,6vh,0) scale(1.2)}\r\n}\r\n@keyframes drift3{\r\n  0%{transform:translate3d(-50%,-50%,0) scale(.9)}\r\n  50%{transform:translate3d(-62%,-30%,0) scale(1.2)}\r\n  100%{transform:translate3d(-38%,-62%,0) scale(1)}\r\n}\r\n\r\n\/* ============ PARTICLES ============ *\/\r\n#scene{\r\n  position:fixed;\r\n  inset:0;\r\n  z-index:1;\r\n  pointer-events:none;\r\n}\r\n\r\n\/* ============ CURSOR SPOTLIGHT ============ *\/\r\n.spotlight{\r\n  position:fixed;\r\n  inset:0;\r\n  z-index:2;\r\n  pointer-events:none;\r\n  background:radial-gradient(620px circle at var(--mx) var(--my),\r\n              rgba(130,190,255,.10), transparent 62%);\r\n}\r\n\r\n\/* ============ GRAIN ============ *\/\r\n.grain{\r\n  position:fixed;\r\n  inset:-50%;\r\n  z-index:6;\r\n  pointer-events:none;\r\n  opacity:.05;\r\n  background-image:url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'\/%3E%3C\/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'\/%3E%3C\/svg%3E\");\r\n  animation:grainShift 7s steps(7) infinite;\r\n}\r\n@keyframes grainShift{\r\n  0%{transform:translate3d(0,0,0)}\r\n  20%{transform:translate3d(-3%,2%,0)}\r\n  40%{transform:translate3d(2%,-3%,0)}\r\n  60%{transform:translate3d(-2%,-2%,0)}\r\n  80%{transform:translate3d(3%,1%,0)}\r\n  100%{transform:translate3d(0,0,0)}\r\n}\r\n\r\n\/* ============ VIGNETTE ============ *\/\r\n.vignette{\r\n  position:fixed;\r\n  inset:0;\r\n  z-index:3;\r\n  pointer-events:none;\r\n  background:radial-gradient(ellipse at 50% 45%, transparent 45%, rgba(3,4,8,.75) 100%);\r\n}\r\n\r\n\/* ============ CONTENT ============ *\/\r\n.wrap{\r\n  position:relative;\r\n  z-index:5;\r\n  width:min(880px,100%);\r\n  display:flex;\r\n  flex-direction:column;\r\n  align-items:center;\r\n  text-align:center;\r\n  gap:clamp(20px,3.2vw,32px);\r\n  animation:riseIn 1s cubic-bezier(.22,1,.36,1) both;\r\n}\r\n@keyframes riseIn{\r\n  from{opacity:0;transform:translateY(26px)}\r\n  to{opacity:1;transform:translateY(0)}\r\n}\r\n\r\n\/* ---- badge ---- *\/\r\n.badge{\r\n  display:inline-flex;\r\n  align-items:center;\r\n  gap:10px;\r\n  padding:9px 18px;\r\n  border-radius:999px;\r\n  background:var(--glass);\r\n  border:1px solid var(--stroke);\r\n  backdrop-filter:blur(14px);\r\n  -webkit-backdrop-filter:blur(14px);\r\n  font-size:.72rem;\r\n  font-weight:500;\r\n  letter-spacing:.18em;\r\n  text-transform:uppercase;\r\n  color:#c3ccdd;\r\n}\r\n.badge .dot{\r\n  width:7px;height:7px;\r\n  border-radius:50%;\r\n  background:var(--c1);\r\n  box-shadow:0 0 12px var(--c1), 0 0 24px rgba(34,211,238,.6);\r\n  animation:pulse 2.2s ease-in-out infinite;\r\n}\r\n@keyframes pulse{\r\n  0%,100%{transform:scale(1);opacity:1}\r\n  50%{transform:scale(.62);opacity:.5}\r\n}\r\n\r\n\/* ---- title ---- *\/\r\nh1{\r\n  font-family:'Space Grotesk',sans-serif;\r\n  font-weight:700;\r\n  font-size:clamp(2.05rem,6.4vw,4.5rem);\r\n  line-height:1.05;\r\n  letter-spacing:-.035em;\r\n  max-width:16ch;\r\n}\r\n.grad{\r\n  background:linear-gradient(100deg,var(--c1) 0%,#7dd3fc 22%,var(--c2) 52%,var(--c3) 74%,var(--c1) 100%);\r\n  background-size:280% 100%;\r\n  -webkit-background-clip:text;\r\n  background-clip:text;\r\n  color:transparent;\r\n  animation:sheen 9s linear infinite;\r\n}\r\n@keyframes sheen{\r\n  to{background-position:280% 50%}\r\n}\r\n\r\n\/* ---- subtitle ---- *\/\r\n.sub{\r\n  color:var(--muted);\r\n  font-size:clamp(.94rem,2.2vw,1.08rem);\r\n  line-height:1.65;\r\n  max-width:52ch;\r\n}\r\n.sub b{color:#cfd7e6;font-weight:500}\r\n\r\n\/* ---- countdown ---- *\/\r\n.countdown{\r\n  display:flex;\r\n  gap:clamp(8px,1.6vw,16px);\r\n  flex-wrap:wrap;\r\n  justify-content:center;\r\n  margin-top:2px;\r\n}\r\n.cd{\r\n  position:relative;\r\n  width:clamp(76px,17vw,112px);\r\n  padding:clamp(12px,2.1vw,18px) 8px clamp(10px,1.7vw,14px);\r\n  border-radius:20px;\r\n  background:linear-gradient(180deg, rgba(255,255,255,.075), rgba(255,255,255,.015));\r\n  border:1px solid var(--stroke);\r\n  backdrop-filter:blur(16px);\r\n  -webkit-backdrop-filter:blur(16px);\r\n  box-shadow:\r\n    0 22px 44px -24px rgba(0,0,0,.95),\r\n    inset 0 1px 0 rgba(255,255,255,.10);\r\n  overflow:hidden;\r\n}\r\n.cd::before{\r\n  content:\"\";\r\n  position:absolute;\r\n  top:0;left:12%;right:12%;\r\n  height:1px;\r\n  background:linear-gradient(90deg,transparent,rgba(120,220,255,.55),transparent);\r\n}\r\n.cd .num{\r\n  font-family:'Space Grotesk',sans-serif;\r\n  font-weight:700;\r\n  font-size:clamp(1.55rem,4.6vw,2.3rem);\r\n  line-height:1;\r\n  letter-spacing:-.02em;\r\n  font-variant-numeric:tabular-nums;\r\n  display:block;\r\n  background:linear-gradient(180deg,#ffffff,#a8b6d0);\r\n  -webkit-background-clip:text;\r\n  background-clip:text;\r\n  color:transparent;\r\n  transition:transform .18s ease;\r\n}\r\n.cd .num.pop{animation:pop .34s cubic-bezier(.34,1.56,.64,1)}\r\n@keyframes pop{\r\n  0%{transform:scale(1)}\r\n  45%{transform:scale(1.14);filter:brightness(1.4)}\r\n  100%{transform:scale(1)}\r\n}\r\n.cd .lbl{\r\n  display:block;\r\n  margin-top:8px;\r\n  font-size:.6rem;\r\n  letter-spacing:.2em;\r\n  text-transform:uppercase;\r\n  color:#727c91;\r\n  font-weight:500;\r\n}\r\n\r\n\/* ---- form ---- *\/\r\n.form-zone{\r\n  display:flex;\r\n  flex-direction:column;\r\n  align-items:center;\r\n  gap:14px;\r\n  width:100%;\r\n}\r\n.subscribe{\r\n  display:flex;\r\n  align-items:center;\r\n  gap:8px;\r\n  width:min(470px,100%);\r\n  padding:7px;\r\n  border-radius:999px;\r\n  background:rgba(255,255,255,.045);\r\n  border:1px solid var(--stroke);\r\n  backdrop-filter:blur(16px);\r\n  -webkit-backdrop-filter:blur(16px);\r\n  transition:border-color .3s, box-shadow .3s, transform .3s;\r\n}\r\n.subscribe:focus-within{\r\n  border-color:rgba(34,211,238,.5);\r\n  box-shadow:0 0 0 4px rgba(34,211,238,.09);\r\n}\r\n.subscribe.shake{animation:shake .4s cubic-bezier(.36,.07,.19,.97)}\r\n@keyframes shake{\r\n  10%,90%{transform:translateX(-2px)}\r\n  20%,80%{transform:translateX(4px)}\r\n  30%,50%,70%{transform:translateX(-6px)}\r\n  40%,60%{transform:translateX(6px)}\r\n}\r\n.subscribe input{\r\n  flex:1;\r\n  min-width:0;\r\n  background:none;\r\n  border:0;\r\n  outline:0;\r\n  color:var(--fg);\r\n  font-family:inherit;\r\n  font-size:.94rem;\r\n  padding:0 14px 0 18px;\r\n}\r\n.subscribe input::placeholder{color:#69738a}\r\n.subscribe button{\r\n  border:0;\r\n  cursor:pointer;\r\n  border-radius:999px;\r\n  padding:13px 24px;\r\n  font-family:inherit;\r\n  font-weight:600;\r\n  font-size:.88rem;\r\n  white-space:nowrap;\r\n  color:#04070d;\r\n  background:linear-gradient(100deg,var(--c1),#7dd3fc 38%,var(--c2));\r\n  background-size:200% 100%;\r\n  box-shadow:0 10px 26px -10px rgba(34,211,238,.75);\r\n  transition:background-position .55s ease, transform .22s ease, box-shadow .3s;\r\n}\r\n.subscribe button:hover{\r\n  background-position:100% 50%;\r\n  transform:translateY(-1px);\r\n  box-shadow:0 14px 32px -10px rgba(168,85,247,.8);\r\n}\r\n.subscribe button:active{transform:translateY(1px) scale(.985)}\r\n\r\n.note{\r\n  font-size:.76rem;\r\n  color:#5d6678;\r\n  letter-spacing:.02em;\r\n  transition:color .3s;\r\n}\r\n.note.ok{color:var(--c1);font-weight:500}\r\n\r\n\/* ---- socials ---- *\/\r\n.socials{\r\n  display:flex;\r\n  gap:12px;\r\n  margin-top:4px;\r\n}\r\n.socials a{\r\n  width:42px;height:42px;\r\n  display:grid;\r\n  place-items:center;\r\n  border-radius:50%;\r\n  background:var(--glass);\r\n  border:1px solid var(--stroke);\r\n  color:#98a3ba;\r\n  backdrop-filter:blur(12px);\r\n  -webkit-backdrop-filter:blur(12px);\r\n  transition:color .25s, border-color .25s, transform .25s, background .25s;\r\n}\r\n.socials a:hover{\r\n  color:#fff;\r\n  border-color:rgba(34,211,238,.55);\r\n  background:rgba(34,211,238,.10);\r\n  transform:translateY(-3px);\r\n}\r\n.socials svg{width:17px;height:17px;fill:currentColor}\r\n\r\n\/* ---- footer ---- *\/\r\n.foot{\r\n  position:relative;\r\n  z-index:5;\r\n  margin-top:clamp(20px,4vw,40px);\r\n  font-size:.72rem;\r\n  letter-spacing:.14em;\r\n  text-transform:uppercase;\r\n  color:#3f4759;\r\n}\r\n\r\n\/* ============ RESPONSIVE \/ MOTION ============ *\/\r\n@media (max-width:420px){\r\n  .cd{width:calc(50% - 8px);max-width:none}\r\n  .countdown{gap:10px}\r\n  .subscribe button{padding:12px 18px;font-size:.82rem}\r\n}\r\n\r\n@media (prefers-reduced-motion: reduce){\r\n  *,*::before,*::after{\r\n    animation-duration:.001ms !important;\r\n    animation-iteration-count:1 !important;\r\n    transition-duration:.001ms !important;\r\n  }\r\n}\r\n<\/style>\r\n<\/head>\r\n\r\n<body>\r\n\r\n  <!-- Animated aurora background -->\r\n  <div class=\"aurora\" aria-hidden=\"true\">\r\n    <span class=\"blob b1\"><\/span>\r\n    <span class=\"blob b2\"><\/span>\r\n    <span class=\"blob b3\"><\/span>\r\n  <\/div>\r\n\r\n  <!-- Particle network -->\r\n  <canvas id=\"scene\" aria-hidden=\"true\"><\/canvas>\r\n\r\n  <!-- Cursor glow -->\r\n  <div class=\"spotlight\" aria-hidden=\"true\"><\/div>\r\n\r\n  <!-- Vignette + film grain -->\r\n  <div class=\"vignette\" aria-hidden=\"true\"><\/div>\r\n  <div class=\"grain\" aria-hidden=\"true\"><\/div>\r\n\r\n  <!-- Content -->\r\n  <main class=\"wrap\">\r\n    <div class=\"badge\">\r\n      <span class=\"dot\"><\/span>\r\n      Launching soon\r\n    <\/div>\r\n\r\n    <h1>Something <span class=\"grad\">extraordinary<\/span> is on the way<\/h1>\r\n\r\n    <p class=\"sub\">\r\n      We're building the next generation of <b>intelligent tools<\/b> \u2014\r\n      faster, cleaner and beautifully simple. Be the first to know when we open the doors.\r\n    <\/p>\r\n\r\n    <div class=\"countdown\" role=\"timer\" aria-live=\"off\">\r\n      <div class=\"cd\"><span class=\"num\" data-cd=\"days\">00<\/span><span class=\"lbl\">Days<\/span><\/div>\r\n      <div class=\"cd\"><span class=\"num\" data-cd=\"hours\">00<\/span><span class=\"lbl\">Hours<\/span><\/div>\r\n      <div class=\"cd\"><span class=\"num\" data-cd=\"mins\">00<\/span><span class=\"lbl\">Minutes<\/span><\/div>\r\n      <div class=\"cd\"><span class=\"num\" data-cd=\"secs\">00<\/span><span class=\"lbl\">Seconds<\/span><\/div>\r\n    <\/div>\r\n\r\n    <div class=\"form-zone\">\r\n      <form class=\"subscribe\" id=\"form\" novalidate>\r\n        <input id=\"email\" type=\"email\" placeholder=\"you@company.com\" aria-label=\"Email address\" autocomplete=\"email\" \/>\r\n        <button type=\"submit\">Notify me<\/button>\r\n      <\/form>\r\n      <p class=\"note\" id=\"note\" role=\"status\">No spam. Unsubscribe anytime.<\/p>\r\n    <\/div>\r\n\r\n    <nav class=\"socials\" aria-label=\"Social links\">\r\n      <a href=\"#\" aria-label=\"X \/ Twitter\">\r\n        <svg viewBox=\"0 0 24 24\"><path d=\"M18.9 2H22l-6.8 7.8L23 22h-6.3l-4.9-6.4L6.2 22H3l7.3-8.3L2.4 2h6.4l4.4 5.8L18.9 2Zm-1.1 18h1.7L8.3 3.8H6.5L17.8 20Z\"\/><\/svg>\r\n      <\/a>\r\n      <a href=\"#\" aria-label=\"GitHub\">\r\n        <svg viewBox=\"0 0 24 24\"><path d=\"M12 .5a11.5 11.5 0 0 0-3.64 22.42c.58.1.79-.25.79-.55v-2.1c-3.2.7-3.88-1.4-3.88-1.4-.53-1.34-1.29-1.7-1.29-1.7-1.05-.72.08-.7.08-.7 1.16.08 1.77 1.2 1.77 1.2 1.03 1.77 2.7 1.26 3.36.96.1-.75.4-1.26.73-1.55-2.55-.29-5.24-1.28-5.24-5.7 0-1.26.45-2.29 1.19-3.1-.12-.29-.52-1.46.11-3.05 0 0 .97-.31 3.18 1.18a11 11 0 0 1 5.79 0c2.2-1.49 3.17-1.18 3.17-1.18.63 1.59.23 2.76.12 3.05.74.81 1.18 1.84 1.18 3.1 0 4.43-2.69 5.4-5.25 5.69.41.36.78 1.06.78 2.14v3.17c0 .3.2.66.8.55A11.5 11.5 0 0 0 12 .5Z\"\/><\/svg>\r\n      <\/a>\r\n      <a href=\"#\" aria-label=\"Discord\">\r\n        <svg viewBox=\"0 0 24 24\"><path d=\"M20.3 4.4A19.8 19.8 0 0 0 15.4 3l-.25.5a18 18 0 0 1 4.3 1.4 15.6 15.6 0 0 0-15 0 18 18 0 0 1 4.3-1.4L8.6 3a19.8 19.8 0 0 0-4.9 1.4C.9 9.2.2 13.9.5 18.5A20 20 0 0 0 6.6 21l1.3-1.8a13 13 0 0 1-2.1-1l.5-.4a14.3 14.3 0 0 0 11.4 0l.5.4a13 13 0 0 1-2.1 1L17.4 21a20 20 0 0 0 6.1-2.5c.4-5.3-.7-9.9-3.2-14.1ZM8.5 15.8c-1.2 0-2.1-1.1-2.1-2.4s.9-2.4 2.1-2.4 2.2 1.1 2.1 2.4c0 1.3-.9 2.4-2.1 2.4Zm7 0c-1.2 0-2.1-1.1-2.1-2.4s.9-2.4 2.1-2.4 2.2 1.1 2.1 2.4c0 1.3-.9 2.4-2.1 2.4Z\"\/><\/svg>\r\n      <\/a>\r\n    <\/nav>\r\n  <\/main>\r\n\r\n  <p class=\"foot\">\u00a9 <span id=\"year\"><\/span> Nexora \u2014 All rights reserved<\/p>\r\n\r\n<script>\r\n(() => {\r\n  'use strict';\r\n\r\n  \/* ============================================================\r\n     1. LAUNCH DATE  \u2192  change this to your real launch moment\r\n     ============================================================ *\/\r\n  const LAUNCH = new Date('2026-12-31T23:59:59');\r\n\r\n  \/* Fallback: if the date already passed, show a rolling 37-day timer *\/\r\n  const target = LAUNCH.getTime() > Date.now()\r\n    ? LAUNCH.getTime()\r\n    : Date.now() + 37 * 24 * 60 * 60 * 1000;\r\n\r\n  const reduceMotion = window.matchMedia('(prefers-reduced-motion: reduce)').matches;\r\n  const TAU = Math.PI * 2;\r\n\r\n  \/* ============================================================\r\n     2. COUNTDOWN\r\n     ============================================================ *\/\r\n  const cells = {\r\n    days:  document.querySelector('[data-cd=\"days\"]'),\r\n    hours: document.querySelector('[data-cd=\"hours\"]'),\r\n    mins:  document.querySelector('[data-cd=\"mins\"]'),\r\n    secs:  document.querySelector('[data-cd=\"secs\"]')\r\n  };\r\n\r\n  function paint(key, value) {\r\n    const el = cells[key];\r\n    if (!el) return;\r\n    const str = String(value).padStart(2, '0');\r\n    if (el.textContent === str) return;\r\n    el.textContent = str;\r\n    if (reduceMotion) return;\r\n    el.classList.remove('pop');\r\n    void el.offsetWidth;          \/\/ force reflow to restart animation\r\n    el.classList.add('pop');\r\n  }\r\n\r\n  function tick() {\r\n    let diff = Math.max(0, target - Date.now());\r\n    const total = Math.floor(diff \/ 1000);\r\n    paint('days',  Math.floor(total \/ 86400));\r\n    paint('hours', Math.floor((total % 86400) \/ 3600));\r\n    paint('mins',  Math.floor((total % 3600) \/ 60));\r\n    paint('secs',  total % 60);\r\n  }\r\n  tick();\r\n  setInterval(tick, 1000);\r\n\r\n  \/* ============================================================\r\n     3. PARTICLE NETWORK\r\n     ============================================================ *\/\r\n  const canvas = document.getElementById('scene');\r\n  const ctx = canvas.getContext('2d', { alpha: true });\r\n\r\n  let W = 0, H = 0, DPR = 1;\r\n  let parts = [];\r\n  let running = true;\r\n\r\n  const mouse = { x: -9999, y: -9999, active: false };\r\n\r\n  const PALETTE = [\r\n    [ 34, 211, 238],  \/\/ cyan\r\n    [168,  85, 247],  \/\/ violet\r\n    [236,  72, 153],  \/\/ pink\r\n    [125, 211, 252]   \/\/ sky\r\n  ];\r\n\r\n  const LINK_DIST = 132;\r\n  const LINK_SQ   = LINK_DIST * LINK_DIST;\r\n\r\n  function buildParticles() {\r\n    \/\/ Scale density to viewport, capped for performance\r\n    const count = Math.min(150, Math.max(34, Math.round((W * H) \/ 14000)));\r\n    parts = new Array(count);\r\n\r\n    for (let i = 0; i < count; i++) {\r\n      parts[i] = {\r\n        x: Math.random() * W,\r\n        y: Math.random() * H,\r\n        ox: 0, oy: 0,                                  \/\/ mouse offset\r\n        vx: (Math.random() - 0.5) * 0.34,\r\n        vy: (Math.random() - 0.5) * 0.34,\r\n        r: Math.random() * 1.5 + 0.8,\r\n        c: PALETTE[(Math.random() * PALETTE.length) | 0]\r\n      };\r\n    }\r\n  }\r\n\r\n  function resize() {\r\n    DPR = Math.min(window.devicePixelRatio || 1, 2);\r\n    W = window.innerWidth;\r\n    H = window.innerHeight;\r\n\r\n    canvas.width  = Math.floor(W * DPR);\r\n    canvas.height = Math.floor(H * DPR);\r\n    canvas.style.width  = W + 'px';\r\n    canvas.style.height = H + 'px';\r\n    ctx.setTransform(DPR, 0, 0, DPR, 0, 0);\r\n\r\n    buildParticles();\r\n  }\r\n\r\n  function draw() {\r\n    if (!running) return;\r\n\r\n    ctx.clearRect(0, 0, W, H);\r\n    ctx.globalCompositeOperation = 'lighter';\r\n\r\n    const n = parts.length;\r\n\r\n    \/\/ --- move + mouse repel ---\r\n    for (let i = 0; i < n; i++) {\r\n      const p = parts[i];\r\n\r\n      p.x += p.vx;\r\n      p.y += p.vy;\r\n\r\n      \/\/ wrap around edges\r\n      if (p.x < -30) p.x = W + 30;\r\n      else if (p.x > W + 30) p.x = -30;\r\n      if (p.y < -30) p.y = H + 30;\r\n      else if (p.y > H + 30) p.y = -30;\r\n\r\n      \/\/ soft push away from cursor\r\n      if (mouse.active) {\r\n        const px = p.x + p.ox;\r\n        const py = p.y + p.oy;\r\n        const dx = px - mouse.x;\r\n        const dy = py - mouse.y;\r\n        const d2 = dx * dx + dy * dy;\r\n\r\n        if (d2 < 22000 && d2 > 0.5) {\r\n          const d = Math.sqrt(d2);\r\n          const f = (1 - d \/ 148) * 1.7;\r\n          p.ox += (dx \/ d) * f;\r\n          p.oy += (dy \/ d) * f;\r\n        }\r\n      }\r\n\r\n      \/\/ offset decays back to rest\r\n      p.ox *= 0.93;\r\n      p.oy *= 0.93;\r\n    }\r\n\r\n    \/\/ --- connections ---\r\n    ctx.lineWidth = 1;\r\n    for (let i = 0; i < n; i++) {\r\n      const a = parts[i];\r\n      const ax = a.x + a.ox;\r\n      const ay = a.y + a.oy;\r\n\r\n      for (let j = i + 1; j < n; j++) {\r\n        const b = parts[j];\r\n        const bx = b.x + b.ox;\r\n        const by = b.y + b.oy;\r\n\r\n        const dx = ax - bx;\r\n        const dy = ay - by;\r\n        const d2 = dx * dx + dy * dy;\r\n\r\n        if (d2 < LINK_SQ) {\r\n          const t = 1 - d2 \/ LINK_SQ;\r\n          ctx.strokeStyle = 'rgba(130,180,255,' + (t * 0.17).toFixed(3) + ')';\r\n          ctx.lineWidth = t * 0.9;\r\n          ctx.beginPath();\r\n          ctx.moveTo(ax, ay);\r\n          ctx.lineTo(bx, by);\r\n          ctx.stroke();\r\n        }\r\n      }\r\n    }\r\n\r\n    \/\/ --- dots ---\r\n    for (let i = 0; i < n; i++) {\r\n      const p = parts[i];\r\n      const x = p.x + p.ox;\r\n      const y = p.y + p.oy;\r\n      const [r, g, b] = p.c;\r\n\r\n      \/\/ soft halo\r\n      ctx.fillStyle = 'rgba(' + r + ',' + g + ',' + b + ',0.09)';\r\n      ctx.beginPath();\r\n      ctx.arc(x, y, p.r * 3.6, 0, TAU);\r\n      ctx.fill();\r\n\r\n      \/\/ core\r\n      ctx.fillStyle = 'rgba(' + r + ',' + g + ',' + b + ',0.92)';\r\n      ctx.beginPath();\r\n      ctx.arc(x, y, p.r, 0, TAU);\r\n      ctx.fill();\r\n    }\r\n\r\n    ctx.globalCompositeOperation = 'source-over';\r\n    requestAnimationFrame(draw);\r\n  }\r\n\r\n  \/* ============================================================\r\n     4. POINTER \/ SPOTLIGHT\r\n     ============================================================ *\/\r\n  let pointerQueued = false;\r\n  const root = document.documentElement;\r\n\r\n  window.addEventListener('pointermove', (e) => {\r\n    mouse.x = e.clientX;\r\n    mouse.y = e.clientY;\r\n    mouse.active = true;\r\n\r\n    if (!pointerQueued) {\r\n      pointerQueued = true;\r\n      requestAnimationFrame(() => {\r\n        pointerQueued = false;\r\n        root.style.setProperty('--mx', mouse.x + 'px');\r\n        root.style.setProperty('--my', mouse.y + 'px');\r\n      });\r\n    }\r\n  }, { passive: true });\r\n\r\n  window.addEventListener('pointerleave', () => { mouse.active = false; });\r\n  window.addEventListener('blur', () => { mouse.active = false; });\r\n\r\n  \/* ============================================================\r\n     5. NEWSLETTER FORM\r\n     ============================================================ *\/\r\n  const form  = document.getElementById('form');\r\n  const email = document.getElementById('email');\r\n  const note  = document.getElementById('note');\r\n\r\n  form.addEventListener('submit', (e) => {\r\n    e.preventDefault();\r\n\r\n    const value = email.value.trim();\r\n    const valid = \/^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$\/.test(value);\r\n\r\n    if (!valid) {\r\n      form.classList.remove('shake');\r\n      void form.offsetWidth;\r\n      form.classList.add('shake');\r\n      email.focus();\r\n      note.textContent = 'Hmm, that email doesn\\'t look right.';\r\n      note.classList.remove('ok');\r\n      return;\r\n    }\r\n\r\n    \/\/ \ud83d\udc49 Replace this block with your real API call (fetch \/ Mailchimp \/ etc.)\r\n    form.style.pointerEvents = 'none';\r\n    form.style.opacity = '.45';\r\n    email.value = '';\r\n    email.placeholder = 'You\\'re on the list \u2726';\r\n    note.textContent = 'You\\'re in! We\\'ll ping you the moment we launch. \ud83c\udf89';\r\n    note.classList.add('ok');\r\n  });\r\n\r\n  \/* ============================================================\r\n     6. BOOT\r\n     ============================================================ *\/\r\n  let resizeTimer;\r\n  window.addEventListener('resize', () => {\r\n    clearTimeout(resizeTimer);\r\n    resizeTimer = setTimeout(resize, 160);\r\n  });\r\n\r\n  document.addEventListener('visibilitychange', () => {\r\n    if (document.hidden) {\r\n      running = false;\r\n    } else if (!running) {\r\n      running = true;\r\n      requestAnimationFrame(draw);\r\n    }\r\n  });\r\n\r\n  document.getElementById('year').textContent = new Date().getFullYear();\r\n\r\n  resize();\r\n  requestAnimationFrame(draw);\r\n})();\r\n<\/script>\r\n<\/body>\r\n<\/html>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Coming Soon \u2014 Nexora Launching soon Something extraordinary is on the way We&#8217;re building the next generation of intelligent tools \u2014 faster, cleaner and beautifully simple. Be the first to know when we open the doors. 00Days 00Hours 00Minutes 00Seconds Notify me No spam. Unsubscribe anytime. \u00a9 Nexora \u2014 All rights reserved<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"open","template":"","meta":{"footnotes":""},"class_list":["post-2","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/lilyloom.online\/index.php?rest_route=\/wp\/v2\/pages\/2","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/lilyloom.online\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/lilyloom.online\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/lilyloom.online\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/lilyloom.online\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2"}],"version-history":[{"count":5,"href":"https:\/\/lilyloom.online\/index.php?rest_route=\/wp\/v2\/pages\/2\/revisions"}],"predecessor-version":[{"id":33,"href":"https:\/\/lilyloom.online\/index.php?rest_route=\/wp\/v2\/pages\/2\/revisions\/33"}],"wp:attachment":[{"href":"https:\/\/lilyloom.online\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}