@font-face{font-family:Montserrat;font-style:normal;font-weight:300;font-display:swap;src:url(/fonts/montserrat-v31-latin-300.woff2) format("woff2")}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/montserrat-v31-latin-regular.woff2) format("woff2")}@font-face{font-family:Noto Sans JP;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/noto-sans-jp-v56-japanese-regular.woff2) format("woff2")}*{margin:0;padding:0;box-sizing:border-box}body,html{width:100%;height:100%;overflow:hidden;background-color:#000;font-family:Montserrat,sans-serif}.app{position:relative;width:100vw;height:100vh;height:100dvh;overflow:hidden}#artCanvas{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;display:block}.brand-container{position:absolute;top:50px;left:50px;z-index:2;color:#fff;pointer-events:none;text-shadow:0 2px 10px rgba(0,0,0,.2);display:flex;align-items:center}.domain{font-size:calc(4.8rem + 12px);font-weight:300;letter-spacing:2px;line-height:1}.separator{font-size:calc(4.8rem + 12px);margin:0 20px;color:#ffffff59;font-weight:300;line-height:1}.japanese{font-family:Noto Sans JP,sans-serif;font-size:1.6rem;font-weight:400;writing-mode:vertical-rl;text-orientation:upright;letter-spacing:6px;line-height:1}.credits{position:absolute;bottom:15px;left:0;right:0;text-align:center;color:#fff;font-size:.7rem;z-index:3;opacity:.6;transition:opacity .3s}.credits:hover{opacity:1}.credits a{color:inherit;text-decoration:none}.credits a:hover{border-bottom:1px solid #fff}@media(max-width:768px){.brand-container{top:30px;left:30px}.domain,.separator{font-size:3rem}}.audio-dashboard{position:absolute;bottom:50px;left:50px;display:flex;align-items:center;padding:8px 18px;background-color:#3a7bd5d9;border-radius:30px;box-shadow:0 4px 15px #00000040;opacity:.4;transition:opacity .3s ease,transform .2s ease;pointer-events:auto;z-index:10}@media(max-width:768px){.audio-dashboard{bottom:30px;left:30px;padding:6px 14px}}.audio-dashboard:hover{opacity:.95}.audio-transport{display:flex;gap:10px;margin-right:14px;align-items:center}.audio-btn{background:#ffffff26;border:1px solid rgba(255,255,255,.25);cursor:pointer;width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;padding:0;transition:background-color .2s ease,transform .1s ease}.audio-btn:hover{background:#ffffff4d;transform:scale(1.05)}.audio-btn:active{transform:scale(.95)}.icon-play-pause{width:0;height:0;border-style:solid;border-width:6px 0 6px 10px;border-color:transparent transparent transparent #ffffff;margin-left:3px;transition:all .15s ease}.is-playing .icon-play-pause{width:10px;height:12px;border-style:double;border-width:0 0 0 10px;border-color:#fff;margin-left:0}.icon-stop{width:10px;height:10px;background-color:#fff;border-radius:1px}.audio-volume-wrapper{display:flex;align-items:center}#audioSlider{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:80px;height:4px;background:#ffffff4d;border-radius:2px;outline:none;cursor:pointer}#audioSlider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:12px;height:12px;border-radius:50%;background:#fff;transition:transform .1s ease}#audioSlider::-webkit-slider-thumb:hover{transform:scale(1.2)}#audioSlider::-moz-range-thumb{width:12px;height:12px;border:none;border-radius:50%;background:#fff;transition:transform .1s ease;cursor:pointer}#audioSlider::-moz-range-thumb:hover{transform:scale(1.2)}body.legal-page-body{width:100%;height:100%;margin:0;padding:0;background:linear-gradient(180deg,#ff7e5f,#feb47b,#ffe2bd);background-attachment:fixed;overflow-y:auto}.legal-page{color:#281e32;max-width:780px;margin:0 auto;padding:60px 25px;line-height:1.7}.legal-page h1{font-size:2.2rem;margin-bottom:40px;font-weight:400;letter-spacing:-.5px}.legal-section{margin:0 auto 45px;max-width:650px}.legal-section h2{font-size:1.3rem;margin-bottom:14px;font-weight:400;opacity:.9;border-bottom:1px solid rgba(40,30,50,.15);padding-bottom:4px}.legal-section p{margin-bottom:12px}.legal-section a{color:#1a4a8b;text-decoration:none;font-weight:400}.legal-section a:hover{text-decoration:underline}.back-link{display:inline-block;margin-top:40px;color:inherit;text-decoration:none;border-bottom:1px solid rgba(40,30,50,.4);transition:border-color .3s,transform .2s ease}.back-link:hover{border-color:#281e32;transform:translate(-4px)}
