:root{--r:#ff1a3c;--g:#39ff14;--bk:#000;--d:#0a0a0a;--t:#e8e8e8;--f:'Anton','Bebas Neue',Impact,sans-serif;--m:'Share Tech Mono',monospace}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}
body{background:var(--bk);color:var(--t);font:16px/1.6 system-ui,sans-serif;overflow-x:hidden}
a{color:inherit}.mono{font-family:var(--m);letter-spacing:.08em}
.noise{position:fixed;inset:-50%;z-index:90;pointer-events:none;opacity:.09;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:grain .5s steps(4) infinite}
.scan{position:fixed;inset:0;z-index:91;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(0,0,0,.35) 0 1px,transparent 1px 3px);animation:flick 4s infinite}
.vig{position:fixed;inset:0;z-index:89;pointer-events:none;background:radial-gradient(ellipse at center,transparent 50%,rgba(0,0,0,.8))}
#flash{position:fixed;inset:0;z-index:95;pointer-events:none;background:var(--r);mix-blend-mode:difference;opacity:0}
#flash.on{animation:fl .25s steps(3)}
@keyframes fl{0%{opacity:.6;clip-path:inset(20% 0 50% 0)}50%{opacity:.4;clip-path:inset(60% 0 10% 0);background:var(--g)}100%{opacity:0}}
@keyframes grain{0%{transform:translate(0,0)}25%{transform:translate(-3%,2%)}50%{transform:translate(2%,-4%)}75%{transform:translate(-1%,3%)}}
@keyframes flick{0%,100%,47%,49%{opacity:1}48%{opacity:.5}83%{opacity:.8}}
@keyframes jit{0%,92%,100%{transform:none}93%{transform:translate(4px,-2px) skewX(10deg)}95%{transform:translate(-5px,1px) skewX(-6deg)}97%{transform:translate(2px,2px)}}
@keyframes shake{25%{transform:translate(4px,-3px) skew(1deg)}75%{transform:translate(-4px,3px) skew(-1deg)}}
/* glitch text */
.glitch{position:relative;display:inline-block;font-family:var(--f);text-transform:uppercase;animation:jit 3.5s infinite}
.glitch::before,.glitch::after{content:attr(data-text);position:absolute;inset:0;overflow:hidden;pointer-events:none}
.glitch::before{color:var(--r);transform:translate(-3px,0);mix-blend-mode:screen;animation:g1 2.2s infinite steps(1)}
.glitch::after{color:var(--g);transform:translate(3px,0);mix-blend-mode:screen;animation:g2 1.8s infinite steps(1)}
@keyframes g1{0%{clip-path:inset(0 0 85% 0)}10%{clip-path:inset(40% 0 40% 0);transform:translate(-6px,0)}20%{clip-path:inset(75% 0 5% 0)}30%{clip-path:inset(10% 0 70% 0);transform:translate(5px,0)}40%,100%{clip-path:inset(100% 0 0 0)}}
@keyframes g2{0%{clip-path:inset(60% 0 20% 0)}15%{clip-path:inset(5% 0 80% 0);transform:translate(6px,0)}25%{clip-path:inset(85% 0 2% 0)}35%{clip-path:inset(30% 0 50% 0);transform:translate(-4px,0)}45%,100%{clip-path:inset(100% 0 0 0)}}
.glitch:hover{animation:shake .12s infinite}.glitch:hover::before,.glitch:hover::after{animation-duration:.3s}
/* nav */
.nav{position:fixed;top:0;left:0;right:0;z-index:80;display:flex;align-items:center;justify-content:space-between;padding:14px 4vw;background:linear-gradient(#000e,#0000);backdrop-filter:blur(4px)}
.logo{font-size:26px;text-decoration:none;color:#fff;letter-spacing:.04em}
nav a{font-family:var(--f);text-transform:uppercase;text-decoration:none;margin-left:26px;font-size:18px;letter-spacing:.08em;transition:.15s}
nav a:hover{color:var(--g);text-shadow:-2px 0 var(--r),2px 0 var(--g)}
nav .cta{border:2px solid var(--r);padding:4px 14px;color:var(--r)}nav .cta:hover{background:var(--r);color:#000}
.burger{display:none;background:none;border:0;cursor:pointer;width:34px}.burger span{display:block;height:3px;background:#fff;margin:6px 0}
/* hero */
.hero{min-height:100vh;min-height:100svh;position:relative;display:grid;place-items:center;text-align:center;overflow:hidden;padding:90px 4vw 70px}
.hero-bg{position:absolute;inset:0;background:radial-gradient(circle at 30% 40%,#ff1a3c33,transparent 40%),radial-gradient(circle at 75% 65%,#39ff1426,transparent 40%),repeating-linear-gradient(90deg,#111 0 1px,transparent 1px 80px),repeating-linear-gradient(0deg,#111 0 1px,transparent 1px 80px);animation:pulse 6s ease-in-out infinite alternate}
@keyframes pulse{to{filter:hue-rotate(-20deg) brightness(1.3);transform:scale(1.06)}}
.slices{position:absolute;inset:0;pointer-events:none}
.slices i{position:absolute;left:0;right:0;background:var(--r);mix-blend-mode:difference;opacity:.0}
.hero-in{position:relative;z-index:2}
.tag{color:var(--g);font-size:clamp(11px,1.4vw,15px)}
.big{font-size:clamp(64px,17vw,300px);line-height:.88;color:#fff;letter-spacing:-.01em;text-shadow:0 0 30px #ff1a3c88,0 0 80px #ff1a3c44;margin:.1em 0}
.sub{font-family:var(--f);font-size:clamp(20px,3.4vw,46px);letter-spacing:.14em;display:flex;gap:.5em;justify-content:center;flex-wrap:wrap}
.sub i{color:var(--r);font-style:normal}.loc{color:#999;margin-top:10px;font-size:clamp(11px,1.2vw,15px)}
.btns{margin-top:32px;display:flex;gap:16px;justify-content:center;flex-wrap:wrap}
.btn{font-family:var(--f);text-transform:uppercase;letter-spacing:.1em;font-size:18px;padding:12px 30px;text-decoration:none;border:2px solid;background:transparent;cursor:pointer;position:relative;transition:.1s;clip-path:polygon(0 0,100% 0,100% 70%,92% 100%,0 100%)}
.btn.red{color:var(--r)}.btn.green{color:var(--g)}
.btn:hover{background:currentColor;animation:shake .1s 3}.btn.red:hover{color:var(--r);box-shadow:0 0 30px var(--r)}.btn:hover{color:#000!important;background:var(--g)}.btn.red:hover{background:var(--r)}
.btn.sm{font-size:14px;padding:6px 12px}
.ticker{position:absolute;bottom:0;left:0;right:0;background:var(--r);color:#000;overflow:hidden;white-space:nowrap;padding:6px 0;font-weight:700;transform:skewY(-1deg)}
.track{display:inline-block;animation:crawl 30s linear infinite}@keyframes crawl{to{transform:translateX(-50%)}}
/* sections */
.sec{padding:110px 4vw;max-width:1800px;margin:0 auto;position:relative}
.sec.alt{background:linear-gradient(180deg,transparent,#0d0003 20%,#0d0003 80%,transparent);max-width:none}
.sec.alt>*{max-width:1800px;margin-left:auto;margin-right:auto}
h2.glitch{font-size:clamp(48px,9vw,140px);line-height:.9;color:#fff;display:block;width:max-content;max-width:100%}
.lede{color:var(--g);margin:8px 0 40px}
.reveal{opacity:0;transform:translateY(40px) skewY(2deg);transition:.6s cubic-bezier(.2,.8,.2,1)}.reveal.in{opacity:1;transform:none}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:22px}
.card{background:#0b0b0b;border:1px solid #222;position:relative;transition:.15s;overflow:hidden}
.card:hover{border-color:var(--r);transform:translateY(-4px);box-shadow:-4px 0 0 var(--r),4px 0 0 var(--g)}
.cover{aspect-ratio:1;position:relative;overflow:hidden;background:repeating-linear-gradient(45deg,#111 0 10px,#160006 10px 20px);display:grid;place-items:center}
.cover img{width:100%;height:100%;object-fit:cover}
.cover .ph{font-family:var(--f);font-size:42px;color:#ffffff22}
.cover::after{content:"";position:absolute;inset:0;background:inherit;opacity:0}
.card:hover .cover{animation:slice .35s steps(2) 2}
@keyframes slice{0%{clip-path:inset(0 0 0 0);filter:none}25%{clip-path:polygon(0 0,100% 0,100% 30%,96% 30%,96% 45%,100% 45%,100% 100%,0 100%,0 70%,5% 70%,5% 55%,0 55%);transform:translateX(6px);filter:hue-rotate(90deg) saturate(3)}50%{transform:translateX(-6px);filter:drop-shadow(-4px 0 var(--r)) drop-shadow(4px 0 var(--g))}100%{transform:none}}
.badge{position:absolute;top:10px;left:10px;background:var(--g);color:#000;font:700 12px var(--m);padding:2px 8px}
.cbody{padding:14px}.cbody h3{font-family:var(--f);font-size:24px;font-weight:400;letter-spacing:.04em}
.cbody .meta{color:#888;font-size:12px}
.player{display:flex;align-items:center;gap:10px;margin:10px 0;background:#000;border:1px solid #222;padding:6px 8px}
.play{width:34px;height:34px;border:0;background:var(--r);color:#000;cursor:pointer;font-size:14px;flex:none}
.bar{flex:1;height:4px;background:#222;position:relative}.bar b{position:absolute;left:0;top:0;bottom:0;width:0;background:var(--g)}
.player small{font:11px var(--m);color:#666}
.links{display:flex;flex-wrap:wrap;gap:6px}.links a{font:12px var(--m);border:1px solid #333;padding:3px 8px;text-decoration:none}.links a:hover{border-color:var(--g);color:var(--g)}
.beats{display:grid;gap:10px}
.beat{display:grid;grid-template-columns:46px 1.6fr 1fr 1fr auto;align-items:center;gap:16px;background:#070707;border-left:4px solid var(--r);padding:12px 16px;transition:.15s}
.beat:hover{border-left-color:var(--g);background:#0f0f0f;transform:translateX(6px)}
.beat h3{font-family:var(--f);font-weight:400;font-size:22px}.beat .p{font-family:var(--f);font-size:22px;color:var(--g)}
.bio-wrap{display:grid;grid-template-columns:1fr 1.3fr;gap:50px;align-items:start;margin-top:30px}
.bio-img{aspect-ratio:4/5;border:2px solid var(--r);background:repeating-linear-gradient(-45deg,#0a0a0a 0 14px,#150004 14px 28px);display:grid;place-items:center;box-shadow:12px 12px 0 var(--g);animation:jit 5s infinite}
.bio-img .ph{font-family:var(--f);font-size:36px;color:#ffffff22;text-align:center}
.lead{font-size:clamp(20px,2vw,28px);line-height:1.35;margin-bottom:18px}.lead em{color:var(--r);font-style:normal;font-weight:800}
.bio-txt p{margin-bottom:16px;color:#ccc;font-size:17px}
.facts{list-style:none;margin-top:24px;border-top:1px solid #222}.facts li{padding:10px 0;border-bottom:1px solid #222;display:flex;gap:20px}.facts span{color:var(--g);min-width:70px}
.shows{display:grid;gap:12px;margin-top:30px}
.show{display:grid;grid-template-columns:130px 1fr 1fr auto;gap:18px;align-items:center;padding:18px;border:1px solid #222;background:#050505}
.show:hover{border-color:var(--g)}.show .dt{font-family:var(--f);font-size:30px;color:var(--r);line-height:1}.show .dt small{display:block;font-size:14px;color:#888}
.show .c{font-family:var(--f);font-size:24px}
.vids .v{aspect-ratio:16/9;background:#0a0a0a;border:1px solid #222;display:grid;place-items:center;font-family:var(--f);font-size:28px;color:#ffffff33;position:relative}
.vids iframe{width:100%;height:100%;border:0}
.contact{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin-top:30px}
.contact #mail{color:var(--g)}
.socials{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0}
.socials a{font-family:var(--f);letter-spacing:.08em;text-decoration:none;border:2px solid #333;padding:8px 14px;transition:.1s}.socials a:hover{border-color:var(--r);color:var(--r);animation:shake .1s 2}
.form{display:grid;gap:12px}
input,select,textarea{width:100%;background:#000;border:1px solid #333;color:#fff;padding:14px;font:15px var(--m)}
input:focus,select:focus,textarea:focus{outline:0;border-color:var(--g);box-shadow:0 0 0 1px var(--g),-3px 0 0 var(--r)}
.news{margin-top:20px}.news label{color:var(--g)}.news div{display:flex;gap:8px;margin-top:6px}.news .btn{white-space:nowrap}
.status{color:var(--g);min-height:1em}
footer{text-align:center;padding:60px 4vw;border-top:1px solid #1a1a1a}footer .glitch{font-size:clamp(40px,7vw,90px)}footer .mono{color:#666;font-size:12px}
@media(min-width:1920px){body{font-size:18px}.grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}}
@media(max-width:900px){
 .burger{display:block;z-index:82}
 nav{position:fixed;inset:0;background:#000f;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:22px;transform:translateX(100%);transition:.25s}
 nav.open{transform:none}nav a{margin:0;font-size:36px}
 .bio-wrap,.contact{grid-template-columns:1fr}.bio-img{max-width:420px}
 .beat{grid-template-columns:40px 1fr auto;gap:10px}.beat .k,.beat .t{display:none}
 .show{grid-template-columns:90px 1fr;}.show .v2,.show .btn{grid-column:2}
}
@media(max-width:480px){.sec{padding:80px 5vw}.grid{grid-template-columns:1fr 1fr;gap:12px}.cbody h3{font-size:18px}.links a{font-size:10px;padding:2px 5px}.news div{flex-direction:column}.ticker{font-size:12px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
.tagline{text-transform:none!important;font-variant:normal}.sub.tagline{font-size:clamp(22px,3.6vw,50px);letter-spacing:.18em;color:#fff}.tagline.foot{font-family:var(--f);font-size:22px;letter-spacing:.18em;margin-bottom:8px}
/* bullet-hole font on hero name only */
.big{font-family:'Rubik Distressed',var(--f)}
