/* Layout: full-bleed hero → latest release → crate (filterable track list) → DJ services → about/shop → join.
   Single dark look on purpose (club booth). Booth data set in mono like a CDJ readout. */
:root{
  --bg:#070707; --panel:#111; --panel-2:#171717; --text:#f4f0e8; --muted:#a9a49b;
  --accent:#ff8500; --accent-2:#ffb24a; --line:rgba(255,255,255,.13); --line-strong:rgba(255,255,255,.32);
  --f-display:"Archivo",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --f-body:"Archivo",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --f-data:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  --max:1220px; --gutter:clamp(16px,4vw,54px);
  color-scheme:dark;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--bg)}
body{margin:0;font-family:var(--f-body);background:var(--bg);color:var(--text);line-height:1.5;overflow-x:hidden;font-size:16px}
a{color:inherit;text-decoration:none} button,input,select{font:inherit;color:inherit}
img{display:block;max-width:100%}
h1,h2,h3,h4{font-family:var(--f-display);text-wrap:balance;margin:0}
:focus-visible{outline:2px solid var(--accent-2);outline-offset:3px;border-radius:6px}
.wrap{width:min(var(--max),100%);margin-inline:auto;padding-inline:var(--gutter)}
.label{margin:0 0 12px;color:var(--accent-2);text-transform:uppercase;letter-spacing:.19em;font-size:.72rem;font-weight:700}
.muted{color:var(--muted)}

/* Header */
.site-header{position:fixed;inset:0 0 auto 0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:calc(18px + env(safe-area-inset-top,0px)) var(--gutter) 18px;background:linear-gradient(to bottom,rgba(0,0,0,.85),rgba(0,0,0,0));transition:background .2s}
.site-header.scrolled{background:rgba(7,7,7,.92);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.brand{font-family:var(--f-display);font-weight:900;letter-spacing:.14em;font-size:1rem;white-space:nowrap}
.nav{display:flex;align-items:center;gap:22px}
.nav a{font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.78)}
.nav a:hover{color:#fff}
.nav .nav-pill{border:1px solid var(--accent);padding:9px 14px;border-radius:999px;color:#fff}
.menu-button{display:none;background:none;border:0;color:var(--text);font-size:1.3rem;cursor:pointer;padding:4px 8px}

/* Buttons */
.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 20px;border-radius:999px;border:1px solid var(--line-strong);text-transform:uppercase;letter-spacing:.11em;font-weight:700;font-size:.74rem;background:transparent;cursor:pointer;transition:transform .2s,border-color .2s,background .2s}
.button:hover{transform:translateY(-2px);border-color:var(--text)}
.button.primary{background:var(--accent);color:#111;border-color:var(--accent)}
.button.primary:hover{background:var(--accent-2);border-color:var(--accent-2)}

/* Hero */
.hero{position:relative;isolation:isolate;min-height:min(92svh,860px);display:grid;align-items:end;background:#050505;overflow:hidden}
.hero-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:62% center;z-index:-2}
.hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(0,0,0,.92),rgba(0,0,0,.5) 50%,rgba(0,0,0,.25) 75%,rgba(0,0,0,.6)),linear-gradient(0deg,var(--bg) 0%,transparent 35%)}
.hero-content{padding-block:150px clamp(64px,9vw,110px)}
.hero h1{font-size:clamp(3.6rem,12vw,10rem);line-height:.84;letter-spacing:-.055em;font-weight:900;font-stretch:112%}
.hero-tag{margin-top:20px;font-family:var(--f-display);font-size:clamp(1.5rem,3.6vw,3rem);font-weight:800;letter-spacing:-.03em;line-height:1.05}
.hero-tag em{font-style:normal;color:var(--accent)}
.hero-copy{max-width:600px;margin:14px 0 0;font-size:clamp(1rem,1.7vw,1.25rem);color:rgba(255,255,255,.76)}
.actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}

