{"id":8,"date":"2026-06-25T17:21:18","date_gmt":"2026-06-25T17:21:18","guid":{"rendered":"https:\/\/grumpyverse.space\/?page_id=8"},"modified":"2026-06-25T19:56:30","modified_gmt":"2026-06-25T19:56:30","slug":"elementor-8","status":"publish","type":"page","link":"https:\/\/grumpyverse.space\/","title":{"rendered":"Elementor #8"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-post\" data-elementor-id=\"8\" class=\"elementor elementor-8\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-600d98b e-con e-atomic-element e-flexbox-base e-89ef6de \" data-id=\"600d98b\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"600d98b\">\n    \t\t<div class=\"elementor-element elementor-element-6f327ad elementor-widget elementor-widget-html\" data-id=\"6f327ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n  <meta charset=\"UTF-8\" \/>\n  <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" \/>\n  <title>GRUMPYVERSE \u2014 $GRUMP<\/title>\n  <meta name=\"description\" content=\"The most iconic grumpy face ever created by the internet. A legendary ruler of memes. $GRUMP on Solana.\" \/>\n  <meta property=\"og:title\" content=\"GRUMPYVERSE \u2014 $GRUMP\" \/>\n  <meta property=\"og:description\" content=\"The King of Memes Has Arrived. Bow Down.\" \/>\n  <meta property=\"og:type\" content=\"website\" \/>\n  <link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\n  <link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\n  <link href=\"https:\/\/fonts.googleapis.com\/css2?family=Luckiest+Guy&family=Nunito:wght@700;800;900&display=swap\" rel=\"stylesheet\">\n  <style>\n    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }\n\n    :root {\n      --black: #0a0a0a;\n      --white: #fffef5;\n      --yellow: #FFD600;\n      --orange: #FF6B00;\n      --purple: #7C3AED;\n      --green: #22C55E;\n      --pink: #FF3CAC;\n      --blue: #2563EB;\n      --red: #EF4444;\n      --border: 3px solid var(--black);\n      --border4: 4px solid var(--black);\n      --shadow: 4px 4px 0 var(--black);\n      --shadow6: 6px 6px 0 var(--black);\n      --shadow8: 8px 8px 0 var(--black);\n      --radius: 20px;\n      --radius-lg: 32px;\n    }\n\n    html { scroll-behavior: smooth; }\n\n    body {\n        margin: -40px 0 -90px;\n      font-family: 'Nunito', sans-serif;\n      background: var(--white);\n      color: var(--black);\n      overflow-x: hidden;\n    }\n\n    .display { font-family: 'Luckiest Guy', cursive; letter-spacing: 0.03em; }\n\n    \/* \u2500\u2500 NAV \u2500\u2500 *\/\n    nav {\n      position: fixed;\n      top: 16px;\n      left: 50%;\n      transform: translateX(-50%);\n      z-index: 999;\n      display: flex;\n      align-items: center;\n      gap: 8px;\n      background: var(--white);\n      border: var(--border4);\n      border-radius: 999px;\n      padding: 10px 24px;\n      box-shadow: var(--shadow);\n      white-space: nowrap;\n    }\n    nav a {\n      font-family: 'Luckiest Guy', cursive;\n      font-size: 15px;\n      color: var(--black);\n      text-decoration: none;\n      letter-spacing: 0.05em;\n      transition: color 0.15s;\n    }\n    nav a:hover { color: var(--purple); }\n    nav .nav-dot { width: 6px; height: 6px; border-radius: 50%; background: var(--black); opacity: 0.25; }\n    nav .nav-buy {\n      background: var(--yellow);\n      border: var(--border);\n      border-radius: 999px;\n      padding: 6px 18px;\n      color: var(--black);\n      box-shadow: 3px 3px 0 var(--black);\n      transition: transform 0.15s, box-shadow 0.15s;\n    }\n    nav .nav-buy:hover { transform: translate(-2px,-2px); box-shadow: 5px 5px 0 var(--black); color: var(--black); }\n\n    \/* \u2500\u2500 TOAST \u2500\u2500 *\/\n    #toast {\n      position: fixed;\n      bottom: 32px;\n      left: 50%;\n      transform: translateX(-50%) translateY(120px);\n      background: var(--green);\n      border: var(--border4);\n      border-radius: var(--radius);\n      padding: 14px 28px;\n      font-family: 'Luckiest Guy', cursive;\n      font-size: 18px;\n      color: var(--black);\n      box-shadow: var(--shadow6);\n      z-index: 9999;\n      transition: transform 0.4s cubic-bezier(.34,1.56,.64,1);\n    }\n    #toast.show { transform: translateX(-50%) translateY(0); }\n\n    \/* \u2500\u2500 KEYFRAMES \u2500\u2500 *\/\n    @keyframes float {\n      0%,100% { transform: translateY(0); }\n      50% { transform: translateY(-18px); }\n    }\n    @keyframes floatR {\n      0%,100% { transform: translateY(0) rotate(8deg); }\n      50% { transform: translateY(-14px) rotate(-4deg); }\n    }\n    @keyframes wobble {\n      0%,100% { transform: rotate(-6deg); }\n      50% { transform: rotate(6deg); }\n    }\n    @keyframes spin-slow {\n      from { transform: rotate(0deg); }\n      to { transform: rotate(360deg); }\n    }\n    @keyframes ticker {\n      0% { transform: translateX(0); }\n      100% { transform: translateX(-50%); }\n    }\n    @keyframes fade-up {\n      from { opacity: 0; transform: translateY(40px); }\n      to { opacity: 1; transform: translateY(0); }\n    }\n    @keyframes pop-in {\n      0% { opacity: 0; transform: scale(0.7); }\n      80% { transform: scale(1.05); }\n      100% { opacity: 1; transform: scale(1); }\n    }\n    @keyframes pulse-border {\n      0%,100% { box-shadow: var(--shadow6); }\n      50% { box-shadow: 8px 8px 0 var(--black), 0 0 0 4px rgba(255,214,0,0.4); }\n    }\n\n    .anim-float { animation: float 4s ease-in-out infinite; }\n    .anim-floatR { animation: floatR 5s ease-in-out infinite; }\n    .anim-wobble { animation: wobble 3s ease-in-out infinite; }\n    .anim-spin { animation: spin-slow 12s linear infinite; }\n    .anim-pop { animation: pop-in 0.6s cubic-bezier(.34,1.56,.64,1) both; }\n\n    \/* \u2500\u2500 SECTION RESETS \u2500\u2500 *\/\n    section { position: relative; width: 100%; overflow: hidden; }\n\n    \/* ============================================================\n       SECTION 1 \u2014 HERO\n    ============================================================ *\/\n    #hero {\n      min-height: 100svh;\n      background-image: url('http:\/\/grumpyverse.space\/wp-content\/uploads\/2026\/06\/bg1.png');\n      background-size: cover;\n      background-position: center top;\n      display: flex;\n      flex-direction: column;\n      align-items: center;\n      justify-content: center;\n      padding: 100px 0px 60px;\n      text-align: center;\n    }\n    #hero .hero-inner {\n      position: relative;\n      z-index: 2;\n      display: flex;\n      flex-direction: column;\n      align-items: center;\n      gap: 20px;\n      max-width: 900px;\n      width: 100%;\n      animation: fade-up 0.8s ease both;\n    }\n    .mcap-badge {\n      display: inline-flex;\n      align-items: center;\n      gap: 8px;\n      background: var(--green);\n      border: var(--border4);\n      border-radius: 999px;\n      padding: 8px 22px;\n      font-family: 'Luckiest Guy', cursive;\n      font-size: 17px;\n      box-shadow: var(--shadow);\n      transform: rotate(-1.5deg);\n    }\n    .mcap-badge .dot {\n      width: 10px; height: 10px;\n      background: white;\n      border-radius: 50%;\n      border: 2px solid var(--black);\n      animation: wobble 2s ease-in-out infinite;\n    }\n    #hero h1 {\n      font-family: 'Luckiest Guy', cursive;\n      font-size: clamp(60px, 14vw, 140px);\n      line-height: 0.9;\n      color: var(--white);\n      -webkit-text-stroke: 4px var(--black);\n      text-shadow: 6px 6px 0 var(--black), 12px 12px 0 rgba(0,0,0,0.3);\n      letter-spacing: 0.04em;\n      transform: rotate(-1deg);\n    }\n    #hero .ticker-sym {\n      font-family: 'Luckiest Guy', cursive;\n      font-size: clamp(28px, 6vw, 52px);\n      color: var(--yellow);\n      -webkit-text-stroke: 2px var(--black);\n      text-shadow: 4px 4px 0 var(--black);\n      letter-spacing: 0.1em;\n    }\n    .tagline-box {\n      background: var(--white);\n      border: var(--border4);\n      border-radius: var(--radius);\n      padding: 12px 28px;\n      font-family: 'Luckiest Guy', cursive;\n      font-size: clamp(14px, 2.8vw, 22px);\n      box-shadow: var(--shadow6);\n      transform: rotate(0.5deg);\n      max-width: 600px;\n    }\n    .ca-row {\n      display: flex;\n      align-items: center;\n      gap: 0;\n      background: var(--white);\n      border: var(--border4);\n      border-radius: 999px;\n      overflow: hidden;\n      box-shadow: var(--shadow6);\n      max-width: 580px;\n      width: 100%;\n      animation: pulse-border 3s ease-in-out infinite;\n    }\n    .ca-row .ca-addr {\n      flex: 1;\n      padding: 12px 20px;\n      font-family: 'Nunito', sans-serif;\n      font-size: 13px;\n      font-weight: 800;\n      color: var(--black);\n      opacity: 0.7;\n      overflow: hidden;\n      text-overflow: ellipsis;\n      white-space: nowrap;\n    }\n    .btn-copy-inline {\n      background: var(--orange);\n      border: none;\n      border-left: var(--border4);\n      padding: 14px 22px;\n      font-family: 'Luckiest Guy', cursive;\n      font-size: 15px;\n      color: var(--white);\n      cursor: pointer;\n      transition: background 0.15s;\n      white-space: nowrap;\n    }\n    .btn-copy-inline:hover { background: #e55a00; }\n    .hero-btns {\n      display: flex;\n      gap: 16px;\n      flex-wrap: wrap;\n      justify-content: center;\n    }\n    .btn {\n      font-family: 'Luckiest Guy', cursive;\n      font-size: 20px;\n      padding: 16px 36px;\n      border-radius: 999px;\n      border: var(--border4);\n      cursor: pointer;\n      text-decoration: none;\n      display: inline-flex;\n      align-items: center;\n      gap: 8px;\n      transition: transform 0.15s, box-shadow 0.15s;\n      box-shadow: var(--shadow6);\n    }\n    .btn:hover { transform: translate(-3px,-3px); box-shadow: 9px 9px 0 var(--black); }\n    .btn:active { transform: translate(2px,2px); box-shadow: 2px 2px 0 var(--black); }\n    .btn-yellow { background: var(--yellow); color: var(--black); }\n    .btn-purple { background: var(--purple); color: white; }\n    .btn-pink   { background: var(--pink);   color: white; }\n    .btn-blue   { background: var(--blue);   color: white; }\n    .btn-green  { background: var(--green);  color: var(--black); }\n    .btn-white  { background: var(--white);  color: var(--black); }\n\n    .chain-info {\n      font-family: 'Luckiest Guy', cursive;\n      font-size: 13px;\n      letter-spacing: 0.15em;\n      color: var(--white);\n      -webkit-text-stroke: 0.5px var(--black);\n      text-shadow: 1px 1px 0 var(--black);\n      opacity: 0.95;\n    }\n\n    \/* Floating decor *\/\n    .deco {\n      position: absolute;\n      pointer-events: none;\n      z-index: 1;\n      user-select: none;\n    }\n\n    \/* \u2500\u2500 GALLERY STRIP \u2500\u2500 *\/\n    .gallery-strip {\n      width: 100%;\n      overflow: hidden;\n      padding: 32px 0 0;\n      position: relative;\n      z-index: 2;\n    }\n    .gallery-track {\n      display: flex;\n      gap: 24px;\n      width: max-content;\n      animation: ticker 30s linear infinite;\n    }\n    .gallery-track:hover { animation-play-state: paused; }\n    .gallery-item {\n      width: 200px;\n      height: 200px;\n      border-radius: 100% !important;\n      border: 4px solid var(--black) !important;\n      box-shadow: var(--shadow6);\n      object-fit: cover;\n      flex-shrink: 0;\n      background: #eee;\n      transition: transform 0.2s;\n    }\n    .gallery-item:hover { transform: scale(1.08); }\n\n    \/* \u2500\u2500 SECTION DIVIDERS \u2500\u2500 *\/\n    .divider {\n      display: block;\n      width: 100%;\n      height: 4px;\n      background: var(--black);\n      border: none;\n      margin: 0;\n      padding: 0;\n    }\n\n    \/* \u2500\u2500 TICKER BAR \u2500\u2500 *\/\n    .ticker-bar {\n      background: var(--yellow);\n      border-top: var(--border4);\n      border-bottom: var(--border4);\n      padding: 12px 0;\n      overflow: hidden;\n      position: relative;\n    }\n    .ticker-track {\n      display: flex;\n      width: max-content;\n      animation: ticker 20s linear infinite;\n    }\n    .ticker-track span {\n      font-family: 'Luckiest Guy', cursive;\n      font-size: 16px;\n      padding: 0 32px;\n      white-space: nowrap;\n      color: var(--black);\n    }\n\n    \/* ============================================================\n       SECTION 2 \u2014 ENTER THE GRUMPYVERSE\n    ============================================================ *\/\n    #lore {\n      background-image: url('http:\/\/grumpyverse.space\/wp-content\/uploads\/2026\/06\/bgfixed2-3.png');\n      background-size: cover;\n      background-position: center;\n      background-attachment: fixed;\n      padding: 100px 24px;\n    }\n    #lore .lore-inner {\n      max-width: 1100px;\n      margin: 0 auto;\n      display: grid;\n      grid-template-columns: 1fr 1fr;\n      gap: 48px;\n      align-items: center;\n    }\n    .lore-img-wrap {\n      position: relative;\n    }\n    .lore-img-card {\n      background: var(--white);\n      border: var(--border4);\n      border-radius: var(--radius-lg);\n      box-shadow: var(--shadow8);\n      overflow: hidden;\n      animation: float 5s ease-in-out infinite;\n    }\n    .lore-img-card img {\n      width: 100%;\n      display: block;\n      border-radius: calc(var(--radius-lg) - 4px);\n    }\n    .lore-img-badge {\n      position: absolute;\n      top: -16px;\n      right: -16px;\n      background: var(--yellow);\n      border: var(--border4);\n      border-radius: 50%;\n      width: 72px;\n      height: 72px;\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      font-size: 36px;\n      box-shadow: var(--shadow);\n      animation: wobble 3s ease-in-out infinite;\n    }\n    .lore-content { display: flex; flex-direction: column; gap: 24px; }\n    .section-label {\n      display: inline-block;\n      background: var(--pink);\n      border: var(--border);\n      border-radius: 999px;\n      padding: 6px 20px;\n      font-family: 'Luckiest Guy', cursive;\n      font-size: 14px;\n      color: white;\n      box-shadow: var(--shadow);\n      transform: rotate(-1deg);\n      width: fit-content;\n    }\n    #lore h2 {\n      font-family: 'Luckiest Guy', cursive;\n      font-size: clamp(36px, 6vw, 64px);\n      line-height: 0.95;\n      color: var(--black);\n    }\n    .speech-card {\n      background: var(--white);\n      border: var(--border4);\n      border-radius: var(--radius);\n      padding: 20px 24px;\n      box-shadow: var(--shadow6);\n      position: relative;\n      font-size: 15px;\n      font-weight: 800;\n      line-height: 1.6;\n      color: var(--black);\n    }\n    .speech-card::before {\n      content: '\"';\n      font-family: 'Luckiest Guy', cursive;\n      font-size: 72px;\n      color: var(--yellow);\n      -webkit-text-stroke: 2px var(--black);\n      position: absolute;\n      top: -20px;\n      left: 16px;\n      line-height: 1;\n    }\n    .speech-card p { padding-top: 20px; }\n    .highlight-row {\n      display: flex;\n      gap: 12px;\n      flex-wrap: wrap;\n    }\n    .highlight-pill {\n      background: var(--yellow);\n      border: var(--border);\n      border-radius: 999px;\n      padding: 8px 18px;\n      font-family: 'Luckiest Guy', cursive;\n      font-size: 14px;\n      box-shadow: var(--shadow);\n    }\n    .highlight-pill.purple { background: var(--purple); color: white; }\n    .highlight-pill.pink   { background: var(--pink); color: white; }\n\n    \/* ============================================================\n       SECTION 3 \u2014 RISE OF THE MEME KING\n    ============================================================ *\/\n    #story {\n      padding: 100px 24px;\n      background-image: url('http:\/\/grumpyverse.space\/wp-content\/uploads\/2026\/06\/bgfixed2-3.png');\n      background-size: cover;\n      background-position: center;\n      background-attachment: fixed;\n      position: relative;\n    }\n    \/*#story::before {*\/\n    \/*  content: '';*\/\n    \/*  position: absolute;*\/\n    \/*  inset: 0;*\/\n    \/*  background: rgba(255,255,255,0.55);*\/\n    \/*  pointer-events: none;*\/\n    \/*}*\/\n    .section-header {\n      text-align: center;\n      margin-bottom: 64px;\n    }\n    .section-header h2 {\n      font-family: 'Luckiest Guy', cursive;\n      font-size: clamp(40px, 7vw, 72px);\n      color: var(--black);\n      line-height: 1;\n    }\n    .section-header p {\n      font-size: 16px;\n      font-weight: 800;\n      opacity: 0.6;\n      margin-top: 12px;\n    }\n    .timeline {\n      max-width: 1100px;\n      margin: 0 auto;\n      display: grid;\n      grid-template-columns: 1fr 1fr;\n      gap: 24px;\n      position: relative;\n    }\n    .milestone {\n      border: var(--border4);\n      border-radius: var(--radius-lg);\n      padding: 28px 28px 24px;\n      box-shadow: var(--shadow6);\n      position: relative;\n      overflow: hidden;\n      cursor: default;\n      transition: transform 0.2s cubic-bezier(.34,1.56,.64,1), box-shadow 0.2s;\n    }\n    .milestone:hover { transform: translateY(-8px) rotate(-1deg); box-shadow: 10px 14px 0 var(--black); }\n    .milestone.big { grid-column: span 2; display: grid; grid-template-columns: auto 1fr; gap: 24px; align-items: center; }\n    .milestone .ms-year {\n      font-family: 'Luckiest Guy', cursive;\n      font-size: 13px;\n      letter-spacing: 0.1em;\n      opacity: 0.7;\n      margin-bottom: 4px;\n    }\n    .milestone .ms-icon {\n      font-size: 52px;\n      line-height: 1;\n      margin-bottom: 16px;\n      display: block;\n    }\n    .milestone.big .ms-icon { font-size: 80px; margin-bottom: 0; }\n    .milestone h3 {\n      font-family: 'Luckiest Guy', cursive;\n      font-size: clamp(22px, 3vw, 30px);\n      line-height: 1.1;\n      margin-bottom: 10px;\n    }\n    .milestone p { font-size: 14px; font-weight: 800; opacity: 0.75; line-height: 1.5; }\n    .ms-c1 { background: var(--yellow); }\n    .ms-c2 { background: #E0F2FE; }\n    .ms-c3 { background: #FEE2E2; }\n    .ms-c4 { background: #F0FDF4; }\n    .ms-c5 { background: var(--purple); color: white; }\n    .ms-c5 .ms-year, .ms-c5 p { color: rgba(255,255,255,0.8); }\n    .ms-badge {\n      position: absolute;\n      top: 16px;\n      right: 16px;\n      background: white;\n      border: var(--border);\n      border-radius: 999px;\n      padding: 4px 12px;\n      font-family: 'Luckiest Guy', cursive;\n      font-size: 12px;\n      color: var(--black);\n    }\n\n    \/* ============================================================\n       SECTION 4 \u2014 KINGDOM STATISTICS\n    ============================================================ *\/\n    #supply {\n      background-image: url('http:\/\/grumpyverse.space\/wp-content\/uploads\/2026\/06\/bg4.png');\n      background-size: cover;\n      background-position: center;\n      padding: 100px 24px;\n      \/*display: flex;*\/\n      \/*justify-content: flex-start;*\/\n      \/*align-items: center;*\/\n      \/*flex-direction: column;*\/\n    }\n    #supply h2 {\n      font-family: 'Luckiest Guy', cursive;\n      font-size: clamp(40px, 7vw, 72px);\n      text-align: center;\n      color: var(--white);\n      -webkit-text-stroke: 3px var(--black);\n      text-shadow: 4px 4px 0 var(--black);\n      margin-bottom: 56px;\n    }\n    .stats-grid {\n      max-width: 900px;\n      \/*margin: 0 auto;*\/\n      display: grid;\n      grid-template-columns: repeat(4, 1fr);\n      grid-template-rows: auto;\n      gap: 20px;\n    }\n    .stat-card {\n      background: var(--white);\n      border: var(--border4);\n      border-radius: var(--radius-lg);\n      padding: 28px 24px;\n      box-shadow: var(--shadow6);\n      transition: transform 0.2s, box-shadow 0.2s;\n      cursor: default;\n    }\n    .stat-card:hover { transform: translate(-4px,-4px); box-shadow: 10px 10px 0 var(--black); }\n    .stat-card.hero-stat {\n      grid-column: span 2;\n      grid-row: span 2;\n      background: var(--yellow);\n      display: flex;\n      flex-direction: column;\n      justify-content: center;\n      align-items: flex-start;\n      padding: 40px;\n    }\n    .stat-card .stat-icon { font-size: 36px; margin-bottom: 12px; display: block; }\n    .stat-card.hero-stat .stat-icon { font-size: 64px; }\n    .stat-card .stat-label {\n      font-family: 'Luckiest Guy', cursive;\n      font-size: 13px;\n      letter-spacing: 0.1em;\n      opacity: 0.6;\n      margin-bottom: 4px;\n    }\n    .stat-card .stat-value {\n      font-family: 'Luckiest Guy', cursive;\n      font-size: clamp(22px, 3vw, 32px);\n      line-height: 1.1;\n      color: var(--black);\n    }\n    .stat-card.hero-stat .stat-value {\n      font-size: clamp(32px, 4.5vw, 52px);\n    }\n    .stat-card .stat-sub {\n      font-size: 12px;\n      font-weight: 800;\n      opacity: 0.5;\n      margin-top: 4px;\n    }\n    .stat-card.accent-purple { background: var(--purple); color: white; }\n    .stat-card.accent-purple .stat-label, .stat-card.accent-purple .stat-sub { color: rgba(255,255,255,0.7); }\n    .stat-card.accent-purple .stat-value { color: white; }\n    .stat-card.accent-green  { background: var(--green); }\n    .stat-card.accent-pink   { background: var(--pink); color: white; }\n    .stat-card.accent-pink .stat-label, .stat-card.accent-pink .stat-sub { color: rgba(255,255,255,0.7); }\n    .stat-card.accent-pink .stat-value { color: white; }\n\n    \/* ============================================================\n       SECTION 5 \u2014 JOIN THE KINGDOM\n    ============================================================ *\/\n    #kingdom {\n      background-image: url('http:\/\/grumpyverse.space\/wp-content\/uploads\/2026\/06\/bg5.png');\n      background-size: cover;\n      background-position: center;\n      padding: 120px 24px 80px;\n      text-align: center;\n      position: relative;\n    }\n    #kingdom .kingdom-inner {\n      position: relative;\n      z-index: 2;\n      max-width: 800px;\n      margin: 0 auto;\n    }\n    #kingdom .crown-row {\n      display: flex;\n      justify-content: center;\n      gap: 24px;\n      margin-bottom: 32px;\n    }\n    #kingdom .crown-row span { font-size: 48px; }\n    #kingdom h2 {\n      font-family: 'Luckiest Guy', cursive;\n      font-size: clamp(48px, 9vw, 96px);\n      line-height: 0.9;\n      color: var(--white);\n      -webkit-text-stroke: 4px var(--black);\n      text-shadow: 6px 6px 0 var(--black);\n      margin-bottom: 24px;\n    }\n    #kingdom .cta-text {\n      background: var(--white);\n      border: var(--border4);\n      border-radius: var(--radius);\n      padding: 20px 32px;\n      font-size: 18px;\n      font-weight: 900;\n      box-shadow: var(--shadow6);\n      margin-bottom: 40px;\n      display: inline-block;\n    }\n    #kingdom .cta-text strong { color: var(--purple); }\n    #kingdom .big-btns {\n      display: flex;\n      gap: 20px;\n      justify-content: center;\n      flex-wrap: wrap;\n      margin-bottom: 48px;\n    }\n    #kingdom .big-btns .btn {\n      font-size: 24px;\n      padding: 20px 48px;\n      box-shadow: var(--shadow8);\n    }\n    .social-row {\n      display: flex;\n      gap: 16px;\n      justify-content: center;\n      flex-wrap: wrap;\n      margin-bottom: 60px;\n    }\n    .social-btn {\n      display: flex;\n      align-items: center;\n      gap: 10px;\n      background: var(--white);\n      border: var(--border4);\n      border-radius: 999px;\n      padding: 14px 28px;\n      font-family: 'Luckiest Guy', cursive;\n      font-size: 18px;\n      color: var(--black);\n      text-decoration: none;\n      box-shadow: var(--shadow6);\n      transition: transform 0.15s, box-shadow 0.15s;\n    }\n    .social-btn:hover { transform: translate(-3px,-3px); box-shadow: 9px 9px 0 var(--black); }\n    .social-btn svg { width: 24px; height: 24px; }\n    .kingdom-footer {\n      border-top: var(--border4);\n      padding-top: 32px;\n      font-family: 'Luckiest Guy', cursive;\n      font-size: 13px;\n      opacity: 0.6;\n      color: var(--white);\n      text-shadow: 1px 1px 0 var(--black);\n      letter-spacing: 0.05em;\n    }\n\n    \/* \u2500\u2500 SCROLL REVEAL \u2500\u2500 *\/\n    .reveal {\n      opacity: 0;\n      transform: translateY(40px);\n      transition: opacity 0.7s ease, transform 0.7s ease;\n    }\n    .reveal.visible { opacity: 1; transform: none; }\n    .reveal-delay-1 { transition-delay: 0.1s; }\n    .reveal-delay-2 { transition-delay: 0.2s; }\n    .reveal-delay-3 { transition-delay: 0.3s; }\n    .reveal-delay-4 { transition-delay: 0.4s; }\n\n    \/* \u2500\u2500 RESPONSIVE \u2500\u2500 *\/\n    @media (max-width: 768px) {\n      nav { font-size: 12px; padding: 8px 14px; gap: 6px; top: 8px; }\n      nav a { font-size: 12px; }\n      nav .nav-dot { display: none; }\n      #lore .lore-inner { grid-template-columns: 1fr; }\n      .timeline { grid-template-columns: 1fr; }\n      .milestone.big { grid-column: span 1; grid-template-columns: 1fr; }\n      .stats-grid { grid-template-columns: 1fr 1fr; }\n      .stat-card.hero-stat { grid-column: span 2; grid-row: span 1; }\n    }\n    @media (max-width: 480px) {\n      nav .nav-buy { display: none; }\n      .stats-grid { grid-template-columns: 1fr; }\n      .stat-card.hero-stat { grid-column: span 1; }\n    }\n  <\/style>\n<\/head>\n<body>\n\n<!-- TOAST -->\n<div id=\"toast\">\u2705 CONTRACT ADDRESS COPIED!<\/div>\n\n<!-- NAV -->\n<nav>\n  <a href=\"#lore\">LORE<\/a>\n  <div class=\"nav-dot\"><\/div>\n  <a href=\"#story\">STORY<\/a>\n  <div class=\"nav-dot\"><\/div>\n  <a href=\"#supply\">SUPPLY<\/a>\n  <div class=\"nav-dot\"><\/div>\n  <a href=\"#kingdom\">KINGDOM<\/a>\n  <div class=\"nav-dot\"><\/div>\n  <a href=\"#kingdom\" class=\"nav-buy display\">BUY $GRUMP<\/a>\n<\/nav>\n\n<!-- ============================\n     SECTION 1 \u2014 HERO\n============================= -->\n<section id=\"hero\">\n\n  <!-- Floating decor -->\n  <div class=\"deco anim-float\" style=\"top:20%;left:8%;font-size:52px\">\ud83d\udc51<\/div>\n  <div class=\"deco anim-wobble\" style=\"top:30%;right:10%;font-size:40px\">\u2b50<\/div>\n  <div class=\"deco anim-floatR\" style=\"bottom:28%;left:14%;font-size:36px\">\ud83e\ude99<\/div>\n  <div class=\"deco anim-float\" style=\"bottom:22%;right:12%;font-size:44px;animation-delay:1.5s\">\u2728<\/div>\n  <div class=\"deco anim-wobble\" style=\"top:15%;right:25%;font-size:28px;animation-delay:0.8s\">\ud83d\udcac<\/div>\n  <div class=\"deco anim-floatR\" style=\"top:60%;left:5%;font-size:30px\">\ud83d\ude24<\/div>\n\n  <div class=\"hero-inner\">\n    <div class=\"mcap-badge\">\n      <div class=\"dot\"><\/div>\n      LIVE ON SOLANA\n    <\/div>\n\n    <div>\n      <h1>GRUMPY<br>VERSE<\/h1>\n      <div class=\"ticker-sym\">$GRUMP<\/div>\n    <\/div>\n\n    <div class=\"tagline-box display\">\n      The King of Memes Has Arrived. Bow Down.\n    <\/div>\n\n    <div class=\"ca-row\">\n      <div class=\"ca-addr\">null<\/div>\n      <button class=\"btn-copy-inline\" onclick=\"copyCA()\">COPY CA<\/button>\n    <\/div>\n\n    <div class=\"hero-btns\">\n      <a href=\"#\" class=\"btn btn-yellow\" data-testid=\"button-buy\">\ud83d\uded2 BUY $GRUMP<\/a>\n      <a href=\"#\" class=\"btn btn-purple\" data-testid=\"button-chart\">\ud83d\udcca VIEW CHART<\/a>\n    <\/div>\n\n    <div class=\"chain-info\">SOLANA \u00b7 BONDED ON PUMP.FUN \u00b7 LIVE ON DEXSCREENER<\/div>\n  <\/div>\n\n  <!-- Running gallery strip -->\n  <div class=\"gallery-strip\">\n    <div class=\"gallery-track\" id=\"galleryTrack\">\n      <img decoding=\"async\" class=\"gallery-item\" src=\"http:\/\/grumpyverse.space\/wp-content\/uploads\/2026\/06\/galleryitem1.png\" alt=\"\" loading=\"lazy\">\n      <img decoding=\"async\" class=\"gallery-item\" src=\"http:\/\/grumpyverse.space\/wp-content\/uploads\/2026\/06\/galleryitem2.png\" alt=\"\" loading=\"lazy\">\n      <img decoding=\"async\" class=\"gallery-item\" src=\"http:\/\/grumpyverse.space\/wp-content\/uploads\/2026\/06\/galleryitem3.png\" alt=\"\" loading=\"lazy\">\n      <img decoding=\"async\" class=\"gallery-item\" src=\"http:\/\/grumpyverse.space\/wp-content\/uploads\/2026\/06\/galleryitem4.png\" alt=\"\" loading=\"lazy\">\n      <img decoding=\"async\" class=\"gallery-item\" src=\"http:\/\/grumpyverse.space\/wp-content\/uploads\/2026\/06\/galleryitem5.png\" alt=\"\" loading=\"lazy\">\n      <img decoding=\"async\" class=\"gallery-item\" src=\"http:\/\/grumpyverse.space\/wp-content\/uploads\/2026\/06\/galleryitem6.png\" alt=\"\" loading=\"lazy\">\n      <img decoding=\"async\" class=\"gallery-item\" src=\"http:\/\/grumpyverse.space\/wp-content\/uploads\/2026\/06\/galleryitem7.png\" alt=\"\" loading=\"lazy\">\n      <img decoding=\"async\" class=\"gallery-item\" src=\"http:\/\/grumpyverse.space\/wp-content\/uploads\/2026\/06\/galleryitem8.png\" alt=\"\" loading=\"lazy\">\n      <img decoding=\"async\" class=\"gallery-item\" src=\"http:\/\/grumpyverse.space\/wp-content\/uploads\/2026\/06\/galleryitem9.png\" alt=\"\" loading=\"lazy\">\n      <img decoding=\"async\" class=\"gallery-item\" src=\"http:\/\/grumpyverse.space\/wp-content\/uploads\/2026\/06\/galleryitem10.png\" alt=\"\" loading=\"lazy\">\n      <!-- duplicate for seamless loop -->\n      <img decoding=\"async\" class=\"gallery-item\" src=\"http:\/\/grumpyverse.space\/wp-content\/uploads\/2026\/06\/galleryitem1.png\" alt=\"\" loading=\"lazy\">\n      <img decoding=\"async\" class=\"gallery-item\" src=\"http:\/\/grumpyverse.space\/wp-content\/uploads\/2026\/06\/galleryitem2.png\" alt=\"\" loading=\"lazy\">\n      <img decoding=\"async\" class=\"gallery-item\" src=\"http:\/\/grumpyverse.space\/wp-content\/uploads\/2026\/06\/galleryitem3.png\" alt=\"\" loading=\"lazy\">\n      <img decoding=\"async\" class=\"gallery-item\" src=\"http:\/\/grumpyverse.space\/wp-content\/uploads\/2026\/06\/galleryitem4.png\" alt=\"\" loading=\"lazy\">\n      <img decoding=\"async\" class=\"gallery-item\" src=\"http:\/\/grumpyverse.space\/wp-content\/uploads\/2026\/06\/galleryitem5.png\" alt=\"\" loading=\"lazy\">\n      <img decoding=\"async\" class=\"gallery-item\" src=\"http:\/\/grumpyverse.space\/wp-content\/uploads\/2026\/06\/galleryitem6.png\" alt=\"\" loading=\"lazy\">\n      <img decoding=\"async\" class=\"gallery-item\" src=\"http:\/\/grumpyverse.space\/wp-content\/uploads\/2026\/06\/galleryitem7.png\" alt=\"\" loading=\"lazy\">\n      <img decoding=\"async\" class=\"gallery-item\" src=\"http:\/\/grumpyverse.space\/wp-content\/uploads\/2026\/06\/galleryitem8.png\" alt=\"\" loading=\"lazy\">\n      <img decoding=\"async\" class=\"gallery-item\" src=\"http:\/\/grumpyverse.space\/wp-content\/uploads\/2026\/06\/galleryitem9.png\" alt=\"\" loading=\"lazy\">\n      <img decoding=\"async\" class=\"gallery-item\" src=\"http:\/\/grumpyverse.space\/wp-content\/uploads\/2026\/06\/galleryitem10.png\" alt=\"\" loading=\"lazy\">\n    <\/div>\n  <\/div>\n<\/section>\n\n<!-- DIVIDER: Hero \u2192 Ticker -->\n<div class=\"divider\"><\/div>\n\n<!-- TICKER BAR -->\n<div class=\"ticker-bar\">\n  <div class=\"ticker-track\">\n    <span>\ud83d\udc51 GRUMPYVERSE<\/span><span>\u00b7<\/span>\n    <span>$GRUMP TO THE MOON<\/span><span>\u00b7<\/span>\n    <span>THE KING RULES ALL MEMES<\/span><span>\u00b7<\/span>\n    <span>0% TAX BUY\/SELL<\/span><span>\u00b7<\/span>\n    <span>LP BURNED \ud83d\udd25<\/span><span>\u00b7<\/span>\n    <span>CONTRACT RENOUNCED \u2705<\/span><span>\u00b7<\/span>\n    <span>\ud83d\udc51 GRUMPYVERSE<\/span><span>\u00b7<\/span>\n    <span>$GRUMP TO THE MOON<\/span><span>\u00b7<\/span>\n    <span>THE KING RULES ALL MEMES<\/span><span>\u00b7<\/span>\n    <span>0% TAX BUY\/SELL<\/span><span>\u00b7<\/span>\n    <span>LP BURNED \ud83d\udd25<\/span><span>\u00b7<\/span>\n    <span>CONTRACT RENOUNCED \u2705<\/span><span>\u00b7<\/span>\n  <\/div>\n<\/div>\n\n<!-- DIVIDER: Ticker \u2192 Lore -->\n<div class=\"divider\"><\/div>\n\n<!-- ============================\n     SECTION 2 \u2014 ENTER THE GRUMPYVERSE\n============================= -->\n<section id=\"lore\">\n  <div class=\"lore-inner\">\n\n    <div class=\"lore-img-wrap reveal\">\n      <div class=\"lore-img-card\">\n        <img decoding=\"async\" src=\"http:\/\/grumpyverse.space\/wp-content\/uploads\/2026\/06\/featured2.png\" alt=\"Grumpyverse King\" loading=\"lazy\" \/>\n      <\/div>\n      <div class=\"lore-img-badge anim-wobble\">\ud83d\udc51<\/div>\n      <!-- Extra deco sparkles -->\n      <div class=\"deco anim-float\" style=\"bottom:-20px;left:20px;font-size:32px;position:absolute;\">\u2728<\/div>\n      <div class=\"deco anim-floatR\" style=\"top:10px;left:-24px;font-size:28px;position:absolute;\">\u2b50<\/div>\n    <\/div>\n\n    <div class=\"lore-content\">\n      <span class=\"section-label\">Chapter 1<\/span>\n      <h2 class=\"display\">ENTER THE<br>GRUMPYVERSE<\/h2>\n\n      <div class=\"speech-card reveal reveal-delay-1\">\n        <p>Born from the darkest corners of the internet, one face captured the world's collective frustration. That face was <strong>GRUMP<\/strong>. He didn't choose this life \u2014 the internet chose him.<\/p>\n      <\/div>\n\n      <div class=\"speech-card reveal reveal-delay-2\">\n        <p>Now he reigns supreme over a digital kingdom of memes, mischief, and moon potential. The Grumpyverse isn't just a coin \u2014 it's a <strong>movement<\/strong>. It's every \"ugh\" you've ever felt transformed into something legendary.<\/p>\n      <\/div>\n\n      <div class=\"highlight-row reveal reveal-delay-3\">\n        <span class=\"highlight-pill\">500M+ Impressions<\/span>\n        <span class=\"highlight-pill purple\">Internet Legend<\/span>\n        <span class=\"highlight-pill pink\">Meme Royalty<\/span>\n        <span class=\"highlight-pill\">On Solana<\/span>\n      <\/div>\n    <\/div>\n  <\/div>\n\n  <!-- Floating background deco -->\n  <div class=\"deco anim-wobble\" style=\"top:10%;right:5%;font-size:64px\">\ud83d\udc51<\/div>\n  <div class=\"deco anim-float\" style=\"bottom:10%;right:8%;font-size:40px;animation-delay:2s\">\u2b50<\/div>\n<\/section>\n\n\n<!-- ============================\n     SECTION 3 \u2014 RISE OF THE MEME KING\n============================= -->\n<section id=\"story\">\n  <div class=\"section-header reveal\">\n    <span class=\"section-label\">The Legend<\/span>\n    <h2 class=\"display\">RISE OF THE<br>MEME KING<\/h2>\n    <p>How one grumpy face conquered the entire internet<\/p>\n  <\/div>\n\n  <div class=\"timeline\">\n\n    <div class=\"milestone ms-c1 big reveal\">\n      <span class=\"ms-icon\">\ud83d\ude3e<\/span>\n      <div>\n        <div class=\"ms-year\">2012 \u2014 ORIGIN STORY<\/div>\n        <h3>The Grump Is Born<\/h3>\n        <p>A single photograph changes internet history forever. One face. One expression. Infinite relatability. The grumpiest cat the world had ever seen becomes an overnight sensation, spreading across every corner of the web.<\/p>\n      <\/div>\n      <span class=\"ms-badge\">Chapter 1<\/span>\n    <\/div>\n\n    <div class=\"milestone ms-c2 reveal reveal-delay-1\">\n      <span class=\"ms-icon\">\ud83c\udf0d<\/span>\n      <div class=\"ms-year\">2016 \u2014 GLOBAL DOMINATION<\/div>\n      <h3>Goes Viral Worldwide<\/h3>\n      <p>500M+ impressions across every major platform. GRUMP is featured in news, TV shows, and merchandise worldwide. The King needs no introduction.<\/p>\n      <span class=\"ms-badge\">Chapter 2<\/span>\n    <\/div>\n\n    <div class=\"milestone ms-c3 reveal reveal-delay-2\">\n      <span class=\"ms-icon\">\ud83c\udfc6<\/span>\n      <div class=\"ms-year\">2020 \u2014 HALL OF FAME<\/div>\n      <h3>Internet Hall of Fame<\/h3>\n      <p>Officially recognized as one of the most iconic internet memes ever created. Awards, documentaries, a permanent place in digital culture history.<\/p>\n      <span class=\"ms-badge\">Chapter 3<\/span>\n    <\/div>\n\n    <div class=\"milestone ms-c4 reveal reveal-delay-1\">\n      <span class=\"ms-icon\">\ud83d\ude80<\/span>\n      <div class=\"ms-year\">2024 \u2014 THE KINGDOM RISES<\/div>\n      <h3>$GRUMP Token Launches<\/h3>\n      <p>The legend enters the blockchain. $GRUMP launches on Solana \u2014 bringing the King's eternal grumpiness to the world of crypto. The Grumpyverse goes on-chain.<\/p>\n      <span class=\"ms-badge\">Chapter 4<\/span>\n    <\/div>\n\n    <div class=\"milestone ms-c5 reveal reveal-delay-2\">\n      <span class=\"ms-icon\">\ud83c\udf19<\/span>\n      <div class=\"ms-year\">2025 \u2014 MOON MISSION<\/div>\n      <h3>The Grumpyverse Conquers Crypto<\/h3>\n      <p>A growing kingdom of believers and holders. The King doesn't just rule memes \u2014 he rules the charts. The mission: make every holder a noble of the Grumpyverse.<\/p>\n      <span class=\"ms-badge\">Chapter 5<\/span>\n    <\/div>\n\n  <\/div>\n\n  <!-- Corner deco -->\n  <div class=\"deco anim-spin\" style=\"bottom:5%;right:3%;font-size:72px;opacity:0.07\">\ud83d\udc51<\/div>\n<\/section>\n\n<!-- DIVIDER: Story \u2192 Supply -->\n<div class=\"divider\"><\/div>\n\n<!-- ============================\n     SECTION 4 \u2014 KINGDOM STATISTICS\n============================= -->\n<section id=\"supply\">\n  <h2 class=\"reveal\">KINGDOM STATISTICS<\/h2>\n\n  <div class=\"stats-grid\">\n\n    <div class=\"stat-card hero-stat reveal\">\n      <span class=\"stat-icon\">\ud83d\udd25<\/span>\n      <div class=\"stat-label\">LIQUIDITY POOL<\/div>\n      <div class=\"stat-value\">BURNED 100%<\/div>\n      <div class=\"stat-sub\">LP burned forever. Fully safu.<\/div>\n    <\/div>\n\n    <div class=\"stat-card reveal reveal-delay-1\">\n      <span class=\"stat-icon\">\u26d3\ufe0f<\/span>\n      <div class=\"stat-label\">CHAIN<\/div>\n      <div class=\"stat-value\">SOLANA<\/div>\n      <div class=\"stat-sub\">Fast. Cheap. Based.<\/div>\n    <\/div>\n\n    <div class=\"stat-card accent-green reveal reveal-delay-2\">\n      <span class=\"stat-icon\">\ud83d\udcb8<\/span>\n      <div class=\"stat-label\">BUY TAX<\/div>\n      <div class=\"stat-value\">0%<\/div>\n      <div class=\"stat-sub\">Free entry. Always.<\/div>\n    <\/div>\n\n    <div class=\"stat-card reveal reveal-delay-1\">\n      <span class=\"stat-icon\">\ud83d\udcb8<\/span>\n      <div class=\"stat-label\">SELL TAX<\/div>\n      <div class=\"stat-value\">0%<\/div>\n      <div class=\"stat-sub\">No exit tax. Ever.<\/div>\n    <\/div>\n\n    <div class=\"stat-card accent-pink reveal reveal-delay-2\">\n      <span class=\"stat-icon\">\u2705<\/span>\n      <div class=\"stat-label\">CONTRACT<\/div>\n      <div class=\"stat-value\">RENOUNCED<\/div>\n      <div class=\"stat-sub\">No rug. King's honor.<\/div>\n    <\/div>\n\n    <div class=\"stat-card accent-purple reveal reveal-delay-1\">\n      <span class=\"stat-icon\">\ud83d\ude24<\/span>\n      <div class=\"stat-label\">TOTAL SUPPLY<\/div>\n      <div class=\"stat-value\">1,000,000,000<\/div>\n      <div class=\"stat-sub\">Fixed. No minting ever.<\/div>\n    <\/div>\n\n    <div class=\"stat-card reveal reveal-delay-2\">\n      <span class=\"stat-icon\">\ud83d\udd12<\/span>\n      <div class=\"stat-label\">MINT AUTHORITY<\/div>\n      <div class=\"stat-value\">REVOKED<\/div>\n      <div class=\"stat-sub\">Supply is locked forever.<\/div>\n    <\/div>\n\n    <div class=\"stat-card reveal reveal-delay-1\">\n      <span class=\"stat-icon\">\ud83c\udf10<\/span>\n      <div class=\"stat-label\">NETWORK<\/div>\n      <div class=\"stat-value\">PUMP.FUN<\/div>\n      <div class=\"stat-sub\">Launched & bonded on pump.fun<\/div>\n    <\/div>\n\n  <\/div>\n<\/section>\n\n<!-- DIVIDER: Supply \u2192 Kingdom -->\n<div class=\"divider\"><\/div>\n\n<!-- ============================\n     SECTION 5 \u2014 JOIN THE KINGDOM\n============================= -->\n<section id=\"kingdom\">\n\n  <!-- Floating deco -->\n  <div class=\"deco anim-float\" style=\"top:15%;left:8%;font-size:56px\">\ud83d\udc51<\/div>\n  <div class=\"deco anim-wobble\" style=\"top:20%;right:10%;font-size:48px\">\ud83e\ude99<\/div>\n  <div class=\"deco anim-floatR\" style=\"bottom:30%;left:12%;font-size:40px\">\u2728<\/div>\n  <div class=\"deco anim-float\" style=\"bottom:25%;right:8%;font-size:52px;animation-delay:1.2s\">\u2b50<\/div>\n  <div class=\"deco anim-wobble\" style=\"top:50%;left:4%;font-size:32px;animation-delay:0.6s\">\ud83d\ude24<\/div>\n  <div class=\"deco anim-spin\" style=\"bottom:40%;right:4%;font-size:36px;opacity:0.6\">\ud83c\udfc6<\/div>\n\n  <div class=\"kingdom-inner\">\n    <div class=\"crown-row reveal\">\n      <span class=\"anim-float\" style=\"display:inline-block\">\ud83d\udc51<\/span>\n      <span class=\"anim-float\" style=\"display:inline-block;animation-delay:0.5s\">\ud83d\udc51<\/span>\n      <span class=\"anim-float\" style=\"display:inline-block;animation-delay:1s\">\ud83d\udc51<\/span>\n    <\/div>\n\n    <h2 class=\"reveal\">JOIN THE<br>KINGDOM<\/h2>\n\n    <div class=\"cta-text reveal reveal-delay-1\">\n      The Grumpyverse awaits. Your throne is waiting.<br>\n      Bow to the King. Join the revolution.\n    <\/div>\n\n    <div class=\"big-btns reveal reveal-delay-2\">\n      <a href=\"#\" class=\"btn btn-yellow\" data-testid=\"button-buy-bottom\">\ud83d\uded2 BUY $GRUMP<\/a>\n      <button class=\"btn btn-white\" onclick=\"copyCA()\" data-testid=\"button-copy-bottom\">\ud83d\udccb COPY CA<\/button>\n    <\/div>\n\n    <div class=\"social-row reveal reveal-delay-3\">\n      <a href=\"#\" class=\"social-btn\" data-testid=\"link-twitter\">\n        <svg viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-4.714-6.231-5.401 6.231H2.744l7.737-8.835L1.254 2.25H8.08l4.259 5.629 5.905-5.629Zm-1.161 17.52h1.833L7.084 4.126H5.117z\"\/><\/svg>\n        X \/ TWITTER\n      <\/a>\n      <a href=\"#\" class=\"social-btn\" data-testid=\"link-telegram\">\n        <svg viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M12 0C5.373 0 0 5.373 0 12s5.373 12 12 12 12-5.373 12-12S18.627 0 12 0zm5.562 8.248-1.97 9.289c-.145.658-.537.818-1.084.508l-3-2.21-1.447 1.394c-.16.16-.295.295-.605.295l.213-3.053 5.56-5.023c.242-.213-.054-.333-.373-.12L6.178 14.02l-2.96-.924c-.643-.204-.657-.643.136-.953l11.57-4.461c.537-.194 1.006.131.638.566z\"\/><\/svg>\n        TELEGRAM\n      <\/a>\n      <a href=\"#\" class=\"social-btn\" data-testid=\"link-dexscreener\">\n        <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"22 12 18 12 15 21 9 3 6 12 2 12\"\/><\/svg>\n        DEXSCREENER\n      <\/a>\n    <\/div>\n\n    <div class=\"kingdom-footer reveal reveal-delay-4\">\n      \u00a9 2025 Grumpyverse. All Rights Reserved.<br>\n      $GRUMP is a meme coin with no intrinsic value or expectation of financial return. Not financial advice. Do your own research.\n    <\/div>\n  <\/div>\n<\/section>\n\n<script>\n  const CA = \"null\";\n\n  function copyCA() {\n    navigator.clipboard.writeText(CA).catch(() => {\n      const ta = document.createElement(\"textarea\");\n      ta.value = CA;\n      document.body.appendChild(ta);\n      ta.select();\n      document.execCommand(\"copy\");\n      document.body.removeChild(ta);\n    });\n    const t = document.getElementById(\"toast\");\n    t.classList.add(\"show\");\n    setTimeout(() => t.classList.remove(\"show\"), 2800);\n  }\n\n  \/\/ Scroll reveal\n  const reveals = document.querySelectorAll(\".reveal\");\n  const observer = new IntersectionObserver((entries) => {\n    entries.forEach(e => {\n      if (e.isIntersecting) {\n        e.target.classList.add(\"visible\");\n        observer.unobserve(e.target);\n      }\n    });\n  }, { threshold: 0.12 });\n  reveals.forEach(el => observer.observe(el));\n\n  \/\/ Parallax on hero deco elements\n  const decos = document.querySelectorAll(\"#hero .deco\");\n  window.addEventListener(\"scroll\", () => {\n    const y = window.scrollY;\n    decos.forEach((d, i) => {\n      const factor = (i % 2 === 0 ? 0.08 : 0.05) * (i % 3 === 0 ? -1 : 1);\n      d.style.transform = `translateY(${y * factor}px)`;\n    });\n  }, { passive: true });\n\n  \/\/ Stagger milestone animation\n  document.querySelectorAll(\".milestone\").forEach((el, i) => {\n    el.style.transitionDelay = (i * 0.08) + \"s\";\n  });\n<\/script>\n<\/body>\n<\/html>\n\t\t\t\t<\/div>\n\t\t\n<\/div>\n\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>GRUMPYVERSE \u2014 $GRUMP \u2705 CONTRACT ADDRESS COPIED! LORE STORY SUPPLY KINGDOM BUY $GRUMP \ud83d\udc51 \u2b50 \ud83e\ude99 \u2728 \ud83d\udcac \ud83d\ude24 LIVE ON SOLANA GRUMPYVERSE $GRUMP The King of Memes Has Arrived. Bow Down. null COPY CA \ud83d\uded2 BUY $GRUMP \ud83d\udcca VIEW CHART SOLANA \u00b7 BONDED ON PUMP.FUN \u00b7 LIVE ON DEXSCREENER \ud83d\udc51 GRUMPYVERSE\u00b7 $GRUMP TO THE [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_canvas","meta":{"footnotes":""},"class_list":["post-8","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/grumpyverse.space\/index.php?rest_route=\/wp\/v2\/pages\/8","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/grumpyverse.space\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/grumpyverse.space\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/grumpyverse.space\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/grumpyverse.space\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=8"}],"version-history":[{"count":106,"href":"https:\/\/grumpyverse.space\/index.php?rest_route=\/wp\/v2\/pages\/8\/revisions"}],"predecessor-version":[{"id":138,"href":"https:\/\/grumpyverse.space\/index.php?rest_route=\/wp\/v2\/pages\/8\/revisions\/138"}],"wp:attachment":[{"href":"https:\/\/grumpyverse.space\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=8"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}