@charset "UTF-8";
:root{color-scheme:light;--paper:#ffffff;--ink:#183c31;--muted:#637267;--line:#d8ddd2;--lime:#d7ed9a;--serif:"Noto Serif TC","Songti TC","PMingLiU",serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--paper);color:var(--ink);font-family:system-ui,-apple-system,"Noto Sans TC",sans-serif;line-height:1.8;-webkit-font-smoothing:antialiased}::selection{background:var(--lime);color:var(--ink)}a{color:inherit;text-underline-offset:6px}a:hover{color:#48704e}a:focus-visible{outline:3px solid #8aa94b;outline-offset:6px}header,main,footer{width:min(1240px,calc(100% - 96px));margin-inline:auto}header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:29px;border-bottom:1px solid var(--line)}.brand{font-family:"Trebuchet MS",system-ui,sans-serif;display:flex;align-items:center;gap:12px;text-decoration:none;font-size:27px;font-weight:600;letter-spacing:-1px;line-height:1.1}.brand-name em,.footer-brand em{font-family:Georgia,serif;font-weight:400;font-size:1.12em}.brand-symbol{display:block;width:48px;height:48px;flex-shrink:0}.brand>span:not(.brand-name):not(.brand-symbol){font-weight:400;color:var(--muted);font-size:18px;letter-spacing:0}nav{display:flex;align-items:center;gap:32px;font-size:15px;font-weight:550}nav a{text-decoration:none}nav .nav-contact{border:1px solid var(--line);border-radius:100px;padding:9px 19px}.skip-link{position:absolute;top:-90px;left:20px;background:var(--lime);padding:12px;z-index:20}.skip-link:focus{top:12px}.eyebrow{font-size:12px;letter-spacing:2.1px;font-weight:650;line-height:1.6}.status-dot{display:inline-block;width:6px;height:6px;background:#6c985f;border-radius:50%;margin-right:8px;vertical-align:middle}
.studio-hero{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:24px;padding:84px 0 76px;min-height:610px}.hero-copy{position:relative;z-index:1}h1{font-size:clamp(38px,4.7vw,65px);line-height:1.4;letter-spacing:-2px;margin:27px 0 24px;font-weight:650}.title-accent{font-family:var(--serif);font-weight:500;position:relative;white-space:nowrap}.title-accent:after{content:"";height:8px;background:var(--lime);position:absolute;bottom:1px;left:0;right:0;z-index:-1;transform:rotate(-2deg);border-radius:50%}.lead{font-size:18px;color:var(--muted);line-height:1.9;margin-bottom:29px}.button{display:inline-flex;gap:40px;align-items:center;border-radius:100px;padding:14px 24px;text-decoration:none;font-size:15px;font-weight:550;transition:transform .2s,background .2s;color:#fffef9;background:var(--ink)}.button:hover{transform:translateY(-3px);color:#fffef9;background:#315d46}.brand-art{height:440px;position:relative;display:grid;place-items:center;isolation:isolate}.peace-disc{width:300px;aspect-ratio:1;display:grid;place-items:center;animation:float 9s ease-in-out infinite}.peace-disc img{display:block;width:100%;height:auto}.orbit{position:absolute;width:390px;height:390px;border:1px solid #d4daca;border-radius:50%;z-index:-1}.orbit-two{width:440px;height:270px;transform:rotate(-32deg)}.orbit-label{position:absolute;top:27px;left:42px;font-size:10px;letter-spacing:2px;transform:rotate(-12deg)}.spark{position:absolute;line-height:1}.spark-one{font-size:62px;top:70px;right:25px;transform:rotate(12deg)}.spark-two{font-size:52px;left:30px;bottom:69px;font-weight:200}.art-note{position:absolute;right:30px;bottom:38px;font:italic 24px/1.2 Georgia,serif;transform:rotate(-5deg)}.art-edition{position:absolute;left:20px;top:190px;font-size:9px;letter-spacing:1.6px;line-height:1.8;writing-mode:vertical-rl;transform:rotate(180deg)}
.studio-strip{display:flex;justify-content:space-between;align-items:center;border-block:1px solid var(--line);padding:20px 0;font-size:12px;letter-spacing:2px;font-weight:600;color:var(--muted)}.studio-strip b{font-size:20px;color:var(--ink)}.works{padding:90px 0 74px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:32px}.section-heading h2{font-size:30px;letter-spacing:-.8px;margin:12px 0 0;font-weight:600}.section-heading h2 span{font-family:var(--serif);font-weight:500}.section-index{font-size:12px;letter-spacing:2px;color:var(--muted);padding-bottom:8px}.game-list{display:grid;gap:30px}.game-card{display:grid;grid-template-columns:1.04fr 1fr;overflow:hidden;border-radius:18px;background:#162820;color:#f7f6eb}.game-art{aspect-ratio:1;height:auto;position:relative;overflow:hidden;background:#222d34}.game-art img{width:100%;height:100%;object-fit:cover;object-position:center 42%;display:block;transition:transform .7s}.game-card:hover .game-art img{transform:scale(1.025)}.game-art:after{content:"";position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#101d22b3)}.art-caption{position:absolute;top:22px;left:24px;background:#10251dc9;padding:5px 10px;border-radius:20px;z-index:1;font-size:10px;letter-spacing:2px;color:#fff}.game-copy{padding:32px 42px;display:flex;flex-direction:column;align-items:flex-start}.game-topline{display:flex;justify-content:space-between;align-items:center;width:100%;margin-bottom:28px}.release-label{font-size:13px;color:#dce7d3}.release-label .status-dot{background:var(--lime)}.game-number{font:italic 27px Georgia,serif;color:#9baa94}.game-kicker{font-size:13px;letter-spacing:2px;color:#b3c1ad;margin:0 0 12px}.game-copy h3{font-family:var(--serif);font-size:clamp(36px,4vw,52px);line-height:1.35;letter-spacing:4px;font-weight:500;margin:0 0 19px}.game-description{font-size:15px;line-height:1.95;color:#c0cbbd;max-width:340px;margin:0 0 22px}.tags{display:flex;gap:8px;flex-wrap:wrap}.tags span{font-size:12px;border:1px solid #56634e;padding:3px 12px;border-radius:30px;color:#d4decd}.game-bottom{margin-top:auto;padding-top:28px;display:flex;justify-content:space-between;align-items:center;gap:16px;width:100%;font-size:13px;color:#acbda3}.game-bottom a{color:#e2edc6;text-decoration:none;font-size:14px}.works-footnote{font-size:14px;color:var(--muted);margin-top:21px}
.game-card-ink{background:#302b27}.game-card-ink .game-art{background:#c5ae8c}.game-card-ink .art-caption{background:#392a22db}.game-card-ink .release-label{color:#eee1ce}.game-card-ink .release-label .status-dot{background:#e7bf7b}.game-card-ink .game-number{color:#c5ac8d}.game-card-ink .game-kicker,.game-card-ink .game-bottom{color:#cdb99e}.game-card-ink .game-description{color:#ddd0bd}.game-card-ink .tags span{border-color:#796953;color:#e5d5be}.game-card-ink .game-bottom a{color:#f2d19c}
.about{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:65px 0 90px;align-items:center;border-top:1px solid var(--line)}.about-mark{height:290px;display:grid;place-items:center}.about-mark img{display:block;width:200px;height:200px}.about-copy h2{font-size:34px;font-weight:600;line-height:1.5;margin:16px 0 22px;letter-spacing:-1px}.about-copy p{font-size:16px;color:var(--muted);max-width:430px}.text-link{display:inline-block;font-size:15px;text-decoration:none;border-bottom:1px solid var(--ink);padding:10px 0;margin-top:8px}.contact-panel{background:var(--lime);border-radius:18px;padding:45px 48px;display:flex;justify-content:space-between;align-items:center;gap:30px;margin-bottom:70px}.contact-panel h2{font-size:31px;line-height:1.5;font-weight:600;margin:15px 0}.contact-panel p{font-size:15px;margin:0;color:#476044}.contact-email{font:22px Georgia,serif;white-space:nowrap;text-decoration:none;border-bottom:1px solid #63834a;padding:12px 0}footer{border-top:1px solid var(--line);padding:32px 0;display:flex;justify-content:space-between;align-items:center;gap:30px;color:var(--muted);font-size:14px}.footer-brand{font-family:"Trebuchet MS",system-ui,sans-serif;display:inline-flex;align-items:center;gap:12px;font-size:27px;font-weight:600;letter-spacing:-1px;text-decoration:none;color:var(--ink)}.footer-meta{display:flex;align-items:center;gap:40px;font-size:12px}.footer-meta>div{display:flex;gap:22px}.footer-meta a{text-decoration:none}
.policy{max-width:800px;padding:65px 0 85px}.policy h1{font-size:43px;letter-spacing:-1px;margin:17px 0}.policy h2{font-size:21px;line-height:1.6;margin:37px 0 13px;padding-top:25px;border-top:1px solid var(--line);font-weight:650}.policy p,.policy li{font-size:17px;line-height:1.95;color:#46594b}.policy .eyebrow{color:var(--muted)}.policy .updated{font-size:14px;color:var(--muted);margin-bottom:30px}.policy [data-contact]{background:#e7ecd9;padding:20px 24px;border-radius:12px;overflow-wrap:anywhere}.policy a{color:#315f3e}.notice{background:#e7ecd9;padding:18px 24px;border-left:3px solid #789453}.support-link{font-weight:600}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@media(min-width:1500px){.studio-hero{padding-block:100px;min-height:650px}}
@media(max-width:1050px){header,main,footer{width:calc(100% - 64px)}.studio-hero{grid-template-columns:1.15fr 1fr;gap:0}.brand-art{transform:scale(.86);transform-origin:center}.game-copy{padding:26px 30px}.game-art{height:auto}.contact-email{font-size:19px}.about{gap:40px}.footer-meta{gap:24px}.section-heading h2{font-size:27px}}
@media(max-width:900px){header,main,footer{width:calc(100% - 40px)}header{padding-block:22px;gap:15px}.brand{font-size:23px;gap:8px}.brand-symbol{width:38px;height:38px}nav{gap:18px;font-size:13px}nav .nav-contact{padding:0;border:0}nav a[href="#about"]{display:none}.studio-hero{grid-template-columns:1fr;padding:58px 0 28px;gap:0;min-height:0}.hero-copy h1{font-size:clamp(33px,7.8vw,56px);letter-spacing:-1.4px;margin-top:23px}.hero-copy .eyebrow{font-size:9px;letter-spacing:1.8px}.lead{font-size:16px;margin-bottom:26px}.button{font-size:14px;padding:13px 21px}.brand-art{height:330px;transform:scale(.78);margin:-8px 0 -15px}.orbit-label{top:-1px;left:30px}.peace-disc{width:250px}.orbit{width:340px;height:340px}.orbit-two{width:390px;height:230px}.spark-one{top:13px;right:10px}.spark-two{bottom:37px;left:5px}.art-edition{top:120px;left:8px}.art-note{bottom:-1px;right:0;font-size:22px}.studio-strip{font-size:8px;letter-spacing:1px;padding:15px 0;gap:8px}.studio-strip b{font-size:16px}.studio-strip>span:last-child,.studio-strip>b:nth-child(4){display:none}.works{padding:55px 0 40px}.section-heading{align-items:flex-start;margin-bottom:23px}.section-heading h2{font-size:25px;line-height:1.5}.section-heading h2 span{display:block}.section-index{font-size:9px;letter-spacing:1px;padding-top:4px;white-space:nowrap}.eyebrow{font-size:9px;letter-spacing:1.6px}.game-card{grid-template-columns:1fr;border-radius:14px}.game-art{height:auto}.game-art img{object-position:center 42%}.game-copy{padding:27px 27px 29px}.game-topline{margin-bottom:24px}.game-copy h3{font-size:42px}.game-description{max-width:none}.game-bottom{padding-top:30px}.art-caption{font-size:9px;left:24px}.works-footnote{font-size:13px}.about{grid-template-columns:1fr;gap:10px;padding:28px 0 50px}.about-mark{height:190px}.about-mark img{width:150px;height:150px}.about-copy h2{font-size:30px}.about-copy p{font-size:16px;max-width:none}.contact-panel{padding:30px 26px;display:block;border-radius:14px;margin-bottom:40px}.contact-panel h2{font-size:27px}.contact-panel p{font-size:14px}.contact-email{display:inline-block;font-size:18px;margin-top:17px;white-space:normal;overflow-wrap:anywhere}footer{align-items:flex-start;flex-direction:column;gap:17px;padding:25px 0}.footer-meta{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.footer-meta>div{gap:25px}.policy{padding-top:38px}.policy h1{font-size:34px}.policy h2{font-size:20px}.policy p{font-size:16px}.brand>span:not(.brand-name):not(.brand-symbol){display:none}}
@media(max-width:380px){.brand-art{transform:scale(.65);margin-block:-30px}.game-copy{padding-inline:22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

.brand-wordmark{display:block;width:190px;height:auto}.footer-brand .brand-wordmark{width:190px}@media(max-width:900px){.brand-wordmark{width:150px}}@media(max-width:380px){.brand-wordmark{width:130px}header nav{gap:12px}}
header nav{margin-left:auto}.language-switch{position:relative;flex-shrink:0;font-size:13px;z-index:10}.language-switch summary{display:flex;align-items:center;gap:12px;list-style:none;cursor:pointer;border:1px solid var(--line);border-radius:24px;padding:8px 14px;white-space:nowrap}.language-switch summary::-webkit-details-marker{display:none}.language-switch summary:focus-visible{outline:3px solid #8aa94b;outline-offset:4px}.language-options{position:absolute;right:0;top:calc(100% + 8px);min-width:155px;padding:8px;background:var(--paper);border:1px solid var(--line);border-radius:12px;box-shadow:0 8px 24px #183c3114}.language-options a{display:block;padding:8px 12px;border-radius:6px;text-decoration:none;white-space:nowrap}.language-options a:hover,.language-options a[aria-current="page"]{background:#e7ecd9}.language-options a[aria-current="page"]{font-weight:700}.game-copy{min-width:0}.game-bottom,.footer-meta>div{flex-wrap:wrap}html[lang="en"] .game-copy h3{font-size:clamp(30px,3vw,42px);letter-spacing:-.6px;line-height:1.25}html[lang="en"] .game-kicker{letter-spacing:.6px}html[lang="ja"] .hero-copy h1{letter-spacing:-1px}html[lang="ja"] .title-accent{white-space:normal}html[lang="ja"] .game-copy h3{letter-spacing:2px}html[lang="ja"] .policy h1{overflow-wrap:anywhere}
@media(max-width:900px){header{flex-wrap:wrap;gap:12px}header .brand{order:0}header .language-switch{order:1;margin-left:auto}header nav{order:2;flex-basis:100%;justify-content:flex-end;margin:0}.language-switch summary{padding:6px 12px}.hero-copy h1{overflow-wrap:break-word}.section-heading{gap:12px}html[lang="en"] .section-heading h2{font-size:23px}html[lang="en"] .game-copy h3{font-size:34px}html[lang="en"] .title-accent{white-space:normal}}
.policy h3{font-size:19px;line-height:1.6;margin:28px 0 12px;font-weight:650}.policy section{scroll-margin-top:28px}.policy h2{overflow-wrap:anywhere}