/* Ticker */
.ticker{border-block:1px solid var(--line);overflow:hidden;white-space:nowrap;background:#0a0a0a}
.ticker-track{display:inline-block;padding:14px 0;animation:ticker 30s linear infinite;color:rgba(255,255,255,.72);font-family:var(--f-data);font-size:.74rem;letter-spacing:.14em;text-transform:uppercase}
.ticker b{color:var(--accent-2);font-weight:500}
@keyframes ticker{to{transform:translateX(-50%)}}

/* Sections */
.section{padding-block:clamp(72px,9vw,124px)}
.section-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.7fr);gap:40px;align-items:end;margin-bottom:38px}
.section-head>p{margin:0;color:var(--muted);max-width:520px}
h2{font-size:clamp(2.5rem,6vw,5.4rem);letter-spacing:-.05em;line-height:.94;font-weight:900}

/* Data chips (booth readout) */
.chips{display:flex;flex-wrap:wrap;gap:6px}
.chip{font-family:var(--f-data);font-size:.72rem;padding:5px 9px;border-radius:6px;background:var(--panel-2);border:1px solid var(--line);color:#e6e1d8;white-space:nowrap}
.chip.key b{color:var(--accent-2);font-weight:500}
.chip.moment{border-color:rgba(255,133,0,.4);color:var(--accent-2)}

/* Latest release */
.latest{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);border:1px solid var(--line);border-radius:24px;overflow:hidden;background:linear-gradient(145deg,#141008,#111 60%)}
.latest-art{aspect-ratio:1/1;max-width:100%;background:#0b0b0b}
.latest-art img{width:100%;height:100%;object-fit:cover}
.latest-copy{padding:clamp(26px,4vw,52px);display:flex;flex-direction:column;justify-content:center;gap:16px;min-width:0}
.latest-copy h3{font-size:clamp(2.6rem,6vw,5.4rem);line-height:.9;letter-spacing:-.045em;font-weight:900}
.latest-copy .meta{font-family:var(--f-data);font-size:.8rem;color:var(--muted)}
.latest-copy p{margin:0;color:var(--muted);max-width:46ch}
.platforms{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.platforms .button{min-height:40px;padding:0 15px;font-size:.68rem}

/* Typographic fallback when a cover is missing */
.fallback{position:relative;width:100%;height:100%;display:grid;place-items:center;padding:12%;text-align:center;background:radial-gradient(circle at 50% 50%,#1a1a1a 0 28%,#0d0d0d 28.5% 29%,#141414 29.5% 100%);font-family:var(--f-display);font-weight:900;letter-spacing:-.03em;line-height:.95;color:var(--text)}
.fallback:after{content:"";position:absolute;width:6%;aspect-ratio:1;border-radius:50%;background:var(--accent);left:47%;top:47%}
.fallback span{position:relative;z-index:1;font-size:clamp(.8rem,2.2vw,1.5rem);transform:translateY(-120%)}
.latest-art .fallback span{font-size:clamp(1.6rem,4vw,3rem)}

/* Listen */
.listen{margin-top:56px;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:32px;align-items:center;border:1px solid rgba(255,133,0,.28);border-radius:24px;padding:clamp(22px,4vw,40px);background:radial-gradient(circle at 6% 0%,rgba(255,133,0,.12),transparent 35%),linear-gradient(145deg,#151515,#0b0b0b 70%)}
.listen h3{font-size:clamp(1.9rem,3.6vw,3.2rem);line-height:.98;letter-spacing:-.04em}
.listen p{color:var(--muted);margin:12px 0 0}
.player{min-height:352px;border-radius:16px;overflow:hidden;background:#0d0d0d;border:1px solid var(--line);display:grid;place-items:center;text-align:center;padding:20px}
.player iframe{width:100%;height:352px;border:0;display:block}
.player.loaded{padding:0}
.player small{display:block;max-width:34ch;margin:12px auto 0;color:var(--muted);font-size:.78rem}

/* Featured */
.featured{margin-top:72px}
.featured-head{display:flex;justify-content:space-between;align-items:end;gap:18px;margin-bottom:18px;flex-wrap:wrap}
.featured-head h3{font-size:clamp(1.6rem,3vw,2.4rem);letter-spacing:-.03em}
.featured-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.feature{display:block;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--panel);transition:transform .2s,border-color .2s}
.feature:hover{transform:translateY(-3px);border-color:var(--line-strong)}
.feature .art{aspect-ratio:1/1;max-width:100%;background:#0b0b0b}
.feature .art img{width:100%;height:100%;object-fit:cover}
.feature .copy{padding:14px 16px 16px}
.feature h4{font-size:1.02rem;line-height:1.15;margin-bottom:8px}

/* Crate (catalogue) */
.crate{margin-top:72px}
.crate-head{display:flex;justify-content:space-between;align-items:end;gap:18px;flex-wrap:wrap;margin-bottom:18px}
.crate-head h3{font-size:clamp(1.6rem,3vw,2.4rem);letter-spacing:-.03em}
.count{font-family:var(--f-data);font-size:.78rem;color:var(--muted)}
.filters{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center;padding:14px 0;border-block:1px solid var(--line)}
.filter-group{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.filter-group>span{font-size:.68rem;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);margin-right:4px}
.filter-btn{border:1px solid var(--line);background:transparent;border-radius:999px;padding:7px 12px;font-size:.72rem;letter-spacing:.06em;cursor:pointer}
.filter-btn:hover{border-color:var(--line-strong)}
.filter-btn[aria-pressed="true"]{background:var(--accent);border-color:var(--accent);color:#111;font-weight:700}
.select{background:var(--panel);border:1px solid var(--line);border-radius:999px;padding:7px 12px;font-size:.74rem}
.tracks{list-style:none;margin:0;padding:0}
.track{display:grid;grid-template-columns:64px minmax(0,2.2fr) minmax(0,1.3fr) minmax(0,1.6fr) auto;gap:18px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line);scroll-margin-top:110px}
.track:target{background:linear-gradient(90deg,rgba(255,133,0,.12),transparent)}
.track .thumb{width:64px;aspect-ratio:1/1;border-radius:8px;overflow:hidden;background:#0b0b0b}
.track .thumb img{width:100%;height:100%;object-fit:cover}
.track .thumb .fallback span{display:none}
.track h4{font-size:1.02rem;line-height:1.15}
.track .version{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-2);margin-top:3px}
.track .genre{font-size:.82rem;color:var(--muted)}
.track .date{font-family:var(--f-data);font-size:.7rem;color:#777;margin-top:2px}
.links{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.links a{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid var(--line);font-family:var(--f-data);font-size:.62rem;font-weight:500;transition:border-color .2s,color .2s}
.links a:hover{border-color:var(--accent);color:var(--accent-2)}
.links a.bp{border-color:rgba(255,133,0,.55);color:var(--accent-2)}
.empty{padding:28px 0;color:var(--muted)}
.legend{display:flex;flex-wrap:wrap;gap:14px;margin-top:16px;color:var(--muted);font-size:.72rem}
.legend b{font-family:var(--f-data);font-weight:500;color:var(--text)}

/* For DJs */
.dj-section{background:#0b0b0b;border-block:1px solid var(--line)}
.dj-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.dj-card{border:1px solid var(--line);background:var(--panel);border-radius:18px;padding:22px;display:flex;flex-direction:column;gap:10px;min-height:220px}
.dj-card h3{font-size:1.35rem;letter-spacing:-.02em}
.dj-card p{color:var(--muted);margin:0}
.dj-card .tagline{margin-top:auto;font-family:var(--f-data);font-size:.72rem;color:var(--accent-2)}
.dj-cta{margin-top:22px;border:1px solid rgba(255,133,0,.4);border-radius:20px;background:linear-gradient(135deg,rgba(255,133,0,.1),#111 60%);display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px;flex-wrap:wrap}
.dj-cta h3{font-size:1.8rem}
.dj-cta p{margin:6px 0 0;color:var(--muted)}

/* About + shop */
.about{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:24px;align-items:stretch}
.about-main p{font-size:clamp(1.05rem,1.6vw,1.3rem);color:#d8d3ca;max-width:52ch;margin:0 0 16px}
.shop-card{border:1px solid var(--line);border-radius:20px;background:var(--panel);padding:28px;display:flex;flex-direction:column;gap:12px}
.shop-card h3{font-size:1.9rem;letter-spacing:-.03em}
.shop-card p{color:var(--muted);margin:0}
.shop-list{list-style:none;padding:0;margin:4px 0 0;display:grid;gap:10px}
.shop-list li{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-top:1px solid var(--line);font-size:.92rem}
.shop-list .status{font-family:var(--f-data);font-size:.7rem;color:var(--accent-2);text-transform:uppercase;white-space:nowrap}
.shop-list a{text-decoration:underline;text-underline-offset:3px}

/* Join */
.join{border:1px solid var(--line);border-radius:24px;background:#101010;padding:clamp(26px,5vw,54px);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:center}
.join h2{font-size:clamp(2.3rem,5vw,4.4rem)}
.join p{color:var(--muted)}
.join-form{display:grid;gap:14px;min-width:0}
.audience{display:flex;gap:8px;flex-wrap:wrap;border:0;padding:0;margin:0}
.audience legend{font-size:.7rem;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);margin-bottom:8px}
.audience label{cursor:pointer}
.audience input{position:absolute;opacity:0;pointer-events:none}
.audience span{display:inline-flex;min-width:90px;justify-content:center;border:1px solid var(--line);border-radius:999px;padding:9px 16px;text-transform:uppercase;letter-spacing:.1em;font-size:.72rem;font-weight:700}
.audience input:checked+span{background:var(--accent);border-color:var(--accent);color:#111}
.audience input:focus-visible+span{outline:2px solid var(--accent-2);outline-offset:3px}
.email-row{display:flex;gap:8px;flex-wrap:wrap}
.email-row input{flex:1 1 220px;min-width:0;border:1px solid var(--line);background:#090909;border-radius:999px;padding:0 18px;min-height:46px}
.consent{display:flex;gap:10px;align-items:flex-start;font-size:.8rem;color:var(--muted)}
.consent input{margin-top:3px;accent-color:var(--accent)}
.consent a{text-decoration:underline;text-underline-offset:2px}
.hidden-field{position:absolute;left:-9999px}
.form-msg{font-size:.85rem;color:var(--accent-2);margin:0}

/* Footer */
footer{border-top:1px solid var(--line);padding-block:28px calc(28px + env(safe-area-inset-bottom,0px))}
.foot{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;color:var(--muted);font-size:.8rem}
.foot nav{display:flex;gap:16px;flex-wrap:wrap}
.foot a:hover{color:var(--text)}

/* Reveal: visible at rest, small lift when JS is on */
.js .reveal{transform:translateY(14px);opacity:.001;transition:opacity .6s ease,transform .6s ease}
.js .reveal.visible{transform:none;opacity:1}

.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* Legal page */
.legal{padding-block:130px 80px;max-width:760px}
.legal h1{font-size:clamp(2.4rem,6vw,4rem);letter-spacing:-.04em;margin-bottom:20px}
.legal h2{font-size:1.6rem;letter-spacing:-.02em;margin:44px 0 10px;line-height:1.1}
.legal p,.legal li{color:#d3cec5}
.legal .todo{background:rgba(255,133,0,.15);color:var(--accent-2);padding:0 4px;border-radius:4px}

@media (max-width:1000px){
  .section-head,.latest,.listen,.about,.join{grid-template-columns:minmax(0,1fr)}
  .featured-grid,.dj-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .track{grid-template-columns:56px minmax(0,1fr) auto;grid-template-areas:"t a l" "t b b" ". c c"}
  .track .thumb{grid-area:t;width:56px;align-self:start}
  .track .t-title{grid-area:a}
  .track .t-genre{grid-area:b}
  .track .t-data{grid-area:c}
  .track .links{grid-area:l;align-self:start}
  .nav{position:absolute;top:calc(68px + env(safe-area-inset-top,0px));left:16px;right:16px;padding:18px;display:none;flex-direction:column;align-items:stretch;gap:16px;background:rgba(7,7,7,.97);border:1px solid var(--line);border-radius:18px}
  .nav.open{display:flex}
  .nav .nav-pill{text-align:center}
  .menu-button{display:block}
}
@media (max-width:640px){
  .featured-grid,.dj-grid{grid-template-columns:minmax(0,1fr)}
  .featured-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .feature .copy{padding:10px 12px 12px}
  .track{grid-template-columns:52px minmax(0,1fr);grid-template-areas:"t a" "t b" "c c" "l l"}
  .track .thumb{width:52px}
  .track .links{justify-content:flex-start}
  .hero-content{padding-top:120px}
}
@media (prefers-reduced-motion:reduce){
  *{scroll-behavior:auto!important;animation:none!important;transition:none!important}
  .js .reveal{opacity:1;transform:none}
}

[hidden]{display:none!important}

.follow-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.follow-link{display:flex;flex-direction:column;gap:4px;padding:18px;border:1px solid var(--line);border-radius:16px;background:#0c0c0c;transition:border-color .2s,transform .2s}
.follow-link:hover{border-color:var(--accent);transform:translateY(-2px)}
.follow-link b{font-family:var(--f-display);font-size:1.15rem}
.follow-link span{font-size:.78rem;color:var(--muted)}
@media(max-width:420px){.follow-grid{grid-template-columns:minmax(0,1fr)}}
.about-main p.label{font-size:.72rem;color:var(--accent-2);margin-bottom:12px}

/* Releases grid */
.release-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:22px}
.release{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--panel);scroll-margin-top:100px}
.release:target{border-color:var(--accent)}
.release-art{aspect-ratio:1/1;max-width:100%;background:#0b0b0b}
.release-art img{width:100%;height:100%;object-fit:cover}
.release-body{padding:14px 14px 16px;display:flex;flex-direction:column;gap:8px;flex:1;min-width:0}
.release h4{font-size:1.02rem;line-height:1.15}
.release .version{font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-2);margin-top:-4px}
.release .genre{font-size:.8rem;color:var(--muted)}
.release .chips{gap:5px}.release .chip{font-size:.66rem;padding:4px 7px}
.release .date{font-family:var(--f-data);font-size:.66rem;color:#7d7870}
.play{align-self:flex-start;border:1px solid var(--accent);background:transparent;color:var(--accent-2);border-radius:999px;padding:7px 13px;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
.play:hover{background:var(--accent);color:#111}
.mini-player iframe{width:100%;height:80px;border:0;border-radius:12px;display:block}
.plats{display:flex;flex-wrap:wrap;gap:5px;margin-top:auto;padding-top:6px}
.plat{font-size:.64rem;padding:5px 8px;border:1px solid var(--line);border-radius:999px;letter-spacing:.04em}
.plat:hover{border-color:var(--accent);color:var(--accent-2)}
.plat.bp{border-color:rgba(255,133,0,.55);color:var(--accent-2)}
@media(max-width:1000px){.release-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.release-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.release-body{padding:10px 10px 12px}}
@media(max-width:380px){.release-grid{grid-template-columns:minmax(0,1fr)}}

.player-start{min-height:420px;display:grid;place-items:center;text-align:center;padding:20px}
.player-start small{display:block;max-width:34ch;margin:12px auto 0;color:var(--muted);font-size:.78rem}
.spotify-frame.loaded .player-start{display:none}
.follow-side{display:grid;gap:14px;min-width:0}
.follow-link.wide{grid-column:1/-1;border-color:rgba(255,133,0,.45)}
.contact-line{margin:0;font-size:.85rem}
.contact-line a{color:var(--accent-2);text-decoration:underline;text-underline-offset:3px;word-break:break-all}
.foot nav{row-gap:8px}
.listen-zone{margin:56px 0 0;padding:clamp(22px,4vw,42px);border:1px solid rgba(255,133,0,.28);border-radius:24px;background:radial-gradient(circle at 8% 4%,rgba(255,133,0,.13),transparent 30%),linear-gradient(145deg,#151515,#0b0b0b 70%)}
.listen-zone-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.7fr);gap:30px;align-items:end;margin-bottom:24px}
.listen-zone h3{font-size:clamp(2rem,4.6vw,4.2rem);line-height:.95;letter-spacing:-.05em}
.listen-zone-head p{margin:0;color:var(--muted)}
.spotify-frame{border-radius:18px;overflow:hidden;background:#111;border:1px solid var(--line)}
.spotify-frame iframe{display:block;width:100%;height:472px;border:0}
@media(max-width:1000px){.listen-zone-head{grid-template-columns:minmax(0,1fr)}.spotify-frame iframe{height:430px}}
@media(max-width:640px){.spotify-frame iframe{height:390px}.player-start{min-height:300px}}

/* DJ selection: player + full track list */
.selection{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;align-items:stretch}
.selection .spotify-frame{min-height:420px;display:flex;flex-direction:column}
.selection .spotify-frame iframe{height:100%;min-height:420px;flex:1}
.player-start{flex:1}
.sel-side{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:18px;background:#0d0d0d;overflow:hidden;min-width:0}
.sel-head{display:flex;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid var(--line);font-size:.7rem;text-transform:uppercase;letter-spacing:.14em;color:var(--muted)}
.sel-list{list-style:none;margin:0;padding:6px;max-height:420px;overflow-y:auto;scrollbar-color:#333 transparent}
.sel-list button{width:100%;display:grid;grid-template-columns:22px 40px minmax(0,1fr) auto;gap:12px;align-items:center;padding:7px 10px;border:0;border-radius:10px;background:transparent;text-align:left;cursor:pointer}
.sel-list button:hover{background:#181818}
.sel-list button[aria-current="true"]{background:rgba(255,133,0,.14)}
.sel-list button[aria-current="true"] b{color:var(--accent-2)}
.sel-list .n{font-family:var(--f-data);font-size:.68rem;color:#6f6a63}
.sel-thumb{width:40px;height:40px;border-radius:6px;overflow:hidden;background:#111;display:block}
.sel-thumb img{width:100%;height:100%;object-fit:cover}
.sel-thumb .fallback span{display:none}
.sel-title{display:flex;flex-direction:column;min-width:0}
.sel-title b{font-size:.88rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sel-title small{font-size:.66rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sel-data{font-family:var(--f-data);font-size:.66rem;color:var(--muted);white-space:nowrap}
@media(max-width:900px){.selection{grid-template-columns:minmax(0,1fr)}.selection .spotify-frame,.selection .spotify-frame iframe{min-height:352px}.player-start{min-height:220px}.sel-list{max-height:360px}}
@media(max-width:420px){.sel-data{display:none}.sel-list button{grid-template-columns:20px 36px minmax(0,1fr)}}

.follow-link.social{border-color:rgba(255,133,0,.45)}

.social-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.social-row .follow-link span{overflow-wrap:anywhere}
@media(max-width:520px){.social-row{grid-template-columns:minmax(0,1fr)}}

/* Hero with the NeNeMaNé Records artwork (logo is inside the image) */
.hero{min-height:min(88svh,820px)}
.hero-media{object-position:center 30%}
.hero:before{background:linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.25) 45%,rgba(0,0,0,0) 70%),linear-gradient(0deg,var(--bg) 0%,rgba(7,7,7,.55) 28%,transparent 55%)}
.hero-tag{margin-top:6px;font-size:clamp(2rem,5vw,4.4rem);line-height:.95}
@media(max-width:640px){
  .hero{display:block;min-height:0;padding-top:calc(64px + env(safe-area-inset-top,0px))}
  .hero-media{position:static;display:block;width:100%;height:auto;aspect-ratio:16/9;object-position:center}
  .hero:before{display:none}
  .hero-content{padding-block:22px 48px}
}

.dj-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.buy{margin-top:22px;border:1px solid rgba(255,133,0,.4);border-radius:20px;background:linear-gradient(135deg,rgba(255,133,0,.09),#111 60%);padding:26px;display:grid;gap:18px}
.buy-head h3{font-size:1.8rem}
.buy-head p{margin:6px 0 0;color:var(--muted)}
.buy-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.follow-link.contact{border-color:var(--line-strong)}
.follow-link.contact span:first-of-type{color:var(--accent-2);font-size:.9rem;overflow-wrap:anywhere}
@media(max-width:1000px){.dj-grid{grid-template-columns:minmax(0,1fr)}.buy-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:560px){.buy-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Hero: panoramic banner shown whole, text below */
.hero{display:block;min-height:0;padding-top:calc(68px + env(safe-area-inset-top,0px));background:var(--bg)}
.hero-media{position:static;display:block;width:100%;height:auto;aspect-ratio:1600/286;object-fit:cover;object-position:center}
.hero:before{display:none}
.hero-content{padding-block:clamp(28px,4vw,56px) clamp(48px,6vw,80px)}
.site-header{background:rgba(7,7,7,.92)}
.follow-title{font-size:clamp(2rem,4vw,3.6rem)}
@media(max-width:640px){.hero-media{aspect-ratio:16/7;object-position:100% center}}
.about{align-items:start}

.follow-plats{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.follow-plats>span{font-size:.68rem;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);margin-right:4px}
.join>div{min-width:0}
.follow-title{font-size:clamp(1.8rem,3.2vw,3rem);overflow-wrap:break-word;hyphens:auto}
.follow-title{font-size:clamp(1.7rem,2.7vw,2.7rem);overflow-wrap:normal;hyphens:manual}
.lang{display:flex;gap:6px;align-items:center;font-size:.74rem;letter-spacing:.12em}
.lang a{color:rgba(255,255,255,.6)}.lang a.active{color:var(--accent-2)}
.join{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(24px,4vw,48px)}
.follow-title{font-size:clamp(1.7rem,2.4vw,2.4rem)}
@media(max-width:1000px){.join{grid-template-columns:minmax(0,1fr)}}
.social-row .follow-link{padding:14px}
.social-row .follow-link span{overflow-wrap:normal;word-break:keep-all;font-size:.7rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* Vinyl poll */
.poll{margin-top:clamp(40px,6vw,72px);border:1px solid rgba(255,133,0,.4);border-radius:24px;padding:clamp(22px,4vw,40px);background:radial-gradient(circle at 95% 0%,rgba(255,133,0,.12),transparent 35%),#101010;scroll-margin-top:90px}
.poll-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.8fr);gap:28px;align-items:end;margin-bottom:22px}
.poll-head h3{font-size:clamp(1.8rem,3.4vw,3rem);line-height:1;letter-spacing:-.04em}
.poll-head p{margin:0;color:var(--muted)}
.poll-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}
.poll-item{position:relative;display:flex;flex-direction:column;gap:6px;cursor:pointer;border:1px solid var(--line);border-radius:12px;padding:6px;background:#0c0c0c;transition:border-color .15s,background .15s}
.poll-item input{position:absolute;opacity:0;pointer-events:none}
.poll-art{display:block;aspect-ratio:1/1;max-width:100%;border-radius:8px;overflow:hidden;background:#111;position:relative}
.poll-art img{width:100%;height:100%;object-fit:cover}
.poll-art .fallback span{font-size:.7rem}
.poll-name{font-size:.68rem;line-height:1.2;font-weight:600;min-height:2.4em}
.poll-item:hover{border-color:var(--line-strong)}
.poll-item:has(input:checked){border-color:var(--accent);background:rgba(255,133,0,.12)}
.poll-item:has(input:checked) .poll-art:after{content:"✓";position:absolute;top:6px;right:6px;width:24px;height:24px;border-radius:50%;background:var(--accent);color:#111;display:grid;place-items:center;font-weight:900;font-size:.8rem}
.poll-item:has(input:disabled:not(:checked)){opacity:.4;cursor:not-allowed}
.poll-item:has(input:focus-visible){outline:2px solid var(--accent-2);outline-offset:2px}
.poll-foot{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px;margin-top:20px}
.poll-foot .audience{flex-direction:row;align-items:center}
.poll-foot .audience legend{float:left;margin:0 8px 0 0}
.poll-count{font-family:var(--f-data);font-size:.8rem;color:var(--accent-2);margin-left:auto}
.poll-form .button[disabled]{opacity:.45;cursor:not-allowed;transform:none}
#pollMsg{margin-top:14px}
@media(max-width:1000px){.poll-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.poll-head{grid-template-columns:minmax(0,1fr)}}
@media(max-width:520px){.poll-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.poll-count{margin-left:0}}

.dj-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1000px){.dj-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.dj-grid{grid-template-columns:minmax(0,1fr)}}

.hero-media{aspect-ratio:1600/579;object-fit:cover}
@media(max-width:640px){.hero-media{aspect-ratio:1600/579;object-position:center}}

.hero-copy{max-width:680px}

/* Hero v8 restored: full-bleed artwork, text over it (logo lives in the image) */
.hero{display:grid;align-items:end;min-height:min(88svh,820px);padding-top:0;position:relative;isolation:isolate;overflow:hidden;background:#050505}
.hero-media{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:center 30%;z-index:-2}
.hero:before{display:block;content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.25) 45%,rgba(0,0,0,0) 70%),linear-gradient(0deg,var(--bg) 0%,rgba(7,7,7,.55) 28%,transparent 55%)}
.site-header{background:linear-gradient(to bottom,rgba(0,0,0,.85),rgba(0,0,0,0))}
.site-header.scrolled{background:rgba(7,7,7,.92)}
.hero-content{padding-block:150px clamp(56px,8vw,100px)}
@media(max-width:640px){
  .hero{display:block;min-height:0;padding-top:calc(64px + env(safe-area-inset-top,0px))}
  .hero-media{position:static;display:block;width:100%;height:auto;aspect-ratio:16/9;object-position:center}
  .hero:before{display:none}
  .site-header{background:rgba(7,7,7,.92)}
  .hero-content{padding-block:22px 48px}
}

#music .listen-zone{margin-top:0}
.listen-zone h3{font-size:clamp(1.9rem,3.6vw,3.4rem);line-height:1}

/* Fixes: Follow title size (beats .join h2), smaller About body text */
.join h2.follow-title{font-size:clamp(1.7rem,2.6vw,2.6rem);line-height:1.02;overflow-wrap:break-word}
.about-main p:not(.label){font-size:1rem;line-height:1.6;max-width:62ch}
.nav{gap:18px}

/* anchors land below the fixed header */
[id]{scroll-margin-top:96px}
#shop{scroll-margin-top:110px}

.filters{align-items:flex-start}
.filter-group{row-gap:6px}
.filter-group>span{min-width:110px}

.share{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding-top:14px;border-top:1px solid var(--line)}
.share>span{font-size:.68rem;text-transform:uppercase;letter-spacing:.14em;color:var(--accent-2);margin-right:4px}
.share .plat{background:transparent;cursor:pointer;color:var(--text)}
.share .share-native{border-color:var(--accent);color:var(--accent-2)}

.shop-card .presale{color:var(--accent-2);font-weight:600}

.shop-card a.presale{color:var(--accent-2);font-weight:600;text-decoration:underline;text-underline-offset:3px}
