
:root{--bg:#07060a;--bg2:#110a17;--card:#1a0f22;--line:#3a2346;--pink:#ff2e93;--pink2:#ff7ac0;--purple:#8b2cff;--violet:#b14dff;--ink:#f6eef7;--mute:#c4b2c9;--dim:#9a87a1}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font-family:'Space Grotesk',system-ui,sans-serif;line-height:1.5;-webkit-font-smoothing:antialiased}
body.intro-on{overflow:hidden}
img{max-width:100%;display:block}
a{color:var(--pink2)}
.wrap{max-width:1280px;margin:0 auto;padding:0 20px}
.snf{display:inline-block;height:1.15em;width:2.64em;vertical-align:-.3em;background:currentColor;-webkit-mask:url(img/sniffany.svg) center/contain no-repeat;mask:url(img/sniffany.svg) center/contain no-repeat}
.glow{color:var(--pink);filter:drop-shadow(0 0 10px rgba(255,46,147,.7)) drop-shadow(0 0 26px rgba(139,44,255,.5))}
h1,h2.title{font-family:'Unbounded',sans-serif;font-weight:900;letter-spacing:-.03em;line-height:1;margin:0}
h2.title{font-size:clamp(36px,5.6vw,72px)}
.kicker{margin:0;color:var(--pink);font-size:14px;font-weight:700;letter-spacing:.22em;text-transform:uppercase}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 26px;border-radius:999px;font-weight:700;font-size:15px;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;border:2px solid transparent;cursor:pointer;font-family:inherit;transition:transform .15s ease,box-shadow .2s ease}
.btn:hover{transform:translateY(-2px)}
.btn-pink{background:var(--pink);color:#1a0010;box-shadow:0 0 24px rgba(255,46,147,.45)}
.btn-pink:hover{box-shadow:0 0 36px rgba(255,46,147,.75)}
.btn-ghost{background:transparent;color:var(--ink);border-color:var(--line)}
.btn-ghost:hover{border-color:var(--pink)}
.btn-sm{min-height:44px;padding:0 18px;font-size:14px}
.top{position:sticky;top:0;z-index:50;background:rgba(7,6,10,.84);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid rgba(58,35,70,.6)}
.presale{background:var(--pink);color:#1a0010;text-align:center;font-size:14px;font-weight:500;padding:8px 16px}
.presale a{color:#1a0010;font-weight:700}
.top-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:12px;padding-bottom:12px;flex-wrap:wrap}
.wordmark{display:block;line-height:0}
.wordmark img{height:46px;width:auto;filter:drop-shadow(0 0 10px rgba(255,46,147,.65)) drop-shadow(0 0 24px rgba(139,44,255,.45))}
.nav{display:flex;gap:24px;flex-wrap:wrap}
.nav a{color:var(--ink);text-decoration:none;font-size:14px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;padding:6px 0;border-bottom:2px solid transparent}
.nav a:hover{color:var(--pink)}
.nav a[aria-current="page"]{color:var(--pink);border-bottom-color:var(--pink)}
body.intro-on .wordmark{opacity:0}
.hero{overflow:hidden;background:radial-gradient(60% 70% at 85% 30%,rgba(139,44,255,.35),transparent 70%),radial-gradient(50% 60% at 10% 90%,rgba(255,46,147,.22),transparent 70%)}
.hero-grid{display:flex;flex-wrap:wrap;align-items:center;gap:48px;padding-top:56px;padding-bottom:88px}
.hero-copy{flex:1 1 480px;min-width:0;display:flex;flex-direction:column;gap:22px}
.hero h1{font-size:clamp(46px,7.4vw,104px);line-height:.95;letter-spacing:-.04em}
.hero h1 .snf{height:1.3em;width:2.98em;vertical-align:-.36em}
.hero p.lede{margin:0;font-size:19px;color:var(--mute);max-width:520px}
.ctas{display:flex;flex-wrap:wrap;gap:14px}
.hero-art{flex:1 1 420px;min-width:0;position:relative;display:flex;justify-content:center}
.hero-photo{width:min(100%,500px);aspect-ratio:4/5;border-radius:28px;overflow:hidden;border:2px solid rgba(255,46,147,.6);box-shadow:0 0 60px rgba(255,46,147,.35),0 0 120px rgba(139,44,255,.3)}
.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center 25%}
.hero-disco{position:absolute;width:clamp(170px,22vw,260px);top:-46px;right:max(-10px,calc(50% - 330px));pointer-events:none}
.rays{animation:spin 24s linear infinite}
.spark{animation:twinkle 2.4s ease-in-out infinite}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes twinkle{0%,100%{opacity:.2}50%{opacity:1}}
.page-hero{position:relative;overflow:hidden;padding:72px 0 56px;background:radial-gradient(55% 90% at 80% 0%,rgba(139,44,255,.38),transparent 70%),radial-gradient(45% 80% at 0% 100%,rgba(255,46,147,.25),transparent 70%);border-bottom:1px solid var(--line)}
.page-hero h1{font-size:clamp(46px,8vw,110px)}
.page-hero p{margin:14px 0 0;color:var(--mute);font-size:19px;max-width:620px}
.page-hero .disco-bg{position:absolute;right:-40px;top:-60px;width:clamp(200px,28vw,360px);opacity:.75;pointer-events:none}
.band{background:var(--bg2);padding:80px 0}
.plain{padding:80px 0}
.sec-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:32px}
.sec-head a{color:var(--ink)}
.filters{display:flex;gap:10px;flex-wrap:wrap}
.filters button{font:inherit;font-weight:500;min-height:44px;padding:0 20px;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--ink);cursor:pointer}
.filters button[aria-pressed="true"]{background:var(--ink);color:var(--bg);border-color:var(--ink);font-weight:700}
.shows{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.show{display:flex;flex-wrap:wrap;align-items:center;gap:14px 32px;padding:22px 0;border-bottom:1px solid var(--line)}
.show-date{margin:0;flex:0 0 140px;font-family:'Unbounded',sans-serif;font-weight:800;font-size:20px;color:var(--pink)}
.show-where{flex:1 1 260px;min-width:0}
.show-city{margin:0;font-size:21px;font-weight:700}
.show-venue{margin:2px 0 0;color:var(--dim)}
.show-cta{display:flex;gap:10px}
.follow{display:inline-block;margin-top:24px;color:var(--ink)}
.release{display:flex;flex-wrap:wrap;align-items:center;gap:48px}
.cover{flex:0 1 420px;min-width:0;width:100%;aspect-ratio:1/1;border-radius:20px;background:radial-gradient(circle at 50% 40%,#2a0b3d,#07060a 70%);border:1px solid var(--line);overflow:hidden;position:relative}
.cover svg{width:100%;height:100%}
.cover .snf{position:absolute;left:50%;bottom:7%;transform:translateX(-50%);font-size:clamp(34px,4.6vw,56px)}
.cover-tag{position:absolute;left:14px;top:12px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--dim)}
.release-copy{flex:1 1 380px;min-width:0;display:flex;flex-direction:column;gap:18px}
.release-copy p{margin:0;color:var(--mute);font-size:18px}
.pills{display:flex;flex-wrap:wrap;gap:10px}
.list{background:linear-gradient(120deg,var(--pink) 0%,#e0249a 55%,#9b2cff 130%);color:#1a0010;padding:80px 0}
.list-grid{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:32px}
.list h2{font-family:'Unbounded',sans-serif;font-weight:900;font-size:clamp(34px,5vw,60px);line-height:1.05;letter-spacing:-.03em;margin:0}
.list p{margin:14px 0 0;font-size:19px;font-weight:500}
.list form{flex:1 1 420px;min-width:0;display:flex;flex-direction:column;gap:10px}
.list label{font-size:14px;font-weight:700}
.list input{font:inherit;font-size:17px;padding:15px 18px;border-radius:12px;border:2px solid #1a0010;background:#fff3f9;color:#1a0010}
.list button{margin-top:6px;background:#1a0010;color:#fff3f9;border:0}
.mixes{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}
.mix{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:22px;display:flex;flex-direction:column;gap:16px}
.mix-top{display:flex;align-items:center;gap:14px}
.play{width:52px;height:52px;flex:0 0 52px;border-radius:50%;border:0;background:var(--pink);color:#1a0010;display:grid;place-items:center;cursor:pointer;box-shadow:0 0 18px rgba(255,46,147,.5)}
.mix-title{margin:0;font-weight:700;font-size:18px}
.mix-meta{margin:2px 0 0;color:var(--dim);font-size:15px}
.wave{height:44px;border-radius:8px;background:repeating-linear-gradient(90deg,rgba(177,77,255,.75) 0 3px,transparent 3px 7px)}
.products{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:22px}
.product{text-decoration:none;color:var(--ink);display:flex;flex-direction:column;gap:6px}
.product-img{aspect-ratio:1/1;border-radius:18px;overflow:hidden;background:#000;border:1px solid var(--line);margin-bottom:8px;transition:border-color .2s,box-shadow .2s}
.product:hover .product-img{border-color:var(--pink);box-shadow:0 0 28px rgba(255,46,147,.35)}
.product-img img{width:100%;height:100%;object-fit:cover}
.product-name{margin:0;font-weight:700;font-size:18px}
.product-note{margin:0;color:var(--dim);font-size:15px}
.product-price{margin:0;color:var(--pink2);font-weight:700}
.gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.g-item{margin:0;border-radius:18px;overflow:hidden;aspect-ratio:4/5;border:1px solid var(--line)}
.g-item img{width:100%;height:100%;object-fit:cover}
@media (min-width:900px){.gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.g-wide{grid-column:span 2;aspect-ratio:auto}}
.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}
.tile{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:260px;padding:24px;border-radius:20px;overflow:hidden;text-decoration:none;color:var(--ink);border:1px solid var(--line);background:var(--card);transition:border-color .2s,box-shadow .2s,transform .2s}
.tile:hover{border-color:var(--pink);box-shadow:0 0 30px rgba(255,46,147,.35);transform:translateY(-3px)}
.tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.55}
.tile::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,6,10,0) 30%,rgba(7,6,10,.9))}
.tile span{position:relative;z-index:1}
.tile .t-name{font-family:'Unbounded',sans-serif;font-weight:900;font-size:30px;letter-spacing:-.02em}
.tile .t-sub{color:var(--mute);font-size:15px;margin-top:4px}
.book{display:flex;flex-wrap:wrap;gap:48px}
.book-copy{flex:1 1 420px;min-width:0;display:flex;flex-direction:column;gap:18px;align-items:flex-start}
.book-copy p{margin:0;color:var(--mute);font-size:18px}
.contacts{flex:1 1 420px;min-width:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:26px}
.contacts h3{margin:0 0 6px;font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:var(--pink)}
.contacts p{margin:0;font-size:17px}
.epk-list{margin:0;padding:0;list-style:none;display:grid;gap:10px;color:var(--mute)}
.epk-list li::before{content:"✦ ";color:var(--pink)}
footer{padding:48px 0 64px;border-top:1px solid var(--line)}
.socials{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:24px}
.socials a{color:var(--ink);text-decoration:none;border:1px solid var(--line);border-radius:999px;padding:11px 18px}
.socials a:hover{border-color:var(--pink)}
.scam{color:var(--dim);max-width:720px;margin:0 0 24px}
.scam .snf{height:1.7em;width:3.9em;vertical-align:-.6em;color:var(--pink)}
.foot-row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;color:var(--dim);font-size:14px}
.foot-row .snf{font-size:30px}
#intro{position:fixed;inset:0;z-index:100;overflow:hidden;pointer-events:auto}
#intro .half{position:absolute;left:0;right:0;height:50.5%;background:#07060a}
#intro .half.t{top:0}
#intro .half.b{bottom:0}
#intro .lights{position:absolute;inset:0;display:grid;place-items:center}
#intro .beams{position:absolute;width:220vmax;height:220vmax;left:50%;top:50%;margin:-110vmax 0 0 -110vmax;background:repeating-conic-gradient(from 0deg,rgba(255,46,147,.0) 0deg 7deg,rgba(255,46,147,.55) 9deg,rgba(255,46,147,0) 12deg 21deg,rgba(177,77,255,.5) 23deg,rgba(177,77,255,0) 26deg 30deg);-webkit-mask:radial-gradient(circle,#000 0,rgba(0,0,0,.6) 18%,transparent 52%);mask:radial-gradient(circle,#000 0,rgba(0,0,0,.6) 18%,transparent 52%);animation:spin 9s linear infinite;opacity:0}
#intro .beams.b2{animation-direction:reverse;animation-duration:13s;filter:hue-rotate(40deg)}
#intro .bloom{position:absolute;width:90vmin;height:90vmin;border-radius:50%;background:radial-gradient(circle,rgba(255,46,147,.55),rgba(139,44,255,.35) 45%,transparent 70%);opacity:0}
#intro .flash{position:absolute;inset:0;background:radial-gradient(circle,rgba(255,255,255,.95),rgba(255,46,147,.7) 25%,rgba(139,44,255,.3) 50%,transparent 75%);opacity:0;pointer-events:none}
.i-word{position:absolute;left:50%;top:50%;width:min(86vw,880px);aspect-ratio:2398/1044;transform:translate(-50%,-50%);will-change:transform}
.i-word img{position:absolute;top:0;height:100%;width:auto}
.i-s{left:0;opacity:0}
.i-rest{left:19.43%;opacity:0}
.i-logo{position:absolute;opacity:0;will-change:transform,opacity;filter:drop-shadow(0 0 40px rgba(255,46,147,.85)) drop-shadow(0 0 90px rgba(139,44,255,.6))}
.i-word img.i-s,.i-word img.i-rest{filter:drop-shadow(0 0 14px rgba(255,46,147,.75)) drop-shadow(0 0 34px rgba(139,44,255,.5))}
.skip{position:absolute;right:18px;bottom:18px;z-index:3;font:inherit;font-size:14px;color:var(--mute);background:rgba(7,6,10,.6);border:1px solid var(--line);border-radius:999px;padding:10px 16px;min-height:44px;cursor:pointer}
.sound{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 14px;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--ink);font:inherit;font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}
.sound:hover{border-color:var(--pink)}
.sound[aria-pressed="true"]{border-color:var(--pink);color:var(--pink);box-shadow:0 0 16px rgba(255,46,147,.35)}
.eq{display:inline-flex;align-items:flex-end;gap:2px;height:14px}
.eq i{display:block;width:3px;height:4px;background:currentColor;border-radius:1px}
.sound[aria-pressed="true"] .eq i{animation:eq .9s ease-in-out infinite}
.eq i:nth-child(2){animation-delay:.2s!important}.eq i:nth-child(3){animation-delay:.4s!important}.eq i:nth-child(4){animation-delay:.1s!important}
@keyframes eq{0%,100%{height:4px}50%{height:14px}}
.top-actions{display:flex;align-items:center;gap:10px}
.sound-hint{position:absolute;left:18px;bottom:24px;z-index:3;font-size:14px;color:var(--mute);letter-spacing:.08em;text-transform:uppercase;animation:twinkle 2s ease-in-out infinite}
@media (prefers-reduced-motion:reduce){.rays,.spark,#intro .beams{animation:none}}
@media (max-width:640px){.wordmark img{height:36px}.nav{gap:8px}.nav a{font-size:12px;letter-spacing:.06em}.top-row .btn{display:none}.sound .lbl{display:none}.top-actions{order:2;margin-left:auto}.nav{order:3;width:100%;justify-content:space-between}.hero-grid{padding-top:32px}.hero-disco{top:-30px;right:-6px}.page-hero{padding:48px 0 40px}}
