:root{--blue:#3868ff}
#human-theme{color:inherit}
#main,.site-footer{position:relative;z-index:1}
#wave-background{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;opacity:.82;transition:opacity .7s}
body:not(.is-home) #wave-background{opacity:.2}
/* CRT glass and scanlines sit above the wave, behind the interface. */
body::after{
 content:'';
 position:fixed;
 inset:0;
 z-index:0;
 pointer-events:none;
 opacity:.4;
 background:
  repeating-linear-gradient(to bottom,var(--crt-line) 0 1px,transparent 1px 3px,var(--crt-glow) 3px 4px),
  radial-gradient(ellipse at center,transparent 52%,var(--crt-edge) 100%);
 --crt-line:#0003;
 --crt-glow:#c2e1ff0d;
 --crt-edge:#0004;
}
body.is-home::after{opacity:1}
/* Neutral black blur fades smoothly below the header controls. */
.site-header,.is-home .site-header{background:transparent;border:0;box-shadow:none;isolation:isolate}
body:not(.is-home) .site-header::before{content:'';position:absolute;inset:0 0 auto;height:calc(100% + 80px);background:var(--header-blur-tint,rgba(0,0,0,.82));-webkit-backdrop-filter:blur(14px) grayscale(1);backdrop-filter:blur(14px) grayscale(1);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 30%,rgba(0,0,0,.85) 48%,rgba(0,0,0,.4) 70%,transparent 100%);mask-image:linear-gradient(to bottom,#000 0%,#000 30%,rgba(0,0,0,.85) 48%,rgba(0,0,0,.4) 70%,transparent 100%);z-index:-1;pointer-events:none}
.is-home .logo-home:before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 50% 50%,#0008 0%,#0002 48%,#0005 100%);pointer-events:none}
.wave-fallback{background:radial-gradient(ellipse at 75% 35%,#78b8d3,transparent 38%),radial-gradient(ellipse at 40% 70%,#173dea,transparent 65%),#010511;background-size:145% 145%;animation:fallback-wave 18s ease-in-out infinite alternate}
.wave-fallback.paused{animation-play-state:paused}
.brand,.index-home,.footer-logo{letter-spacing:.18em}
.brand{padding-right:0}
.header-controls{display:flex;align-items:center;gap:35px;pointer-events:auto}
.language-control{position:relative}
.language-toggle{display:flex;align-items:center;gap:9px;font-size:13px;padding:6px 0;min-height:32px;color:#fff}
.language-toggle svg{width:22px;height:22px}
.language-toggle:hover{color:#a6c9ff}
.language-menu{position:absolute;top:45px;right:-15px;width:180px;padding:7px;background:#080c16f5;border:1px solid #ffffff30;z-index:50;backdrop-filter:blur(20px)}
.language-menu button{display:flex;justify-content:space-between;align-items:center;width:100%;padding:13px 12px;font-size:13px;text-align:left}
.language-menu button>span:last-child{font-size:10px;color:#a2acc6}
.language-menu button:hover,.language-menu button[aria-checked=true]{background:#2448c7;color:#fff}
img,.release-cover img,.video-cover>img,.about-visual>img,.video-frame iframe{filter:none!important}
.release-cover{display:block;width:86px;height:86px;flex-shrink:0}
.release-cover img{width:100%;height:100%;object-fit:cover}
.release{padding:22px 0;gap:25px}
.video-card{grid-template-columns:210px 1fr;gap:30px}
.video-cover,.video-grid:not(.all-videos) .video-card:not(.featured-video) .video-cover{width:210px;height:auto;aspect-ratio:16/9;background:#111}
.video-cover>img{width:100%;height:100%;object-fit:cover;opacity:.9}
.video-cover:hover>img{opacity:1}
.play-circle,.featured-video .play-circle,.all-videos .featured-video .play-circle{background:#0009;width:44px;height:44px;border:1px solid #ffffff80}
.about-visual{overflow:hidden;aspect-ratio:1}
.about-visual>img{width:100%;height:100%;object-fit:cover}
.dialog-artwork{width:100%;aspect-ratio:1;object-fit:cover;align-self:center}
.release-dialog-layout>div{padding:42px 30px}
.downloads-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px}
.downloads-heading h2{font-size:22px;letter-spacing:-.04em}
.downloads-heading>span{font-size:12px;color:#9ba4b9}
.mix-list{display:flex;flex-direction:column}
.mix-row{display:flex;align-items:center;gap:30px;padding:33px 0;border-bottom:1px solid #ffffff20}
.mix-row:first-child{border-top:1px solid #ffffff20}
.mix-number{font-size:13px;color:#8791aa;min-width:25px}
.mix-copy{flex:1;min-width:0}
.mix-artist{font-size:13px;color:#a0a9bc;margin-bottom:7px}
.mix-copy h3{font-size:clamp(18px,2vw,27px);letter-spacing:-.04em;line-height:1.45}
.mix-version{font-size:13px;color:#919bb3;margin-top:7px}
.mix-format{font-size:12px;color:#b4c1db;min-width:40px}
.mix-download{display:flex;align-items:center;gap:22px;font-size:14px;padding:13px 0 13px 15px;white-space:nowrap}
.mix-download span{font-size:23px}
.mix-download:hover{color:#a2c8ff}
.download-service-note{font-size:13px;color:#929db7;margin-top:25px}
#background-motion{font-size:12px;color:#999;padding:0}
#background-motion:hover{color:white}
#ascii-art{color:#fff;text-shadow:0 0 12px #0008}
#ascii-blue{color:#91c7ff;opacity:.5}
.home-origin{color:#d6ddeb}
html[lang=ja] .command-results>a{font-size:clamp(25px,3vw,40px)}
html[lang=ja] .page-intro h1{font-size:clamp(31px,4.5vw,65px);line-height:1.4;letter-spacing:.015em}
@keyframes fallback-wave{from{background-position:0% 15%}to{background-position:100% 80%}}
@media(max-width:900px){.mix-row{gap:20px}.mix-download{gap:13px;font-size:12px}.video-card{grid-template-columns:160px 1fr;gap:24px}.video-cover,.video-grid:not(.all-videos) .video-card:not(.featured-video) .video-cover{width:160px}.about-visual{aspect-ratio:1}}
@media(max-width:600px){.header-controls{gap:23px}.brand{letter-spacing:.17em;font-size:18px}.language-toggle{font-size:11px;gap:6px}.language-toggle svg{width:20px;height:20px}.language-menu{right:-20px;top:43px;width:165px}.index-button{font-size:15px;gap:12px}.index-plus{font-size:22px}.release{gap:13px;padding:19px 0}.release-cover{display:block;width:58px;height:58px}.release-meta h3{font-size:15px}.release-meta p{font-size:10px}.release-number{font-size:10px;width:15px}.release-year{font-size:10px;min-width:25px}.row-open{font-size:19px}.video-card{grid-template-columns:100px 1fr;gap:17px}.video-cover,.video-grid:not(.all-videos) .video-card:not(.featured-video) .video-cover{width:100px;aspect-ratio:1.4}.video-meta h3,.featured-video .video-meta h3,.all-videos .featured-video .video-meta h3{font-size:16px}.video-meta p{font-size:10px;line-height:1.7}.play-circle,.featured-video .play-circle,.all-videos .featured-video .play-circle{width:31px;height:31px;font-size:9px}.downloads-heading{margin-bottom:18px}.downloads-heading h2{font-size:20px}.downloads-heading>span{font-size:10px}.mix-row{display:grid;grid-template-columns:20px 1fr auto;gap:10px 14px;padding:27px 0}.mix-number{font-size:11px;align-self:start;padding-top:3px;min-width:0}.mix-copy{grid-column:2 / -1}.mix-artist{font-size:11px;margin-bottom:6px}.mix-copy h3{font-size:19px;line-height:1.5;overflow-wrap:anywhere}.mix-version{font-size:11px;margin-top:6px}.mix-format{grid-column:2;font-size:10px;align-self:center}.mix-download{grid-column:3;font-size:12px;gap:15px;padding:8px 0}.mix-download span{font-size:20px}.download-service-note{font-size:11px}.dialog-artwork{max-height:42svh;object-fit:contain;background:#050508}.release-dialog-layout>div{padding:27px}.home-origin{font-size:11px}.home-booking{font-size:14px}#background-motion{font-size:10px}.about-visual{aspect-ratio:1}html[lang=ja] .command-results>a{font-size:25px}html[lang=ja] .page-intro h1{font-size:31px}}
@media(max-width:360px){.header-controls{gap:17px}.brand{font-size:17px}.index-button{font-size:14px}.language-toggle{font-size:10px}.release-number{display:none}.release-cover{width:52px;height:52px}.release-meta h3{font-size:14px}.home-origin{font-size:9px}.home-booking{font-size:12px}}
@media(prefers-reduced-motion:reduce){.wave-fallback{animation:none}}

/* Social logos stay centered; compact layouts reserve a separate row. */
.home-socials{position:fixed;left:50%;bottom:max(24px,env(safe-area-inset-bottom));transform:translateX(-50%);display:flex;justify-content:center;align-items:center;gap:12px;z-index:3}
.home-socials>a{position:relative;display:grid;place-items:center;width:52px;height:52px;flex:0 0 52px;color:#e4ebff;transition:color .2s,transform .2s}
.home-socials svg{display:block;width:22px;height:22px;filter:drop-shadow(0 1px 4px #0005)}
.home-socials>a:hover,.home-socials>a:focus-visible{color:#9bd3ff;transform:translateY(-4px)}
.social-caption{position:absolute;left:50%;top:calc(100% + 3px);transform:translateX(-50%);font:9px/1.3 var(--mono);white-space:nowrap;color:inherit;opacity:0;pointer-events:none;transition:opacity .15s}
.home-socials>a:hover .social-caption,.home-socials>a:focus-visible .social-caption{opacity:1}
.logo-home{min-height:0}
@media(max-width:1000px){.home-socials{bottom:78px;gap:13px}.home-socials>a{width:48px;height:48px;flex-basis:48px}.social-caption{top:auto;bottom:calc(100% + 6px)}}
@media(max-width:600px){.home-socials{bottom:max(78px,calc(env(safe-area-inset-bottom) + 66px));gap:12px}.home-socials>a{width:44px;height:48px;flex-basis:44px}.home-origin,.home-booking{bottom:max(27px,env(safe-area-inset-bottom))}}
@media(max-width:360px){.home-socials{gap:9px}}
@media(max-height:500px){.logo-home{padding:80px 24px 110px}.logo-interaction{width:min(62vw,850px)}.home-socials{bottom:64px;gap:10px}.home-socials>a{height:44px}.home-origin,.home-booking{bottom:18px}.site-header{padding-top:20px;padding-bottom:20px}}

.home-socials>a{color:#fff}
@media(max-width:600px){.home-socials svg{width:21px;height:21px}}

.footer-social,.about-social{flex-wrap:wrap}

/* A natural-width wordmark, with room around each letter. */
.brand,.index-home,.footer-logo{font-family:'DM Sans','Helvetica Neue',sans-serif;font-weight:400;font-size:22px;letter-spacing:.11em;line-height:1.1}
.home-booking{display:inline-block;padding-bottom:6px;transition:color .22s,transform .28s cubic-bezier(.2,.7,.2,1)}
.home-booking:after{content:'';position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .3s cubic-bezier(.2,.7,.2,1)}
.home-booking:hover,.home-booking:focus-visible{color:#b5d6ff;transform:translateY(-3px)}
.home-booking:hover:after,.home-booking:focus-visible:after{transform:scaleX(1)}
.release-date{font:12px var(--mono);font-variant-numeric:tabular-nums;white-space:nowrap;min-width:100px;color:#a7b3cc}
.dialog-release-date{font-size:12px;color:#a7b3cc;margin-top:12px;line-height:1.7}
@media(max-width:600px){.brand,.index-home,.footer-logo{font-size:20px;letter-spacing:.1em}.release{display:grid;grid-template-columns:58px minmax(0,1fr) 20px;column-gap:13px;row-gap:5px}.release-number{display:none}.release-cover{grid-column:1;grid-row:1/3}.release-meta{grid-column:2;grid-row:1;align-self:end}.release-date{grid-column:2;grid-row:2;font-size:11px;align-self:start}.row-open{grid-column:3;grid-row:1/3}.release-type{display:none}.dialog-release-date{font-size:11px}}
@media(max-width:360px){.brand,.index-home,.footer-logo{font-size:19px}.release{grid-template-columns:52px minmax(0,1fr) 19px;column-gap:11px}}

/* Regular typography throughout, including decoder islands and form controls. */
body,body *{font-weight:400!important}
.index-button>span:first-child{position:relative;display:inline-block}
.index-button>span:first-child::after{content:'';position:absolute;left:0;right:0;bottom:-6px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .3s cubic-bezier(.2,.7,.2,1)}
.index-button:hover,.index-button:focus-visible{color:#b5d6ff}
.index-button:hover>span:first-child::after,.index-button:focus-visible>span:first-child::after{transform:scaleX(1)}
@media(prefers-reduced-motion:reduce){.index-button>span:first-child::after,.home-booking,.home-booking::after{transition:none}}
