@font-face{font-family:"Orbitron";src:url(/assets/fonts/Orbitron.woff2) format("woff2");font-weight:400 900;font-display:swap}
@font-face{font-family:"Inter";src:url(/assets/fonts/Inter-Regular-latin.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Inter";src:url(/assets/fonts/Inter-SemiBold-latin.woff2) format("woff2");font-weight:600;font-display:swap}
:root{
--ink:#06080f; --ink2:#0c1020; --text:#eef0f7; --muted:#b7bccf; --dim:#8a90a8;
--cyan:#00e5ff; --violet:#7b2fff; --magenta:#ff3cac; --gold:#ffc36b; --ember:#ff7a3c;
--line:rgba(255,255,255,.14); --glass:rgba(10,13,26,.55);
--head:"Orbitron",system-ui,sans-serif; --body:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
--gutter:clamp(16px,4vw,56px);
color-scheme:dark;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;background:var(--ink)}
body{margin:0;background:var(--ink);color:var(--text);font:400 1rem/1.65 var(--body);overflow-x:hidden;-webkit-font-smoothing:antialiased}
img,video{display:block;max-width:100%}
a{color:inherit}
h1,h2,h3{font-family:var(--head);font-weight:700;letter-spacing:.04em;line-height:1.1;margin:0 0 .6em}
h2{font-size:clamp(1.6rem,3.4vw,2.6rem)}
p{margin:0 0 1em}
b{font-weight:600;color:#fff}
.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-999px;top:8px;z-index:100;background:#fff;color:#000;padding:.6em 1em;border-radius:6px}
.skip:focus{left:8px}
:focus-visible{outline:2px solid var(--cyan);outline-offset:3px;border-radius:4px}
.kicker{font:600 .78rem/1.4 var(--body);letter-spacing:.32em;text-transform:uppercase;color:var(--cyan);margin-bottom:1rem}
.kicker.jp{letter-spacing:.2em}
.fine{font-size:.78rem;line-height:1.5;color:var(--dim)}
.wrap{max-width:1200px;margin:0 auto;padding:0 var(--gutter)}
.preview-flag{position:fixed;z-index:60;left:50%;bottom:14px;transform:translateX(-50%);font:600 .68rem/1 var(--body);letter-spacing:.18em;text-transform:uppercase;
background:rgba(255,195,107,.92);color:#1a1205;padding:.55em 1em;border-radius:99px;pointer-events:none;white-space:nowrap}
.bg-video,.poster img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.poster{position:absolute;inset:0}
.bg-video{z-index:1;opacity:0;transition:opacity 1.2s ease}
.bg-video.playing{opacity:1}
.hero{position:relative;height:100vh;height:100svh;min-height:560px;overflow:hidden;display:grid;place-items:end start;isolation:isolate}
.hero-media{position:absolute;inset:0;z-index:-2;transform:scale(1.04);animation:drift 26s ease-in-out infinite alternate}
@keyframes drift{to{transform:scale(1.12) translate3d(-1.5%,-1%,0)}}
.hero-shade{position:absolute;inset:0;z-index:-1;
background:linear-gradient(180deg,rgba(6,8,15,.55) 0%,rgba(6,8,15,0) 22%,rgba(6,8,15,0) 48%,rgba(6,8,15,.82) 86%,var(--ink) 100%),
radial-gradient(80% 60% at 20% 80%,rgba(6,8,15,.55),transparent 70%)}
.hero-copy{padding:0 var(--gutter) clamp(88px,14vh,150px);max-width:900px}
.hero .kicker{color:#fff;text-shadow:0 1px 12px rgba(0,0,0,.8);letter-spacing:.26em}
.hero .kicker::before{content:"";display:inline-block;width:28px;height:2px;background:var(--cyan);vertical-align:middle;margin-right:.8em}
.logo-type{font:900 clamp(2.6rem,12vw,8rem)/.9 var(--head);letter-spacing:.12em;margin:0 0 .25em -.04em;
background:linear-gradient(100deg,#fff 0%,#e9f9ff 35%,var(--cyan) 62%,var(--violet) 82%,var(--magenta) 100%);
-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 6px 30px rgba(0,0,0,.45))}
.lead{font-size:clamp(1.05rem,1.8vw,1.35rem);color:#e5e8f3;max-width:34ch;margin-bottom:2rem;text-shadow:0 2px 18px rgba(0,0,0,.6)}
.cta{display:inline-flex;flex-direction:column;align-items:flex-start;gap:.15rem;text-decoration:none;padding:1rem 2.2rem 1rem 1.6rem;border-radius:999px;
background:linear-gradient(100deg,var(--cyan),var(--violet) 60%,var(--magenta));color:#05060c;font-weight:600;font-size:1.05rem;letter-spacing:.02em;
box-shadow:0 10px 40px -8px rgba(123,47,255,.7),inset 0 1px 0 rgba(255,255,255,.4);position:relative;transition:transform .25s,box-shadow .25s}
.cta::after{content:"";position:absolute;right:1rem;top:50%;width:.55rem;height:.55rem;border:solid #05060c;border-width:0 2px 2px 0;transform:translateY(-70%) rotate(45deg)}
.cta:hover{transform:translateY(-2px);box-shadow:0 16px 50px -8px rgba(123,47,255,.9),inset 0 1px 0 rgba(255,255,255,.4)}
.cta-sub{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;opacity:.75}
.sound{position:absolute;right:var(--gutter);bottom:clamp(88px,14vh,150px);display:flex;align-items:center;gap:.6rem;cursor:pointer;
font:600 .74rem/1 var(--body);letter-spacing:.16em;text-transform:uppercase;color:#fff;background:var(--glass);border:1px solid var(--line);
padding:.75rem 1rem;border-radius:99px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.sound:hover{border-color:rgba(255,255,255,.4)}
.eq{display:flex;align-items:flex-end;gap:2px;height:14px}
.eq i{width:3px;height:4px;background:var(--cyan);border-radius:1px;transition:height .2s}
.sound[aria-pressed="true"] .eq i{animation:eq .9s ease-in-out infinite alternate}
.sound[aria-pressed="true"] .eq i:nth-child(2){animation-delay:-.3s}.sound[aria-pressed="true"] .eq i:nth-child(3){animation-delay:-.6s}.sound[aria-pressed="true"] .eq i:nth-child(4){animation-delay:-.15s}
@keyframes eq{from{height:3px}to{height:14px}}
.now-playing{position:absolute;right:var(--gutter);bottom:calc(clamp(88px,14vh,150px) - 2rem);margin:0;font-size:.74rem;color:var(--muted)}
.scroll-cue{position:absolute;left:50%;bottom:44px;width:26px;height:42px;border:1.5px solid rgba(255,255,255,.55);border-radius:14px;transform:translateX(-50%)}
.scroll-cue span{position:absolute;left:50%;top:8px;width:3px;height:8px;margin-left:-1.5px;border-radius:2px;background:#fff;animation:cue 1.8s ease-in-out infinite}
@keyframes cue{0%{opacity:0;transform:translateY(0)}30%{opacity:1}100%{opacity:0;transform:translateY(14px)}}
@media (max-width:640px){
.hero{height:auto;min-height:100vh;min-height:100svh;padding-top:calc(max(12px,env(safe-area-inset-top)) + 150px);box-sizing:border-box}
.hero-copy{padding-bottom:150px}
.sound{bottom:auto;top:calc(max(14px,env(safe-area-inset-top)) + 92px);padding:.6rem .8rem}
.now-playing{top:calc(max(14px,env(safe-area-inset-top)) + 136px);bottom:auto}
.scroll-cue{bottom:62px}
}
.journey{position:relative;background:var(--ink)}
.stage{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;z-index:0}
.journey-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .6s}
.journey.scrub .journey-video.ready{opacity:1}
.world-bg{position:absolute;inset:0;opacity:0;transition:opacity 1s ease}
.world-bg img{width:100%;height:100%;object-fit:cover;transform:scale(1.08);transition:transform 8s ease-out}
.world-bg.on{opacity:1}
.world-bg.on img{transform:scale(1)}
.journey.scrub .journey-video.ready ~ .world-bg{opacity:0}
.stage-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,8,15,.82) 0%,rgba(6,8,15,.35) 45%,rgba(6,8,15,0) 70%),
linear-gradient(180deg,var(--ink) 0%,rgba(6,8,15,0) 14%,rgba(6,8,15,0) 82%,var(--ink) 100%)}
.worlds{position:relative;z-index:2;margin-top:-100vh;margin-top:-100svh}
.world{min-height:100vh;min-height:100svh;display:flex;flex-direction:column;justify-content:center;padding:18vh var(--gutter);max-width:640px;
opacity:.25;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}
.world.on{opacity:1;transform:none}
.world + .world{margin-top:30vh}
.world-no{font:600 .76rem/1 var(--body);letter-spacing:.3em;text-transform:uppercase;color:var(--gold);margin-bottom:1.2rem}
.world h3{font-size:clamp(2.4rem,6vw,4.6rem);font-weight:800;letter-spacing:.06em;margin-bottom:.4em;text-shadow:0 4px 30px rgba(0,0,0,.6)}
.world p{font-size:clamp(1rem,1.4vw,1.15rem);color:#e3e6f0;text-shadow:0 2px 14px rgba(0,0,0,.7)}
.world .fine{color:#a6abc0;font-size:.76rem;max-width:52ch}
.links{display:flex;flex-wrap:wrap;gap:.6rem;margin:1.4rem 0}
.links a{text-decoration:none;font-size:.9rem;font-weight:600;padding:.7rem 1.15rem;border-radius:99px;border:1px solid rgba(255,255,255,.28);
background:rgba(8,10,20,.45);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:background .2s,border-color .2s}
.links a:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.55)}
.links a.primary{background:#fff;color:#05060c;border-color:#fff}
.links a.primary:hover{background:var(--cyan);border-color:var(--cyan)}
.world-rail{position:fixed;right:var(--gutter);top:50%;transform:translateY(-50%);z-index:20;list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1.1rem;
opacity:0;pointer-events:none;transition:opacity .4s}
.journey.inview .world-rail{opacity:1}
.world-rail li{font:600 .66rem/1 var(--body);letter-spacing:.24em;text-transform:uppercase;color:rgba(255,255,255,.4);display:flex;align-items:center;justify-content:flex-end;gap:.6rem;transition:color .3s}
.world-rail li::after{content:"";width:18px;height:2px;background:currentColor;transition:width .3s}
.world-rail li.on{color:#fff}
.world-rail li.on::after{width:40px;background:var(--cyan)}
.progress{position:absolute;left:0;bottom:0;height:2px;background:linear-gradient(90deg,var(--cyan),var(--magenta));width:0;z-index:3}
@media (max-width:899px){
.world-rail{display:none}
.world{max-width:none;justify-content:flex-end;padding:0 var(--gutter) 14vh}
.world > *{position:relative}
.world::before{content:"";position:absolute;left:0;right:0;bottom:0;height:100%;background:linear-gradient(180deg,rgba(6,8,15,0) 0%,rgba(6,8,15,.72) 30%,rgba(6,8,15,.72) 78%,rgba(6,8,15,0) 100%);z-index:0;pointer-events:none}
.stage-shade{opacity:.6}
.logo-type{font-size:min(11vw,3.4rem);letter-spacing:.08em}
.world{position:relative}
.world .links a{padding:.6rem 1rem;font-size:.86rem}
.world + .world{margin-top:10vh}
.stage-shade{background:linear-gradient(180deg,var(--ink) 0%,rgba(6,8,15,.1) 18%,rgba(6,8,15,.25) 45%,rgba(6,8,15,.9) 85%,var(--ink) 100%)}
}
.releases{padding:clamp(80px,12vw,160px) 0 clamp(60px,8vw,110px);background:radial-gradient(70rem 40rem at 80% 0%,rgba(123,47,255,.16),transparent 70%),var(--ink)}
.cover-row{list-style:none;padding:0;margin:2rem 0 0;display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(12px,2vw,28px)}
.cover-row a{display:block;text-decoration:none}
.cover-row img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:14px;box-shadow:0 20px 50px -20px rgba(0,0,0,.9);transition:transform .4s cubic-bezier(.2,.7,.2,1),box-shadow .4s}
.cover-row a:hover img{transform:translateY(-6px) scale(1.02);box-shadow:0 30px 60px -18px rgba(123,47,255,.55)}
.cover-row span{display:block;margin-top:.9rem;font-weight:600}
.cover-row small{color:var(--dim)}
.more a{color:var(--cyan);font-weight:600}
@media (max-width:760px){.cover-row{grid-template-columns:repeat(2,1fr)}}
.lofi{position:relative;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);align-items:center;
padding:clamp(60px,9vw,130px) var(--gutter);max-width:1360px;margin:0 auto}
.lofi-frame{position:relative;aspect-ratio:16/9;border-radius:22px;overflow:hidden;box-shadow:0 40px 90px -30px rgba(255,60,172,.35),0 0 0 1px var(--line)}
.lofi-frame::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:radial-gradient(120% 90% at 50% 50%,transparent 60%,rgba(0,0,0,.45))}
.lofi h2{font-size:clamp(2rem,4vw,3.2rem)}
.lofi-copy p{color:var(--muted)}
.live{display:inline-flex;align-items:center;gap:.55rem}
.dot{width:8px;height:8px;border-radius:50%;background:#ff3b3b;box-shadow:0 0 0 0 rgba(255,59,59,.6);animation:pulse 1.8s infinite}
@keyframes pulse{70%{box-shadow:0 0 0 10px rgba(255,59,59,0)}100%{box-shadow:0 0 0 0 rgba(255,59,59,0)}}
@media (max-width:860px){.lofi{grid-template-columns:1fr}}
.listen{padding:clamp(60px,8vw,120px) 0;text-align:center;background:linear-gradient(180deg,var(--ink),#0b0717)}
.platforms{list-style:none;margin:2rem auto 0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:.7rem;max-width:820px}
.platforms a{display:block;text-decoration:none;font-weight:600;padding:.95rem 1.6rem;border-radius:99px;border:1px solid var(--line);background:rgba(255,255,255,.04);transition:all .2s}
.platforms a:hover{background:#fff;color:#05060c}
.foot{padding:48px var(--gutter) 80px;text-align:center;border-top:1px solid var(--line);color:var(--muted);font-size:.86rem}
.foot a{color:var(--text)}
.ai-note{max-width:60ch;margin:0 auto 1rem}
.song-page{background:var(--ink)}
.song-bg{position:fixed;inset:0;z-index:0}
.song,.song-page .foot{position:relative;z-index:1}
.song-bg::after{content:"";position:absolute;inset:0;z-index:2;
background:linear-gradient(90deg,rgba(6,8,15,.92) 0%,rgba(6,8,15,.6) 45%,rgba(6,8,15,.2) 100%),linear-gradient(180deg,rgba(6,8,15,.5),rgba(6,8,15,0) 20%,rgba(6,8,15,0) 70%,rgba(6,8,15,.9))}
.song{min-height:100vh;min-height:100svh;padding:120px var(--gutter) 60px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,380px);gap:clamp(24px,5vw,80px);align-items:end;max-width:1360px;margin:0 auto}
.crumbs{font-size:.8rem;color:var(--muted);margin-bottom:1.6rem}
.crumbs a{color:var(--muted)}
.song h1{font-size:clamp(3rem,9vw,7.5rem);font-weight:900;letter-spacing:.06em;margin-bottom:.15em;text-shadow:0 6px 40px rgba(0,0,0,.6)}
.song .meta{color:var(--gold);font-weight:600;letter-spacing:.18em;text-transform:uppercase;font-size:.78rem}
.song .tagline{font-size:clamp(1.05rem,1.6vw,1.3rem);max-width:40ch;color:#e6e8f2}
.player{display:flex;align-items:center;gap:1.2rem;margin:2rem 0 1.2rem}
.play{position:relative;width:84px;height:84px;border-radius:50%;border:0;cursor:pointer;background:#fff;color:#05060c;display:grid;place-items:center;flex:none;
box-shadow:0 14px 50px -10px rgba(255,122,60,.8);transition:transform .2s}
.play:hover{transform:scale(1.05)}
.play svg{width:30px;height:30px}
.play .i-pause{display:none}
.play[aria-pressed="true"] .i-play{display:none}
.play[aria-pressed="true"] .i-pause{display:block}
.ring{position:absolute;inset:-6px;width:96px;height:96px;transform:rotate(-90deg);pointer-events:none}
.ring circle{fill:none;stroke:var(--ember);stroke-width:3;stroke-dasharray:289;stroke-dashoffset:289;stroke-linecap:round}
.player-text strong{display:block;font-size:1.05rem}
.player-text span{color:var(--muted);font-size:.86rem}
.streams{display:flex;flex-wrap:wrap;gap:.6rem}
.streams a{text-decoration:none;font-weight:600;padding:.85rem 1.3rem;border-radius:12px;border:1px solid rgba(255,255,255,.25);background:rgba(8,10,20,.5);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.streams a:hover{background:#fff;color:#05060c}
.side{display:flex;flex-direction:column;gap:18px}
.card{background:rgba(8,10,20,.6);border:1px solid var(--line);border-radius:18px;padding:22px;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.card h2{font-size:.78rem;letter-spacing:.28em;text-transform:uppercase;color:var(--cyan);font-family:var(--body);font-weight:600;margin-bottom:1rem}
.rid{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap}
.rid code{font:600 1.35rem/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.04em}
.copy{cursor:pointer;font:600 .85rem/1 var(--body);padding:.7rem 1rem;border-radius:10px;border:0;background:var(--cyan);color:#04121a}
.copy.done{background:#7dffb0}
.lyrics p{font-size:1.02rem;line-height:1.75;color:#eceef6;margin-bottom:.9rem}
.lyrics a{color:var(--cyan);font-weight:600;font-size:.9rem}
@media (max-width:900px){
.song{grid-template-columns:1fr;align-items:start;padding-top:124px}
.song-bg::after{background:linear-gradient(180deg,rgba(6,8,15,.35) 0%,rgba(6,8,15,.55) 40%,rgba(6,8,15,.92) 75%)}
.song-head{min-height:62svh;display:flex;flex-direction:column;justify-content:flex-end}
}
@media (prefers-reduced-motion:reduce){
*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
.world{opacity:1;transform:none}
}
.lite .hero-media{animation:none}
.lyrics{max-height:min(62vh,640px);overflow:auto;scrollbar-width:thin}
@media (max-width:900px){.lyrics{max-height:none}}
.about{padding:clamp(60px,8vw,110px) 0 0;background:var(--ink)}
.wrap.narrow{max-width:820px}
.about p{color:var(--muted);font-size:1.05rem}
.about a{color:var(--text)}
.tvh,.tvf{--tv-ink:#06080f;--tv-text:#eef0f7;--tv-muted:#b7bccf;--tv-dim:#8a90a8;--tv-cyan:#00e5ff;--tv-violet:#7b2fff;--tv-magenta:#ff3cac;
--tv-line:rgba(255,255,255,.14);--tv-gutter:clamp(16px,4vw,56px);font-family:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
.tvh{position:fixed;left:0;right:0;top:0;z-index:50;background:rgba(6,8,15,.78);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
border-bottom:1px solid var(--tv-line);transition:background .4s,border-color .4s}
body.home .tvh:not(.solid),body.song-page .tvh:not(.solid){background:linear-gradient(180deg,rgba(6,8,15,.55),rgba(6,8,15,0));border-bottom-color:transparent;
backdrop-filter:none;-webkit-backdrop-filter:none}
.tvh-in{display:flex;align-items:center;gap:clamp(.8rem,2.4vw,2.4rem);max-width:1360px;margin:0 auto;
padding:max(12px,env(safe-area-inset-top)) var(--tv-gutter) 12px}
.tvh a{text-decoration:none;color:var(--tv-muted);box-shadow:none}
.tvh-brand{display:flex;align-items:center;gap:.6rem;margin-right:auto;color:var(--tv-text)!important;
font:800 .95rem/1 "Orbitron",system-ui,sans-serif;letter-spacing:.28em;white-space:nowrap}
.tvh-brand img{display:block;width:36px;height:36px;border-radius:50%;object-fit:cover}
.tvh-nav ul{display:flex;align-items:center;gap:clamp(.9rem,2vw,2rem);list-style:none;margin:0;padding:0}
.tvh-nav a{display:block;position:relative;padding:.45em 0;font-size:.86rem;font-weight:400;letter-spacing:.06em;white-space:nowrap;transition:color .2s}
.tvh-nav a:hover,.tvh-brand:hover{color:#fff}
.tvh-nav a[aria-current="page"]{color:#fff;font-weight:600}
.tvh-nav a[aria-current="page"]::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;border-radius:2px;
background:linear-gradient(90deg,var(--tv-cyan),var(--tv-violet) 60%,var(--tv-magenta))}
.tvh-lang{display:inline-flex;gap:2px;margin:0;padding:2px;border:1px solid var(--tv-line);border-radius:99px;flex:none}
.tvh-lang a{display:inline-block;min-width:2.2em;text-align:center;padding:.3em .62em;border-radius:99px;font-size:.74rem;font-weight:600;letter-spacing:.08em;line-height:1.4}
.tvh-lang a:hover{color:#fff}
.tvh-lang a[aria-current="true"]{background:#fff;color:#05060c}
@media (max-width:760px){
.tvh-in{flex-wrap:wrap;row-gap:4px;padding-bottom:6px}
.tvh-brand{font-size:.86rem}
.tvh-brand img{width:30px;height:30px}
.tvh-nav{order:3;flex:1 0 100%;overflow-x:auto;scrollbar-width:none}
.tvh-nav::-webkit-scrollbar{display:none}
.tvh-nav ul{justify-content:space-between;gap:.9rem}
.tvh-nav a{font-size:.8rem;letter-spacing:.03em;padding:.5em 0}
}
.tvf{border-top:1px solid var(--tv-line);background:var(--tv-ink);color:var(--tv-muted);font-size:.86rem;line-height:1.6;text-align:center;
padding:44px var(--tv-gutter) max(64px,env(safe-area-inset-bottom));position:relative;z-index:1}
.tvf-in{max-width:900px;margin:0 auto}
.tvf p{margin:0 0 .9rem}
.tvf a{color:var(--tv-text);text-underline-offset:.18em}
.tvf a:hover{color:#fff}
.tvf a[aria-current="page"]{color:var(--tv-cyan)}
.tvf-label{font-size:.72rem;font-weight:600;letter-spacing:.28em;text-transform:uppercase;color:var(--tv-cyan)}
.tvf-platforms ul{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;list-style:none;margin:0 0 1.4rem;padding:0}
.tvf-platforms a{display:inline-block;text-decoration:none;font-weight:600;font-size:.84rem;padding:.5rem 1rem;border-radius:99px;
border:1px solid var(--tv-line);background:rgba(255,255,255,.04);transition:border-color .2s,background .2s}
.tvf-platforms a:hover{border-color:var(--tv-cyan);background:rgba(0,229,255,.08)}
.tvf-ai{color:var(--tv-muted)}
.tvf-fine{font-size:.78rem;color:var(--tv-dim)}
.tvf-fine a{color:var(--tv-muted)}
:root{--r-sm:10px;--r:14px;--r-lg:22px;--sp-1:.5rem;--sp-2:1rem;--sp-3:1.6rem;--sp-4:2.6rem;--sp-5:clamp(56px,8vw,120px);
--head-h:72px;--tint:#7b2fff}
@media (max-width:760px){:root{--head-h:96px}}
.kicker,.song .meta,.world-no,.eyebrow{font:600 .78rem/1.4 var(--body);letter-spacing:.24em;text-transform:uppercase;color:var(--gold);margin:0 0 1rem}
.hero .kicker{color:var(--gold)}
.hero .kicker::before{background:var(--gold)}
.crumbs{font-size:.8rem;color:var(--muted);margin:0 0 1.4rem}
.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:.45em;margin:0;padding:0}
.crumbs li+li::before{content:"/";margin-right:.45em;color:var(--dim)}
.crumbs a{color:var(--muted);text-underline-offset:.2em}
.crumbs a:hover{color:#fff}
.crumbs [aria-current]{color:var(--text)}
.streams a,.links a,.platforms a,.btn-c,.more a{display:inline-flex;align-items:center;gap:.5em;text-decoration:none;font:600 .9rem/1.2 var(--body);
padding:.8rem 1.25rem;border-radius:99px;border:1px solid rgba(255,255,255,.26);color:var(--text);background:rgba(8,10,20,.5);
backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:background .2s,border-color .2s,color .2s}
.streams a:hover,.links a:hover,.platforms a:hover,.btn-c:hover,.more a:hover{background:#fff;border-color:#fff;color:#05060c}
.streams a.primary,.links a.primary,.btn-c.primary{background:#fff;border-color:#fff;color:#05060c}
.streams a.primary:hover,.links a.primary:hover,.btn-c.primary:hover{background:var(--cyan);border-color:var(--cyan)}
.streams{display:flex;flex-wrap:wrap;gap:.6rem;margin:0 0 1.2rem}
.page-hero{position:relative;isolation:isolate;overflow:hidden;padding:calc(var(--head-h) + clamp(28px,6vw,80px)) 0 clamp(36px,5vw,64px);
background:radial-gradient(70rem 36rem at 85% -10%,rgba(123,47,255,.22),transparent 70%),radial-gradient(50rem 30rem at 0% 0%,rgba(0,229,255,.08),transparent 70%),var(--ink)}
.page-hero.has-video{min-height:min(78vh,760px);min-height:min(78svh,760px);display:flex;align-items:flex-end}
.page-hero.has-video .wrap{width:100%}
.page-hero .bgv,.page-hero .bgv picture,.page-hero .bgv img,.page-hero .bgv video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.page-hero .bgv{animation:push 24s ease-in-out infinite alternate}
.page-hero.has-video::after{content:"";position:absolute;inset:0;z-index:-1;
background:linear-gradient(180deg,rgba(6,8,15,.55) 0%,rgba(6,8,15,.1) 30%,rgba(6,8,15,.55) 70%,var(--ink) 100%),linear-gradient(90deg,rgba(6,8,15,.75),rgba(6,8,15,0) 70%)}
.page-hero h1{font-size:clamp(2.4rem,7vw,5.6rem);font-weight:900;letter-spacing:.06em;margin:0 0 .25em;text-shadow:0 6px 40px rgba(0,0,0,.6)}
.page-hero .lead{font-size:clamp(1.02rem,1.5vw,1.25rem);color:#e3e6f0;max-width:60ch;margin:0 0 1.4rem}
@keyframes push{from{transform:scale(1)}to{transform:scale(1.07)}}
.section{padding:calc(var(--head-h) + clamp(28px,6vw,80px)) 0 var(--sp-5);
background:radial-gradient(70rem 36rem at 85% -10%,rgba(123,47,255,.18),transparent 70%),var(--ink)}
.page-hero + .section,.section + .section{padding-top:clamp(28px,4vw,56px);background:var(--ink)}
.wrap.narrow{max-width:860px}
.text > h1{font-size:clamp(2.2rem,6vw,4.4rem);font-weight:900;letter-spacing:.05em;margin:0 0 .35em;text-shadow:0 6px 40px rgba(0,0,0,.6)}
.text .lead{font-size:clamp(1.02rem,1.5vw,1.22rem);color:#e3e6f0}
.text h2{font-size:clamp(1.15rem,2.2vw,1.5rem);margin:2.2em 0 .7em}
.text h3{font-size:1.02rem;font-family:var(--body);font-weight:600;letter-spacing:.02em;margin:1.6em 0 .5em}
.text p,.text li,.text address,.text dd{color:#d4d8e6}
.text address{font-style:normal;margin:0 0 1em;line-height:1.7}
.text a{color:var(--cyan);text-underline-offset:.2em}
.text a:hover{color:#fff}
.text ul,.text ol{padding-left:1.2em}
.text li{margin:.3em 0}
.text .embed-note,.text .note{font-size:.86rem;color:var(--muted)}
.text code{font:600 .95em ui-monospace,SFMono-Regular,Menlo,monospace}
.tiles,.cover-row{list-style:none;padding:0;margin:1.6rem 0 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:clamp(14px,2vw,28px)}
.cover-row{grid-template-columns:repeat(4,1fr)}
.tile a,.cover-row a{display:block;text-decoration:none;color:var(--text)}
.tile-media{position:relative;display:block;aspect-ratio:1;border-radius:var(--r);overflow:hidden;background:var(--ink2);
box-shadow:0 20px 50px -22px rgba(0,0,0,.9);transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s}
.tile-media img,.cover-row img{width:100%;height:100%;aspect-ratio:1;object-fit:cover;border-radius:var(--r);transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.tile-media img{border-radius:0}
.tile-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .5s}
.tile.playing .tile-media video{opacity:1}
.tile-media::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.22) 48%,transparent 62%);
transform:translateX(-120%);transition:transform 1.1s ease;pointer-events:none}
.tile a:hover .tile-media,.tile a:focus-visible .tile-media,.tile.playing .tile-media{transform:translateY(-6px);box-shadow:0 30px 60px -18px rgba(123,47,255,.55)}
.tile a:hover .tile-media img{transform:scale(1.06)}
.tile a:hover .tile-media::after{transform:translateX(120%)}
.tile .has-mv{position:absolute;left:10px;bottom:10px;z-index:2;font:600 .62rem/1 var(--body);letter-spacing:.16em;text-transform:uppercase;
padding:.4em .6em;border-radius:99px;background:rgba(6,8,15,.7);color:#fff;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.tile-t,.cover-row span{display:block;margin-top:.8rem;font-weight:600;line-height:1.3}
.tile-m,.cover-row small{display:block;color:var(--dim);font-size:.82rem;margin-top:.15rem}
.cover-row a:hover img{transform:translateY(-6px) scale(1.02)}
@media (max-width:760px){.tiles{grid-template-columns:repeat(2,1fr)}.cover-row{grid-template-columns:repeat(2,1fr)}}
.years{display:flex;flex-wrap:wrap;gap:.5rem;margin:.4rem 0 0}
.years a{font:600 .8rem/1 var(--body);letter-spacing:.14em;text-transform:uppercase;text-decoration:none;color:var(--muted);padding:.6rem .95rem;border-radius:99px;border:1px solid var(--line)}
.years a:hover{color:#05060c;background:#fff;border-color:#fff}
.filter{margin:1.2rem 0 1rem;max-width:520px}
.filter label{display:block;font:600 .74rem/1.4 var(--body);letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:.5rem}
.filter input{width:100%;font:400 1rem var(--body);color:var(--text);background:rgba(255,255,255,.05);border:1px solid var(--line);border-radius:99px;padding:.85rem 1.2rem}
.filter input:focus{outline:none;border-color:var(--cyan);background:rgba(0,229,255,.06)}
.filter-status{font-size:.82rem;color:var(--muted);margin:.5rem 0 0}
.year{padding:clamp(30px,5vw,64px) 0 0;background:var(--ink)}
.year:last-of-type{padding-bottom:var(--sp-5)}
.year h2{display:flex;align-items:baseline;gap:.6rem;font-size:clamp(1.6rem,3.4vw,2.4rem)}
.year h2 small{font:600 .74rem/1 var(--body);letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}
.ids{width:100%;border-collapse:separate;border-spacing:0 8px;margin:1.4rem 0}
.ids th{text-align:left;font:600 .72rem/1 var(--body);letter-spacing:.2em;text-transform:uppercase;color:var(--gold);padding:0 .9rem .3rem}
.ids td{padding:.75rem .9rem;background:rgba(255,255,255,.035);border-top:1px solid var(--line);border-bottom:1px solid var(--line);vertical-align:middle}
.ids td:first-child{border-left:1px solid var(--line);border-radius:var(--r-sm) 0 0 var(--r-sm);font-weight:600}
.ids td:last-child{border-right:1px solid var(--line);border-radius:0 var(--r-sm) var(--r-sm) 0;color:var(--muted);white-space:nowrap}
.ids td a{color:var(--text);text-decoration-color:rgba(0,229,255,.6);text-underline-offset:.22em}
.ids td a:hover{color:var(--cyan)}
.ids code{font:600 1rem ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.03em;margin-right:.6rem}
.ids .copy{padding:.5rem .8rem;font-size:.78rem}
.ids .ext{font-size:.72rem;color:var(--muted);margin-left:.35rem}
@media (max-width:640px){.ids thead{display:none}.ids tr{display:grid;grid-template-columns:1fr auto}.ids td{border:0!important;border-radius:0!important}
.ids td:first-child{grid-column:1/-1;border-radius:var(--r-sm) var(--r-sm) 0 0!important;padding-bottom:.2rem}
.ids td:nth-child(2){border-radius:0 0 0 var(--r-sm)!important}.ids td:last-child{border-radius:0 0 var(--r-sm) 0!important}}
.song-page .song{position:relative;z-index:1}
.song-bg{overflow:hidden}
.song-bg .bgv{position:absolute;inset:-4% 0;will-change:transform}
.song-bg video,.song-bg .poster,.song-bg .poster img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.song-bg video{z-index:1}
.song-bg .bgv{animation:push 26s ease-in-out infinite alternate}
.song-bg.cover-only .cover-bg{position:absolute;inset:-10%;z-index:0;animation:drift2 34s ease-in-out infinite alternate}
.song-bg.cover-only .cover-bg img{width:100%;height:100%;object-fit:cover;filter:blur(34px) saturate(1.5) brightness(.85);transform:scale(1.15)}
.song{grid-template-areas:"head art" "head side";grid-template-rows:auto 1fr}
.song-head{grid-area:head}.side{grid-area:side;align-self:end}
.song .art{grid-area:art;margin:0;aspect-ratio:1;border-radius:var(--r-lg);overflow:hidden;align-self:end;
box-shadow:0 60px 120px -30px rgba(0,0,0,.9),0 0 0 1px rgba(255,255,255,.1),0 0 80px -10px var(--tint);animation:float 8s ease-in-out infinite alternate}
.song .art img{width:100%;height:100%;object-fit:cover;animation:kb 20s ease-in-out infinite alternate}
.leak{position:absolute;z-index:2;border-radius:50%;filter:blur(60px);mix-blend-mode:screen;opacity:.7;pointer-events:none}
.leak.l1{width:60vmax;height:40vmax;left:-15vmax;top:-10vmax;background:radial-gradient(closest-side,var(--tint),transparent);animation:leak1 16s ease-in-out infinite alternate}
.leak.l2{width:44vmax;height:44vmax;right:-12vmax;bottom:-16vmax;background:radial-gradient(closest-side,rgba(255,170,90,.75),transparent);animation:leak2 21s ease-in-out infinite alternate}
.dust{position:absolute;inset:0;z-index:2;opacity:.5;pointer-events:none;
background-image:radial-gradient(1.5px 1.5px at 12% 30%,#fff,transparent),radial-gradient(1px 1px at 32% 70%,#fff,transparent),radial-gradient(1.2px 1.2px at 58% 18%,#fff,transparent),
radial-gradient(1px 1px at 76% 62%,#fff,transparent),radial-gradient(1.6px 1.6px at 88% 26%,#fff,transparent),radial-gradient(1px 1px at 46% 46%,#fff,transparent);
background-size:520px 520px;animation:dust 40s linear infinite}
@keyframes drift2{from{transform:scale(1) translate3d(0,0,0)}to{transform:scale(1.12) translate3d(-2%,-1.5%,0)}}
@keyframes kb{from{transform:scale(1)}to{transform:scale(1.09) translate3d(-1.5%,-1%,0)}}
@keyframes float{from{transform:perspective(1200px) rotateY(-7deg) translateY(0)}to{transform:perspective(1200px) rotateY(-2deg) translateY(-10px)}}
@keyframes leak1{from{transform:translate3d(0,0,0) scale(1)}to{transform:translate3d(18vw,10vh,0) scale(1.2)}}
@keyframes leak2{from{transform:translate3d(0,0,0)}to{transform:translate3d(-14vw,-12vh,0) scale(1.15)}}
@keyframes dust{from{background-position:0 0}to{background-position:-520px -1040px}}
.song-bg::after{z-index:3}
.song-bg.cover-only::after{background:linear-gradient(90deg,rgba(6,8,15,.88) 0%,rgba(6,8,15,.45) 50%,rgba(6,8,15,.1) 100%),linear-gradient(180deg,rgba(6,8,15,.45),rgba(6,8,15,0) 22%,rgba(6,8,15,0) 70%,rgba(6,8,15,.92))}
.song{padding-top:calc(var(--head-h) + 48px)}
.song h1{overflow-wrap:anywhere}
.song .tagline{margin-bottom:.4rem}
.player{margin:1.6rem 0 1.4rem}
.side .cover-card{display:grid;grid-template-columns:96px 1fr;gap:16px;align-items:center}
.side .cover-card img{width:96px;height:96px;border-radius:var(--r-sm);object-fit:cover}
.facts{margin:0;display:grid;gap:.2rem;font-size:.86rem}
.facts div{display:flex;gap:.5rem}
.facts dt{color:var(--dim);min-width:6.5em}
.facts dd{margin:0;color:var(--text)}
.fan-note{font-size:.84rem;line-height:1.55;color:#c9cde0;border-left:2px solid var(--gold);padding:.2rem 0 .2rem .8rem;margin:1rem 0;max-width:62ch}
.song-about{position:relative;z-index:1;padding:var(--sp-5) 0;background:linear-gradient(180deg,rgba(6,8,15,0),var(--ink) 18%)}
.song-about h2,.more-songs h2{font-size:clamp(1.4rem,2.8vw,2rem)}
.song-about p{color:#d4d8e6;max-width:68ch}
.more-songs{position:relative;z-index:1;padding:0 0 var(--sp-5);background:var(--ink)}
.pn{display:flex;flex-wrap:wrap;gap:.6rem;list-style:none;padding:0;margin:1rem 0 0}
.pn small{display:block;font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}
.pn a{flex-direction:column;align-items:flex-start;border-radius:var(--r)}
.all-link{margin-top:2rem}
@media (max-width:900px){
.song{padding-top:calc(var(--head-h) + 24px)}
.song{grid-template-areas:"art" "head" "side";grid-template-rows:auto}
.song .art{width:min(64vw,300px);justify-self:start;margin-top:8px}
.song .art ~ .song-head,.song-head:has(~ .art){min-height:0}
}
@media (prefers-reduced-motion:reduce){.page-hero .bgv,.song-bg .bgv,.cover-bg,.art,.art img,.leak,.dust{animation:none!important}}
.steps{list-style:none;counter-reset:s;padding:0;margin:1.4rem 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.steps li{counter-increment:s;padding:20px;border-radius:var(--r);border:1px solid var(--line);background:rgba(255,255,255,.035)}
.steps li::before{content:counter(s,decimal-leading-zero);display:block;font:700 .9rem/1 var(--head);color:var(--gold);letter-spacing:.2em;margin-bottom:.7rem}
.steps b{display:block;margin-bottom:.3rem}
.steps span{color:var(--muted);font-size:.92rem}
@view-transition{navigation:auto}
.tvh{view-transition-name:tv-head}
::view-transition-old(root){animation:vt-out .28s ease both}
::view-transition-new(root){animation:vt-in .42s ease both}
@keyframes vt-out{to{opacity:0;transform:scale(.985)}}
@keyframes vt-in{from{opacity:0;transform:scale(1.015)}}
@media (prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root){animation:none}}
.tint-0{--tint:#ff4d5e}.tint-1{--tint:#ff8a3c}.tint-2{--tint:#ffc23c}.tint-3{--tint:#b7e04a}.tint-4{--tint:#3ce07a}.tint-5{--tint:#2fe0c8}
.tint-6{--tint:#00c8ff}.tint-7{--tint:#3c7bff}.tint-8{--tint:#7b2fff}.tint-9{--tint:#c03cff}.tint-10{--tint:#ff3cac}.tint-11{--tint:#ff3c78}.tint-g{--tint:#8a90a8}
.card h2{color:var(--gold);letter-spacing:.24em}
@media (min-width:901px){
.song{align-items:start}
.song-head{position:sticky;top:calc(var(--head-h) + 40px);min-height:calc(100vh - var(--head-h) - 110px);min-height:calc(100svh - var(--head-h) - 110px);
display:flex;flex-direction:column;justify-content:flex-end}
.side{align-self:start}
}
.art ~ .side .cover-card{grid-template-columns:1fr}
.art ~ .side .cover-card picture{display:none}
.more{margin-top:2rem}
.text .kicker,.text p.kicker{color:var(--gold)}
.tvf-label{color:var(--gold)!important}
.song-bg .bgv::after{content:"";position:absolute;inset:0;z-index:2;mix-blend-mode:soft-light;opacity:.55;
background:radial-gradient(90% 80% at 75% 40%,var(--tint),transparent 70%)}
.hero .genres{font:600 clamp(.78rem,1.2vw,.92rem)/1.5 var(--body);letter-spacing:.14em;text-transform:uppercase;color:#d9dcea;margin:-.6rem 0 2rem;text-shadow:0 2px 14px rgba(0,0,0,.7)}
.follow{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem;margin:0 0 1.2rem}
.fb{display:inline-flex;align-items:center;justify-content:center;gap:.55em;min-height:44px;text-decoration:none;font:600 .88rem/1.2 var(--body);color:var(--text);
padding:.55rem 1.1rem;border-radius:99px;border:1px solid rgba(255,255,255,.26);background:rgba(8,10,20,.5);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
transition:background .2s,border-color .2s,color .2s}
.fb:hover{background:#fff;border-color:#fff;color:#05060c}
.fb svg{width:20px;height:20px;flex:none}
.fb-icon{width:44px;padding:0}
.fb-live{font-size:.78rem;letter-spacing:.06em;padding:.45rem .9rem}
.fb-live .dot{flex:none}
.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.8rem 1rem}
.hero-actions .follow{margin:0}
.tvf .follow{justify-content:center;margin-bottom:1.4rem}
.tvf .fb{color:var(--text)}
@media (max-width:640px){.hero-actions{flex-direction:column;align-items:flex-start}.hero-actions .follow{max-width:100%}}
@media (max-width:640px){
.hero-shade{background:linear-gradient(180deg,rgba(6,8,15,.6) 0%,rgba(6,8,15,.35) 18%,rgba(6,8,15,.62) 40%,rgba(6,8,15,.78) 70%,var(--ink) 100%)}
.hero .kicker,.hero .genres,.hero .lead{text-shadow:0 1px 14px rgba(0,0,0,.95),0 0 2px rgba(0,0,0,.8)}
}
.id-tools{display:flex;gap:.6rem;flex-wrap:wrap}
.id-tools input{flex:1 1 220px}
.id-tools select{font:600 .9rem var(--body);color:var(--text);background:rgba(255,255,255,.05);border:1px solid var(--line);border-radius:99px;padding:.8rem 1rem;min-height:44px}
.id-tools select:focus{outline:none;border-color:var(--cyan)}
.ids tr.empty td{text-align:center;color:var(--muted);border-radius:var(--r-sm)!important;border:1px solid var(--line)!important}
.ids td .ext{display:block;margin:.15rem 0 0}
.ids tr[hidden],.tile[hidden],.year[hidden]{display:none!important}
.ids .new{display:inline-block;margin-left:.5rem;font:700 .62rem/1 var(--body);letter-spacing:.14em;padding:.3em .5em;border-radius:99px;background:var(--gold);color:#05060c;vertical-align:middle}
.fb-icon{position:relative;width:44px;height:44px;min-height:44px;padding:0;border-radius:50%}
.fb-icon svg{width:19px;height:19px}
.fb-live .dot{position:absolute;top:7px;right:7px;width:7px;height:7px}
.fb-icon[data-tip]::after{content:attr(data-tip);position:absolute;left:50%;bottom:calc(100% + 8px);transform:translateX(-50%) translateY(4px);
white-space:nowrap;font:600 .72rem/1 var(--body);letter-spacing:.02em;padding:.45rem .6rem;border-radius:8px;background:rgba(6,8,15,.92);
color:#fff;border:1px solid var(--line);opacity:0;pointer-events:none;transition:opacity .15s,transform .15s;z-index:5}
.fb-icon[data-tip]:hover::after,.fb-icon[data-tip]:focus-visible::after{opacity:1;transform:translateX(-50%) translateY(0)}
.follow{gap:.5rem}
@media (max-width:640px){.hero-actions{flex-direction:column;align-items:flex-start}}
.fb-word{font:800 .58rem/1 var(--body);letter-spacing:.08em;text-transform:uppercase}
.fb-live .dot{top:4px;right:4px}
@media (max-width:400px){.hero-actions .follow{gap:.4rem}}
.tvf .follow{justify-content:center}
@media (max-width:400px){.hero-actions .follow,.song-head .follow{gap:.3rem}}
@media (hover:none){.fb-icon[data-tip]::after{display:none}}
.follow .fb-icon:last-child::after{left:auto;right:0;transform:translateY(4px)}
.follow .fb-icon:last-child:hover::after,.follow .fb-icon:last-child:focus-visible::after{transform:none}
.journey-seq{position:absolute;inset:0;width:100%;height:100%;z-index:0;opacity:0;transition:opacity .6s}
.journey.seq-ready .journey-seq{opacity:1}
.journey.seq-ready .world-bg{opacity:0!important}
