{"id":2,"date":"2026-07-14T15:54:07","date_gmt":"2026-07-14T15:54:07","guid":{"rendered":"http:\/\/pickpocketradio.org\/?page_id=2"},"modified":"2026-09-22T18:24:44","modified_gmt":"2026-09-22T18:24:44","slug":"home","status":"publish","type":"page","link":"https:\/\/pickpocketradio.org\/","title":{"rendered":"Pickpocket Radio"},"content":{"rendered":"\n\n<span style=\"display:none\">\nPickpocket Radio is a Berlin-based radio signal from Pickpocket Club.\nMind Your Culture. Listen live.\n<\/span>\n\n<style>\n\n.pickpocket-radio-page{\n  --ppr-black:#050505;\n  --ppr-panel:#111111;\n  --ppr-cream:#f5ecd8;\n  --ppr-pink:#ff1b8d;\n  --ppr-acid:#eaff00;\n  --ppr-muted:rgba(245,236,216,.68);\n\n  --ppr-mouse-x:50%;\n  --ppr-mouse-y:50%;\n  --ppr-pull-x:0px;\n  --ppr-pull-y:0px;\n  --ppr-pull-x-soft:0px;\n  --ppr-pull-y-soft:0px;\n  --ppr-pull-x-deep:0px;\n  --ppr-pull-y-deep:0px;\n  --ppr-pull-x-button:0px;\n  --ppr-pull-y-button:0px;\n  --ppr-react-soft:0;\n  --ppr-react-glow:0;\n  --ppr-react-slice:0;\n  --ppr-react-rotate:0deg;\n\n  position:relative;\n  min-height:100dvh;\n\n  left:50%;\n  width:100vw;\n  max-width:100vw;\n\n  margin:0;\n  margin-left:-50vw;\n  margin-right:-50vw;\n\n  overflow:hidden;\n\n  background:\n    repeating-linear-gradient(\n      0deg,\n      rgba(255,255,255,.025) 0 1px,\n      transparent 1px 5px\n    ),\n    linear-gradient(\n      135deg,\n      rgba(255,27,141,.16),\n      transparent 34%\n    ),\n    linear-gradient(\n      315deg,\n      rgba(234,255,0,.10),\n      transparent 30%\n    ),\n    var(--ppr-black);\n\n  color:var(--ppr-cream);\n  font-family:Arial,Helvetica,sans-serif;\n  isolation:isolate;\n}\n\n\n\/* --------------------------------------------------\n   REMOVE WORDPRESS THEME\n-------------------------------------------------- *\/\n\n.page-id-2 #theme-header,\n.page-id-2 #wpadminbar,\n.page-id-2 #footer,\n.page-id-2 footer,\n.page-id-2 #breadcrumb,\n.page-id-2 .post-title,\n.page-id-2 .entry-header-outer,\n.page-id-2 .entry-header,\n.page-id-2 .share-buttons,\n.page-id-2 .sidebar,\n.page-id-2 .sidebar-right,\n.page-id-2 #sidebar,\n.page-id-2 #slide-sidebar-widgets,\n.page-id-2 .side-aside,\n.page-id-2 .widget,\n.page-id-2 .container-wrapper.widget,\n.page-id-2 .mag-box,\n.page-id-2 .comments-area,\n.page-id-2 #comments,\n.page-id-2 .comment-respond,\n.page-id-2 .post-components,\n.page-id-2 .related-posts,\n.page-id-2 .wp-block-archives,\n.page-id-2 .wp-block-categories,\n.page-id-2 .wp-block-latest-comments,\n.page-id-2 .wp-block-latest-posts{\n  display:none !important;\n}\n\n.page-id-2 #tie-container,\n.page-id-2 #content.site-content,\n.page-id-2 #main-content-row,\n.page-id-2 .main-content,\n.page-id-2 #the-post,\n.page-id-2 .entry-content{\n  width:100% !important;\n  max-width:none !important;\n  margin:0 !important;\n  padding:0 !important;\n  border:0 !important;\n  box-shadow:none !important;\n  background:transparent !important;\n}\n\nhtml:has(body.page-id-2),\nbody.page-id-2,\nbody.page-id-2.admin-bar{\n  margin-top:0 !important;\n  padding-top:0 !important;\n  background:#050505 !important;\n}\n\n.pickpocket-radio-page,\n.pickpocket-radio-page *{\n  box-sizing:border-box;\n}\n\n\n\/* --------------------------------------------------\n   TEXTURE\n-------------------------------------------------- *\/\n\n.pickpocket-radio-page::before{\n  content:\"\";\n  position:absolute;\n  inset:0;\n  z-index:0;\n  pointer-events:none;\n  opacity:.06;\n\n  background-image:url(\"data:image\/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http:\/\/www.w3.org\/2000\/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.95' numOctaves='3' stitchTiles='stitch'\/%3E%3C\/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='.8'\/%3E%3C\/svg%3E\");\n\n  mix-blend-mode:screen;\n}\n\n.pickpocket-radio-page::after{\n  content:\"\";\n  position:absolute;\n  inset:-12% 0;\n  z-index:0;\n  pointer-events:none;\n  opacity:.2;\n\n  background:\n    linear-gradient(\n      90deg,\n      transparent 0 13%,\n      rgba(255,27,141,.16) 13.4%,\n      transparent 14% 48%,\n      rgba(234,255,0,.12) 48.4%,\n      transparent 49%\n    ),\n    repeating-linear-gradient(\n      180deg,\n      transparent 0 20px,\n      rgba(255,255,255,.08) 21px,\n      transparent 23px\n    );\n\n  mix-blend-mode:screen;\n  transform:skewY(-4deg);\n  animation:ppr-vhs-roll 7.5s linear infinite;\n}\n\n\n\/* --------------------------------------------------\n   GLITCH\n-------------------------------------------------- *\/\n\n.ppr-glitch-layer{\n  position:absolute;\n  inset:-8%;\n  z-index:1;\n  overflow:hidden;\n  pointer-events:none;\n  mix-blend-mode:screen;\n\n  transform:\n    translate3d(\n      var(--ppr-pull-x-soft),\n      var(--ppr-pull-y-soft),\n      0\n    );\n\n  transition:transform .16s ease-out;\n}\n\n.ppr-glitch-layer::before,\n.ppr-glitch-layer::after{\n  content:\"\";\n  position:absolute;\n  inset:0;\n  opacity:.48;\n}\n\n.ppr-glitch-layer::before{\n  background:\n    radial-gradient(\n      circle at var(--ppr-mouse-x) var(--ppr-mouse-y),\n      rgba(255,255,255,var(--ppr-react-soft)),\n      transparent 0 8%,\n      transparent 18%\n    ),\n\n    linear-gradient(\n      180deg,\n      transparent 0 6%,\n      rgba(255,27,141,.48) 6.2%,\n      transparent 7.6% 18%,\n      rgba(234,255,0,.34) 18.4%,\n      transparent 20% 34%,\n      rgba(0,210,255,.26) 34.2%,\n      transparent 35.4% 62%,\n      rgba(255,27,141,.42) 62.4%,\n      transparent 64% 82%,\n      rgba(234,255,0,.28) 82.4%,\n      transparent 84%\n    ),\n\n    repeating-linear-gradient(\n      0deg,\n      rgba(255,255,255,.12) 0 1px,\n      transparent 1px 3px\n    );\n\n  clip-path:\n    polygon(\n      0 2%,100% 0,\n      100% 10%,0 16%,\n      0 25%,100% 21%,\n      100% 32%,0 39%,\n      0 51%,100% 46%,\n      100% 58%,0 66%,\n      0 75%,100% 70%,\n      100% 88%,0 94%\n    );\n\n  filter:contrast(1.45) saturate(1.8);\n  animation:ppr-page-bugs 2.7s steps(2,end) infinite;\n}\n\n.ppr-glitch-layer::after{\n  background:\n    radial-gradient(\n      circle at var(--ppr-mouse-x) var(--ppr-mouse-y),\n      rgba(234,255,0,var(--ppr-react-glow)),\n      transparent 0 10%,\n      rgba(255,27,141,var(--ppr-react-soft)) 13%,\n      transparent 24%\n    ),\n\n    linear-gradient(\n      90deg,\n      transparent 0 10%,\n      rgba(234,255,0,.26) 10.2%,\n      transparent 11.4% 33%,\n      rgba(255,27,141,.34) 33.4%,\n      transparent 35% 61%,\n      rgba(0,210,255,.24) 61.4%,\n      transparent 63.2%\n    ),\n\n    radial-gradient(\n      circle at 24% 22%,\n      rgba(255,27,141,.22),\n      transparent 18%\n    ),\n\n    radial-gradient(\n      circle at 74% 68%,\n      rgba(234,255,0,.18),\n      transparent 20%\n    );\n\n  transform:\n    translate3d(\n      var(--ppr-pull-x-deep),\n      var(--ppr-pull-y-deep),\n      0\n    );\n\n  animation:ppr-color-slip 3.9s steps(3,end) infinite;\n}\n\n.ppr-cursor-field{\n  position:absolute;\n\n  left:var(--ppr-mouse-x);\n  top:var(--ppr-mouse-y);\n\n  width:34vmax;\n  height:34vmax;\n\n  opacity:var(--ppr-react-glow);\n\n  background:\n    repeating-linear-gradient(\n      90deg,\n      rgba(255,27,141,.28) 0 3px,\n      transparent 3px 14px\n    ),\n    repeating-linear-gradient(\n      0deg,\n      rgba(234,255,0,.18) 0 1px,\n      transparent 1px 8px\n    ),\n    radial-gradient(\n      circle,\n      rgba(255,255,255,.18),\n      rgba(255,27,141,.24) 18%,\n      rgba(0,210,255,.16) 38%,\n      transparent 64%\n    );\n\n  filter:blur(.4px) contrast(1.35) saturate(1.7);\n  mix-blend-mode:screen;\n\n  transform:\n    translate3d(-50%,-50%,0)\n    rotate(var(--ppr-react-rotate));\n\n  transition:\n    left .08s linear,\n    top .08s linear,\n    opacity .18s ease-out,\n    transform .14s ease-out;\n}\n\n.ppr-glitch-slice{\n  position:absolute;\n\n  left:calc(-10% + var(--ppr-pull-x));\n\n  width:120%;\n  height:9vh;\n\n  opacity:0;\n\n  background:\n    linear-gradient(\n      90deg,\n      rgba(255,27,141,.70),\n      rgba(234,255,0,.62) 42%,\n      rgba(0,210,255,.46) 70%,\n      transparent\n    );\n\n  filter:saturate(2.4);\n  mix-blend-mode:screen;\n  transition:left .1s linear;\n}\n\n.ppr-glitch-slice-a{\n  top:13%;\n  animation:ppr-slice-a 3.4s steps(2,end) infinite;\n}\n\n.ppr-glitch-slice-b{\n  top:44%;\n  height:12vh;\n  animation:ppr-slice-b 4.1s steps(2,end) infinite;\n}\n\n.ppr-glitch-slice-c{\n  top:76%;\n  height:7vh;\n  animation:ppr-slice-c 2.9s steps(2,end) infinite;\n}\n\n.ppr-glitch-flash{\n  position:absolute;\n  inset:0;\n\n  opacity:0;\n\n  background:\n    linear-gradient(\n      180deg,\n      rgba(255,255,255,.22),\n      transparent 18% 78%,\n      rgba(234,255,0,.18)\n    ),\n    linear-gradient(\n      90deg,\n      rgba(255,27,141,.18),\n      transparent 52%,\n      rgba(0,210,255,.16)\n    );\n\n  animation:ppr-hard-flash 6.2s steps(2,end) infinite;\n}\n\n.pickpocket-radio-page[data-pointer=\"active\"] .ppr-glitch-slice{\n  opacity:var(--ppr-react-slice);\n}\n\n.pickpocket-radio-page[data-pointer=\"active\"] .ppr-content{\n  transform:\n    translate(\n      var(--ppr-pull-x-button),\n      var(--ppr-pull-y-button)\n    );\n}\n\n\n\/* --------------------------------------------------\n   LAYOUT\n-------------------------------------------------- *\/\n\n.ppr-shell{\n  position:relative;\n  z-index:3;\n\n  width:min(1160px,100%);\n  min-height:100dvh;\n\n  margin:0 auto;\n  padding:32px;\n\n  display:grid;\n\n  grid-template-columns:\n    minmax(300px,520px)\n    minmax(300px,1fr);\n\n  align-items:center;\n  gap:72px;\n}\n\n.ppr-shell::before{\n  content:\n    \"SIGNAL \/ BERLIN \/ PICKPOCKET \/ RADIO \/ SIGNAL \/ BERLIN \/ PICKPOCKET \/ RADIO\";\n\n  position:absolute;\n\n  right:32px;\n  bottom:18px;\n  left:32px;\n\n  z-index:-1;\n\n  color:rgba(234,255,0,.26);\n\n  font-size:11px;\n  font-weight:900;\n\n  letter-spacing:.34em;\n  line-height:1;\n\n  overflow:hidden;\n  text-transform:uppercase;\n  white-space:nowrap;\n\n  animation:ppr-ticker 11s linear infinite;\n}\n\n\n\/* --------------------------------------------------\n   LOGO\n-------------------------------------------------- *\/\n\n.ppr-logo-wrap{\n  position:relative;\n  z-index:4;\n  isolation:isolate;\n}\n\n.ppr-logo-wrap::before{\n  content:\"\";\n\n  position:absolute;\n  inset:-3%;\n\n  z-index:1;\n\n  border:2px solid rgba(234,255,0,.46);\n  border-radius:50%;\n\n  clip-path:\n    polygon(\n      0 0,\n      100% 0,\n      100% 18%,\n      0 30%,\n      0 48%,\n      100% 39%,\n      100% 100%,\n      0 100%\n    );\n\n  mix-blend-mode:screen;\n  pointer-events:none;\n\n  animation:ppr-ring-drop 2.8s steps(2,end) infinite;\n}\n\n.ppr-logo-wrap::after{\n  content:\"\";\n\n  position:absolute;\n  inset:10%;\n\n  z-index:-1;\n\n  background:rgba(255,27,141,.22);\n  filter:blur(58px);\n}\n\n.ppr-logo{\n  position:relative;\n  z-index:2;\n\n  display:block;\n\n  width:100%;\n  max-width:520px;\n\n  height:auto;\n  aspect-ratio:1;\n\n  border-radius:50%;\n\n  filter:\n    drop-shadow(10px 0 0 rgba(255,27,141,.18))\n    drop-shadow(-8px 0 0 rgba(234,255,0,.16))\n    drop-shadow(0 30px 60px rgba(0,0,0,.62));\n\n  animation:ppr-float 5s ease-in-out infinite;\n}\n\n\n\/* --------------------------------------------------\n   CONTENT\n-------------------------------------------------- *\/\n\n.ppr-content{\n  display:flex;\n  flex-direction:column;\n  align-items:flex-start;\n\n  transition:transform .16s ease-out;\n}\n\n.ppr-screen-title{\n  position:absolute;\n\n  width:1px;\n  height:1px;\n\n  margin:-1px;\n  padding:0;\n\n  overflow:hidden;\n  clip:rect(0,0,0,0);\n\n  white-space:nowrap;\n  border:0;\n}\n\n.ppr-eyebrow{\n  margin:0 0 22px;\n\n  color:var(--ppr-pink);\n\n  font-size:13px;\n  font-weight:900;\n\n  letter-spacing:.22em;\n  text-transform:uppercase;\n}\n\n\n\/* --------------------------------------------------\n   MIND YOUR CULTURE\n-------------------------------------------------- *\/\n\n.ppr-tagline{\n  margin:0 0 30px;\n\n  color:var(--ppr-acid);\n\n  font-size:clamp(28px,4vw,54px);\n  font-weight:900;\n\n  line-height:.95;\n  letter-spacing:.04em;\n  text-transform:uppercase;\n\n  text-shadow:\n    3px 0 0 rgba(255,27,141,.65),\n    -2px 0 0 rgba(0,210,255,.25);\n}\n\n\n\/* --------------------------------------------------\n   RADIO PLAYER\n-------------------------------------------------- *\/\n\n.ppr-player{\n  width:100%;\n  max-width:540px;\n\n  margin:0 0 10px;\n\n  display:flex;\n  flex-direction:column;\n  align-items:flex-start;\n}\n\n.ppr-listen{\n  position:relative;\n\n  display:inline-flex;\n\n  align-items:center;\n  justify-content:center;\n\n  gap:16px;\n\n  min-height:62px;\n  padding:0 26px;\n\n  overflow:hidden;\n\n  color:var(--ppr-black);\n  background:var(--ppr-acid);\n\n  border:1px solid rgba(234,255,0,.9);\n  border-radius:8px;\n\n  box-shadow:\n    8px 8px 0 var(--ppr-pink),\n    0 0 34px rgba(234,255,0,.16);\n\n  font-family:Arial,Helvetica,sans-serif;\n\n  font-size:15px;\n  font-weight:900;\n\n  letter-spacing:.14em;\n  line-height:1;\n\n  text-transform:uppercase;\n\n  cursor:pointer;\n\n  transition:\n    transform .18s ease,\n    box-shadow .18s ease,\n    background .18s ease,\n    color .18s ease;\n}\n\n.ppr-listen::before{\n  content:\"\";\n\n  position:absolute;\n  inset:0;\n\n  background:\n    linear-gradient(\n      90deg,\n      transparent,\n      rgba(255,255,255,.72),\n      transparent\n    );\n\n  transform:translateX(-120%);\n  animation:ppr-button-scan 3.1s ease-in-out infinite;\n}\n\n.ppr-listen:hover,\n.ppr-listen:focus{\n  transform:translate(-2px,-2px);\n\n  box-shadow:\n    11px 11px 0 var(--ppr-pink),\n    0 0 40px rgba(234,255,0,.24);\n}\n\n.ppr-listen.is-playing{\n  color:var(--ppr-cream);\n  background:var(--ppr-pink);\n\n  border-color:var(--ppr-pink);\n\n  box-shadow:\n    8px 8px 0 var(--ppr-acid),\n    0 0 38px rgba(255,27,141,.25);\n}\n\n.ppr-play-symbol{\n  position:relative;\n  z-index:2;\n\n  font-size:18px;\n  line-height:1;\n}\n\n.ppr-play-text{\n  position:relative;\n  z-index:2;\n}\n\n\n\/* --------------------------------------------------\n   SOCIAL\n-------------------------------------------------- *\/\n\n.ppr-social{\n  width:100%;\n  max-width:540px;\n\n  margin-top:32px;\n\n  display:flex;\n  align-items:center;\n\n  gap:12px;\n  flex-wrap:wrap;\n}\n\n.ppr-social-link{\n  position:relative;\n\n  display:inline-flex;\n\n  align-items:center;\n  justify-content:center;\n\n  min-height:50px;\n  padding:0 20px;\n\n  overflow:hidden;\n\n  color:var(--ppr-black);\n  background:var(--ppr-acid);\n\n  border:1px solid rgba(234,255,0,.9);\n  border-radius:8px;\n\n  box-shadow:\n    8px 8px 0 var(--ppr-pink),\n    0 0 34px rgba(234,255,0,.16);\n\n  font-size:14px;\n  font-weight:900;\n\n  letter-spacing:.12em;\n  line-height:1;\n\n  text-decoration:none;\n  text-transform:uppercase;\n\n  transition:\n    transform .18s ease,\n    box-shadow .18s ease;\n}\n\n.ppr-telegram{\n  color:var(--ppr-cream);\n  background:var(--ppr-pink);\n\n  border-color:rgba(255,27,141,.9);\n\n  box-shadow:\n    8px 8px 0 rgba(234,255,0,.92),\n    0 0 34px rgba(255,27,141,.18);\n}\n\n.ppr-social-link:hover,\n.ppr-social-link:focus{\n  transform:translate(-2px,-2px);\n\n  box-shadow:\n    11px 11px 0 var(--ppr-pink),\n    0 0 40px rgba(234,255,0,.24);\n}\n\n.ppr-social-note{\n  flex-basis:100%;\n\n  color:var(--ppr-muted);\n\n  font-size:12px;\n  font-weight:800;\n\n  letter-spacing:.14em;\n  text-transform:uppercase;\n}\n\n\n\/* --------------------------------------------------\n   FOOTER\n-------------------------------------------------- *\/\n\n.ppr-footer{\n  margin-top:28px;\n\n  display:flex;\n  align-items:center;\n\n  gap:14px;\n  flex-wrap:wrap;\n}\n\n.ppr-url{\n  color:var(--ppr-cream);\n\n  text-decoration:none;\n\n  font-size:14px;\n  font-weight:900;\n\n  letter-spacing:.1em;\n  text-transform:uppercase;\n\n  border-bottom:2px solid var(--ppr-pink);\n\n  padding-bottom:5px;\n}\n\n.ppr-url:hover{\n  color:var(--ppr-pink);\n}\n\n.ppr-berlin{\n  color:var(--ppr-muted);\n\n  font-size:13px;\n\n  letter-spacing:.14em;\n  text-transform:uppercase;\n}\n\n\n\/* --------------------------------------------------\n   ANIMATIONS\n-------------------------------------------------- *\/\n\n@keyframes ppr-float{\n  0%,100%{\n    transform:translateY(0) rotate(-1deg);\n  }\n\n  50%{\n    transform:translateY(-10px) rotate(1deg);\n  }\n}\n\n@keyframes ppr-vhs-roll{\n  0%{\n    transform:translateY(-12%) skewY(-4deg);\n  }\n\n  100%{\n    transform:translateY(12%) skewY(-4deg);\n  }\n}\n\n@keyframes ppr-ticker{\n  0%{\n    transform:translateX(0);\n  }\n\n  100%{\n    transform:translateX(-34%);\n  }\n}\n\n@keyframes ppr-ring-drop{\n  0%,83%,100%{\n    transform:translate(0,0);\n    opacity:.55;\n  }\n\n  86%{\n    transform:translate(8px,-2px);\n    opacity:.85;\n  }\n\n  89%{\n    transform:translate(-7px,3px);\n    opacity:.35;\n  }\n\n  92%{\n    transform:translate(4px,0);\n    opacity:.75;\n  }\n}\n\n@keyframes ppr-page-bugs{\n  0%,62%,100%{\n    transform:translate3d(0,0,0) scaleX(1);\n    opacity:.26;\n  }\n\n  66%{\n    transform:translate3d(0,-30px,0) scaleX(1.02);\n    opacity:.66;\n  }\n\n  69%{\n    transform:translate3d(24px,10px,0) scaleX(.98);\n    opacity:.38;\n  }\n\n  72%{\n    transform:translate3d(-26px,-8px,0) scaleX(1.03);\n    opacity:.74;\n  }\n\n  75%{\n    transform:translate3d(11px,0,0) scaleX(1);\n    opacity:.24;\n  }\n}\n\n@keyframes ppr-color-slip{\n  0%,54%,100%{\n    transform:translate3d(0,0,0);\n    opacity:.22;\n  }\n\n  59%{\n    transform:translate3d(34px,0,0);\n    opacity:.48;\n  }\n\n  63%{\n    transform:translate3d(-32px,4px,0);\n    opacity:.32;\n  }\n\n  68%{\n    transform:translate3d(14px,-6px,0);\n    opacity:.56;\n  }\n}\n\n@keyframes ppr-slice-a{\n  0%,72%,100%{\n    opacity:0;\n    transform:translateX(0);\n  }\n\n  75%{\n    opacity:.72;\n    transform:translateX(-7%) skewX(-12deg);\n  }\n\n  78%{\n    opacity:.28;\n    transform:translateX(10%) skewX(8deg);\n  }\n}\n\n@keyframes ppr-slice-b{\n  0%,58%,100%{\n    opacity:0;\n    transform:translateX(0);\n  }\n\n  62%{\n    opacity:.65;\n    transform:translateX(9%) skewX(14deg);\n  }\n\n  66%{\n    opacity:.22;\n    transform:translateX(-12%) skewX(-7deg);\n  }\n}\n\n@keyframes ppr-slice-c{\n  0%,82%,100%{\n    opacity:0;\n    transform:translateX(0);\n  }\n\n  85%{\n    opacity:.8;\n    transform:translateX(-14%) skewX(-18deg);\n  }\n\n  88%{\n    opacity:.3;\n    transform:translateX(15%) skewX(10deg);\n  }\n}\n\n@keyframes ppr-hard-flash{\n  0%,91%,100%{\n    opacity:0;\n  }\n\n  92%{\n    opacity:.38;\n  }\n\n  93%{\n    opacity:.04;\n  }\n\n  94%{\n    opacity:.28;\n  }\n}\n\n@keyframes ppr-button-scan{\n  0%,42%{\n    transform:translateX(-120%);\n  }\n\n  62%{\n    transform:translateX(120%);\n  }\n\n  100%{\n    transform:translateX(120%);\n  }\n}\n\n\n\/* --------------------------------------------------\n   RESPONSIVE\n-------------------------------------------------- *\/\n\n@media (max-width:980px){\n\n  .ppr-shell{\n    grid-template-columns:1fr;\n\n    gap:34px;\n\n    padding:24px 20px 40px;\n\n    text-align:center;\n  }\n\n  .ppr-logo-wrap{\n    width:min(78vw,500px);\n    margin:0 auto;\n  }\n\n  .ppr-content{\n    align-items:center;\n  }\n\n  .ppr-player{\n    align-items:center;\n  }\n\n  .ppr-footer{\n    justify-content:center;\n  }\n\n  .ppr-social{\n    justify-content:center;\n  }\n}\n\n@media (max-width:420px){\n\n  .ppr-shell{\n    gap:24px;\n    padding:20px 20px 34px;\n  }\n\n  .ppr-logo-wrap{\n    width:min(72vw,280px);\n  }\n\n  .ppr-tagline{\n    font-size:32px;\n  }\n\n  .ppr-listen{\n    width:100%;\n  }\n\n  .ppr-social{\n    margin-top:26px;\n    gap:8px;\n  }\n\n  .ppr-social-link{\n    width:100%;\n    min-height:44px;\n  }\n}\n\n@media (prefers-reduced-motion:reduce){\n\n  .pickpocket-radio-page *,\n  .pickpocket-radio-page *::before,\n  .pickpocket-radio-page *::after{\n    animation:none !important;\n    scroll-behavior:auto !important;\n  }\n}\n\n<\/style>\n\n\n<section\n  class=\"pickpocket-radio-page\"\n  aria-label=\"Pickpocket Radio\"\n>\n\n  <div class=\"ppr-shell\">\n\n\n    <!-- LOGO -->\n\n    <div class=\"ppr-logo-wrap\">\n\n      <img decoding=\"async\"\n        class=\"ppr-logo\"\n        src=\"https:\/\/pickpocketradio.org\/wp-content\/uploads\/2026\/07\/pickpocket-radio-logo.png\"\n        alt=\"Pickpocket Radio Berlin - Mind Your Culture\"\n      \/>\n\n    <\/div>\n\n\n    <!-- CONTENT -->\n\n    <div class=\"ppr-content\">\n\n      <p class=\"ppr-eyebrow\">\n        Berlin \u2014 Pickpocket Club\n      <\/p>\n\n      <h1 class=\"ppr-screen-title\">\n        Pickpocket Radio \u2014 Berlin\n      <\/h1>\n\n      <p class=\"ppr-tagline\">\n        Mind Your Culture.\n      <\/p>\n\n\n      <!-- STREAM -->\n\n      <div class=\"ppr-player\">\n\n        <audio\n          id=\"pickpocket-stream\"\n          preload=\"none\"\n        >\n          <source\n            src=\"https:\/\/stream.radeo.fr\/toutvabiensepasser.mp3\"\n            type=\"audio\/mpeg\"\n          >\n        <\/audio>\n\n        <button\n          id=\"pickpocket-play\"\n          class=\"ppr-listen\"\n          type=\"button\"\n          aria-label=\"Listen to Pickpocket Radio\"\n        >\n\n          <span class=\"ppr-play-symbol\">\n            \u25b6\n          <\/span>\n\n          <span class=\"ppr-play-text\">\n            Listen\n          <\/span>\n\n        <\/button>\n\n      <\/div>\n\n\n      <!-- SOCIAL -->\n\n      <div\n        class=\"ppr-social\"\n        aria-label=\"Pickpocket Radio social channels\"\n      >\n\n        <a\n          class=\"ppr-social-link ppr-instagram\"\n          href=\"https:\/\/www.instagram.com\/pickpocket.radio\"\n          target=\"_blank\"\n          rel=\"noopener\"\n        >\n          Instagram\n        <\/a>\n\n        <a\n          class=\"ppr-social-link ppr-telegram\"\n          href=\"https:\/\/t.me\/+X1tGY7QEjuhjOTA0\"\n          target=\"_blank\"\n          rel=\"noopener\"\n        >\n          Telegram\n        <\/a>\n\n        <span class=\"ppr-social-note\">\n          @pickpocketradio \/ Telegram\n        <\/span>\n\n      <\/div>\n\n\n      <!-- FOOTER -->\n\n      <div class=\"ppr-footer\">\n\n        <a\n          class=\"ppr-url\"\n          href=\"https:\/\/pickpocketradio.org\"\n        >\n          pickpocketradio.org\n        <\/a>\n\n        <span class=\"ppr-berlin\">\n          Broadcasting from Berlin\n        <\/span>\n\n      <\/div>\n\n    <\/div>\n\n  <\/div>\n\n\n  <!-- GLITCH -->\n\n  <div\n    class=\"ppr-glitch-layer\"\n    aria-hidden=\"true\"\n  >\n\n    <span class=\"ppr-cursor-field\"><\/span>\n\n    <span class=\"ppr-glitch-slice ppr-glitch-slice-a\"><\/span>\n\n    <span class=\"ppr-glitch-slice ppr-glitch-slice-b\"><\/span>\n\n    <span class=\"ppr-glitch-slice ppr-glitch-slice-c\"><\/span>\n\n    <span class=\"ppr-glitch-flash\"><\/span>\n\n  <\/div>\n\n<\/section>\n\n\n<script>\n\n(() => {\n\n  const audio =\n    document.getElementById(\"pickpocket-stream\");\n\n  const playButton =\n    document.getElementById(\"pickpocket-play\");\n\n  const playSymbol =\n    playButton.querySelector(\".ppr-play-symbol\");\n\n  const playText =\n    playButton.querySelector(\".ppr-play-text\");\n\n\n  playButton.addEventListener(\"click\", async () => {\n\n    if(audio.paused){\n\n      try{\n\n        await audio.play();\n\n        playButton.classList.add(\"is-playing\");\n\n        playSymbol.textContent = \"\u25a0\";\n\n        playText.textContent = \"Stop\";\n\n      }\n\n      catch(error){\n\n        console.error(\n          \"Pickpocket Radio stream:\",\n          error\n        );\n\n        playText.textContent = \"Try again\";\n\n      }\n\n    }\n\n    else{\n\n      audio.pause();\n\n      playButton.classList.remove(\"is-playing\");\n\n      playSymbol.textContent = \"\u25b6\";\n\n      playText.textContent = \"Listen\";\n\n    }\n\n  });\n\n\n  audio.addEventListener(\"error\", () => {\n\n    playButton.classList.remove(\"is-playing\");\n\n    playSymbol.textContent = \"\u25b6\";\n\n    playText.textContent = \"Stream offline\";\n\n  });\n\n\n\n  \/* ----------------------------------------------\n     INTERACTIVE GLITCH\n  ---------------------------------------------- *\/\n\n  const roots =\n    document.querySelectorAll(\n      \".pickpocket-radio-page\"\n    );\n\n\n  roots.forEach((root) => {\n\n    let frame = 0;\n    let idleTimer = 0;\n\n\n    const clamp =\n      (value,min,max) =>\n        Math.max(\n          min,\n          Math.min(max,value)\n        );\n\n\n    const setIdle = () => {\n\n      root.dataset.pointer = \"idle\";\n\n      root.style.setProperty(\"--ppr-react-soft\",\"0\");\n      root.style.setProperty(\"--ppr-react-glow\",\"0\");\n      root.style.setProperty(\"--ppr-react-slice\",\"0\");\n      root.style.setProperty(\"--ppr-react-rotate\",\"0deg\");\n\n      root.style.setProperty(\"--ppr-pull-x\",\"0px\");\n      root.style.setProperty(\"--ppr-pull-y\",\"0px\");\n\n      root.style.setProperty(\"--ppr-pull-x-soft\",\"0px\");\n      root.style.setProperty(\"--ppr-pull-y-soft\",\"0px\");\n\n      root.style.setProperty(\"--ppr-pull-x-deep\",\"0px\");\n      root.style.setProperty(\"--ppr-pull-y-deep\",\"0px\");\n\n      root.style.setProperty(\"--ppr-pull-x-button\",\"0px\");\n      root.style.setProperty(\"--ppr-pull-y-button\",\"0px\");\n\n    };\n\n\n    const wake = (event) => {\n\n      const rect =\n        root.getBoundingClientRect();\n\n\n      const x =\n        clamp(\n          ((event.clientX - rect.left) \/ rect.width) * 100,\n          0,\n          100\n        );\n\n\n      const y =\n        clamp(\n          ((event.clientY - rect.top) \/ rect.height) * 100,\n          0,\n          100\n        );\n\n\n      const dx =\n        (x - 50) \/ 50;\n\n\n      const dy =\n        (y - 50) \/ 50;\n\n\n      const pullX =\n        dx * 26;\n\n\n      const pullY =\n        dy * 20;\n\n\n      const react =\n        clamp(\n          .42 +\n          Math.hypot(dx,dy) * .58,\n          .42,\n          1\n        );\n\n\n      window.cancelAnimationFrame(frame);\n\n\n      frame =\n        window.requestAnimationFrame(() => {\n\n          root.dataset.pointer =\n            \"active\";\n\n\n          root.style.setProperty(\n            \"--ppr-mouse-x\",\n            `${x.toFixed(2)}%`\n          );\n\n\n          root.style.setProperty(\n            \"--ppr-mouse-y\",\n            `${y.toFixed(2)}%`\n          );\n\n\n          root.style.setProperty(\n            \"--ppr-pull-x\",\n            `${pullX.toFixed(2)}px`\n          );\n\n\n          root.style.setProperty(\n            \"--ppr-pull-y\",\n            `${pullY.toFixed(2)}px`\n          );\n\n\n          root.style.setProperty(\n            \"--ppr-pull-x-soft\",\n            `${(pullX*.25).toFixed(2)}px`\n          );\n\n\n          root.style.setProperty(\n            \"--ppr-pull-y-soft\",\n            `${(pullY*.18).toFixed(2)}px`\n          );\n\n\n          root.style.setProperty(\n            \"--ppr-pull-x-deep\",\n            `${(pullX*-.65).toFixed(2)}px`\n          );\n\n\n          root.style.setProperty(\n            \"--ppr-pull-y-deep\",\n            `${(pullY*-.36).toFixed(2)}px`\n          );\n\n\n          root.style.setProperty(\n            \"--ppr-pull-x-button\",\n            `${(pullX*.06).toFixed(2)}px`\n          );\n\n\n          root.style.setProperty(\n            \"--ppr-pull-y-button\",\n            `${(pullY*.05).toFixed(2)}px`\n          );\n\n\n          root.style.setProperty(\n            \"--ppr-react-soft\",\n            (.10*react).toFixed(3)\n          );\n\n\n          root.style.setProperty(\n            \"--ppr-react-glow\",\n            (.34*react).toFixed(3)\n          );\n\n\n          root.style.setProperty(\n            \"--ppr-react-slice\",\n            (.16+(.42*react)).toFixed(3)\n          );\n\n\n          root.style.setProperty(\n            \"--ppr-react-rotate\",\n            `${(7*react).toFixed(2)}deg`\n          );\n\n        });\n\n\n      window.clearTimeout(idleTimer);\n\n\n      idleTimer =\n        window.setTimeout(\n          setIdle,\n          900\n        );\n\n    };\n\n\n    root.addEventListener(\n      \"pointermove\",\n      wake,\n      {passive:true}\n    );\n\n\n    root.addEventListener(\n      \"pointerdown\",\n      wake,\n      {passive:true}\n    );\n\n\n    root.addEventListener(\n      \"pointerleave\",\n      setIdle,\n      {passive:true}\n    );\n\n  });\n\n})();\n\n<\/script>\n\n","protected":false},"excerpt":{"rendered":"<p>Pickpocket Radio is a Berlin-based radio signal from Pickpocket Club. Mind Your Culture. Follow the drop on Instagram and Telegram while the live site is tuning in.<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"open","template":"","meta":{"footnotes":""},"class_list":["post-2","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/pickpocketradio.org\/index.php\/wp-json\/wp\/v2\/pages\/2","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/pickpocketradio.org\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/pickpocketradio.org\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/pickpocketradio.org\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/pickpocketradio.org\/index.php\/wp-json\/wp\/v2\/comments?post=2"}],"version-history":[{"count":22,"href":"https:\/\/pickpocketradio.org\/index.php\/wp-json\/wp\/v2\/pages\/2\/revisions"}],"predecessor-version":[{"id":40,"href":"https:\/\/pickpocketradio.org\/index.php\/wp-json\/wp\/v2\/pages\/2\/revisions\/40"}],"wp:attachment":[{"href":"https:\/\/pickpocketradio.org\/index.php\/wp-json\/wp\/v2\/media?parent=2"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}