{"id":64,"date":"2026-02-11T20:25:20","date_gmt":"2026-02-11T20:25:20","guid":{"rendered":"https:\/\/unredacted.ink\/?page_id=64"},"modified":"2026-04-15T20:56:59","modified_gmt":"2026-04-15T20:56:59","slug":"elementor-page-100","status":"publish","type":"page","link":"https:\/\/unredacted.ink\/","title":{"rendered":"UN|REDACTED \u279c &#8220;Wear your VOTE!&#8221;"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"64\" class=\"elementor elementor-64\">\n\t\t\t\t<div class=\"elementor-element elementor-element-468f82f e-flex e-con-boxed e-con e-parent\" data-id=\"468f82f\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-afd5e08 elementor-widget elementor-widget-html\" data-id=\"afd5e08\" 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, maximum-scale=1.0, user-scalable=no\">\n  <title>The Badge of Courage. | Demand DOJ Compliance with Public Law 119-38<\/title>\n  \n  <!-- Primary SEO Meta Tags -->\n  <meta name=\"description\" content=\"UNREDACTED.INK \u2014 The Badge of Courage. Demanding DOJ compliance with Public Law 119-38, the Epstein Files Transparency Act. Passed 427-1 in the House. Unanimous consent in the Senate. Signed into law November 19, 2025. The DOJ missed its deadline. Wear your VOTE. Stand UN|REDACTED.\">\n  <meta name=\"keywords\" content=\"Epstein Files, H.R. 4405, Public Law 119-38, DOJ compliance, Epstein Files Transparency Act, EFTA, 427-1, UN|REDACTED, Wear your VOTE, The Badge of Courage, DOJ accountability, Epstein investigation, congressional accountability, civic accountability\">\n  <meta name=\"author\" content=\"_Illuminos\">\n  <meta name=\"robots\" content=\"index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1\">\n  \n  <!-- Canonical -->\n  <link rel=\"canonical\" href=\"https:\/\/unredacted.ink\/\">\n\n  <!-- Open Graph \/ Social -->\n  <meta property=\"og:type\" content=\"website\">\n  <meta property=\"og:url\" content=\"https:\/\/unredacted.ink\/\">\n  <meta property=\"og:site_name\" content=\"UN|REDACTED\">\n  <meta property=\"og:title\" content=\"UN|REDACTED \u2014 The Badge of Courage.\">\n  <meta property=\"og:description\" content=\"H.R. 4405 passed 427-1. Public Law 119-38. The DOJ missed its deadline. 425 went silent. Protect victims. Expose co-conspirators. Enforce the law.\">\n  <meta property=\"og:image\" content=\"https:\/\/unredacted.ink\/wp-content\/uploads\/2026\/02\/UN_REDACTED-TAG_GEN-PUBLIC-FRONT_V1.png\">\n  <meta property=\"og:image:width\" content=\"1200\">\n  <meta property=\"og:image:height\" content=\"630\">\n  <meta property=\"og:image:alt\" content=\"UN|REDACTED Lapel Tag \u2014 The Badge of Courage \u2014 427-1 H.R. 4405\">\n  <meta property=\"og:locale\" content=\"en_US\">\n  \n  <!-- Twitter -->\n  <meta name=\"twitter:card\" content=\"summary_large_image\">\n  <meta name=\"twitter:site\" content=\"@_Illuminos\">\n  <meta name=\"twitter:creator\" content=\"@_Illuminos\">\n  <meta name=\"twitter:title\" content=\"UN|REDACTED \u2014 The Badge of Courage.\">\n  <meta name=\"twitter:description\" content=\"H.R. 4405 passed 427-1. Public Law 119-38. The DOJ missed its deadline. Protect victims. Expose co-conspirators. Enforce the law.\">\n  <meta name=\"twitter:image\" content=\"https:\/\/unredacted.ink\/wp-content\/uploads\/2026\/02\/UN_REDACTED-TAG_GEN-PUBLIC-FRONT_V1.png\">\n  <meta name=\"twitter:image:alt\" content=\"UN|REDACTED Lapel Tag \u2014 The Badge of Courage \u2014 427-1 H.R. 4405\">\n  \n  <!-- Favicon -->\n  <link rel=\"icon\" type=\"image\/svg+xml\" href=\"data:image\/svg+xml,<svg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 100 100'><text y='.9em' font-size='90'>\ud83d\udcdc<\/text><\/svg>\">\n  \n  <!-- Preconnect -->\n  <link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\n  <link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\n  \n  <!-- Fonts -->\n  <link href=\"https:\/\/fonts.googleapis.com\/css2?family=Courier+Prime:wght@400;700&display=swap\" rel=\"stylesheet\">\n\n  <!-- JSON-LD Structured Data (Schema.org) \u2014 NO Product\/price schema -->\n  <script type=\"application\/ld+json\">\n  {\n    \"@context\": \"https:\/\/schema.org\",\n    \"@graph\": [\n      {\n        \"@type\": \"WebSite\",\n        \"@id\": \"https:\/\/unredacted.ink\/#website\",\n        \"url\": \"https:\/\/unredacted.ink\/\",\n        \"name\": \"UN|REDACTED\",\n        \"description\": \"The Badge of Courage. Civic accountability campaign demanding DOJ compliance with Public Law 119-38, the Epstein Files Transparency Act.\",\n        \"publisher\": {\n          \"@id\": \"https:\/\/unredacted.ink\/#organization\"\n        }\n      },\n      {\n        \"@type\": \"Organization\",\n        \"@id\": \"https:\/\/unredacted.ink\/#organization\",\n        \"name\": \"UNREDACTED.INK\",\n        \"url\": \"https:\/\/unredacted.ink\/\",\n        \"logo\": {\n          \"@type\": \"ImageObject\",\n          \"url\": \"https:\/\/unredacted.ink\/wp-content\/uploads\/2026\/02\/UN_REDACTED-TAG_GEN-PUBLIC-FRONT_V1.png\",\n          \"width\": 1200,\n          \"height\": 630\n        },\n        \"sameAs\": [\n          \"https:\/\/x.com\/_Illuminos\"\n        ],\n        \"description\": \"Nonpartisan civic accountability initiative demanding enforcement of Public Law 119-38, the Epstein Files Transparency Act.\"\n      },\n      {\n        \"@type\": \"WebPage\",\n        \"@id\": \"https:\/\/unredacted.ink\/#webpage\",\n        \"url\": \"https:\/\/unredacted.ink\/\",\n        \"name\": \"UN|REDACTED \u2014 The Badge of Courage. Demand DOJ Compliance.\",\n        \"isPartOf\": {\n          \"@id\": \"https:\/\/unredacted.ink\/#website\"\n        },\n        \"description\": \"UNREDACTED.INK \u2014 The Badge of Courage. Demanding DOJ compliance with Public Law 119-38. H.R. 4405 passed 427-1. Unanimous consent in the Senate. The deadline passed December 19, 2025. The DOJ remains non-compliant.\",\n        \"about\": {\n          \"@type\": \"LegislationObject\",\n          \"name\": \"H.R. 4405 \u2014 Epstein Files Transparency Act\",\n          \"alternateName\": \"Public Law 119-38\",\n          \"description\": \"Requires the Department of Justice to release all documents related to the investigation and prosecution of Jeffrey Epstein within 30 days of enactment.\",\n          \"datePublished\": \"2025-11-19\",\n          \"legislationDate\": \"2025-11-19\"\n        }\n      }\n    ]\n  }\n  <\/script>\n\n  <style>\n    * {\n      margin: 0;\n      padding: 0;\n      box-sizing: border-box;\n    }\n    \n    html, body {\n      width: 100%;\n      min-height: 100vh;\n      overflow-x: hidden;\n      background: #0a0a0a;\n    }\n\n    #root {\n      width: 100%;\n      height: 100vh;\n      position: relative;\n    }\n    \n    body {\n      font-family: 'Courier Prime', 'Courier New', monospace;\n      -webkit-font-smoothing: antialiased;\n      -moz-osx-font-smoothing: grayscale;\n    }\n\n    \/* === BELOW-FOLD CONTENT === *\/\n    #content {\n      width: 100%;\n      background: #0a0a0a;\n      padding: 0;\n    }\n\n    .unr-gallery {\n      width: 100%;\n      max-width: 960px;\n      margin: 0 auto;\n      display: flex;\n      flex-direction: column;\n      gap: 48px;\n      padding: 60px 24px 80px;\n    }\n\n    .unr-img-block { position: relative; }\n\n    .unr-img-block img {\n      width: 100%;\n      border-radius: 16px;\n      display: block;\n      box-shadow: 0 8px 40px rgba(0,0,0,0.5);\n      transition: box-shadow 0.3s ease;\n    }\n\n    .unr-img-block img:hover {\n      box-shadow: 0 12px 60px rgba(255,215,0,0.08);\n    }\n\n    .unr-img-label {\n      font-family: 'Courier Prime', monospace;\n      font-size: 10px;\n      letter-spacing: 3px;\n      color: #555555;\n      text-align: center;\n      margin-top: 16px;\n      text-transform: uppercase;\n    }\n\n    .unr-footer {\n      text-align: center;\n      padding: 40px 24px 60px;\n      border-top: 1px solid #2a2a2a;\n    }\n\n    .unr-footer-badge {\n      font-family: 'Courier Prime', monospace;\n      font-size: 11px;\n      letter-spacing: 3px;\n      color: #FFD700;\n      margin-bottom: 8px;\n      min-height: 20px;\n      transition: opacity 0.5s ease;\n    }\n\n    .unr-footer-badge .fv-pill {\n      display: inline-block;\n      background:\n        repeating-linear-gradient(\n          0deg,\n          rgba(180, 190, 200, 0.25) 0px,\n          rgba(180, 190, 200, 0.25) 1px,\n          rgba(255, 255, 255, 0.92) 1px,\n          rgba(255, 255, 255, 0.92) 3px\n        );\n      background-color: rgba(255, 255, 255, 0.92);\n      padding: 2px 10px 1px;\n      border-radius: 12px;\n      letter-spacing: 4px;\n      font-weight: 800;\n      font-size: 12px;\n      box-shadow: 0 1px 8px rgba(0,0,0,0.4);\n      vertical-align: middle;\n      border: 1px solid rgba(200, 205, 210, 0.4);\n    }\n    .unr-footer-badge .fv-r { color: #FF1744; font-weight: 900; }\n    .unr-footer-badge .fv-b { color: #2979FF; font-weight: 900; }\n\n    .unr-footer-text {\n      font-family: 'Courier Prime', monospace;\n      font-size: 11px;\n      letter-spacing: 2px;\n      color: #555555;\n    }\n\n    @media (max-width: 600px) {\n      .unr-gallery { gap: 32px; padding: 40px 16px 60px; }\n    }\n  <\/style>\n<\/head>\n<body>\n  <div id=\"root\"><\/div>\n  \n  <!-- React 18 from CDN -->\n  <script src=\"https:\/\/unpkg.com\/react@18\/umd\/react.production.min.js\" crossorigin><\/script>\n  <script src=\"https:\/\/unpkg.com\/react-dom@18\/umd\/react-dom.production.min.js\" crossorigin><\/script>\n  <script src=\"https:\/\/unpkg.com\/@babel\/standalone\/babel.min.js\"><\/script>\n  \n  <script type=\"text\/babel\">\n    const { useState, useEffect, useRef, useCallback } = React;\n\n    const UnredactedLanding = () => {\n      \/\/ === STATE ===\n      const [spotlightPos, setSpotlightPos] = useState({ x: 50, y: 50 });\n      const [targetPos, setTargetPos] = useState({ x: 50, y: 50 });\n      const [audioContext, setAudioContext] = useState(null);\n      const [isMobile, setIsMobile] = useState(false);\n      const [revealedEggs, setRevealedEggs] = useState({});\n      const [glitchTick, setGlitchTick] = useState(0);\n      const [badgeRevealed, setBadgeRevealed] = useState(false);\n      const [heroPhase, setHeroPhase] = useState('badge'); \/\/ 'badge' | 'vote' | 'notDistracted'\n      const [voteRevealed, setVoteRevealed] = useState(false); \/\/ latch: plays once, holds forever\n      const [notDistractedRevealed, setNotDistractedRevealed] = useState(false); \/\/ latch: plays once, holds forever\n      const [lightningFired, setLightningFired] = useState(false); \/\/ once per visit\n      \n      const containerRef = useRef(null);\n      const animationRef = useRef(null);\n      const gyroEnabledRef = useRef(false);\n      const inputModeRef = useRef('mouse');\n      const staticNoiseRef = useRef(null);\n      const staticGainRef = useRef(null);\n\n      \/\/ === COLORS ===\n      const colors = {\n        bg: '#0a0a0a',\n        gold: '#FFD700',\n        red: '#FF4444',\n        textPrimary: '#ffffff',\n        textSecondary: '#888888',\n        textMuted: '#555555',\n        border: '#2a2a2a'\n      };\n\n      \/\/ === EASTER EGGS ===\n      \/\/ === EASTER EGGS \u2014 Randomized Pool ===\n      \/\/ Full pool of ~25 eggs. Each visit picks ~10 and randomizes positions.\n      const allEggs = [\n        { id: 'classified', text: 'CLASSIFIED', size: 20, hasRedaction: true, redactedPart: 'CLASSIFIED' },\n        { id: 'who-voted', text: 'WHO VOTED NO?', size: 14 },\n        { id: 'flight1', text: 'N908JE', size: 12, hasRedaction: true, redactedPart: 'N908JE', suffix: ' \u2014 FLIGHT LOG' },\n        { id: 'flight2', text: 'N212JE', size: 12, hasRedaction: true, redactedPart: 'N212JE', suffix: ' \u2014 LOLITA EXPRESS' },\n        { id: 'redacted-name', text: '\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 WAS THERE', size: 14, hasRedaction: true, redactedPart: '\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588', suffix: ' WAS THERE' },\n        { id: 'files-exist', text: 'THE FILES EXIST', size: 11 },\n        { id: 'deadline', text: 'DEADLINE: DEC 19 2025', size: 14 },\n        { id: 'victim-count', text: '36+ VICTIMS', size: 13 },\n        { id: 'see-something', text: 'SEE SOMETHING? SAY SOMETHING.', size: 10 },\n        { id: 'pbi', text: 'PALM BEACH INVESTIGATION', size: 9, hasRedaction: true, redactedPart: 'PALM BEACH', suffix: ' INVESTIGATION' },\n        { id: 'npa', text: 'NON-PROSECUTION AGREEMENT', size: 10, hasRedaction: true, redactedPart: 'NON-PROSECUTION', suffix: ' AGREEMENT' },\n        { id: '427-1', text: '427 \u2014 1', size: 18 },\n        { id: 'who-knew', text: 'WHO KNEW?', size: 16 },\n        { id: 'island', text: 'LITTLE ST. JAMES', size: 11, hasRedaction: true, redactedPart: 'LITTLE ST. JAMES' },\n        { id: 'law', text: 'PUBLIC LAW 119-38', size: 12 },\n        { id: 'silence', text: '425 WENT SILENT', size: 13 },\n        { id: 'acosta', text: '\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 DEAL', size: 12, hasRedaction: true, redactedPart: '\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588', suffix: ' DEAL' },\n        { id: 'courage', text: 'COURAGE IS CONTAGIOUS', size: 11 },\n        { id: 'doj', text: 'DOJ: NON-COMPLIANT', size: 14 },\n        { id: 'badge', text: 'THE BADGE OF COURAGE.', size: 12 },\n        { id: 'obstruction', text: 'THIS IS OBSTRUCTION', size: 11 },\n        { id: 'wear-it', text: 'WEAR YOURS.', size: 13 },\n        { id: 'names', text: '\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588', size: 10, hasRedaction: true, redactedPart: '\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588' },\n        { id: 'hrs', text: 'H.R. 4405', size: 16 },\n        { id: 'follow', text: 'FOLLOW THE MONEY', size: 11 },\n      ];\n\n      \/\/ Shuffle and pick 10, assign random positions avoiding center (where wordmark sits)\n      const shuffled = [...allEggs].sort(() => Math.random() - 0.5);\n      const picked = shuffled.slice(0, 10);\n\n      \/\/ Generate positions that avoid the center zone (35-65% x, 35-65% y)\n      const generatePosition = () => {\n        let x, y, attempts = 0;\n        do {\n          x = 3 + Math.random() * 92;\n          y = 5 + Math.random() * 88;\n          attempts++;\n        } while (x > 30 && x < 70 && y > 30 && y < 70 && attempts < 20);\n        return { x, y };\n      };\n\n      const easterEggs = picked.map(egg => {\n        const pos = generatePosition();\n        return { ...egg, x: pos.x, y: pos.y };\n      });\n\n      const getRedactionBlocks = (length, tick) => {\n        const blocks = [];\n        for (let i = 0; i < length; i++) {\n          const phase = i * 0.7;\n          const flicker = Math.sin(tick * 0.3 + phase) * 0.3 + 0.7;\n          const spike = Math.random() > 0.95 ? 0.3 : 0;\n          blocks.push(Math.min(1, flicker + spike));\n        }\n        return blocks;\n      };\n\n      \/\/ === BADGE TEXT ===\n      const badgeText = 'THE BADGE OF COURAGE.';\n      const badgeBaseDelay = 1.5; \/\/ seconds after page load\n      const badgeCharStagger = 0.07;\n\n      \/\/ === AUDIO ===\n      const initAudio = useCallback(() => {\n        if (!audioContext) {\n          const ctx = new (window.AudioContext || window.webkitAudioContext)();\n          setAudioContext(ctx);\n          return ctx;\n        }\n        return audioContext;\n      }, [audioContext]);\n\n      const startStaticNoise = useCallback((ctx) => {\n        if (!ctx || staticNoiseRef.current) return;\n        const bufferSize = 2 * ctx.sampleRate;\n        const noiseBuffer = ctx.createBuffer(1, bufferSize, ctx.sampleRate);\n        const output = noiseBuffer.getChannelData(0);\n        for (let i = 0; i < bufferSize; i++) {\n          output[i] = Math.random() * 2 - 1;\n        }\n        const whiteNoise = ctx.createBufferSource();\n        whiteNoise.buffer = noiseBuffer;\n        whiteNoise.loop = true;\n        const bandpass = ctx.createBiquadFilter();\n        bandpass.type = 'bandpass';\n        bandpass.frequency.value = 800;\n        bandpass.Q.value = 0.5;\n        const gainNode = ctx.createGain();\n        gainNode.gain.value = 0.02;\n        whiteNoise.connect(bandpass);\n        bandpass.connect(gainNode);\n        gainNode.connect(ctx.destination);\n        whiteNoise.start();\n        staticNoiseRef.current = whiteNoise;\n        staticGainRef.current = gainNode;\n      }, []);\n\n      const modulateStatic = useCallback((movement) => {\n        if (staticGainRef.current) {\n          const baseGain = 0.015;\n          const movementBoost = Math.min(movement * 0.0005, 0.025);\n          staticGainRef.current.gain.value = baseGain + movementBoost;\n        }\n      }, []);\n\n      \/\/ === EFFECTS ===\n      useEffect(() => {\n        const checkMobile = () => {\n          setIsMobile('ontouchstart' in window || navigator.maxTouchPoints > 0 || window.innerWidth < 768);\n        };\n        checkMobile();\n        window.addEventListener('resize', checkMobile);\n        return () => window.removeEventListener('resize', checkMobile);\n      }, []);\n\n      \/\/ Glitch tick\n      useEffect(() => {\n        const interval = setInterval(() => {\n          setGlitchTick(t => t + 1);\n        }, 100);\n        return () => clearInterval(interval);\n      }, []);\n\n      \/\/ Trigger badge declassify after delay\n      useEffect(() => {\n        const timer = setTimeout(() => setBadgeRevealed(true), 800);\n        return () => clearTimeout(timer);\n      }, []);\n\n      \/\/ Hero rotation: badge holds ~8s after load, then cycles 3 phrases every 5s\n      useEffect(() => {\n        const phaseOrder = ['badge', 'vote', 'notDistracted'];\n        let phaseIndex = 0;\n        let interval;\n        const firstSwitch = setTimeout(() => {\n          phaseIndex = 1;\n          setHeroPhase('vote');\n          interval = setInterval(() => {\n            phaseIndex = (phaseIndex + 1) % phaseOrder.length;\n            setHeroPhase(phaseOrder[phaseIndex]);\n          }, 5000);\n        }, 8000);\n        return () => { clearTimeout(firstSwitch); if (interval) clearInterval(interval); };\n      }, []);\n\n      \/\/ Latch voteRevealed \/ notDistractedRevealed on first phase \u2014 animation plays once, holds forever\n      useEffect(() => {\n        if (heroPhase === 'vote' && !voteRevealed) {\n          setVoteRevealed(true);\n        }\n        if (heroPhase === 'notDistracted' && !notDistractedRevealed) {\n          setNotDistractedRevealed(true);\n        }\n      }, [heroPhase]);\n\n      \/\/ Lightning strike \u2014 fires once on first cursor\/touch movement\n      const fireLightning = useCallback(() => {\n        if (lightningFired) return;\n        setLightningFired(true);\n\n        const flashEl = document.createElement('div');\n        flashEl.style.cssText = 'position:fixed;inset:0;background:white;opacity:0;z-index:9999999;pointer-events:none;';\n        document.body.appendChild(flashEl);\n\n        \/\/ Organic multi-crack sequence \u2014 distant\u2192close\u2192fading\n        const strikes = [\n          { delay:0,     opacity:0.12, dur:60  },\n          { delay:80,    opacity:0,    dur:40  },\n          { delay:500,   opacity:0.45, dur:25  },\n          { delay:535,   opacity:0.08, dur:30  },\n          { delay:580,   opacity:0.3,  dur:20  },\n          { delay:610,   opacity:0,    dur:35  },\n          { delay:960,   opacity:0.85, dur:15  },\n          { delay:985,   opacity:0.25, dur:20  },\n          { delay:1020,  opacity:0.7,  dur:20  },\n          { delay:1055,  opacity:0.1,  dur:25  },\n          { delay:1200,  opacity:0.35, dur:40  },\n          { delay:1260,  opacity:0.05, dur:50  },\n          { delay:1800,  opacity:0.15, dur:50  },\n          { delay:1870,  opacity:0,    dur:80  },\n        ];\n\n        strikes.forEach(s => {\n          setTimeout(() => {\n            flashEl.style.transition = `opacity ${s.dur}ms linear`;\n            flashEl.style.opacity = String(s.opacity);\n          }, s.delay);\n        });\n\n        setTimeout(() => {\n          if (flashEl.parentNode) flashEl.remove();\n        }, 2500);\n      }, [lightningFired]);\n\n      \/\/ Bind lightning to first cursor\/touch\n      useEffect(() => {\n        const handler = () => fireLightning();\n        window.addEventListener('mousemove', handler, { once: true });\n        window.addEventListener('touchstart', handler, { once: true });\n        return () => {\n          window.removeEventListener('mousemove', handler);\n          window.removeEventListener('touchstart', handler);\n        };\n      }, [fireLightning]);\n\n      \/\/ Audio init\n      useEffect(() => {\n        const ctx = initAudio();\n        if (ctx && ctx.state === 'suspended') {\n          const startAudio = () => {\n            ctx.resume().then(() => startStaticNoise(ctx));\n            window.removeEventListener('click', startAudio);\n            window.removeEventListener('touchstart', startAudio);\n          };\n          window.addEventListener('click', startAudio);\n          window.addEventListener('touchstart', startAudio);\n        } else if (ctx) {\n          startStaticNoise(ctx);\n        }\n      }, [initAudio, startStaticNoise]);\n\n      const glitchJitterX = Math.sin(glitchTick * 0.5) * 3;\n      const glitchRand1 = Math.sin(glitchTick * 0.3) * 0.5 + 0.5;\n      const glitchRand2 = Math.cos(glitchTick * 0.4) * 0.5 + 0.5;\n\n      \/\/ Smooth spotlight follow\n      useEffect(() => {\n        let lastX = targetPos.x;\n        let lastY = targetPos.y;\n        const smoothFollow = () => {\n          setSpotlightPos(current => {\n            const dx = targetPos.x - current.x;\n            const dy = targetPos.y - current.y;\n            const easing = inputModeRef.current === 'gyro' ? 0.06 : 0.3;\n            const movement = Math.sqrt(Math.pow(targetPos.x - lastX, 2) + Math.pow(targetPos.y - lastY, 2));\n            modulateStatic(movement);\n            lastX = targetPos.x;\n            lastY = targetPos.y;\n            easterEggs.forEach(egg => {\n              const distance = Math.sqrt(Math.pow(current.x - egg.x, 2) + Math.pow(current.y - egg.y, 2));\n              if (distance < 15) {\n                setRevealedEggs(prev => ({ ...prev, [egg.id]: true }));\n                setTimeout(() => {\n                  setRevealedEggs(prev => ({ ...prev, [egg.id]: false }));\n                }, 2000);\n              }\n            });\n            return {\n              x: current.x + dx * easing,\n              y: current.y + dy * easing\n            };\n          });\n          animationRef.current = requestAnimationFrame(smoothFollow);\n        };\n        animationRef.current = requestAnimationFrame(smoothFollow);\n        return () => {\n          if (animationRef.current) cancelAnimationFrame(animationRef.current);\n        };\n      }, [targetPos, modulateStatic]);\n\n      \/\/ Mouse tracking\n      useEffect(() => {\n        const handleMouseMove = (e) => {\n          inputModeRef.current = 'mouse';\n          const x = (e.clientX \/ window.innerWidth) * 100;\n          const y = (e.clientY \/ window.innerHeight) * 100;\n          setTargetPos({ x, y });\n        };\n        window.addEventListener('mousemove', handleMouseMove);\n        return () => window.removeEventListener('mousemove', handleMouseMove);\n      }, []);\n\n      \/\/ Touch tracking\n      const handleTouchStart = useCallback((e) => {\n        inputModeRef.current = 'touch';\n        gyroEnabledRef.current = false;\n        const touch = e.touches[0];\n        setTargetPos({\n          x: (touch.clientX \/ window.innerWidth) * 100,\n          y: (touch.clientY \/ window.innerHeight) * 100\n        });\n      }, []);\n\n      const handleTouchMove = useCallback((e) => {\n        e.preventDefault(); \/\/ prevent scroll while exploring\n        inputModeRef.current = 'touch';\n        const touch = e.touches[0];\n        setTargetPos({\n          x: (touch.clientX \/ window.innerWidth) * 100,\n          y: (touch.clientY \/ window.innerHeight) * 100\n        });\n      }, []);\n\n      const handleTouchEnd = useCallback(() => {\n        \/\/ Stay in touch mode \u2014 don't switch back to gyro\n        \/\/ Gyro will only activate via explicit permission grant\n      }, []);\n\n      \/\/ Gyroscope \u2014 with iOS permission handling\n      useEffect(() => {\n        if (!isMobile) return;\n        const handleOrientation = (e) => {\n          if (!gyroEnabledRef.current || inputModeRef.current !== 'gyro') return;\n          const gamma = e.gamma || 0;\n          const beta = e.beta || 0;\n          \/\/ Only accept gyro if we get real data (not all zeros)\n          if (gamma === 0 && beta === 0) return;\n          const x = Math.min(Math.max(50 + gamma * 1.5, 0), 100);\n          const y = Math.min(Math.max(50 + (beta - 45) * 1.2, 0), 100);\n          setTargetPos({ x, y });\n        };\n\n        \/\/ Non-iOS: enable directly\n        if (typeof DeviceOrientationEvent !== 'undefined' && typeof DeviceOrientationEvent.requestPermission !== 'function') {\n          gyroEnabledRef.current = true;\n          inputModeRef.current = 'gyro';\n          window.addEventListener('deviceorientation', handleOrientation);\n        }\n        \/\/ iOS 13+: request permission on first user gesture\n        else if (typeof DeviceOrientationEvent !== 'undefined' && typeof DeviceOrientationEvent.requestPermission === 'function') {\n          const requestGyro = () => {\n            DeviceOrientationEvent.requestPermission().then(state => {\n              if (state === 'granted') {\n                gyroEnabledRef.current = true;\n                inputModeRef.current = 'gyro';\n                window.addEventListener('deviceorientation', handleOrientation);\n              }\n            }).catch(() => {});\n            \/\/ Only try once\n            window.removeEventListener('touchstart', requestGyro);\n          };\n          window.addEventListener('touchstart', requestGyro, { once: true });\n        }\n\n        return () => window.removeEventListener('deviceorientation', handleOrientation);\n      }, [isMobile]);\n\n      \/\/ === SPOTLIGHT STYLE ===\n      const spotSize = isMobile ? 250 : 300;\n      const softness = 80;\n\n      \/\/ Explicit non-passive touch binding (iOS Safari requires this for preventDefault)\n      useEffect(() => {\n        const el = containerRef.current;\n        if (!el || !isMobile) return;\n        const touchMoveHandler = (e) => {\n          e.preventDefault();\n          inputModeRef.current = 'touch';\n          const touch = e.touches[0];\n          setTargetPos({\n            x: (touch.clientX \/ window.innerWidth) * 100,\n            y: (touch.clientY \/ window.innerHeight) * 100\n          });\n        };\n        el.addEventListener('touchmove', touchMoveHandler, { passive: false });\n        return () => el.removeEventListener('touchmove', touchMoveHandler);\n      }, [isMobile]);\n\n      \/\/ === RENDER ===\n      return (\n        <div\n          ref={containerRef}\n          onTouchStart={handleTouchStart}\n          onTouchMove={handleTouchMove}\n          onTouchEnd={handleTouchEnd}\n          style={{\n            position: 'relative', width: '100vw', height: '100vh',\n            background: colors.bg, fontFamily: \"'Courier Prime', monospace\",\n            color: colors.textPrimary, cursor: 'none', overflow: 'hidden',\n            touchAction: 'none', WebkitTouchCallout: 'none', WebkitUserSelect: 'none'\n          }}\n        >\n          {\/* Film Grain *\/}\n          <div style={{\n            position: 'fixed', top: 0, left: 0, width: '100vw', height: '100vh',\n            pointerEvents: 'none', zIndex: 9999, opacity: 0.08,\n            mixBlendMode: 'overlay',\n            background: `url(\"data:image\/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http:\/\/www.w3.org\/2000\/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'\/%3E%3C\/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'\/%3E%3C\/svg%3E\")`,\n            animation: 'grain 0.5s steps(10) infinite'\n          }} \/>\n\n          {\/* === CENTER: Wordmark + Badge === *\/}\n          <div style={{\n            position: 'fixed', top: '50%', left: '50%', transform: 'translate(-50%, -50%)',\n            zIndex: 1000, pointerEvents: 'none', textAlign: 'center'\n          }}>\n            {\/* UN|REDACTED wordmark *\/}\n            <div style={{\n              fontSize: isMobile ? '24px' : '48px', fontWeight: 700, letterSpacing: '2px',\n              position: 'relative', whiteSpace: 'nowrap'\n            }}>\n              {\/* Chromatic aberration layers *\/}\n              <div style={{\n                position: 'absolute', top: 0, left: 0, width: '100%', color: colors.red,\n                opacity: 0.15, transform: 'translateX(-2px)',\n                clipPath: 'inset(10% 0 60% 0)'\n              }}>\n                <span>UN<\/span><span style={{ color: colors.red, display: 'inline-block', width: '0.18em', textAlign: 'center', overflow: 'visible', letterSpacing: 0, marginLeft: '-0.24em', marginRight: '0.22em', position: 'relative', top: '-2px' }}>|<\/span><span>REDACTED<\/span>\n              <\/div>\n              <div style={{\n                position: 'absolute', top: 0, left: 0, width: '100%', color: '#00ffff',\n                opacity: 0.12, transform: 'translateX(2px)',\n                clipPath: 'inset(40% 0 20% 0)'\n              }}>\n                <span>UN<\/span><span style={{ color: '#00ffff', display: 'inline-block', width: '0.18em', textAlign: 'center', overflow: 'visible', letterSpacing: 0, marginLeft: '-0.24em', marginRight: '0.22em', position: 'relative', top: '-2px' }}>|<\/span><span>REDACTED<\/span>\n              <\/div>\n              {\/* Main wordmark *\/}\n              <div style={{\n                position: 'relative',\n                textShadow: `0 0 40px ${colors.gold}40, 0 0 80px ${colors.gold}20`\n              }}>\n                <span style={{ color: colors.textPrimary }}>UN<\/span>\n                <span style={{ color: colors.gold, display: 'inline-block', width: '0.18em', textAlign: 'center', overflow: 'visible', letterSpacing: 0, marginLeft: '-0.24em', marginRight: '0.22em', position: 'relative', top: '-2px' }}>|<\/span>\n                <span style={{ color: colors.textPrimary }}>REDACTED<\/span>\n              <\/div>\n            <\/div>\n\n            {\/* THE BADGE OF COURAGE \/ Wear your VOTE \u2014 Alternating *\/}\n            <div style={{\n              marginTop: isMobile ? '16px' : '24px',\n              minHeight: isMobile ? '20px' : '28px',\n              position: 'relative'\n            }}>\n              {\/* Badge line \u2014 declassify then crossfade *\/}\n              <div style={{\n                fontSize: isMobile ? '10px' : '16px',\n                fontWeight: 700,\n                letterSpacing: isMobile ? '3px' : '6px',\n                display: 'flex',\n                justifyContent: 'center',\n                flexWrap: 'nowrap',\n                opacity: heroPhase === 'badge' && badgeRevealed ? 1 : 0,\n                transition: 'opacity 0.5s ease',\n                position: heroPhase === 'badge' ? 'relative' : 'absolute',\n                top: 0, left: 0, right: 0\n              }}>\n                {badgeText.split('').map((char, i) => {\n                  const isSpace = char === ' ';\n                  const delay = badgeBaseDelay + (i * badgeCharStagger);\n                  return (\n                    <span key={i} style={{\n                      display: 'inline-block',\n                      width: isSpace ? '0.35em' : undefined,\n                      position: 'relative',\n                      color: 'transparent',\n                      animation: badgeRevealed && !isSpace ? `declassifyChar 0.6s ease ${delay}s forwards` : 'none',\n                      textShadow: 'none'\n                    }}>\n                      {!isSpace && (\n                        <span style={{\n                          position: 'absolute',\n                          inset: 0,\n                          background: colors.gold,\n                          opacity: 0,\n                          animation: badgeRevealed ? `declassifyBlock 0.6s ease ${delay}s forwards` : 'none'\n                        }} \/>\n                      )}\n                      {char}\n                    <\/span>\n                  );\n                })}\n              <\/div>\n\n              {\/* VOTE line \u2014 reverse declassify (right to left) *\/}\n              <div style={{\n                opacity: heroPhase === 'vote' ? 1 : 0,\n                transition: 'opacity 0.5s ease',\n                position: heroPhase === 'vote' ? 'relative' : 'absolute',\n                top: 0, left: 0, right: 0,\n                textAlign: 'center',\n                fontSize: isMobile ? '10px' : '16px',\n                fontWeight: 700,\n                letterSpacing: isMobile ? '3px' : '6px',\n                display: 'flex',\n                justifyContent: 'center',\n                flexWrap: 'nowrap'\n              }}>\n                {(() => {\n                  const voteChars = [\n                    { char: 'W', color: colors.gold }, { char: 'e', color: colors.gold },\n                    { char: 'a', color: colors.gold }, { char: 'r', color: colors.gold },\n                    { char: ' ', color: null },\n                    { char: 'y', color: colors.gold }, { char: 'o', color: colors.gold },\n                    { char: 'u', color: colors.gold }, { char: 'r', color: colors.gold },\n                    { char: ' ', color: null },\n                    { char: 'V', color: '#FFFFFF' }, { char: 'O', color: '#FFFFFF' },\n                    { char: 'T', color: '#FFFFFF' }, { char: 'E', color: '#FFFFFF' },\n                    { char: '!', color: colors.gold }\n                  ];\n                  const total = voteChars.length;\n                  return voteChars.map((item, i) => {\n                    const isSpace = item.char === ' ';\n                    const reverseIndex = total - 1 - i;\n                    const delay = reverseIndex * 0.07;\n                    return (\n                      <span key={i} style={{\n                        display: 'inline-block',\n                        width: isSpace ? '0.35em' : undefined,\n                        position: 'relative',\n                        color: 'transparent',\n                        animation: voteRevealed && !isSpace ? `${item.color === '#FFFFFF' ? 'declassifyCharWhite' : 'declassifyChar'} 0.6s ease ${delay}s forwards` : 'none',\n                        textShadow: 'none'\n                      }}>\n                        {!isSpace && (\n                          <span style={{\n                            position: 'absolute',\n                            inset: 0,\n                            background: item.color,\n                            opacity: 0,\n                            animation: voteRevealed ? `declassifyBlock 0.6s ease ${delay}s forwards` : 'none'\n                          }} \/>\n                        )}\n                        {item.char}\n                      <\/span>\n                    );\n                  });\n                })()}\n              <\/div>\n\n              {\/* WE ARE NOT DISTRACTED. \u2014 left-to-right declassify *\/}\n              <div style={{\n                opacity: heroPhase === 'notDistracted' ? 1 : 0,\n                transition: 'opacity 0.5s ease',\n                position: heroPhase === 'notDistracted' ? 'relative' : 'absolute',\n                top: 0, left: 0, right: 0,\n                textAlign: 'center',\n                fontSize: isMobile ? '10px' : '16px',\n                fontWeight: 700,\n                letterSpacing: isMobile ? '3px' : '6px',\n                display: 'flex',\n                justifyContent: 'center',\n                flexWrap: 'nowrap',\n                alignItems: 'baseline'\n              }}>\n                {(() => {\n                  const notChars = [\n                    { char: 'W', color: colors.gold, anim: 'declassifyChar', style: {} },\n                    { char: 'E', color: colors.gold, anim: 'declassifyChar', style: {} },\n                    { char: ' ', color: null, anim: null, style: {} },\n                    { char: 'A', color: colors.gold, anim: 'declassifyChar', style: {} },\n                    { char: 'R', color: colors.gold, anim: 'declassifyChar', style: {} },\n                    { char: 'E', color: colors.gold, anim: 'declassifyChar', style: {} },\n                    { char: ' ', color: null, anim: null, style: {} },\n                    { char: 'N', color: '#BF0A30', anim: 'declassifyCharRed', style: { fontSize: '1.15em', letterSpacing: '3px', fontWeight: 900 } },\n                    { char: 'O', color: '#BF0A30', anim: 'declassifyCharRed', style: { fontSize: '1.15em', letterSpacing: '3px', fontWeight: 900 } },\n                    { char: 'T', color: '#BF0A30', anim: 'declassifyCharRed', style: { fontSize: '1.15em', letterSpacing: '3px', fontWeight: 900 } },\n                    { char: ' ', color: null, anim: null, style: {} },\n                    { char: 'D', color: colors.gold, anim: 'declassifyChar', style: {} },\n                    { char: 'I', color: colors.gold, anim: 'declassifyChar', style: {} },\n                    { char: 'S', color: colors.gold, anim: 'declassifyChar', style: {} },\n                    { char: 'T', color: colors.gold, anim: 'declassifyChar', style: {} },\n                    { char: 'R', color: colors.gold, anim: 'declassifyChar', style: {} },\n                    { char: 'A', color: colors.gold, anim: 'declassifyChar', style: {} },\n                    { char: 'C', color: colors.gold, anim: 'declassifyChar', style: {} },\n                    { char: 'T', color: colors.gold, anim: 'declassifyChar', style: {} },\n                    { char: 'E', color: colors.gold, anim: 'declassifyChar', style: {} },\n                    { char: 'D', color: colors.gold, anim: 'declassifyChar', style: {} },\n                    { char: '.', color: colors.gold, anim: 'declassifyChar', style: {} }\n                  ];\n                  return notChars.map((item, i) => {\n                    const isSpace = item.char === ' ';\n                    const delay = i * 0.07;\n                    return (\n                      <span key={i} style={{\n                        display: 'inline-block',\n                        width: isSpace ? '0.35em' : undefined,\n                        position: 'relative',\n                        color: 'transparent',\n                        animation: notDistractedRevealed && !isSpace ? `${item.anim} 0.6s ease ${delay}s forwards` : 'none',\n                        textShadow: 'none',\n                        ...item.style\n                      }}>\n                        {!isSpace && (\n                          <span style={{\n                            position: 'absolute',\n                            inset: 0,\n                            background: item.color,\n                            opacity: 0,\n                            animation: notDistractedRevealed ? `declassifyBlock 0.6s ease ${delay}s forwards` : 'none'\n                          }} \/>\n                        )}\n                        {item.char}\n                      <\/span>\n                    );\n                  });\n                })()}\n              <\/div>\n            <\/div>\n\n            {\/* Floating chevron \u2014 \"bouncing in the air\" *\/}\n            <div style={{\n              color: colors.gold,\n              fontSize: isMobile ? '12px' : '16px',\n              marginTop: isMobile ? '20px' : '28px',\n              animation: 'floatChevron 2s ease-in-out infinite',\n              opacity: 0.6\n            }}>&#x2304;<\/div>\n\n            {\/* Explore hint *\/}\n            <p style={{\n              marginTop: '32px', fontSize: isMobile ? '8px' : '11px', color: colors.textMuted,\n              letterSpacing: '3px', textTransform: 'uppercase',\n              animation: 'pulse 2s ease-in-out infinite'\n            }}>\n              {isMobile ? 'Tap and drag to explore' : 'Move cursor to explore'}\n            <\/p>\n          <\/div>\n\n          {\/* Glitch Layers *\/}\n          <div style={{\n            position: 'fixed', top: 0, left: 0, width: '100vw', height: '100vh',\n            background: `repeating-linear-gradient(0deg, transparent, transparent 2px, rgba(0,0,0,0.4) 2px, rgba(0,0,0,0.4) 4px)`,\n            pointerEvents: 'none', zIndex: 400, opacity: 0.8\n          }} \/>\n          <div style={{\n            position: 'fixed', top: `${-50 - glitchRand1 * 10}%`, left: `${-50 - glitchRand2 * 10}%`,\n            width: '200vw', height: '200vh', opacity: 0.15, mixBlendMode: 'overlay',\n            pointerEvents: 'none', zIndex: 401,\n            background: `url(\"data:image\/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http:\/\/www.w3.org\/2000\/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4' stitchTiles='stitch'\/%3E%3C\/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'\/%3E%3C\/svg%3E\")`\n          }} \/>\n          <div style={{\n            position: 'fixed', top: 0, left: 0, width: '100vw', height: '100vh',\n            background: `linear-gradient(90deg, rgba(255,68,68,0.12) 0%, transparent 20%, transparent 80%, rgba(0,255,255,0.1) 100%)`,\n            pointerEvents: 'none', zIndex: 402, transform: `translateX(${glitchJitterX}px)`\n          }} \/>\n          <div style={{\n            position: 'fixed', top: `${15 + glitchRand1 * 35}%`, left: 0, width: '100vw', height: '12px',\n            background: colors.bg, opacity: 0.7, transform: `translateX(${glitchJitterX * 15}px)`,\n            pointerEvents: 'none', zIndex: 403\n          }} \/>\n          <div style={{\n            position: 'fixed', top: `${55 + glitchRand2 * 25}%`, left: 0, width: '100vw', height: '8px',\n            background: colors.bg, opacity: 0.5, transform: `translateX(${-glitchJitterX * 12}px)`,\n            pointerEvents: 'none', zIndex: 403\n          }} \/>\n          <div style={{\n            position: 'fixed', top: `${40 + glitchRand1 * 20}%`, left: 0, width: '100vw', height: '2px',\n            background: `linear-gradient(90deg, transparent 5%, ${colors.gold}40 50%, transparent 95%)`,\n            opacity: 0.6, pointerEvents: 'none', zIndex: 404, boxShadow: `0 0 10px ${colors.gold}30`\n          }} \/>\n\n          {\/* Darkness Overlay (spotlight cutout) *\/}\n          <div style={{\n            position: 'fixed', top: 0, left: 0, width: '100vw', height: '100vh',\n            zIndex: 500, pointerEvents: 'none',\n            background: `radial-gradient(circle ${spotSize}px at ${spotlightPos.x}vw ${spotlightPos.y}vh, transparent 0%, transparent ${spotSize - softness}px, ${colors.bg} ${spotSize}px)`\n          }} \/>\n\n          {\/* Easter Eggs *\/}\n          {easterEggs.map(egg => {\n            const isEggRevealed = revealedEggs[egg.id];\n            const blockCount = egg.hasRedaction ? (egg.redactedPart?.length || 8) : 0;\n            const blockOpacities = egg.hasRedaction ? getRedactionBlocks(blockCount, glitchTick) : [];\n            return (\n              <div key={egg.id} style={{\n                position: 'fixed', left: `${egg.x}vw`, top: `${egg.y}vh`,\n                fontFamily: \"'Courier Prime', monospace\", fontSize: `${egg.size}px`,\n                color: colors.textPrimary, opacity: isEggRevealed ? 0.7 : 0.04,\n                transition: 'opacity 0.5s ease', pointerEvents: 'none', zIndex: 450,\n                textShadow: isEggRevealed ? `0 0 12px ${colors.gold}, 0 0 24px ${colors.gold}40` : 'none',\n                letterSpacing: '1px', whiteSpace: 'nowrap', display: 'flex', alignItems: 'center'\n              }}>\n                {egg.hasRedaction ? (\n                  <>\n                    <span style={{ display: 'inline-flex', marginRight: '0px' }}>\n                      {blockOpacities.map((opacity, i) => (\n                        <span key={i} style={{\n                          display: 'inline-block', width: `${egg.size * 0.6}px`, height: `${egg.size * 0.85}px`,\n                          background: isEggRevealed ? `rgba(136, 136, 136, ${opacity})` : `rgba(85, 85, 85, ${opacity * 0.8})`,\n                          marginRight: '1px', transition: 'background 0.1s ease'\n                        }} \/>\n                      ))}\n                    <\/span>\n                    {egg.suffix && <span style={{ marginLeft: '4px' }}>{egg.suffix}<\/span>}\n                  <\/>\n                ) : egg.text}\n              <\/div>\n            );\n          })}\n\n          {\/* Custom Cursor *\/}\n          {!isMobile && (\n            <div style={{\n              position: 'fixed', left: `${spotlightPos.x}vw`, top: `${spotlightPos.y}vh`,\n              transform: 'translate(-50%, -50%)', width: '24px', height: '24px',\n              borderRadius: '50%', border: `2px solid ${colors.gold}`,\n              pointerEvents: 'none', zIndex: 1002, opacity: 0.9,\n              boxShadow: `0 0 20px ${colors.gold}60, 0 0 40px ${colors.gold}30`\n            }} \/>\n          )}\n\n          {\/* Animations *\/}\n          <style>{`\n            @keyframes pulse { 0%, 100% { opacity: 0.4; } 50% { opacity: 0.8; } }\n            @keyframes floatChevron {\n              0%, 100% { transform: translateY(0); opacity: 0.6; }\n              50% { transform: translateY(8px); opacity: 0.9; }\n            }\n            @keyframes grain {\n              0%, 100% { transform: translate(0, 0); }\n              10% { transform: translate(-5%, -10%); }\n              20% { transform: translate(-15%, 5%); }\n              30% { transform: translate(7%, -25%); }\n              40% { transform: translate(-5%, 25%); }\n              50% { transform: translate(-15%, 10%); }\n              60% { transform: translate(15%, 0%); }\n              70% { transform: translate(0%, 15%); }\n              80% { transform: translate(3%, 35%); }\n              90% { transform: translate(-10%, 10%); }\n            }\n            @keyframes declassifyBlock {\n              0% { opacity: 0; }\n              15% { opacity: 1; }\n              50% { opacity: 1; }\n              85% { opacity: 0.3; }\n              100% { opacity: 0; }\n            }\n            @keyframes declassifyChar {\n              0% { color: transparent; text-shadow: none; }\n              50% { color: transparent; text-shadow: none; }\n              70% { color: #FFD700; text-shadow: 0 0 20px rgba(255, 215, 0, 0.6); }\n              100% { color: #FFD700; text-shadow: 0 0 30px rgba(255, 215, 0, 0.15); }\n            }\n            @keyframes declassifyCharWhite {\n              0% { color: transparent; text-shadow: none; }\n              50% { color: transparent; text-shadow: none; }\n              70% { color: #FFFFFF; text-shadow: 0 0 20px rgba(255, 255, 255, 0.6); }\n              100% { color: #FFFFFF; text-shadow: 0 0 30px rgba(255, 255, 255, 0.15); }\n            }\n            @keyframes declassifyCharRed {\n              0% { color: transparent; text-shadow: none; }\n              50% { color: transparent; text-shadow: none; }\n              70% { color: #BF0A30; text-shadow: none; }\n              100% { color: #BF0A30; text-shadow: none; }\n            }\n          `}<\/style>\n        <\/div>\n      );\n    };\n\n    const root = ReactDOM.createRoot(document.getElementById('root'));\n    root.render(<UnredactedLanding \/>);\n  <\/script>\n\n  <!-- ============================================================\n       BELOW-FOLD CONTENT \u2014 Carousel + Product Images + Footer\n       Scrollable below the spotlight dark mode viewport\n       ============================================================ -->\n  <div id=\"content\">\n    <div class=\"unr-gallery\">\n\n<!-- UN|REDACTED \u2014 KEN BURNS + REDACTION BARS CAROUSEL v4.4a\n     8 scenes, z-index architecture, 1000ms swap, \u00a72 RWB glow, \u00a78 red -->\n\n<style>\n  @import url('https:\/\/fonts.googleapis.com\/css2?family=Courier+Prime:wght@400;700&family=Special+Elite&family=Pinyon+Script&family=IM+Fell+English+SC&display=swap');\n\n  .redact-wrap {\n    position: relative;\n    width: 100%;\n    max-width: 720px;\n    margin: 0 auto;\n    aspect-ratio: 1 \/ 1;\n    overflow: hidden;\n    border-radius: 4px;\n    background: #0a0a0a;\n    box-shadow: 0 8px 40px rgba(0,0,0,0.6);\n  }\n\n  .redact-wrap::before {\n    content: '';\n    position: absolute;\n    inset: 0;\n    border: 1px solid rgba(255, 215, 0, 0);\n    border-radius: 4px;\n    z-index: 20;\n    pointer-events: none;\n    transition: border-color 1s ease;\n  }\n  .redact-wrap.transitioning::before {\n    border-color: rgba(255, 215, 0, 0.35);\n  }\n\n  .redact-track { position: relative; width: 100%; height: 100%; }\n\n  .redact-slide {\n    position: absolute;\n    inset: 0;\n    opacity: 0;\n    z-index: 1;\n  }\n  .redact-slide.active { opacity: 1; z-index: 3; }\n  .redact-slide.beneath { opacity: 1; z-index: 2; }\n\n  .redact-img-wrap {\n    width: 100%;\n    height: 100%;\n    overflow: hidden;\n    background: #0a0a0a;\n  }\n\n  .redact-img-wrap img {\n    width: 100%;\n    height: 100%;\n    object-fit: cover;\n    display: block;\n    will-change: transform;\n    transform: scale(1.08);\n  }\n\n  .redact-slide.active .kb-drift-1 img { animation: kbDrift1 6s ease-in-out infinite alternate; }\n  .redact-slide.active .kb-drift-2 img { animation: kbDrift2 6s ease-in-out infinite alternate; }\n  .redact-slide.active .kb-drift-3 img { animation: kbDrift3 6s ease-in-out infinite alternate; }\n  .redact-slide.active .kb-drift-4 img { animation: kbDrift4 6s ease-in-out infinite alternate; }\n  .redact-slide.active .kb-drift-5 img { animation: kbDrift5 6s ease-in-out infinite alternate; }\n  .redact-slide.active .kb-drift-6 img { animation: kbDrift6 6s ease-in-out infinite alternate; }\n  .redact-slide.active .kb-drift-7 img { animation: kbDrift7 6s ease-in-out infinite alternate; }\n  .redact-slide.active .kb-drift-8 img { animation: kbDrift8 6s ease-in-out infinite alternate; }\n  .redact-slide.beneath .redact-img-wrap img { animation: none !important; }\n\n  @keyframes kbDrift1 { 0% { transform: scale(1.08) translate(0,0); } 100% { transform: scale(1.14) translate(0.8%,-0.4%); } }\n  @keyframes kbDrift2 { 0% { transform: scale(1.08) translate(0,0); } 100% { transform: scale(1.13) translate(-0.7%,-0.3%); } }\n  @keyframes kbDrift3 { 0% { transform: scale(1.08) translate(0,0); } 100% { transform: scale(1.14) translate(0.2%,-0.8%); } }\n  @keyframes kbDrift4 { 0% { transform: scale(1.14) translate(0,0); } 100% { transform: scale(1.08) translate(0,0); } }\n  @keyframes kbDrift5 { 0% { transform: scale(1.08) translate(0,0); } 100% { transform: scale(1.13) translate(0.5%,0.5%); } }\n  @keyframes kbDrift6 { 0% { transform: scale(1.08) translate(0,0); } 100% { transform: scale(1.14) translate(-0.6%,-0.6%); } }\n  @keyframes kbDrift7 { 0% { transform: scale(1.08) translate(0,0); } 100% { transform: scale(1.13) translate(0,0); } }\n  @keyframes kbDrift8 { 0% { transform: scale(1.08) translate(0,0); } 100% { transform: scale(1.12) translate(-0.5%,0.3%); } }\n\n  .redact-bars {\n    position: absolute;\n    inset: 0;\n    z-index: 10;\n    pointer-events: none;\n    opacity: 0;\n  }\n  .redact-bars.sweeping { opacity: 1; }\n\n  .redact-bar {\n    position: absolute;\n    left: 0;\n    width: 0;\n    background: #000;\n    will-change: width;\n  }\n\n  .redact-bar-1 { top: 0; height: 14.3%; }\n  .redact-bar-2 { top: 14.3%; height: 14.3%; }\n  .redact-bar-3 { top: 28.6%; height: 14.3%; }\n  .redact-bar-4 { top: 42.9%; height: 14.3%; }\n  .redact-bar-5 { top: 57.2%; height: 14.3%; }\n  .redact-bar-6 { top: 71.5%; height: 14.3%; }\n  .redact-bar-7 { top: 85.8%; height: 14.3%; }\n\n  .redact-bars.sweeping .redact-bar {\n    animation: barRedact 1.8s cubic-bezier(0.4, 0, 0.2, 1) forwards;\n  }\n\n  .redact-bars.sweeping .redact-bar-1 { animation-delay: 0s; }\n  .redact-bars.sweeping .redact-bar-2 { animation-delay: 0.06s; }\n  .redact-bars.sweeping .redact-bar-3 { animation-delay: 0.12s; }\n  .redact-bars.sweeping .redact-bar-4 { animation-delay: 0.18s; }\n  .redact-bars.sweeping .redact-bar-5 { animation-delay: 0.24s; }\n  .redact-bars.sweeping .redact-bar-6 { animation-delay: 0.30s; }\n  .redact-bars.sweeping .redact-bar-7 { animation-delay: 0.36s; }\n\n  @keyframes barRedact {\n    0% { left: 0; width: 0; }\n    45% { left: 0; width: 100%; }\n    55% { left: 0; width: 100%; }\n    100% { left: 100%; width: 0; }\n  }\n\n  .redact-vignette {\n    position: absolute;\n    inset: 0;\n    background: radial-gradient(ellipse at center, transparent 55%, rgba(0,0,0,0.5) 100%);\n    pointer-events: none;\n    z-index: 11;\n  }\n\n  .redact-caption {\n    position: absolute;\n    bottom: 28px;\n    left: 0; right: 0;\n    text-align: center;\n    z-index: 12;\n    pointer-events: none;\n  }\n\n  .redact-caption-text {\n    font-family: 'Special Elite', 'Courier Prime', monospace;\n    font-size: clamp(11px, 1.8vw, 15px);\n    color: #FFD700;\n    letter-spacing: 2px;\n    opacity: 0;\n    text-shadow: 0 1px 8px rgba(0,0,0,0.9), 0 0 20px rgba(0,0,0,0.7);\n    transition: opacity 0.6s ease 0.8s;\n  }\n  .redact-slide.active .redact-caption-text { opacity: 1; }\n\n  .caption-pinyon {\n    font-family: 'Pinyon Script', cursive !important;\n    font-size: clamp(16px, 2.8vw, 24px) !important;\n    letter-spacing: 1px !important;\n  }\n\n  .caption-fell {\n    font-family: 'IM Fell English SC', serif !important;\n    font-size: clamp(12px, 2vw, 17px) !important;\n    letter-spacing: 1.5px !important;\n  }\n\n  .caption-red { color: #FF4444 !important; }\n\n  \/* === \u00a72 \"VOTE\" \u2014 Campaign Button (Clean) === *\/\n  .caption-vote-wrap {\n    text-shadow: none !important;\n  }\n  .caption-vote {\n    display: inline-block;\n    background:\n      repeating-linear-gradient(\n        0deg,\n        rgba(180, 190, 200, 0.25) 0px,\n        rgba(180, 190, 200, 0.25) 1px,\n        rgba(255, 255, 255, 0.95) 1px,\n        rgba(255, 255, 255, 0.95) 4px\n      );\n    background-color: rgba(255, 255, 255, 0.95);\n    padding: 5px 16px 4px;\n    border-radius: 20px;\n    letter-spacing: 5px;\n    font-family: 'Courier Prime', monospace !important;\n    font-weight: 800;\n    font-size: clamp(14px, 2.2vw, 19px) !important;\n    box-shadow:\n      0 2px 12px rgba(0, 0, 0, 0.6),\n      0 0 20px rgba(255, 255, 255, 0.15),\n      inset 0 1px 0 rgba(255, 255, 255, 0.8);\n    text-shadow: none !important;\n    vertical-align: middle;\n    border: 1px solid rgba(200, 205, 210, 0.5);\n  }\n  .vote-r { color: #FF1744; font-weight: 900; }\n  .vote-b { color: #2979FF; font-weight: 900; }\n\n  .redact-nav {\n    position: absolute;\n    bottom: 10px;\n    left: 50%;\n    transform: translateX(-50%);\n    display: flex;\n    gap: 6px;\n    z-index: 15;\n  }\n\n  .redact-dot {\n    width: 18px;\n    height: 5px;\n    background: #1a1a1a;\n    border: 1px solid #333;\n    border-radius: 1px;\n    cursor: pointer;\n    transition: background 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;\n  }\n  .redact-dot:hover { background: #444; border-color: #666; }\n  .redact-dot.active {\n    background: #FFD700;\n    border-color: #FFD700;\n    box-shadow: 0 0 6px rgba(255, 215, 0, 0.4);\n  }\n  .redact-dot.active-red {\n    background: #FF4444 !important;\n    border-color: #FF4444 !important;\n    box-shadow: 0 0 6px rgba(255, 68, 68, 0.4) !important;\n  }\n\n  .redact-counter {\n    position: absolute;\n    bottom: 10px;\n    right: 14px;\n    font-family: 'Courier Prime', monospace;\n    font-size: 11px;\n    color: #FFD700;\n    letter-spacing: 1px;\n    opacity: 0.6;\n    z-index: 15;\n    text-shadow: 0 1px 4px rgba(0,0,0,0.8);\n  }\n  .redact-counter.counter-red { color: #FF4444 !important; }\n\n  @media (max-width: 600px) {\n    .redact-wrap { max-width: 100%; border-radius: 0; }\n    .redact-dot { width: 14px; height: 4px; }\n    .redact-counter { font-size: 10px; right: 10px; }\n  }\n<\/style>\n\n<div class=\"redact-wrap\" id=\"redactCarousel\">\n  <div class=\"redact-track\">\n\n    <div class=\"redact-slide active\" data-scene=\"1\">\n      <div class=\"redact-img-wrap kb-drift-1\">\n        <img decoding=\"async\" src=\"https:\/\/unredacted.ink\/wp-content\/uploads\/2026\/02\/image1_gpt5_Scene_1_house_floor_standing_V1_FINAL.png\" alt=\"Congressional figure on House floor wearing UN|REDACTED Tag\" loading=\"eager\">\n      <\/div>\n      <div class=\"redact-caption\"><span class=\"redact-caption-text\">427-1; Principled or POSTURED?<\/span><\/div>\n    <\/div>\n\n    <div class=\"redact-slide\" data-scene=\"2\">\n      <div class=\"redact-img-wrap kb-drift-2\">\n        <img decoding=\"async\" src=\"https:\/\/unredacted.ink\/wp-content\/uploads\/2026\/02\/image2_gpt5_Scene_2_mic_gauntlet_composite_V1_FINAL.png\" alt=\"Congressional figure facing press microphones wearing UN|REDACTED Tag\" loading=\"lazy\">\n      <\/div>\n      <div class=\"redact-caption\"><span class=\"redact-caption-text caption-vote-wrap\">Wear your <span class=\"caption-vote\"><span class=\"vote-r\">V<\/span><span class=\"vote-b\">O<\/span><span class=\"vote-r\">T<\/span><span class=\"vote-b\">E<\/span><\/span><\/span><\/div>\n    <\/div>\n\n    <div class=\"redact-slide\" data-scene=\"3\">\n      <div class=\"redact-img-wrap kb-drift-3\">\n        <img decoding=\"async\" src=\"https:\/\/unredacted.ink\/wp-content\/uploads\/2026\/02\/image3_gpt5_scene3_striding_hallway_wstaff_v1_FINAL.png\" alt=\"Congressional figure striding Capitol hallway wearing UN|REDACTED Tag\" loading=\"lazy\">\n      <\/div>\n      <div class=\"redact-caption\"><span class=\"redact-caption-text\">We Stand UN|REDACTED.<\/span><\/div>\n    <\/div>\n\n    <div class=\"redact-slide\" data-scene=\"4\">\n      <div class=\"redact-img-wrap kb-drift-4\">\n        <img decoding=\"async\" src=\"https:\/\/unredacted.ink\/wp-content\/uploads\/2026\/02\/image4_gpt5_Scene4_women_seated_handshake_seated_V1_FINAL.png\" alt=\"Bipartisan handshake with UN|REDACTED Tag visible on lapel\" loading=\"lazy\">\n      <\/div>\n      <div class=\"redact-caption\"><span class=\"redact-caption-text\">Silence is a CHOICE.<\/span><\/div>\n    <\/div>\n\n    <div class=\"redact-slide\" data-scene=\"5\">\n      <div class=\"redact-img-wrap kb-drift-5\">\n        <img decoding=\"async\" src=\"https:\/\/unredacted.ink\/wp-content\/uploads\/2026\/02\/image5_gpt5_scene_5_hall_swift_stride_v1_FINAL.png\" alt=\"Congressional figure in urgent stride wearing UN|REDACTED Tag\" loading=\"lazy\">\n      <\/div>\n      <div class=\"redact-caption\"><span class=\"redact-caption-text caption-pinyon\">... to establish Justice<\/span><\/div>\n    <\/div>\n\n    <div class=\"redact-slide\" data-scene=\"6\">\n      <div class=\"redact-img-wrap kb-drift-6\">\n        <img decoding=\"async\" src=\"https:\/\/unredacted.ink\/wp-content\/uploads\/2026\/02\/image6_gpt5_scene6_spot_reporter_qa_V1_FINAL.png\" alt=\"Congressional figure confronting press in Rotunda wearing UN|REDACTED Tag\" loading=\"lazy\">\n      <\/div>\n      <div class=\"redact-caption\"><span class=\"redact-caption-text\">The TRUTH hurts; secrets revealed UN|REDACTED.<\/span><\/div>\n    <\/div>\n\n    <div class=\"redact-slide\" data-scene=\"7\">\n      <div class=\"redact-img-wrap kb-drift-7\">\n        <img decoding=\"async\" src=\"https:\/\/unredacted.ink\/wp-content\/uploads\/2026\/02\/image7_gpt5_scene_7_party_press_brief_V2_FINAL.png\" alt=\"Coalition press conference with multiple UN|REDACTED Tags visible\" loading=\"lazy\">\n      <\/div>\n      <div class=\"redact-caption\"><span class=\"redact-caption-text caption-fell\">...a republic, if you can keep it.<\/span><\/div>\n    <\/div>\n\n    <div class=\"redact-slide\" data-scene=\"8\">\n      <div class=\"redact-img-wrap kb-drift-8\">\n        <img decoding=\"async\" src=\"https:\/\/unredacted.ink\/wp-content\/uploads\/2026\/02\/image8_gpt5_scene_8_GOP_press_brief_V2_FINAL.png\" alt=\"GOP press conference \u2014 the 215 who went silent\" loading=\"lazy\">\n      <\/div>\n      <div class=\"redact-caption\"><span class=\"redact-caption-text caption-red\">\"RED Herring\"<\/span><\/div>\n    <\/div>\n\n  <\/div>\n\n  <div class=\"redact-bars\" id=\"redactBars\">\n    <div class=\"redact-bar redact-bar-1\"><\/div>\n    <div class=\"redact-bar redact-bar-2\"><\/div>\n    <div class=\"redact-bar redact-bar-3\"><\/div>\n    <div class=\"redact-bar redact-bar-4\"><\/div>\n    <div class=\"redact-bar redact-bar-5\"><\/div>\n    <div class=\"redact-bar redact-bar-6\"><\/div>\n    <div class=\"redact-bar redact-bar-7\"><\/div>\n  <\/div>\n\n  <div class=\"redact-vignette\"><\/div>\n  <div class=\"redact-nav\" id=\"redactNav\"><\/div>\n  <div class=\"redact-counter\" id=\"redactCounter\">&sect;1<\/div>\n<\/div>\n\n<script>\n(function() {\n  var carousel = document.getElementById('redactCarousel');\n  var slides = carousel.querySelectorAll('.redact-slide');\n  var bars = document.getElementById('redactBars');\n  var navContainer = document.getElementById('redactNav');\n  var counter = document.getElementById('redactCounter');\n  var totalSlides = slides.length;\n  var currentIndex = 0;\n  var paused = false;\n  var transitioning = false;\n  var INTERVAL_MS = 6000;\n  var TRANSITION_MS = 2300;\n\n  for (var i = 0; i < totalSlides; i++) {\n    var dot = document.createElement('div');\n    dot.className = 'redact-dot' + (i === 0 ? ' active' : '');\n    dot.setAttribute('data-index', i);\n    dot.addEventListener('click', function() {\n      var idx = parseInt(this.getAttribute('data-index'));\n      if (!transitioning && idx !== currentIndex) goTo(idx);\n    });\n    navContainer.appendChild(dot);\n  }\n\n  function isRedScene(index) {\n    return slides[index].getAttribute('data-scene') === '8';\n  }\n\n  function updateDots(index) {\n    var dots = navContainer.querySelectorAll('.redact-dot');\n    for (var i = 0; i < dots.length; i++) {\n      dots[i].classList.remove('active', 'active-red');\n      if (i === index) {\n        dots[i].classList.add(isRedScene(index) ? 'active-red' : 'active');\n      }\n    }\n  }\n\n  function updateCounter(index) {\n    counter.textContent = '\\u00A7' + (index + 1);\n    if (isRedScene(index)) {\n      counter.classList.add('counter-red');\n    } else {\n      counter.classList.remove('counter-red');\n    }\n  }\n\n  function goTo(nextIndex) {\n    if (transitioning) return;\n    transitioning = true;\n    var currentSlide = slides[currentIndex];\n    var nextSlide = slides[nextIndex];\n\n    nextSlide.classList.add('beneath');\n    carousel.classList.add('transitioning');\n    bars.classList.add('sweeping');\n\n    updateDots(nextIndex);\n    updateCounter(nextIndex);\n\n    setTimeout(function() {\n      nextSlide.classList.add('active');\n      nextSlide.classList.remove('beneath');\n      currentSlide.classList.remove('active');\n    }, 1000);\n\n    setTimeout(function() {\n      bars.classList.remove('sweeping');\n      carousel.classList.remove('transitioning');\n      currentIndex = nextIndex;\n      transitioning = false;\n    }, TRANSITION_MS);\n  }\n\n  setInterval(function() {\n    if (!paused && !transitioning) {\n      goTo((currentIndex + 1) % totalSlides);\n    }\n  }, INTERVAL_MS);\n\n  carousel.addEventListener('mouseenter', function() { paused = true; });\n  carousel.addEventListener('mouseleave', function() { paused = false; });\n\n  var touchStartX = 0;\n  carousel.addEventListener('touchstart', function(e) {\n    touchStartX = e.touches[0].clientX;\n    paused = true;\n  }, { passive: true });\n  carousel.addEventListener('touchend', function(e) {\n    var diff = touchStartX - e.changedTouches[0].clientX;\n    if (Math.abs(diff) > 50) {\n      if (diff > 0) goTo((currentIndex + 1) % totalSlides);\n      else goTo((currentIndex - 1 + totalSlides) % totalSlides);\n    }\n    setTimeout(function() { paused = false; }, 3000);\n  }, { passive: true });\n})();\n<\/script>\n\n      <!-- Product Images -->\n      <div class=\"unr-img-block\">\n        <img decoding=\"async\" src=\"https:\/\/unredacted.ink\/wp-content\/uploads\/2026\/02\/UN_REDACTED-TAG_ON_LAPEL-DC.png\" alt=\"UN|REDACTED Lapel Tag on suit beside American flag pin\">\n        <div class=\"unr-img-label\">Congressional Context<\/div>\n      <\/div>\n\n      <div class=\"unr-img-block\">\n        <img decoding=\"async\" src=\"https:\/\/unredacted.ink\/wp-content\/uploads\/2026\/02\/UN_REDACTED-TAG_FRONT_DETAIL-DK-MODE_V2.png\" alt=\"UN|REDACTED Tag front W 60mm x H 20mm 427-1 H.R. 4405 TM\">\n        <div class=\"unr-img-label\">Front Detail &#8211; 60mm &#215; 20mm<\/div>\n      <\/div>\n\n      <div class=\"unr-img-block\">\n        <img decoding=\"async\" src=\"https:\/\/unredacted.ink\/wp-content\/uploads\/2026\/02\/UN_REDACTED-TAG_BACK_DETAIL-DK-MODE_V2.png\" alt=\"UN|REDACTED Tag Back & Magnetic Fastener W 45mm x H 12mm 427-1 H.R. 4405 TM\">\n        <div class=\"unr-img-label\">Magnetic Back Fastener<\/div>\n      <\/div>\n\n    <\/div><!-- .unr-gallery -->\n\n    <footer class=\"unr-footer\">\n      <div class=\"unr-footer-badge\" id=\"footerBadge\">THE BADGE OF COURAGE.<\/div>\n      <div class=\"unr-footer-text\">H.R. 4405 &#8226; Public Law 119-38 &#8226; 427&#8211;1<\/div>\n    <\/footer>\n\n    <script>\n    (function() {\n      var badge = document.getElementById('footerBadge');\n      if (!badge) return;\n      var states = [\n        'THE BADGE OF COURAGE.',\n        'Wear your <span class=\"fv-pill\"><span class=\"fv-r\">V<\/span><span class=\"fv-b\">O<\/span><span class=\"fv-r\">T<\/span><span class=\"fv-b\">E<\/span><\/span>',\n        'WE ARE <span style=\"color:#BF0A30;font-size:1.15em;font-weight:900;letter-spacing:2px\">NOT<\/span> DISTRACTED.'\n      ];\n      var current = 0;\n      setInterval(function() {\n        badge.style.opacity = '0';\n        setTimeout(function() {\n          current = (current + 1) % states.length;\n          badge.innerHTML = states[current];\n          badge.style.opacity = '1';\n        }, 500);\n      }, 5000);\n    })();\n    <\/script>\n\n  <\/div><!-- #content -->\n<\/body>\n<\/html>\n\t\t\t\t<\/div>\n\t\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>The Badge of Courage. | Demand DOJ Compliance with Public Law 119-38<\/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-64","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.0 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>UN|REDACTED \u279c &quot;Wear your VOTE!&quot; - UN|REDACTED<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/unredacted.ink\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"UN|REDACTED \u279c &quot;Wear your VOTE!&quot; - UN|REDACTED\" \/>\n<meta property=\"og:description\" content=\"The Badge of Courage. | Demand DOJ Compliance with Public Law 119-38\" \/>\n<meta property=\"og:url\" content=\"https:\/\/unredacted.ink\/\" \/>\n<meta property=\"og:site_name\" content=\"UN|REDACTED\" \/>\n<meta property=\"article:modified_time\" content=\"2026-04-15T20:56:59+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/unredacted.ink\/wp-content\/uploads\/2026\/02\/image1_gpt5_Scene_1_house_floor_standing_V1_FINAL.png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"14 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/unredacted.ink\/\",\"url\":\"https:\/\/unredacted.ink\/\",\"name\":\"UN|REDACTED \u279c \\\"Wear your VOTE!\\\" - UN|REDACTED\",\"isPartOf\":{\"@id\":\"http:\/\/unredacted.ink\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/unredacted.ink\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/unredacted.ink\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/unredacted.ink\/wp-content\/uploads\/2026\/02\/image1_gpt5_Scene_1_house_floor_standing_V1_FINAL.png\",\"datePublished\":\"2026-02-11T20:25:20+00:00\",\"dateModified\":\"2026-04-15T20:56:59+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/unredacted.ink\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/unredacted.ink\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/unredacted.ink\/#primaryimage\",\"url\":\"https:\/\/unredacted.ink\/wp-content\/uploads\/2026\/02\/image1_gpt5_Scene_1_house_floor_standing_V1_FINAL.png\",\"contentUrl\":\"https:\/\/unredacted.ink\/wp-content\/uploads\/2026\/02\/image1_gpt5_Scene_1_house_floor_standing_V1_FINAL.png\",\"width\":1024,\"height\":1024},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/unredacted.ink\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/unredacted.ink\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"UN|REDACTED \u279c &#8220;Wear your VOTE!&#8221;\"}]},{\"@type\":\"WebSite\",\"@id\":\"http:\/\/unredacted.ink\/#website\",\"url\":\"http:\/\/unredacted.ink\/\",\"name\":\"UN|REDACTED\",\"description\":\"\",\"publisher\":{\"@id\":\"http:\/\/unredacted.ink\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"http:\/\/unredacted.ink\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"http:\/\/unredacted.ink\/#organization\",\"name\":\"UN|REDACTED\",\"url\":\"http:\/\/unredacted.ink\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"http:\/\/unredacted.ink\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/unredacted.ink\/wp-content\/uploads\/2026\/02\/UNREDACTED-LAPEL_TAG-W60mm_x_H20mm_5pxTopBotBorder_tm_FRONT_V2.png\",\"contentUrl\":\"https:\/\/unredacted.ink\/wp-content\/uploads\/2026\/02\/UNREDACTED-LAPEL_TAG-W60mm_x_H20mm_5pxTopBotBorder_tm_FRONT_V2.png\",\"width\":171,\"height\":58,\"caption\":\"UN|REDACTED\"},\"image\":{\"@id\":\"http:\/\/unredacted.ink\/#\/schema\/logo\/image\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"UN|REDACTED \u279c \"Wear your VOTE!\" - UN|REDACTED","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/unredacted.ink\/","og_locale":"en_US","og_type":"article","og_title":"UN|REDACTED \u279c \"Wear your VOTE!\" - UN|REDACTED","og_description":"The Badge of Courage. | Demand DOJ Compliance with Public Law 119-38","og_url":"https:\/\/unredacted.ink\/","og_site_name":"UN|REDACTED","article_modified_time":"2026-04-15T20:56:59+00:00","og_image":[{"url":"https:\/\/unredacted.ink\/wp-content\/uploads\/2026\/02\/image1_gpt5_Scene_1_house_floor_standing_V1_FINAL.png","type":"","width":"","height":""}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"14 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/unredacted.ink\/","url":"https:\/\/unredacted.ink\/","name":"UN|REDACTED \u279c \"Wear your VOTE!\" - UN|REDACTED","isPartOf":{"@id":"http:\/\/unredacted.ink\/#website"},"primaryImageOfPage":{"@id":"https:\/\/unredacted.ink\/#primaryimage"},"image":{"@id":"https:\/\/unredacted.ink\/#primaryimage"},"thumbnailUrl":"https:\/\/unredacted.ink\/wp-content\/uploads\/2026\/02\/image1_gpt5_Scene_1_house_floor_standing_V1_FINAL.png","datePublished":"2026-02-11T20:25:20+00:00","dateModified":"2026-04-15T20:56:59+00:00","breadcrumb":{"@id":"https:\/\/unredacted.ink\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/unredacted.ink\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/unredacted.ink\/#primaryimage","url":"https:\/\/unredacted.ink\/wp-content\/uploads\/2026\/02\/image1_gpt5_Scene_1_house_floor_standing_V1_FINAL.png","contentUrl":"https:\/\/unredacted.ink\/wp-content\/uploads\/2026\/02\/image1_gpt5_Scene_1_house_floor_standing_V1_FINAL.png","width":1024,"height":1024},{"@type":"BreadcrumbList","@id":"https:\/\/unredacted.ink\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/unredacted.ink\/"},{"@type":"ListItem","position":2,"name":"UN|REDACTED \u279c &#8220;Wear your VOTE!&#8221;"}]},{"@type":"WebSite","@id":"http:\/\/unredacted.ink\/#website","url":"http:\/\/unredacted.ink\/","name":"UN|REDACTED","description":"","publisher":{"@id":"http:\/\/unredacted.ink\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"http:\/\/unredacted.ink\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"http:\/\/unredacted.ink\/#organization","name":"UN|REDACTED","url":"http:\/\/unredacted.ink\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"http:\/\/unredacted.ink\/#\/schema\/logo\/image\/","url":"https:\/\/unredacted.ink\/wp-content\/uploads\/2026\/02\/UNREDACTED-LAPEL_TAG-W60mm_x_H20mm_5pxTopBotBorder_tm_FRONT_V2.png","contentUrl":"https:\/\/unredacted.ink\/wp-content\/uploads\/2026\/02\/UNREDACTED-LAPEL_TAG-W60mm_x_H20mm_5pxTopBotBorder_tm_FRONT_V2.png","width":171,"height":58,"caption":"UN|REDACTED"},"image":{"@id":"http:\/\/unredacted.ink\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/unredacted.ink\/index.php?rest_route=\/wp\/v2\/pages\/64","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/unredacted.ink\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/unredacted.ink\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/unredacted.ink\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/unredacted.ink\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=64"}],"version-history":[{"count":5,"href":"https:\/\/unredacted.ink\/index.php?rest_route=\/wp\/v2\/pages\/64\/revisions"}],"predecessor-version":[{"id":299,"href":"https:\/\/unredacted.ink\/index.php?rest_route=\/wp\/v2\/pages\/64\/revisions\/299"}],"wp:attachment":[{"href":"https:\/\/unredacted.ink\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=64"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}