*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#07162f;color:#fff;font-family:ui-rounded,"Arial Rounded MT Bold","Hiragino Kaku Gothic ProN",sans-serif;overflow-x:hidden}header{height:58px;padding:0 18px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:20;background:#07162fe8;border-bottom:3px solid #35d9f5}.brand{color:#fff;text-decoration:none;font-weight:900;letter-spacing:1px}.brand b{color:#ff365d}#sound{border:2px solid #fff;background:transparent;color:#fff;border-radius:50%;width:40px;height:40px}.hero{min-height:610px;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:54px 18px 70px;overflow:hidden;background:linear-gradient(#0a2e67 0 62%,#113a54 62%)}.sun{position:absolute;width:270px;height:270px;border-radius:50%;background:#ff4b45;top:65px;box-shadow:0 0 0 9px #ffce43}.logo{position:relative;z-index:2;display:block;width:min(560px,100%);height:auto;filter:drop-shadow(0 8px 0 #051022);animation:float 3.2s ease-in-out infinite}.tag{font-size:clamp(17px,4vw,27px);font-weight:900;letter-spacing:2px;margin:22px 0 3px;text-align:center}.jp{margin:0 0 25px;color:#bceeff}.start,.copy a{background:#ffdf42;color:#07162f;padding:14px 24px;border:4px solid #fff;box-shadow:5px 5px 0 #e73764;text-decoration:none;font-weight:900}.sakura{position:absolute;top:14%;font-size:25px;color:#ff9dce;animation:drift 7s linear infinite}.runner{position:absolute;bottom:15px;font-size:42px;animation:run 8s linear infinite}.games{max-width:1040px;margin:auto;padding:70px 18px}.eyebrow{color:#48e4f5;font-size:13px;font-weight:900;letter-spacing:4px}.games h1{font-size:clamp(32px,8vw,64px);margin:5px 0 32px}.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.card{border:4px solid #fff;background:#102750;box-shadow:7px 7px 0 #f33867;overflow:hidden}.thumb{min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;font-size:28px;font-weight:900;letter-spacing:2px;background:linear-gradient(135deg,#e84068,#ffb733)}.thumb span{font-size:64px}.command{background:linear-gradient(135deg,#186bd1,#37e1d1)}.magic{background:linear-gradient(135deg,#6d35c7,#ef55b7)}.guild{background:linear-gradient(135deg,#e34832,#7b251d)}.copy{padding:20px}.copy h2{margin:10px 0;font-size:22px}.copy p{line-height:1.8;color:#d7e6ff;min-height:58px}.copy a{display:inline-block;margin-top:10px}.status{display:inline-block;background:#45f3a5;color:#07162f;padding:5px 8px;font-size:11px;font-weight:900}.status.soon{background:#a9b4ca}.creator{padding:80px max(20px,calc((100% - 900px)/2));background:#f4d73e;color:#08152d}.creator h2{font-size:clamp(35px,9vw,72px);margin:5px 0}.studio{font-size:24px;font-weight:900}.creator>p:last-child{max-width:650px;line-height:2}.company{max-width:900px;margin:auto;padding:50px 20px}.company summary{cursor:pointer;font-weight:900;font-size:20px;border-bottom:2px solid #4b668c;padding:18px 0}.company details div{padding:22px 0;color:#c9d7ed}footer{padding:45px 20px;text-align:center;display:flex;flex-direction:column;gap:8px;background:#030a18}footer span,footer small{color:#8fa6c8}@keyframes float{50%{transform:translateY(-10px)}}@keyframes run{from{left:-70px}to{left:110%}}@keyframes drift{from{transform:translate(50vw,-40px) rotate(0)}to{transform:translate(-50vw,350px) rotate(360deg)}}@media(max-width:680px){.hero{min-height:560px}.sun{width:210px;height:210px}.grid{grid-template-columns:1fr}.thumb{min-height:185px}.games{padding-top:55px}.card{box-shadow:5px 5px 0 #f33867}.copy p{min-height:0}.creator{padding-top:60px;padding-bottom:60px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important}}
/* Keep the official logo and start button comfortably visible on phones. */
.hero{padding-top:32px;padding-bottom:60px}.hero .sun{display:none}.hero .tag,.hero .jp,.hero .start{position:relative;z-index:2}
@media(max-width:680px){.hero{min-height:0;padding:28px 18px 64px}.logo{width:min(420px,100%)}.tag{font-size:clamp(14px,3.7vw,22px);letter-spacing:1px;margin-top:20px}.jp{font-size:14px;margin-bottom:24px}.start{min-height:48px;text-align:center}.games{scroll-margin-top:72px}.brand{font-size:clamp(14px,4vw,18px)}}
@media(max-height:500px) and (orientation:landscape){.hero{padding-top:24px}.logo{width:min(340px,70vw)}}
