@font-face{font-family:"Archivo Black";src:url("/fonts/archivo-black.woff2") format("woff2");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:"Inter";src:url("/fonts/inter.woff2") format("woff2");font-style:normal;font-weight:100 900;font-display:swap}
:root{--ink:#050505;--paper:#f2f0ea;--muted:#aaa8a1;--spotify:#1ed760;--youtube:#ff0033;--apple-a:#fa2d65;--apple-b:#8d42ff}
*{box-sizing:border-box}
html{background:var(--ink)}
body{margin:0;background:var(--ink);color:var(--paper);font-family:"Inter",Arial,sans-serif}
button,a{-webkit-tap-highlight-color:transparent}
[hidden]{display:none!important}

/* Music catalog */
.hub-body{min-height:100svh;background:radial-gradient(circle at 74% -12%,rgba(255,255,255,.1),transparent 32%),#050505}
.hub-page{width:min(100% - 40px,1080px);min-height:100svh;margin:0 auto;padding:28px 0 24px;display:flex;flex-direction:column}
.hub-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:20px;border-bottom:1px solid rgba(255,255,255,.14)}
.hub-header a{color:var(--paper);text-decoration:none}
.hub-header>a:first-child{display:flex;align-items:baseline;gap:12px}
.hub-header span{font-family:"Archivo Black",Impact,sans-serif;font-size:20px;letter-spacing:-.025em}
.hub-header small,.hub-header>a:last-child{color:#8f8d87;font-size:8px;font-weight:800;letter-spacing:.2em}
.hub-header>a:last-child:hover{color:#fff}
.hub-releases{padding:42px 0 58px}
.hub-section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:24px}
.hub-section-heading p{margin:0 0 7px;color:#818078;font-size:8px;font-weight:800;letter-spacing:.25em}
.hub-section-heading h1{margin:0;font-family:"Archivo Black",Impact,sans-serif;font-size:clamp(28px,5vw,48px);line-height:.95;letter-spacing:-.04em}
.hub-section-heading>span{color:#696861;font-size:9px;font-weight:800;letter-spacing:.18em}
.release-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,240px));gap:28px}
.release-card-tile{overflow:hidden;border:1px solid rgba(255,255,255,.14);border-radius:14px;background:linear-gradient(165deg,rgba(255,255,255,.075),rgba(255,255,255,.025));box-shadow:0 18px 60px rgba(0,0,0,.32);transition:transform .24s cubic-bezier(.2,.8,.2,1),border-color .24s ease,box-shadow .24s ease}
.release-card-tile:hover{transform:translateY(-7px) scale(1.015);border-color:rgba(255,255,255,.32);box-shadow:0 25px 75px rgba(0,0,0,.5)}
.release-cover-link{display:block;overflow:hidden;aspect-ratio:1/1;margin:10px 10px 0;border-radius:9px;background:#111}
.release-cover-link img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .32s cubic-bezier(.2,.8,.2,1),filter .25s ease}
.release-card-tile:hover .release-cover-link img{transform:scale(1.025);filter:contrast(1.04)}
.release-meta{padding:15px 15px 17px}
.release-name{display:block;margin-bottom:14px;color:#fff;text-decoration:none;font-family:"Archivo Black",Impact,sans-serif;font-size:20px;letter-spacing:-.025em}
.platform-icons{display:flex;align-items:center;gap:11px}
.platform-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;filter:drop-shadow(0 7px 12px rgba(0,0,0,.32));transition:transform .22s cubic-bezier(.34,1.56,.64,1),filter .2s ease}
.platform-icon:hover{transform:translateY(-5px) scale(1.12);filter:drop-shadow(0 10px 18px rgba(0,0,0,.5))}
.platform-icon:active{transform:translateY(0) scale(.96)}
.platform-icon svg{display:block;width:100%;height:100%}
.spotify-icon{border-radius:50%}
.spotify-icon circle{fill:var(--spotify)}
.spotify-icon path{fill:none;stroke:#06160b;stroke-width:1.7;stroke-linecap:round}
.apple-icon svg rect{fill:url(#none)}
.apple-icon{background:linear-gradient(145deg,#fb5b5b 0%,var(--apple-a) 50%,var(--apple-b) 100%)}
.apple-icon svg rect{fill:transparent}
.apple-icon svg path{fill:#fff}
.youtube-icon svg rect{fill:var(--youtube)}
.youtube-icon svg path{fill:#fff}
.hub-footer{margin-top:auto;display:flex;align-items:center;justify-content:space-between;padding-top:17px;border-top:1px solid rgba(255,255,255,.1);color:#66645f;font-size:8px;font-weight:700;letter-spacing:.14em}
.hub-footer .privacy-link{margin:0}

/* Individual release */
.release-page{position:relative;isolation:isolate;min-height:100svh;overflow:hidden;display:grid;place-items:center;padding:32px 20px 110px;background:radial-gradient(circle at 50% -10%,rgba(255,255,255,.14),transparent 42%),#050505}
.ambient{position:fixed;z-index:-2;inset:-30px;opacity:.19;filter:blur(28px) contrast(1.2);transform:scale(1.12)}
.ambient::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,5,5,.35),#050505 88%)}
.ambient img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.release-card{width:min(100%,430px);display:flex;flex-direction:column;align-items:stretch}
.eyebrow{margin:0 0 12px;color:#d8d6cf;font-size:10px;font-weight:700;letter-spacing:.32em}
.cover-wrap{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.38);background:#111;box-shadow:0 26px 70px rgba(0,0,0,.55)}
.cover-wrap>img{display:block;width:100%;height:auto;filter:contrast(1.03)}
.cover-label{position:absolute;right:0;bottom:0;padding:7px 10px 6px;background:var(--paper);color:var(--ink);font-family:"Archivo Black",Impact,sans-serif;font-size:11px;letter-spacing:.1em}
.release-copy{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:18px 1px 17px;border-bottom:1px solid rgba(255,255,255,.16)}
.release-copy h1{margin:0;font-family:"Archivo Black",Impact,sans-serif;font-size:clamp(45px,13vw,64px);line-height:.8;letter-spacing:-.045em}
.release-copy p{margin:0;color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.22em}
.spotify-button{min-height:72px;margin-top:18px;display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;border-radius:3px;padding:11px 16px 11px 12px;background:var(--spotify);color:#021a0b;text-decoration:none;font-family:"Archivo Black",Impact,sans-serif;font-size:21px;line-height:1;box-shadow:0 12px 34px rgba(30,215,96,.2);transition:transform .2s cubic-bezier(.34,1.56,.64,1),background .18s ease}
.spotify-button:hover{background:#35e776;transform:translateY(-4px) scale(1.01)}
.spotify-button:active{transform:translateY(1px) scale(.995)}
.spotify-button small{display:block;margin-bottom:4px;font-family:"Inter",Arial,sans-serif;font-size:9px;font-weight:800;letter-spacing:.22em}
.play-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:#041b0c;color:var(--spotify)}
.play-icon svg{width:23px;height:23px;fill:currentColor}
.arrow{font-family:"Inter",sans-serif;font-size:18px;font-weight:700}
.microcopy{margin:10px 0 0;text-align:center;color:#8f8d87;font-size:10px;letter-spacing:.03em}
.alternatives{margin-top:18px}
.alternatives>p{margin:0 0 9px;color:#77756f;text-align:center;font-size:8px;font-weight:800;letter-spacing:.24em}
.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.service-button{min-height:54px;display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:9px;padding:8px 10px;border:1px solid rgba(255,255,255,.22);border-radius:4px;background:rgba(255,255,255,.055);color:#eceae4;text-decoration:none;font-size:9px;font-weight:800;letter-spacing:.08em;transition:border-color .18s ease,background .18s ease,transform .22s cubic-bezier(.34,1.56,.64,1)}
.service-button:hover{border-color:rgba(255,255,255,.55);background:rgba(255,255,255,.1);transform:translateY(-4px)}
.service-mark{width:30px;height:30px;display:grid;place-items:center}
.service-mark svg{display:block;width:30px;height:30px}
.apple-mark{border-radius:7px;background:linear-gradient(145deg,#fb5b5b 0%,var(--apple-a) 50%,var(--apple-b) 100%)}
.apple-mark svg rect{fill:transparent}
.apple-mark svg path{fill:#fff}
.youtube-mark svg rect{fill:var(--youtube)}
.youtube-mark .youtube-play{fill:#fff}
.footer-links{align-self:center;margin-top:22px;display:flex;flex-direction:column;align-items:center;gap:10px}
.artist-link{color:#c5c3bd;font-size:10px;font-weight:700;letter-spacing:.16em;text-decoration:none}
.privacy-link{border:0;padding:0;background:transparent;color:#77756f;cursor:pointer;font-family:"Inter",Arial,sans-serif;font-size:7px;font-weight:600;letter-spacing:.11em;text-decoration:none;opacity:.55}
.artist-link:hover,.privacy-link:hover{color:#fff;opacity:1}

/* Consent and hidden diagnostics */
.consent{position:fixed;z-index:10;bottom:14px;left:14px;width:min(410px,calc(100% - 28px));display:flex;align-items:center;gap:12px;padding:11px 11px 11px 13px;border:1px solid rgba(255,255,255,.18);border-radius:5px;background:rgba(18,18,18,.94);box-shadow:0 20px 60px rgba(0,0,0,.55);backdrop-filter:blur(16px)}
.consent p{flex:1;margin:0;color:#c7c5bf;font-size:9px;line-height:1.4}
.consent>div{flex:0 0 auto;display:flex;gap:6px}
.consent button{border:0;border-radius:3px;padding:9px 10px;background:#2d2d2d;color:#dedcd6;cursor:pointer;font:700 9px/1 "Inter",sans-serif}
.consent .consent-primary{background:var(--paper);color:var(--ink)}
.tracking-debug{position:fixed;z-index:99;right:12px;bottom:12px;width:min(360px,calc(100% - 24px));padding:14px;border:1px solid #35e776;border-radius:7px;background:rgba(3,16,8,.96);color:#dfffe9;box-shadow:0 18px 55px rgba(0,0,0,.65);font:600 11px/1.55 ui-monospace,SFMono-Regular,Menlo,monospace;white-space:pre-wrap}

.release-cover-link:focus-visible,.release-name:focus-visible,.platform-icon:focus-visible,.spotify-button:focus-visible,.service-button:focus-visible,.artist-link:focus-visible,.privacy-link:focus-visible,.consent button:focus-visible{outline:3px solid #fff;outline-offset:3px}

@media(max-width:560px){.hub-page{width:min(100% - 30px,480px);padding-top:22px}.hub-releases{padding:34px 0 46px}.release-grid{grid-template-columns:minmax(0,260px);justify-content:center}.release-card-tile{border-radius:13px}.release-page{place-items:start center;padding:24px 18px 120px}.release-card{width:min(100%,440px)}.consent{right:10px;bottom:10px;left:10px;width:auto;gap:8px;padding:9px 9px 9px 11px}.consent>div{flex-direction:column}.consent button{padding:7px 8px;white-space:nowrap}}
@media(max-height:760px) and (min-width:600px){.release-page{padding-block:22px 105px}.release-card{width:350px}.release-copy h1{font-size:48px}.spotify-button{min-height:64px}}
@media(prefers-reduced-motion:reduce){.release-card-tile,.release-cover-link img,.platform-icon,.spotify-button,.service-button{transition:none!important;transform:none!important}}
