@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Zen+Kaku+Gothic+New:wght@400;500;700;900&display=swap');
:root{--ink:#27233d;--lavender:#eeeafb;--purple:#8b73db;--yellow:#f6d94b;--paper:#fcfbff;--pink:#f3dfed;--line:rgba(39,35,61,.18);--display:'DM Sans',sans-serif;--body:'Zen Kaku Gothic New','Yu Gothic',sans-serif;--mx:0;--my:0}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-weight:500;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:3px solid var(--purple);outline-offset:6px}::selection{background:var(--yellow);color:var(--ink)}img{max-width:100%;display:block}.skip{position:fixed;top:-80px;left:20px;z-index:100;background:white;padding:12px}.skip:focus{top:10px}.header{height:104px;padding:0 5.2%;display:flex;align-items:center;justify-content:space-between;position:absolute;top:0;left:0;width:100%;z-index:10}.company-mark{font:700 32px/.8 var(--display);letter-spacing:-2px;position:relative}.company-mark small{font:600 8px/1 var(--display);letter-spacing:2.6px;display:block;margin-top:11px}.mark-star{font-size:33px;display:inline-block;margin-left:5px;color:var(--purple)}nav{display:flex;align-items:center;gap:34px;font:600 13px var(--display)}nav>a{position:relative}nav>a:not(.nav-contact):after{content:'';height:2px;position:absolute;bottom:-7px;left:0;width:0;background:var(--purple);transition:width .3s}nav>a:hover:after{width:100%}.nav-contact{padding:13px 21px;border:1px solid var(--line);border-radius:40px}.nav-contact span{margin-left:22px}.hero{min-height:640px;height:min(760px,90svh);position:relative;overflow:hidden;background:var(--lavender);display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:130px 7% 110px;isolation:isolate}.hero:before{content:'';position:absolute;inset:0;background-image:radial-gradient(#8b73db29 .7px,transparent .7px);background-size:10px 10px;mask-image:linear-gradient(90deg,transparent,#000);z-index:-1}.hero-copy{z-index:2}.eyebrow{font:600 11px var(--display);letter-spacing:2px;margin:0 0 26px}.eyebrow span{margin:0 10px;color:var(--purple)}h1{font-size:clamp(44px,5.8vw,94px);line-height:1.35;letter-spacing:-.065em;margin:0 0 25px;font-weight:900;white-space:nowrap}.line{display:block;overflow:hidden}.line>span{display:block;animation:rise 1.2s cubic-bezier(.18,.7,.2,1) both}.line:nth-child(2)>span{animation-delay:.15s}h1 em{font-style:normal;position:relative;color:var(--purple)}h1 em:after{content:'';height:8px;position:absolute;bottom:3px;left:4px;right:0;background:var(--yellow);transform:rotate(-3deg)}.hero-description{font-size:15px;line-height:2.15;letter-spacing:.06em;margin-bottom:30px}.pill{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;background:var(--yellow);border-radius:60px;padding:9px 10px 9px 25px;font-size:13px;font-weight:700;transition:transform .3s,box-shadow .3s}.arrow{border-radius:50%;background:var(--ink);color:#fff;width:43px;height:43px;display:grid;place-items:center;font:24px var(--display);transition:transform .3s}.hero-enter{animation:appear 1.2s .4s both}.brand-universe{position:relative;justify-self:center;width:min(40vw,620px);aspect-ratio:1;transform:translate(calc(var(--mx)*-12px),calc(var(--my)*-9px));transition:transform .35s ease-out}.moon-disc{position:absolute;inset:7%;background:#fff;border-radius:50%;box-shadow:20px 24px 0 #cfc4ef66;overflow:hidden;display:grid;place-items:center;animation:float 7s ease-in-out infinite}.moon-disc:after{content:'';position:absolute;inset:10px;border:1px solid #eeeafb;border-radius:50%;pointer-events:none}.moon-disc video,.moon-disc img{width:142%;max-width:none;mix-blend-mode:multiply;position:absolute;left:-21%;top:10%;height:80%;object-fit:contain}.moon-disc img[hidden]{display:none}.universe-ring{position:absolute;inset:0;border:1px solid #8b73db55;border-radius:50%;transform:rotate(-18deg);animation:orbit 80s linear infinite}.universe-ring span{position:absolute;top:1%;left:19%;font:600 9px var(--display);letter-spacing:3px;background:var(--lavender);padding:8px 13px;transform:rotate(-9deg)}.orbit-dot{position:absolute;border-radius:50%;background:var(--yellow);width:29px;height:29px;left:-2%;top:44%;box-shadow:0 0 0 9px #eeeafb}.dot-two{background:var(--purple);width:14px;height:14px;left:auto;right:5%;top:19%}.replay{position:absolute;bottom:9%;left:19%;border:1px solid var(--line);border-radius:30px;padding:10px 15px;background:#ffffffd9;font:19px var(--display);transition:transform .3s}.replay:hover{transform:rotate(-5deg)}.replay span{font-size:8px;letter-spacing:1.3px;margin-left:5px}.small-sticker{position:absolute;right:-2%;bottom:9%;width:106px;height:106px;display:flex;flex-direction:column;justify-content:center;align-items:center;background:var(--yellow);border-radius:50%;transform:rotate(13deg);font:600 11px/1.5 var(--display);letter-spacing:1px}.small-sticker b{font-size:14px}.small-sticker>span{font-size:24px}.hero-orbit{position:absolute;border:1px solid #8b73db20;border-radius:50%;pointer-events:none;z-index:-1}.orbit-one{width:130vw;height:65vw;left:-15vw;top:-30vw;transform:rotate(-20deg)}.orbit-two{width:100vw;height:100vw;left:33vw;top:5vw}.star{position:absolute;animation:twinkle 6s ease-in-out infinite;pointer-events:none}.star-a{top:17%;left:51%;font-size:55px;color:var(--purple);transform:rotate(12deg)}.star-b{bottom:15%;left:43%;font-size:28px}.star-c{top:19%;right:4%;font-size:75px;color:var(--purple);animation-delay:-2s}.hero-bottom{position:absolute;left:5.2%;right:5.2%;bottom:27px;border-top:1px solid var(--line);padding-top:24px;display:flex;justify-content:space-between;align-items:center;font:10px var(--display);letter-spacing:1.5px}.hero-bottom>span:first-child{font:11px var(--body);letter-spacing:.1em}.hero-bottom>a span{display:inline-block;margin-left:20px;animation:nudge 2s ease-in-out infinite}.ticker{overflow:hidden;background:var(--yellow);padding:20px 0;transform:rotate(-1.5deg);position:relative;margin:-1px -2% 0;width:104%;z-index:3;border-block:1px solid var(--ink)}.ticker>div{display:flex;gap:50px;align-items:center;width:max-content;animation:marquee 36s linear infinite}.ticker span{font:700 21px var(--display);letter-spacing:1px;white-space:nowrap}.ticker b{font-size:29px}.section-pad{padding:100px 8%}.section-label{display:flex;gap:16px;align-items:center;font:600 11px var(--display);letter-spacing:1.7px}.tiny-star{color:var(--purple);font-size:23px}.section-jp{font:500 11px var(--body);letter-spacing:.05em;margin-left:auto}.brand-section{position:relative;overflow:hidden;padding-bottom:155px}.brand-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:10%;margin-top:54px;position:relative;z-index:1}.brand-heading{font-size:clamp(27px,3.5vw,52px);line-height:1.6;letter-spacing:-.04em;margin:0}.brand-heading>span{color:var(--purple)}.brand-description{font-size:15px;line-height:2.3}.brand-description>p:first-child{margin-top:0}.brand-description>p{margin-bottom:24px}.text-link{font:600 13px var(--display);display:inline-flex;gap:50px;border-bottom:1px solid var(--ink);padding-bottom:10px}.text-link:hover>span{transform:translate(4px,-4px)}.text-link>span{transition:transform .3s}.brand-watermark{font:700 clamp(110px,19vw,300px)/.8 var(--display);letter-spacing:-.07em;color:#eeeafb;position:absolute;bottom:-22px;left:3%;white-space:nowrap;pointer-events:none}.brand-watermark>span{font-size:.65em;color:#f1e9c9;margin-left:40px}.works-section{background:#e9e5f4;padding-top:90px;padding-bottom:70px;position:relative}.works-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:45px}.works-heading .eyebrow{font-size:9px;margin-bottom:13px}h2{margin:0}.works-heading h2{font:600 clamp(42px,6vw,84px)/1 var(--display);letter-spacing:-4px}.works-heading h2 span{display:inline-block;vertical-align:middle;font:500 12px var(--body);letter-spacing:.1em;margin-left:25px}.work-count{font:600 10px var(--display);letter-spacing:1px;padding-bottom:8px}.featured{background:var(--paper);border-radius:26px;overflow:hidden;box-shadow:0 20px 55px #27233d0a}.game-art{position:relative;aspect-ratio:16/8.2;overflow:hidden;background:#20333e;isolation:isolate}.world,.game-character{position:absolute;width:100%;height:100%;object-fit:cover;transition:transform .7s ease-out}.world{transform:scale(1.045)}.game-character{z-index:2;transform:scale(1.045) translate(calc(var(--gx,0)*8px),calc(var(--gy,0)*5px))}.art-shade{position:absolute;inset:0;background:linear-gradient(90deg,#0e182b80,transparent 70%);z-index:1}.game-title{position:absolute;top:37%;left:7%;width:42%;z-index:3;filter:drop-shadow(0 3px 12px #151c27);transform:rotate(-4deg)}.game-title img:first-child{width:61%;margin:0 auto 9px}.game-title img:nth-child(2){width:100%}.art-tag{position:absolute;z-index:3;top:28px;left:30px;border:1px solid #ffffff80;padding:9px 13px;border-radius:20px;color:white;font:500 9px var(--display);letter-spacing:1.5px}.game-info{padding:30px 36px 35px;display:flex;justify-content:space-between;align-items:center;gap:24px}.game-status{font-size:11px;margin:0 0 12px;color:#746283;display:flex;align-items:center;gap:8px}.game-status>span{width:6px;height:6px;background:var(--purple);border-radius:50%}h3{font-size:25px;letter-spacing:-.035em;margin:0 0 10px}.game-caption{font-size:12px;margin:0;color:#736f82}.dark{background:var(--ink);color:#fff}.dark .arrow{background:var(--yellow);color:var(--ink)}.works-note{display:flex;align-items:center;gap:20px;margin-top:27px}.works-note>span{font:500 9px var(--display);letter-spacing:1px}.works-note>p{font-size:12px;margin-left:auto}.works-note>a{border:1px solid var(--line);border-radius:50%;width:36px;height:36px;display:grid;place-items:center}.journal-section{background:var(--paper)}.journal-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-top:40px;margin-bottom:40px}.journal-heading h2{font-size:clamp(30px,3.8vw,54px);line-height:1.55;letter-spacing:-.04em}.journal-heading p{font-size:13px;line-height:2.2;margin-right:6%}.social-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.social-card{display:flex;flex-direction:column;position:relative;overflow:hidden;background:var(--pink);border-radius:20px;padding:36px;min-height:240px;transition:transform .4s,box-shadow .4s}.social-x{background:#eae5fb}.social-card:hover{transform:translateY(-8px) rotate(-1deg);box-shadow:0 16px 0 #27233d0a}.social-x:hover{transform:translateY(-8px) rotate(1deg)}.social-kicker{font:600 9px var(--display);letter-spacing:1.5px;z-index:1}.social-card strong{font:600 clamp(35px,4vw,60px) var(--display);letter-spacing:-2px;display:flex;justify-content:space-between;margin:27px 0 13px;z-index:1}.social-card strong>span{font-size:35px}.social-card>span:not(.social-kicker):not(.card-deco){font-size:12px;z-index:1}.card-deco{position:absolute;right:12%;top:-30px;font-size:260px;line-height:1;color:#fff7;transition:transform .8s}.social-card:hover .card-deco{transform:rotate(60deg)}.contact-section{background:var(--yellow);border-radius:50% 50% 0 0 / 6% 6% 0 0;padding-top:95px}.contact-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:7%;align-items:center}.contact-grid h2{font-size:clamp(30px,3.8vw,58px);line-height:1.6;letter-spacing:-.04em}.contact-grid h2 span{display:inline-block;position:relative}.contact-grid h2 span:after{content:'';position:absolute;left:0;right:0;bottom:5px;height:2px;background:var(--ink);transform:rotate(-4deg)}.contact-grid p{font-size:13px;line-height:2.2}.contact-details{border-left:1px solid #27233d35;padding-left:15%;position:relative}.contact-star{display:block;font-size:85px;line-height:1;animation:orbit 40s linear infinite;width:85px}.contact-details small{display:block;margin-top:23px;font-size:10px;letter-spacing:1px}footer{background:var(--ink);color:var(--paper);padding:55px 5% 25px;overflow:hidden}.footer-wordmark{font:600 clamp(65px,17vw,250px)/1 var(--display);letter-spacing:-.07em;display:flex;align-items:center;justify-content:space-between}.footer-wordmark span{font-size:.6em;color:var(--yellow);transition:transform .7s}.footer-wordmark:hover span{transform:rotate(90deg)}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #ffffff26;margin-top:35px;padding-top:23px;font:500 9px var(--display);letter-spacing:.5px}.footer-bottom>a:nth-child(2){font-family:var(--body)}.motion-toggle{position:fixed;bottom:17px;right:18px;z-index:12;border:1px solid var(--line);border-radius:30px;background:#fffffff0;padding:9px 13px;font-size:11px;box-shadow:0 3px 15px #27233d0b}.motion-toggle>span{margin-left:5px}.js-motion .reveal{opacity:0;transform:translateY(35px);transition:opacity .85s,transform .85s cubic-bezier(.2,.65,.3,1)}.js-motion .reveal.visible{opacity:1;transform:translateY(0)}body{overflow-x:clip}.motion-off *, .motion-off *:before,.motion-off *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.motion-off .reveal{opacity:1;transform:none}.motion-off .brand-universe,.motion-off .game-character{transform:none}
@keyframes rise{from{transform:translateY(115%) rotate(3deg)}to{transform:translateY(0) rotate(0)}}@keyframes appear{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-12px) rotate(1deg)}}@keyframes orbit{to{transform:rotate(360deg)}}@keyframes twinkle{0%,100%{opacity:.6;scale:.9}50%{opacity:1;scale:1.1}}@keyframes nudge{50%{transform:translateY(5px)}}
@media(min-width:1700px){.hero{padding-inline:10%}.section-pad{padding-inline:13%}.header{padding-inline:8%}.hero-bottom{left:8%;right:8%}}
@media(max-width:900px){.header{height:85px}.hero{min-height:590px;height:auto;padding:120px 6% 85px}.brand-universe{width:43vw}.hero-description{font-size:13px}h1{font-size:5.7vw}.universe-ring span{font-size:7px;letter-spacing:1px}.small-sticker{width:80px;height:80px;font-size:8px}.small-sticker b{font-size:10px}.small-sticker>span{font-size:20px}.replay{left:10%;bottom:4%}.section-pad{padding:75px 6%}.brand-section{padding-bottom:125px}.game-info{padding:25px}.game-info h3{font-size:21px}.game-info .pill{font-size:11px;padding-left:18px;gap:10px}.brand-grid{gap:6%}.brand-description{font-size:13px}.work-count{display:none}.contact-details{padding-left:10%}.pill{gap:15px}.journal-heading p{margin-right:0}}
@media(max-width:600px){html{scroll-padding-top:25px}.header{height:78px;padding:0 6%}.company-mark{font-size:25px}.mark-star{font-size:25px}.company-mark small{font-size:6px;letter-spacing:2px;margin-top:8px}nav{gap:16px;font-size:11px}nav>a:first-child,nav>a:nth-child(3){display:none}.nav-contact{padding:9px 12px}.nav-contact span{margin-left:7px}.hero{display:flex;flex-direction:column;min-height:0;padding:100px 7% 30px;align-items:stretch;gap:18px}.hero-copy{position:relative}.eyebrow{font-size:8px;letter-spacing:1.4px;margin-bottom:22px}h1{font-size:clamp(38px,10vw,60px);line-height:1.4;margin-bottom:15px}.hero-description{font-size:12px;line-height:2;margin:0 0 20px}.hero .pill{font-size:11px;padding-left:20px}.arrow{width:36px;height:36px;font-size:21px}.brand-universe{width:52vw;max-width:220px;align-self:center;margin-top:0}.moon-disc{box-shadow:12px 16px 0 #cfc4ef66}.hero-bottom{bottom:23px;left:7%;right:7%;padding-top:17px;font-size:8px;letter-spacing:.7px}.hero-bottom>span:first-child{font-size:9px}.hero-bottom .edition{display:none}.hero-bottom>a span{margin-left:8px}.hero .star-a{top:39%;left:82%;font-size:36px}.star-b{bottom:12%;left:7%;font-size:18px}.hero .star-c{top:17%;right:5%;font-size:31px}.small-sticker{right:-3%;bottom:7%}.universe-ring span{font-size:7px;letter-spacing:1.3px}.ticker{padding:12px 0}.ticker span{font-size:15px}.ticker>div{gap:26px}.ticker b{font-size:22px}.section-pad{padding:58px 7%}.section-label{font-size:8px;letter-spacing:1px;gap:10px}.section-jp{font-size:9px}.tiny-star{font-size:19px}.brand-grid{display:block;margin-top:27px}.brand-heading{font-size:29px}.brand-description{margin-top:25px;font-size:12px;line-height:2.2}.brand-section{padding-bottom:110px}.brand-watermark{font-size:25vw;bottom:-5px}.brand-watermark>span{margin-left:15px}.text-link{font-size:11px}.works-heading{margin-bottom:27px}.works-heading h2{font-size:45px;letter-spacing:-2px}.works-heading h2 span{font-size:10px;margin-left:14px}.works-heading .eyebrow{font-size:7px}.featured{border-radius:17px}.game-art{aspect-ratio:1.1}.world,.game-character{width:180%;max-width:none;left:-65%;object-fit:cover}.world{left:-35%}.game-title{left:5%;width:58%;top:63%}.art-tag{top:16px;left:16px;font-size:7px;padding:7px 10px}.game-info{display:block;padding:24px 21px}.game-info h3{font-size:20px}.game-info .pill{margin-top:24px;width:100%;font-size:12px}.game-status{font-size:10px}.works-note{gap:10px;flex-wrap:wrap;margin-top:20px}.works-note>span{font-size:7px;width:100%}.works-note>p{margin:0 auto 0 0;font-size:10px}.journal-heading{display:block;margin-top:25px;margin-bottom:24px}.journal-heading h2{font-size:31px}.journal-heading p{font-size:12px;line-height:2;margin-top:20px}.social-grid{grid-template-columns:1fr;gap:15px}.social-card{min-height:195px;padding:28px}.social-card strong{font-size:47px;margin:21px 0 11px}.card-deco{font-size:240px}.contact-grid{display:block}.contact-grid h2{font-size:32px}.contact-grid p{font-size:12px}.contact-details{padding:25px 0 0;border-left:0;border-top:1px solid #27233d35;margin-top:28px}.contact-star{position:absolute;right:0;top:20px;font-size:48px;width:48px}.contact-details p{font-size:11px}.contact-details .pill{font-size:11px;gap:12px}.contact-details small{font-size:9px}.footer-wordmark{font-size:18vw}.footer-bottom{font-size:7px;flex-wrap:wrap;line-height:1.7;gap:13px}.footer-bottom>a:last-child{width:100%}footer{padding:40px 7% 70px}.motion-toggle{font-size:10px;bottom:12px;right:12px;padding:8px 11px}}
/* This explicitly motion-enabled preview is controlled by its visible pause button. */

/* Review polish: let the actual game follow the brand introduction. */
.ticker-frame{overflow:clip;padding:calc(1.4vw + 8px) 0;background:var(--lavender)}
.section-pad{padding-block:72px}
.brand-section{padding-bottom:95px}
.brand-grid{margin-top:30px}
.brand-watermark{font-size:clamp(90px,12vw,180px);opacity:.65}
.works-heading{margin-bottom:28px}
.works-note>p{margin-left:0}.works-note>a{margin-left:auto}
.hero-description,.brand-description{font-size:16px}
.game-caption,.game-status,.journal-heading p,.contact-grid p{font-size:14px}
.section-label,.section-jp,.footer-bottom,.contact-details small{font-size:12px}
.replay span{font-size:11px;letter-spacing:.02em}
.social-card{min-height:200px}.social-card strong{margin-top:0}
.star-c{display:none}
@media(max-width:600px){
  .hero{gap:10px;padding-bottom:45px}.hero .eyebrow{margin-bottom:14px}
  .hero-description{font-size:14px;line-height:1.8;margin-bottom:16px}
  .hero-bottom,.hero .star-b{display:none}
  .hero .replay{bottom:-14px;left:calc(50% - 64px)}
  .hero .star-a{top:45%;left:85%;font-size:26px}
  .ticker{padding:12px 0}.ticker span{font-size:15px}
  .section-pad{padding:38px 7%}.brand-section{padding-bottom:65px}
  .works-heading h2{font-size:36px}.works-heading h2 span{font-size:12px}
  .brand-description,.journal-heading p,.contact-grid p{font-size:14px}
  .section-label,.section-jp{font-size:11px;letter-spacing:0}
  .game-info .pill{margin-top:18px;font-size:14px}
  .game-status,.game-caption,.works-note>p{font-size:13px}
  .social-card{min-height:160px;padding:24px}.social-card strong{font-size:38px}
  .social-card>span:not(.card-deco){font-size:13px}
  .footer-bottom{font-size:11px}.contact-details small{font-size:11px}
}

@keyframes marquee{to{transform:translateX(-50%)}}
