:root{--ink:#151517;--paper:#f1f0eb;--acid:#d5ff49;--blue:#2549ff;--pink:#ff76bf;--g:clamp(22px,5vw,90px);font-family:Outfit,'Noto Sans JP',sans-serif;font-synthesis:none;color:var(--ink);background:var(--paper)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{width:100%;height:auto;display:block}h1,h2,h3,p{margin:0}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--blue);outline-offset:5px}button:focus-visible{position:relative;z-index:4}[hidden]{display:none!important}.skip{position:fixed;top:-100px;left:20px;z-index:200;background:white;padding:15px}.skip:focus{top:20px}.scroll-meter{position:fixed;z-index:99;top:0;left:0;height:4px;width:100%;background:var(--acid);transform:scaleX(var(--page-progress,0));transform-origin:left;pointer-events:none}header{position:absolute;z-index:30;top:0;left:0;width:100%;padding:24px var(--g);display:flex;align-items:center;gap:35px;color:white}.logo{font-size:33px;font-weight:600;letter-spacing:-2px}.logo span{font-size:20px;margin-left:6px;color:var(--acid)}nav{display:flex;gap:30px;margin-left:auto;font-size:15px}.settings{display:flex;align-items:center;gap:20px}header button{border:0;color:inherit;background:none;padding:10px 0;font-size:13px}#motion{display:flex;gap:6px}#motion span{color:var(--acid)}#language{border-bottom:1px solid #ffffff80}nav a{position:relative}nav a::after{content:'';height:1px;width:100%;background:currentColor;position:absolute;bottom:-5px;left:0;transform:scaleX(0);transform-origin:left;transition:transform .25s}nav a:hover::after{transform:scaleX(1)}.opening{height:225svh;background:var(--ink);color:var(--paper)}.opening-pin{position:sticky;top:0;height:100svh;min-height:600px;overflow:hidden;isolation:isolate}.opening-image{position:absolute;z-index:-2;inset:0;transform:translate3d(var(--hero-x,0%),0,0) scale(var(--hero-scale,1));clip-path:inset(var(--hero-inset,0%) var(--hero-inset,0%) var(--hero-inset,0%) var(--hero-inset,0%));will-change:transform,clip-path}.opening-image img{height:100%;object-fit:cover;object-position:center 42%;transform:scale(1.04) translate(var(--pointer-x,0px),var(--pointer-y,0px));transition:transform 1.6s cubic-bezier(.2,.6,.2,1)}.image-shade{position:absolute;inset:0;background:linear-gradient(180deg,#13132155,transparent 40%,#101016b0)}.opening-title{position:absolute;inset:auto var(--g) 10%;opacity:var(--title-opacity,1);transform:translateY(var(--title-y,0px));will-change:transform,opacity}.opening-title>p{font-size:13px;letter-spacing:.19em;margin-bottom:12px}.opening-title h1{font-size:clamp(130px,25vw,460px);letter-spacing:-.065em;line-height:.88;font-weight:600;margin-left:-.025em}.opening-title h1 span{color:var(--acid)}.opening-sub{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-top:35px;font-size:18px;line-height:1.5}.opening-sub>span{white-space:pre-line}.scroll-cue{font-size:12px;letter-spacing:.13em;display:flex;gap:24px;align-items:center}.scroll-cue>span{display:inline-block;font-size:32px;animation:nudge 1.8s ease-in-out infinite}.opening-reveal{position:absolute;top:26%;left:var(--g);font-size:clamp(45px,6.7vw,120px);line-height:.95;font-weight:600;letter-spacing:-.045em;opacity:var(--reveal-opacity,0);transform:translateY(var(--reveal-y,50px));pointer-events:none}.opening-reveal em{font-style:normal;color:var(--acid)}.edge-caption{position:absolute;right:20px;top:50%;writing-mode:vertical-rl;font-size:11px;letter-spacing:.2em;opacity:.75}.section-label{display:flex;justify-content:space-between;gap:20px;font-size:12px;letter-spacing:.12em;font-weight:500}.about{padding:70px var(--g) 90px;background:var(--acid);overflow:hidden}.about h2{font-size:clamp(46px,8vw,135px);line-height:1.03;font-weight:500;letter-spacing:-.055em;white-space:pre-line;margin:75px 0 65px}.about-lower{display:grid;grid-template-columns:1fr 1fr;gap:9vw;border-top:1px solid #15151750;padding-top:35px}.big-caption{font-size:clamp(26px,3.5vw,52px);line-height:1.2;letter-spacing:-.025em;white-space:pre-line}.about-lower>div p{font-size:18px;line-height:1.85;margin-bottom:20px}.ticker{overflow:hidden;background:var(--ink);color:var(--paper);padding:14px 0;transform:rotate(-2deg) scale(1.02);margin:-6px 0;position:relative;z-index:2}.ticker>div{width:max-content;white-space:nowrap;font-size:clamp(36px,5vw,80px);letter-spacing:-.035em;animation:marquee 35s linear infinite}.worlds{--world-bg:#f1f0eb;--world-ink:#151517;background:var(--world-bg);color:var(--world-ink);padding:95px var(--g) 85px;transition:background .65s,color .65s;overflow:hidden}.worlds[data-world=movie]{--world-bg:#1c1c20;--world-ink:#f1f0eb}.worlds[data-world=music]{--world-bg:#1937d9;--world-ink:#fff}.worlds[data-world=text]{--world-bg:#efd4e0;--world-ink:#302124}.worlds[data-world=app]{--world-bg:#d5ff49;--world-ink:#151517}.world-top{display:flex;justify-content:space-between;align-items:end;gap:30px}.world-top h2{font-size:clamp(48px,7.7vw,125px);line-height:1.05;font-weight:500;letter-spacing:-.05em;margin-top:22px}.world-count{font-size:18px;letter-spacing:-.02em;opacity:.6;white-space:nowrap}.world-tabs{display:flex;gap:0;border-top:1px solid currentColor;border-bottom:1px solid currentColor;margin:45px 0 60px}.world-tabs button{border:0;border-right:1px solid #88888860;background:none;flex:1;text-align:left;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 18px;color:inherit;font-size:clamp(16px,1.9vw,28px);transition:color .25s,background .25s}.world-tabs button:last-child{border-right:0}.world-tabs button span{font-size:12px}.world-tabs button:hover{background:#88888820}.world-tabs button[aria-selected=true]{background:var(--world-ink);color:var(--world-bg)}.panel{min-height:500px}.panel.entering{animation:world-enter .7s cubic-bezier(.2,.8,.2,1) both}.panel-intro{display:flex;justify-content:space-between;align-items:end;gap:30px}.panel h3{font-size:clamp(45px,6.6vw,105px);line-height:1.03;font-weight:500;letter-spacing:-.05em}.panel h3 i{font-style:normal;color:var(--blue)}.panel-intro p{font-size:17px;line-height:1.7;white-space:pre-line}.gallery{display:grid;grid-template-columns:1fr .85fr .68fr;gap:3vw;align-items:center;margin:45px 0 55px;perspective:1400px}.artwork{border:0;padding:0;background:none;position:relative;transition:transform .55s cubic-bezier(.2,.8,.2,1);transform:rotate(var(--angle)) translateY(var(--drift,0px));box-shadow:0 16px 30px #00000015}.artwork-a{--angle:-5deg}.artwork-b{--angle:4deg;margin-top:80px}.artwork-c{--angle:-3deg;margin-top:-60px}.artwork img{aspect-ratio:3/4;object-fit:cover}.artwork span{position:absolute;left:12px;bottom:12px;background:var(--acid);color:var(--ink);padding:12px;font-size:12px;letter-spacing:.08em;opacity:0;transform:translateY(8px);transition:.25s}.artwork:hover,.artwork:focus-visible{transform:rotate(0) translateY(-12px) scale(1.045);z-index:2}.artwork:hover span,.artwork:focus-visible span{opacity:1;transform:none}.out-link{display:flex;justify-content:space-between;gap:25px;align-items:center;border-bottom:1px solid currentColor;padding:15px 0;font-size:17px;max-width:430px}.out-link>span{font-size:28px;transition:transform .25s}.out-link:hover>span{transform:translate(5px,-5px)}.movie-panel{display:grid;grid-template-columns:1.1fr .8fr;gap:7vw;align-items:center}.film-frame{padding:28px;border:1px solid #f1f0eb80;position:relative;perspective:1000px;overflow:hidden;background:linear-gradient(125deg,#303039,#121214)}.frame-caption{font-size:11px;letter-spacing:.14em}.film-frame h3{font-size:clamp(70px,10vw,160px);margin:30px 0;font-weight:600;transform:rotateY(-12deg) rotateZ(-4deg);animation:frame-breathe 8s ease-in-out infinite}.film-frame h3 i{color:var(--acid)}.frame-corner{position:absolute;right:24px;bottom:20px;font-size:50px;color:var(--acid)}.movie-copy>p:first-child{font-size:clamp(27px,3.6vw,48px);line-height:1.2;margin-bottom:30px;letter-spacing:-.02em}.movie-copy>p:nth-child(2){font-size:17px;line-height:1.9;color:#d1d1d5}.movie-copy .out-link{margin-top:30px}.music-picture{display:block;position:relative;overflow:hidden}.music-picture img{aspect-ratio:1.78;object-fit:cover;transition:transform 1s}.music-picture:hover img{transform:scale(1.04)}.listen-circle{position:absolute;right:35px;bottom:30px;background:var(--acid);color:var(--ink);border-radius:50%;height:130px;width:130px;display:grid;place-content:center;text-align:center;line-height:1.5;font-size:22px;transition:transform .4s}.music-picture:hover .listen-circle{transform:rotate(-15deg) scale(1.1)}.music-details{display:flex;justify-content:space-between;gap:35px;align-items:end;padding-top:35px}.music-details p{font-size:15px;line-height:1.7;margin-bottom:16px}.music-details h3{font-size:clamp(30px,4vw,60px);letter-spacing:.02em}.text-panel{display:grid;grid-template-columns:1fr 1fr;gap:6vw;align-items:center}.word-composition{height:580px;position:relative;font-family:'Noto Sans JP',sans-serif;font-size:clamp(100px,13vw,205px);font-weight:600;line-height:1}.word-composition>span{position:absolute;transition:transform 1s;animation:word-float 7s ease-in-out infinite}.word-composition>span:nth-child(1){left:0;top:0;transform:rotate(-12deg)}.word-composition>span:nth-child(2){right:0;top:90px;color:#f43473;animation-delay:-2s}.word-composition>span:nth-child(3){left:12%;top:210px;font-size:.65em;animation-delay:-4s}.word-composition>span:nth-child(4){right:14%;bottom:80px;animation-delay:-1s}.word-composition>span:nth-child(5){left:0;bottom:10px;font-size:.6em;animation-delay:-5s}.word-composition small{font:12px Outfit,sans-serif;letter-spacing:.1em;position:absolute;bottom:0;right:0;writing-mode:vertical-rl}.text-copy h3{white-space:pre-line;margin-bottom:30px}.text-copy>p{font-size:18px;line-height:1.9}.status{font-size:14px!important;opacity:.7;margin-top:28px}.app-panel{display:grid;grid-template-columns:1fr 1fr;gap:5vw;align-items:center;perspective:1600px}.app-copy>p{font-size:16px;line-height:1.8;margin-bottom:25px}.app-copy>p:first-child{font-size:12px;letter-spacing:.12em}.app-copy h3{margin-bottom:30px}.app-copy h3 i{color:inherit}.app-preview{transform:rotateY(-12deg) rotateZ(5deg);transition:transform .7s;box-shadow:20px 30px 0 #161618}.app-preview:hover{transform:rotateY(0deg) rotateZ(0deg)}.app-preview img{aspect-ratio:1.4;object-fit:cover}.app-preview>span{display:block;background:#161618;color:white;padding:18px;font-size:22px}.direction{padding:85px var(--g) 100px;background:var(--ink);color:var(--paper)}.direction h2{font-size:clamp(48px,8vw,135px);font-weight:500;line-height:1.04;letter-spacing:-.05em;margin:65px 0 40px;white-space:pre-line}.direction-description{font-size:20px;line-height:1.8;max-width:750px;margin-left:auto;margin-bottom:70px}.credit{display:grid;grid-template-columns:50px 1fr auto;gap:25px;border-top:1px solid #ffffff50;padding:35px 0;align-items:center;transition:padding .3s,color .3s}.credit:hover{padding-left:18px;color:var(--acid)}.credit>span{font-size:13px;opacity:.6}.credit h3{font-weight:400;letter-spacing:-.03em;font-size:clamp(22px,3.5vw,52px)}.credit p{font-size:16px}.direction details{border-top:1px solid #ffffff50;border-bottom:1px solid #ffffff50;padding:25px 0}.direction summary{cursor:pointer;font-size:17px}.direction li{font-size:16px;line-height:1.9;margin:10px 0}footer{background:var(--pink);padding:55px var(--g) 25px;overflow:hidden}.footer-top{display:flex;justify-content:space-between;align-items:start;gap:25px}.footer-top>p{font-size:32px;letter-spacing:-.03em}.footer-top>div{display:flex;gap:30px;font-size:16px}.footer-word{font-size:clamp(100px,23vw,420px);line-height:1.3;font-weight:600;letter-spacing:-.07em;display:block;white-space:nowrap;transition:letter-spacing .7s}.footer-word:hover{letter-spacing:-.025em}.footer-word span{font-size:.45em;display:inline-block;vertical-align:middle;transition:transform .6s}.footer-word:hover span{transform:rotate(45deg)}.footer-bottom{border-top:1px solid #15151750;padding-top:20px;font-size:13px;display:flex;justify-content:space-between;gap:25px}dialog{border:0;padding:60px 25px 20px;background:#151517;color:white;max-width:100vw;max-height:100svh;width:100vw;height:100svh;overflow:auto}dialog::backdrop{background:#151517ee;backdrop-filter:blur(15px)}dialog[open]{display:flex;flex-direction:column;align-items:center;gap:15px;animation:dialog-in .4s ease}dialog>img{max-height:calc(100svh - 125px);width:auto;max-width:100%;object-fit:contain}dialog>p{font-size:14px}.close-dialog{position:absolute;right:25px;top:18px;background:none;color:white;border:1px solid #ffffff80;padding:10px 15px;font-size:13px}.reveal-pending{opacity:0;transform:translateY(50px);transition:opacity .9s,transform .9s}.reveal-pending.visible{opacity:1;transform:none}@keyframes nudge{0%,100%{transform:translateY(0)}50%{transform:translateY(8px)}}@keyframes marquee{to{transform:translateX(-50%)}}@keyframes world-enter{from{opacity:0;clip-path:inset(0 0 100% 0);transform:translateY(30px)}to{opacity:1;clip-path:inset(0);transform:none}}@keyframes frame-breathe{50%{transform:rotateY(6deg) rotateZ(0)}}@keyframes word-float{50%{translate:0 -20px;rotate:6deg}}@keyframes dialog-in{from{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}
@media(max-width:900px){header{gap:20px}nav{gap:20px}.settings{gap:15px}.opening-pin{min-height:540px}.opening-sub{font-size:16px}.about-lower{gap:35px}.world-tabs{overflow-x:auto}.world-tabs button{flex:1 0 auto;min-width:140px;font-size:20px}.movie-panel,.app-panel{gap:35px}.word-composition{height:460px}.text-copy h3{font-size:55px}.credit{grid-template-columns:30px 1fr}.credit p{grid-column:2}.footer-top>div{gap:18px}}
@media(max-width:600px){header{padding-top:16px;gap:12px;flex-wrap:wrap}.logo{font-size:29px}nav{gap:18px;margin-left:auto;font-size:13px}.settings{width:100%;justify-content:flex-end;margin-top:-5px}.settings button{font-size:12px;padding:4px}.opening{height:180svh}.opening-title{bottom:12%}.opening-title h1{font-size:25vw}.opening-title>p{font-size:11px}.opening-sub{flex-direction:column;align-items:start;gap:25px;font-size:16px}.scroll-cue{font-size:11px}.opening-reveal{top:25%;font-size:10vw;line-height:1.04;max-width:75%}.edge-caption{display:none}.section-label{font-size:11px;gap:15px}.section-label>span:last-child{display:none}.about{padding-top:45px;padding-bottom:50px}.about h2{font-size:12vw;margin:45px 0}.about-lower{grid-template-columns:1fr;gap:25px}.about-lower>div p{font-size:16px}.big-caption{font-size:30px}.ticker>div{font-size:42px}.worlds{padding-top:55px;padding-bottom:55px}.world-top h2{font-size:48px}.world-count{font-size:14px}.world-tabs{margin:30px 0}.world-tabs button{min-width:120px;padding:17px 12px;font-size:17px}.panel-intro{flex-direction:column;align-items:start}.panel h3{font-size:49px}.panel-intro p{font-size:16px}.gallery{grid-template-columns:1fr 1fr;gap:20px;margin:35px 5px 40px}.artwork-b{margin-top:45px}.artwork-c{display:none}.artwork span{opacity:1;transform:none;font-size:10px;padding:8px;left:6px;bottom:6px}.movie-panel,.text-panel,.app-panel{grid-template-columns:1fr}.film-frame h3{font-size:22vw}.movie-copy>p:first-child{font-size:30px}.music-picture img{aspect-ratio:1.2;object-position:58%}.listen-circle{height:80px;width:80px;right:15px;bottom:15px;font-size:16px}.music-details{flex-direction:column;align-items:start;gap:20px}.music-details h3{font-size:30px}.music-details>div{width:100%}.word-composition{height:330px;font-size:28vw;margin:0 20px}.word-composition>span:nth-child(2){top:50px}.word-composition>span:nth-child(3){top:140px}.word-composition>span:nth-child(4){bottom:30px}.text-panel{gap:45px}.app-preview{margin:20px 20px 20px 0;box-shadow:12px 15px 0 #161618;transform:rotateZ(3deg)}.direction{padding-top:50px;padding-bottom:55px}.direction h2{font-size:12vw;margin:45px 0 30px}.direction-description{font-size:17px;margin-bottom:40px}.credit{padding:25px 0;gap:15px}.credit h3{font-size:24px}.credit p{font-size:15px}.footer-top{flex-direction:column}.footer-top>p{font-size:29px}.footer-top>div{font-size:14px;gap:24px}.footer-word{font-size:23vw;padding:20px 0}.footer-bottom{font-size:11px;flex-wrap:wrap}.panel{min-height:0}}
body.motion-paused *,body.motion-paused *::before,body.motion-paused *::after{animation:none!important;transition:none!important}body.motion-paused .opening{height:100svh}body.motion-paused .opening-image{transform:none;clip-path:none}body.motion-paused .opening-title{opacity:1;transform:none}body.motion-paused .opening-reveal{display:none}body.motion-paused .reveal-pending{opacity:1;transform:none}body.motion-paused .opening-image img{transform:none}body.motion-paused .artwork{--drift:0px!important}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.opening{height:100svh}.opening-image{transform:none!important;clip-path:none!important}.opening-title{opacity:1!important;transform:none!important}.opening-reveal{display:none}.reveal-pending{opacity:1;transform:none}.opening-image img{transform:none!important}}
/* Selected spatial-film stills: original proportions, click to inspect. */
.direction-project{margin-bottom:45px}.project-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:start}.project-image{border:0;padding:0;background:none;color:var(--paper);text-align:left;min-width:0}.project-image img{width:100%;height:auto;transition:filter .35s,transform .35s;transform-origin:center}.project-image:hover img{filter:brightness(1.1);transform:translateY(-5px)}.project-image>span{display:flex;justify-content:space-between;align-items:center;padding:14px 0;font-size:12px;letter-spacing:.1em}.project-image>span>span:last-child{font-size:24px;color:var(--acid)}.viewer-nav{display:flex;align-items:center;gap:25px;margin:auto 0 0;flex-shrink:0}.viewer-nav button{width:48px;height:40px;border:1px solid #ffffff80;background:none;color:white;font-size:23px}.viewer-counter{font-size:14px;min-width:45px;text-align:center}#art-dialog>img{max-height:calc(100svh - 190px);flex-shrink:1;min-height:0}.viewer-caption{text-align:center;flex-shrink:0}@media(max-width:650px){.project-gallery{grid-template-columns:1fr 1fr;gap:15px}.project-image:first-child{grid-column:1/-1}.direction-project{margin-bottom:32px}.project-image>span{padding:8px 0}#art-dialog{justify-content:center}.viewer-nav{margin:10px 0 0}}
