On-chain ticketing with a stub that tears itself in half.

Build a one-screen page for on-chain ticketing "BLOCKPARTY" with React + Tailwind. Night #101014, confetti accents #f472b6/#facc15/#34d399. Hero visual: a big CSS ticket (rounded rect with perforation — a dashed vertical line and two notch circles) that TEARS on a loop: the stub half rotates/translates away along the perforation (transform-origin at the tear), a few confetti dots pop, then it reassembles — 6s cycle. Ticket text: "GA-042 — VERIFIED ON ARRIVAL — RESALE CAPPED 110%". Fonts: "Archivo" 800 display, "Inter" body. Headline "Scalpers hate one simple perforation." Sub "Tickets that transfer by rule, refund by code, and can't be screenshotted into fraud." Chips: "0.4% FRAUD → 0.00%", "CAPPED RESALE", "INSTANT ARTIST SPLIT". CTA "Sell your first show" pink pill.
ticketingtear