:root{--bg:#0b0a10;--bg2:#14121c;--bg3:#1d1a28;--fg:#f2eef8;--muted:#a59fb6;--pink:#ff2e88;--teal:#2de2e6;--lime:#c6ff3d;--line:#2b2738;
--display:"Arial Black","Helvetica Neue",Impact,system-ui,sans-serif;--body:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--fg);font:16px/1.55 var(--body);
background-image:radial-gradient(circle at 15% -10%,rgba(255,46,136,.18),transparent 40%),radial-gradient(circle at 110% 10%,rgba(45,226,230,.12),transparent 35%)}
a{color:var(--teal)}a:hover{color:var(--pink)}
.wrap{max-width:1120px;margin:0 auto;padding:0 16px}
.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:#fff;color:#000;padding:8px;z-index:9}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.checker{height:10px;background:conic-gradient(#f2eef8 25%,#0b0a10 0 50%,#f2eef8 0 75%,#0b0a10 0) 0 0/10px 10px;opacity:.85}
.site-head{position:sticky;top:0;z-index:5;background:rgba(11,10,16,.92);backdrop-filter:blur(8px)}
.head-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;padding-top:10px;padding-bottom:10px}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--fg)}
.logo-20{font:900 22px/1 var(--display);background:var(--pink);color:#0b0a10;padding:6px 7px 4px;transform:rotate(-4deg);box-shadow:3px 3px 0 var(--teal)}
.logo-txt{font:900 18px/1 var(--display);letter-spacing:-.02em;text-transform:uppercase}
.nav{display:flex;gap:2px;flex-wrap:nowrap;overflow-x:auto;max-width:100%;scrollbar-width:none}.nav::-webkit-scrollbar{display:none}
.nav a{color:var(--fg);text-decoration:none;font-weight:700;font-size:14px;padding:6px 9px;border-radius:4px;text-transform:uppercase;letter-spacing:.04em}
.nav a:hover,.nav a[aria-current]{background:var(--bg3);color:var(--pink)}
main{padding-top:20px;padding-bottom:40px}
h1,h2,h3{font-family:var(--display);line-height:1.08;letter-spacing:-.02em}
h1{font-size:clamp(28px,6vw,52px);margin:.2em 0 .3em;text-transform:uppercase}
h2.sec{font-size:clamp(18px,3.4vw,24px);text-transform:uppercase;margin:34px 0 12px;display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;border-bottom:3px solid var(--pink);padding-bottom:6px}
h2.sec .more{margin-left:auto;font-size:13px;font-family:var(--body)}
h3{font-size:18px;margin:.2em 0}
.lead{font-size:18px;color:#d9d3e6;max-width:70ch}
.muted{color:var(--muted)}.small{font-size:13px}
.kicker{margin:0 0 4px;font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.hero{padding:22px 0 8px}
.hero h1 .hl{color:var(--pink);text-shadow:3px 3px 0 rgba(45,226,230,.5)}
.hero-stats{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px}
.hero-stats div{background:var(--bg2);border:1px solid var(--line);padding:10px 14px;border-radius:6px;min-width:120px}
.hero-stats b{display:block;font:900 28px/1 var(--display);color:var(--lime)}.hero-stats span{font-size:12px;color:var(--muted);text-transform:uppercase}
.grid-2{display:grid;gap:20px}
@media(min-width:880px){.grid-2{grid-template-columns:1.7fr 1fr}}
.stack{display:grid;gap:12px}
.card{background:var(--bg2);border:1px solid var(--line);border-radius:8px;color:var(--fg);text-decoration:none;display:flex;gap:12px;padding:12px;transition:transform .12s,border-color .12s}
a.card:hover{transform:translateY(-2px);border-color:var(--pink);color:var(--fg)}
.card h3 a{color:var(--fg);text-decoration:none}.card h3 a:hover{color:var(--pink)}
.card-body p{margin:.25em 0}
.tour-card{border-left:4px solid var(--pink)}
.cards{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
.album-card h3{font-size:15px}
.cover{--h:330;flex:none;width:72px;height:72px;border-radius:4px;position:relative;overflow:hidden;
background:linear-gradient(135deg,hsl(var(--h) 85% 55%),hsl(calc(var(--h) + 60) 70% 25%) 70%,#0b0a10);box-shadow:inset 0 0 0 2px rgba(255,255,255,.08)}
.cover::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(45deg,transparent 0 6px,rgba(0,0,0,.12) 6px 7px)}
.cover-in{position:absolute;left:6px;bottom:4px;font:900 22px/1 var(--display);color:#fff;mix-blend-mode:overlay;z-index:1}
.cover-yr{position:absolute;right:5px;top:4px;font:800 10px/1 var(--body);color:rgba(255,255,255,.85);z-index:1}
.cover-lg{width:min(42vw,220px);height:min(42vw,220px);border-radius:6px;box-shadow:6px 6px 0 var(--pink)}
.cover-lg .cover-in{font-size:clamp(36px,9vw,64px);left:12px;bottom:8px}.cover-lg .cover-yr{font-size:14px;right:10px;top:10px}
.badge{display:inline-block;font:800 11px/1 var(--body);text-transform:uppercase;letter-spacing:.06em;padding:4px 7px;border-radius:3px;background:var(--bg3);color:var(--fg);border:1px solid var(--line)}
.b-anniversary{background:var(--pink);color:#0b0a10;border-color:var(--pink)}
.b-reunion{background:var(--teal);color:#0b0a10;border-color:var(--teal)}
.b-farewell{background:#ffb02e;color:#0b0a10;border-color:#ffb02e}
.b-active{background:var(--lime);color:#0b0a10;border-color:var(--lime)}
.b-full{border-color:var(--lime);color:var(--lime)}
.b-upcoming{border-color:var(--teal);color:var(--teal)}
.b-past{opacity:.7}
.panel{background:var(--bg2);border:1px solid var(--line);border-radius:8px;padding:14px 16px;margin-bottom:14px}
.panel h2.sec{margin-top:0}
.list-dates{list-style:none;padding:0;margin:0}.list-dates li{padding:7px 0;border-bottom:1px dashed var(--line)}
.list-dates time{display:inline-block;min-width:54px;font-weight:800;color:var(--lime)}
.tix{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0}
.btn{display:inline-block;text-decoration:none;font:800 13px/1 var(--body);padding:9px 12px;border-radius:4px;border:2px solid var(--fg);color:var(--fg);text-transform:uppercase;letter-spacing:.03em}
.btn:hover{background:var(--fg);color:#0b0a10}
.btn-ticketmaster{border-color:#3d8bff}.btn-stubhub{border-color:#a07cff}.btn-vivid-seats{border-color:#ff7a3d}
.tix-sm .btn{padding:6px 8px;font-size:11px}
.btn-primary{background:var(--pink);border-color:var(--pink);color:#0b0a10;cursor:pointer}.btn-primary:hover{background:var(--teal);border-color:var(--teal)}
.table-wrap{overflow-x:auto}
table.dates{width:100%;border-collapse:collapse;font-size:14px}
.dates th{text-align:left;font-size:12px;text-transform:uppercase;color:var(--muted);border-bottom:2px solid var(--line);padding:6px}
.dates td{padding:8px 6px;border-bottom:1px solid var(--line);vertical-align:top}
.dates tr.past{opacity:.45}
@media(max-width:640px){.dates thead{display:none}.dates tr{display:block;padding:8px 0;border-bottom:1px solid var(--line)}.dates td{display:block;border:0;padding:2px 0}
.dates td[data-l="Date"]{font-weight:800;color:var(--lime)}}
.sources{margin-top:10px;font-size:14px}.sources h4{margin:6px 0;font-size:12px;text-transform:uppercase;color:var(--muted)}.sources ul{margin:0;padding-left:18px}
.album-head{display:flex;gap:20px;align-items:flex-start;flex-wrap:wrap}
.album-head>div:last-child{flex:1;min-width:260px}
.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;margin:12px 0}
.facts div{background:var(--bg2);border:1px solid var(--line);border-radius:6px;padding:8px 10px}
.facts dt{font-size:11px;text-transform:uppercase;color:var(--muted);letter-spacing:.08em}.facts dd{margin:2px 0 0;font-weight:800}
.count b{font:900 34px/1 var(--display);color:var(--lime);margin-right:6px}
.milestones{list-style:none;padding:0;margin:0;display:grid;gap:6px}.milestones li{padding:6px 8px;background:var(--bg3);border-radius:4px}
.milestones li.done{opacity:.55;text-decoration:line-through}.milestones b{color:var(--pink);margin-right:8px}
.nl{background:linear-gradient(135deg,#2a0f22,#0f1f26);border:2px solid var(--pink);border-radius:10px;padding:16px;margin:20px 0;box-shadow:5px 5px 0 var(--teal)}
.nl h2{margin:0 0 6px;text-transform:uppercase;font-size:22px}.nl p{margin:.3em 0}
.nl-form{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.nl-form input{flex:1;min-width:180px;padding:10px 12px;border-radius:4px;border:2px solid var(--line);background:#09080d;color:var(--fg);font-size:16px}
.nl-form input:focus{outline:none;border-color:var(--teal)}
.crumbs{font-size:13px;color:var(--muted);margin-bottom:6px}.crumbs a{color:var(--muted)}
.status-line{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.band-list{columns:2 220px;padding-left:18px}.band-list li{margin:4px 0}
.calendar{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.month{background:var(--bg2);border:1px solid var(--line);border-top:4px solid var(--teal);border-radius:6px;padding:10px 14px}
.month h3{text-transform:uppercase;margin:0 0 6px}.month ul{list-style:none;margin:0;padding:0}.month li{padding:5px 0;border-bottom:1px dashed var(--line)}
.month .day{display:inline-block;width:28px;font-weight:900;color:var(--pink)}
.jump a{display:inline-block;margin:0 6px 6px 0;padding:4px 8px;background:var(--bg3);border-radius:4px;text-decoration:none;font-weight:800}
.notice{background:#2a2410;border:1px solid #ffb02e;padding:10px 14px;border-radius:6px}
.site-foot{margin-top:30px;background:#07060a;color:var(--muted);font-size:14px}.foot-grid{padding:16px}
@media(max-width:640px){.site-head{position:static}.nav a{font-size:13px;padding:6px 7px;white-space:nowrap}.head-row{gap:4px}}
.nl-cta{margin:12px 0 6px}.btn-lg{padding:13px 20px;font-size:15px;box-shadow:3px 3px 0 var(--teal)}
