/* Same hand-drawn game, a lighter title screen before character selection. */
.brand-title{--secondary:#c5f367;--scene:#20215e;background:#171b31;height:100svh;min-height:560px;display:flex;flex-direction:column;overflow:hidden}.brand-title [hidden]{display:none!important}.title-grain{position:fixed;inset:0;pointer-events:none;z-index:8;opacity:.16;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' opacity='.24' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}.title-hud{height:88px;flex-shrink:0}.title-hud .wordmark{font-size:48px}.title-header-note{margin-left:auto;margin-right:28px;font:9px monospace;letter-spacing:2px;color:#b1bbd0}.title-languages{display:flex;align-items:center;gap:10px;margin-right:14px;font-size:11px}.title-languages a{padding:5px 3px;color:#aab2c6}.title-languages a[aria-current]{color:var(--secondary);border-bottom:2px solid var(--secondary)}.title-hud .utilities #title-sound{width:60px}.title-hud .world-menu-button{order:2}.title-stage{position:relative;flex:1;min-height:0;margin:0 44px;isolation:isolate}.title-stage:before{content:'';position:absolute;inset:15px 0 40px;border:1px solid #e5eccc25;transform:rotate(-2deg);pointer-events:none}.title-orbit{position:absolute;inset:5% -8% 0 24%;background:#7c80b326;transform:rotate(-9deg);clip-path:polygon(15% 0,100% 9%,88% 100%,0 90%);z-index:-1}.title-art{position:absolute;margin:0;top:2%;bottom:6%;right:-3%;width:73%;transform:rotate(-5deg);display:flex;align-items:center;z-index:-1;filter:drop-shadow(12px 16px #090c1850)}.title-art img{width:100%;height:100%;object-fit:cover;border:2px solid #e0e9c65c;clip-path:polygon(5% 0,100% 0,95% 100%,0 100%);object-position:54% 50%}.title-art figcaption{position:absolute;bottom:-20px;right:6%;font:8px monospace;letter-spacing:2px;color:#d0d6de;transform:rotate(5deg)}.title-copy{position:relative;width:42%;height:100%;padding:28px 0 40px;display:flex;flex-direction:column;justify-content:center}.title-kicker{font-size:12px;font-weight:800;letter-spacing:3px;color:var(--secondary);margin:0 0 13px;transform:rotate(-5deg)}.title-kicker span{font-size:22px;vertical-align:middle;margin-left:12px}.title-name{font:italic 900 clamp(64px,7.2vw,116px)/1.02 'Noto Sans SC',sans-serif;letter-spacing:-3px;margin:0;transform:rotate(-5deg);text-shadow:5px 5px #101317,9px 9px #101317a8;white-space:nowrap}.title-name-en{font:italic 900 24px/1 var(--display);letter-spacing:4px;margin:18px 0 18px;transform:rotate(-5deg);color:#e0e7c9}.title-position{font-size:12px;line-height:1.9;margin:0 0 22px;text-shadow:2px 2px #101317}.title-position span{font-size:10px;color:#b8c5ca;letter-spacing:1px}.title-menu{display:flex;flex-direction:column;gap:7px;max-width:310px}.title-choice{position:relative;display:flex;align-items:center;gap:12px;text-align:left;background:#111626e6;padding:11px 16px;font-size:19px;font-weight:800;min-height:48px;border:1px solid #e9f5d92c;transform:skew(-5deg);box-shadow:4px 4px #080d1866;transition:background .12s,translate .12s}.title-choice>i{font:12px monospace;color:var(--secondary);opacity:0}.title-choice small{font:8px monospace;margin-left:auto;max-width:105px;letter-spacing:1px}.title-choice>b{font-size:24px;margin-left:auto}.title-choice.is-active{background:var(--secondary);color:var(--ink);border-color:var(--secondary);translate:6px 0}.title-choice.is-active>i{color:var(--ink);opacity:1}.title-start{min-height:66px;font-size:27px;margin-bottom:4px}.title-start small{margin-left:auto;font:10px monospace}.title-key-hint{font-size:8px;color:#aeb9c8;margin-top:17px}.title-stage-code{position:absolute;left:0;bottom:7px;font:9px monospace;letter-spacing:2px;color:#bec7cf}.title-web{position:absolute;right:0;bottom:7px;font-size:11px;color:var(--secondary)}.title-footer{margin:0 44px;padding:18px 0;display:flex;gap:20px;align-items:center;border-top:1px solid #f2f4dd2c;font-size:9px;color:#acb5c5;flex-shrink:0}.title-footer button{padding:0;background:none;color:var(--secondary);font-size:9px}.title-footer nav{display:flex;gap:16px;margin-left:auto}.title-footer small{font-size:9px}.title-info{max-width:860px;background:#171f25}.title-info h2{font-family:'Noto Sans SC',sans-serif;font-size:34px;font-style:normal}.title-info section>p{font-size:12px;line-height:1.9;color:#bac7bd}.title-info .title-info-intro{font-size:20px;font-weight:800;color:var(--white);margin:24px 0 12px}.title-service-list{display:flex;flex-direction:column;margin:24px 0;border-top:1px solid #d6e4bc44}.title-service-list a{position:relative;display:grid;grid-template-columns:135px 1fr;gap:8px 20px;padding:16px 20px 16px 0;border-bottom:1px solid #d6e4bc44}.title-service-list a b{font:italic 900 23px var(--display);color:var(--secondary);grid-row:span 2}.title-service-list a span{font-size:13px;font-weight:700}.title-service-list a small{font-size:11px;color:#b0bdba;line-height:1.6}.title-service-list a i{position:absolute;right:0;top:22px;font-style:normal}.title-service-list a:hover{background:#c5f36709}.title-info .title-info-note{font-size:10px;color:#92a69a}.title-info .licence-band{margin-top:25px}.title-info .action-link{margin-top:20px;font-size:12px}.title-contact{margin:25px 0}.title-contact>div{display:grid;grid-template-columns:90px 1fr;gap:15px;padding:14px 0;border-bottom:1px solid #d6e4bc33;font-size:12px;line-height:1.8}.title-contact dt{color:var(--secondary);font-size:10px}.title-contact dd{margin:0}.selection-home-link{font-size:11px;border:1px solid #c5f36766;padding:8px 13px;margin-left:20px;color:var(--secondary)}
@media(min-width:801px) and (max-height:760px){.brand-title{min-height:0}.title-hud{height:70px}.title-copy{padding-top:14px;padding-bottom:28px}.title-name{font-size:clamp(62px,6.5vw,90px)}.title-kicker{margin-bottom:5px;font-size:10px}.title-name-en{margin:12px 0;font-size:20px}.title-position{margin-bottom:12px;font-size:10px}.title-position span{font-size:9px}.title-choice{min-height:37px;padding:8px 14px;font-size:15px}.title-start{min-height:51px;font-size:23px}.title-key-hint{margin-top:12px}.title-footer{padding:12px 0}.title-art{top:4%;bottom:8%}}
@media(min-width:801px) and (max-width:1100px){.title-header-note{display:none}.title-stage{margin:0 28px}.title-copy{width:44%}.title-art{width:75%;right:-5%}.title-footer{margin:0 28px;gap:12px}.title-name{font-size:82px}.title-name-en{font-size:20px}.title-footer nav{gap:10px}}
@media(max-width:800px){.brand-title{height:100svh;min-height:600px;overflow:auto}.title-hud{height:76px;padding:0 20px;gap:10px}.title-hud .wordmark{font-size:39px}.title-hud .wordmark span{font-size:6px}.title-header-note{display:none}.title-languages{gap:5px;margin-right:3px;font-size:10px}.title-hud .utilities{gap:5px}.title-hud .utilities #title-sound{width:38px}.title-hud #title-sound small{display:none}.title-hud .world-menu-button{font-size:9px;min-width:0;padding:6px}.title-stage{margin:0 20px;min-height:0;flex:1;display:flex;flex-direction:column}.title-stage:before{inset:8px -5px 24px}.title-orbit{inset:5% -10% 0 5%}.title-copy{display:contents}.title-kicker{position:absolute;left:0;top:12px;margin:0;font-size:9px;z-index:2}.title-kicker span{font-size:15px}.title-name{position:relative;font-size:58px;line-height:1;letter-spacing:-2px;margin:39px 0 0;z-index:2;align-self:flex-start;pointer-events:none}.title-name br{display:none}.title-name-en{margin:9px 0 0;font-size:17px;letter-spacing:3px;z-index:2;align-self:flex-start;pointer-events:none}.title-position{font-size:9px;line-height:1.5;margin:12px 0 0;z-index:2;text-shadow:1px 1px #101317;pointer-events:none}.title-position br{display:none}.title-position span{font-size:8px;margin-left:6px}.title-art{top:24%;bottom:25%;width:calc(100% + 30px);right:-15px;transform:rotate(-5deg);z-index:-1}.title-art img{object-fit:cover;object-position:53% 50%;clip-path:polygon(5% 0,100% 0,95% 100%,0 100%)}.title-art figcaption{display:none}.title-menu{margin: auto 8px 33px;max-width:none;padding-top:200px;gap:6px}.title-choice{min-height:37px;font-size:15px;padding:8px 14px}.title-start{min-height:54px;font-size:24px}.title-choice small{font-size:8px}.title-key-hint{display:none}.title-stage-code{font-size:7px;bottom:5px}.title-web{font-size:9px;bottom:4px}.title-footer{margin:0 20px;padding:12px 0 max(12px,env(safe-area-inset-bottom));gap:8px 14px;flex-wrap:wrap;font-size:8px}.title-footer>span{font-size:8px}.title-footer button{font-size:8px;margin-left:auto}.title-footer nav{margin-left:0;gap:14px}.title-footer small{margin-left:auto;font-size:8px}.title-info{padding:40px 20px 25px}.title-info h2{font-size:26px}.title-info .mission-tabs{gap:4px}.title-info .mission-tabs button{font-size:10px;padding:9px}.title-info .title-info-intro{font-size:16px}.title-info section>p{font-size:11px}.title-service-list a{grid-template-columns:100px 1fr;gap:6px 12px;padding:14px 18px 14px 0}.title-service-list a b{font-size:21px}.title-service-list a span{font-size:11px}.title-service-list a small{font-size:10px}.title-contact>div{grid-template-columns:65px 1fr;font-size:11px}.selection-home-link{font-size:9px;margin-left:6px;padding:6px}.selection-only .session{display:none}.selection-only .hud{gap:8px}.selection-only .hud .wordmark{font-size:35px}.selection-only .hud .wordmark span{display:none}.selection-only #about-button{display:none}}
@media(max-width:800px) and (max-height:740px){.title-name{font-size:49px;margin-top:32px}.title-kicker{top:9px}.title-name-en{font-size:14px;margin-top:7px}.title-position{font-size:8px;margin-top:9px}.title-position span{font-size:7px}.title-art{top:24%;bottom:29%}.title-menu{padding-top:142px;margin-bottom:28px}.title-footer{padding-top:9px;padding-bottom:9px}.title-choice{min-height:34px;font-size:14px;padding:6px 13px}.title-start{min-height:45px;font-size:22px}}
@media(prefers-reduced-motion:no-preference){.title-art{animation:title-drift 8s ease-in-out infinite}.title-copy{animation:title-arrive .35s ease-out}.brand-title.is-leaving .title-stage{opacity:0;transform:translateX(-18px);transition:opacity .15s,transform .15s}}@keyframes title-drift{0%,100%{translate:0 0}50%{translate:0 -8px}}@keyframes title-arrive{from{opacity:0;translate:-12px 0}to{opacity:1;translate:0 0}}@media(prefers-reduced-motion:reduce){.title-choice{transition:none}}
.brand-title{overflow-x:hidden}.brand-title:lang(en) .title-name{font-family:var(--display);font-size:clamp(80px,9vw,140px);letter-spacing:-1px;line-height:.86}
@media(max-width:800px){.brand-title{overflow-x:hidden}.brand-title:lang(en) .title-name{font-size:64px;line-height:.83;margin-top:37px}.brand-title:lang(en) .title-name br{display:initial}.brand-title:lang(en) .title-name-en{font-size:12px;letter-spacing:2px}.brand-title:lang(en) .title-position{font-size:8px;max-width:100%;line-height:1.8}.brand-title:lang(en) .title-position span{font-size:7px}.brand-title:lang(en) .title-art{top:29%}}
@media(max-width:800px) and (max-height:740px){.brand-title:lang(en) .title-name{font-size:49px;margin-top:30px}.brand-title:lang(en) .title-art{top:29%}.brand-title:lang(en) .title-position{margin-top:7px;font-size:7px}.brand-title:lang(en) .title-position span{font-size:6px}.brand-title:lang(en) .title-name-en{font-size:10px}}
@media(max-width:800px){.title-stage{overflow:clip;overflow-clip-margin:16px}.title-hud .wordmark span{max-width:130px;white-space:nowrap;overflow:hidden;text-overflow:clip}}
