/* Luxe layer v3: promoter-ready polish */
:root{--ink:#f4f1ea;--gold2:#e9d7a6}
.hero.lux{padding:0;min-height:min(88vh,860px);display:flex;align-items:center;background:#02041a url(assets/hero-club.jpg) center right/cover no-repeat;border:0;position:relative}
.hero.lux:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,4,26,.97) 0%,rgba(2,4,26,.88) 38%,rgba(2,4,26,.35) 70%,rgba(2,4,26,.15) 100%),linear-gradient(0deg,#02041a 0%,transparent 30%)}
.hero.lux .wrap{position:relative;width:100%}.hero.lux h1{max-width:760px;font-size:clamp(2.7rem,6.2vw,5.4rem)}
.hero.lux .lead{max-width:560px;color:#c3cbe6}.hero.lux .ctas{margin-top:34px;display:flex;flex-wrap:wrap;gap:12px}
.hero-meta{display:flex;flex-wrap:wrap;gap:28px;margin-top:46px;color:#9aa6cf;font-size:.86rem;letter-spacing:.04em}.hero-meta b{display:block;color:#fff;font-family:var(--serif);font-size:1.5rem;letter-spacing:0;font-weight:700}
@media(max-width:700px){.hero.lux{background-image:url(assets/hero-club-m.jpg);background-position:70% center;min-height:auto;padding:110px 0 70px}.hero.lux:before{background:linear-gradient(0deg,rgba(2,4,26,.98) 10%,rgba(2,4,26,.7) 60%,rgba(2,4,26,.55))}}
.sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap;margin-bottom:34px}.sec-head h2{margin:0}.sec-head p{margin:.4em 0 0;color:#9aa6cf;max-width:560px}
/* DJ cards */
.grid.lux{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:26px}
.djc{position:relative;display:block;border-radius:20px;overflow:hidden;text-decoration:none;color:#fff;background:#0b1236;border:1px solid rgba(255,255,255,.07);transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s,border-color .35s;aspect-ratio:4/5;isolation:isolate}
.djc:hover{transform:translateY(-6px);border-color:rgba(233,215,166,.45);box-shadow:0 30px 60px -25px rgba(255,61,242,.45)}
.djc img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.8,.2,1);z-index:-2}.djc:hover img{transform:scale(1.05)}
.djc .mono{position:absolute;inset:0;z-index:-2;display:grid;place-items:center;font-family:var(--serif);font-size:5.2rem;font-weight:700;color:rgba(255,255,255,.92);letter-spacing:-.02em;background:radial-gradient(120% 90% at 20% 10%,var(--c1,#ff3df2),transparent 60%),radial-gradient(120% 90% at 90% 90%,var(--c2,#3ff3ff),transparent 55%),#0a0f33}
.djc .mono:after{content:"";position:absolute;inset:0;background:repeating-radial-gradient(circle at 50% 50%,rgba(0,0,0,.0) 0 6px,rgba(0,0,0,.12) 6px 7px);mix-blend-mode:overlay}
.djc:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(2,4,26,.96) 0%,rgba(2,4,26,.55) 38%,transparent 65%)}
.djc .meta{position:absolute;left:0;right:0;bottom:0;padding:20px 20px 22px}
.djc h3{margin:0 0 4px;font-family:var(--serif);font-size:1.55rem;line-height:1.1}
.djc .loc{font-size:.82rem;color:#c9d0ea;letter-spacing:.06em;text-transform:uppercase}
.djc .tags{margin-top:12px;gap:6px}.djc .tag{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.14);color:#e6e9f5;backdrop-filter:blur(6px);font-size:.72rem}
.djc .pills{position:absolute;top:14px;left:14px;right:14px;display:flex;gap:6px;justify-content:space-between}
.pill{font-size:.64rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;padding:6px 10px;border-radius:999px;background:rgba(2,4,26,.6);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(8px);color:#fff}
.pill.fd{background:linear-gradient(135deg,#f3e3b5,#c9a227);color:#1a1300;border:0}.pill.live{background:#ff2d55;border:0}.pill.st{margin-left:auto}
.djc .go{display:inline-block;margin-top:14px;font-size:.8rem;font-weight:600;color:var(--gold2);letter-spacing:.08em;opacity:.85}
/* filters */
.fbar{display:flex;flex-wrap:wrap;gap:14px;align-items:center;padding:16px;border-radius:18px;background:rgba(14,22,64,.55);border:1px solid rgba(255,255,255,.07);margin-bottom:22px}
.fbar input,.fbar select{background:rgba(2,4,26,.6);border:1px solid rgba(255,255,255,.12);color:#fff;border-radius:12px;padding:12px 14px;font:inherit;font-size:.95rem;min-width:0}
.fbar input{flex:1 1 240px}.fbar select{flex:0 1 200px}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 26px}.chip{font:inherit;font-size:.82rem;padding:8px 14px;border-radius:999px;border:1px solid rgba(255,255,255,.14);background:transparent;color:#c9d0ea;cursor:pointer;transition:.2s}.chip:hover{border-color:var(--gold2);color:#fff}.chip.on{background:var(--gold2);color:#120d00;border-color:var(--gold2)}
.count{color:#9aa6cf;font-size:.9rem;margin:0 0 18px}
/* promoter band */
.pro-band{border-radius:28px;padding:60px;background:linear-gradient(135deg,rgba(233,215,166,.10),rgba(255,61,242,.08) 50%,rgba(63,243,255,.06));border:1px solid rgba(233,215,166,.22)}
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:22px;margin:30px 0}.step{padding:26px;border-radius:18px;background:rgba(2,4,26,.55);border:1px solid rgba(255,255,255,.07)}.step b{font-family:var(--serif);font-size:2rem;color:var(--gold2);display:block;line-height:1;margin-bottom:12px}
@media(max-width:700px){.pro-band{padding:30px 22px}}
/* events */
.ev{display:flex;gap:18px;align-items:flex-start}.ev .d{min-width:78px;text-align:center;padding:10px;border-radius:14px;background:rgba(233,215,166,.12);color:var(--gold2);font-weight:700;font-size:.85rem}
/* promoter tools */
.tools .card{margin-bottom:22px}.tools h2{margin-top:0}.req{border-left:3px solid var(--gold2);padding-left:14px;margin:14px 0}.st-new{color:#3ff3ff}.st-accepted{color:#7CFFB2}.st-declined{color:#ff8a8a}.st-pending{color:#e9d7a6}.st-approved{color:#7CFFB2}
.mini{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.mini .djc{aspect-ratio:1/1}.mini .djc h3{font-size:1.2rem}
dialog.bk{background:#0b1236;color:#fff;border:1px solid rgba(233,215,166,.3);border-radius:20px;max-width:520px;width:92vw;padding:26px}dialog.bk::backdrop{background:rgba(0,0,0,.7)}
.djc .mono{place-items:start center;padding-top:18%;font-size:4.6rem}
.djc:after{background:linear-gradient(0deg,rgba(2,4,26,.98) 0%,rgba(2,4,26,.75) 34%,rgba(2,4,26,.15) 62%,transparent 75%)}
body.home .banner{display:none}
#featured{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}
