:root{--paper:#f8f7f2;--ink:#272922;--muted:#686b60;--line:#dcded3;--gutter:clamp(1.25rem,5vw,5rem);color:var(--ink);background:var(--paper);font-synthesis:none;font-family:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline-offset:6px;outline:3px solid}section[id]{scroll-margin-top:84px}.skip-link{background:var(--ink);color:var(--paper);z-index:20;padding:1rem;position:fixed;top:-100px;left:1rem}.skip-link:focus{top:1rem}.header{z-index:10;height:76px;padding:0 var(--gutter);background:var(--paper);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;display:flex;position:fixed;inset:0 0 auto}.brand{letter-spacing:-.04em;align-items:center;gap:.65rem;font-size:1.08rem;font-weight:700;display:flex}.header nav{padding:1.5rem var(--gutter);background:var(--paper);border-bottom:1px solid var(--line);gap:1.5rem;display:none;position:absolute;top:75px;left:0;right:0}.header nav a{font-size:.9rem}.header nav a:hover,.text-link:hover,footer a:hover{text-underline-offset:5px;text-decoration:underline}.menu-toggle{color:inherit;cursor:pointer;background:0 0;border:0;place-items:center;width:44px;height:44px;display:grid}.menu-toggle .close-icon,.menu-toggle[aria-expanded=true] .menu-icon{display:none}.menu-toggle[aria-expanded=true] .close-icon{display:block}.menu-toggle[aria-expanded=true]+nav{flex-direction:column;display:flex}.hero{padding:132px var(--gutter) 54px;gap:2rem;display:grid}.eyebrow{text-transform:uppercase;letter-spacing:.16em;align-items:center;gap:.6rem;margin:0 0 1.5rem;font-size:.68rem;font-weight:700;display:flex}h1{letter-spacing:-.07em;white-space:pre-line;margin:0;font-size:clamp(3.3rem,7.3vw,7rem);font-weight:600;line-height:.98}.hero-side p{max-width:310px;color:var(--muted);margin:0 0 1.5rem;font-size:1.05rem;line-height:1.65}.text-link{align-items:center;gap:2rem;font-size:.85rem;display:inline-flex}.project{background:var(--project-bg);color:var(--project-fg);overflow:hidden}.project-inner{padding:2.5rem var(--gutter);align-items:center;gap:2rem;max-width:1600px;min-height:440px;margin:auto;display:grid}.project h2{margin:0 0 1.25rem}.project-logo{width:min(100%,340px);height:auto;display:block}.project-description{white-space:pre-line;margin:0 0 2rem;font-size:1rem;line-height:1.6}.project-actions{flex-wrap:wrap;align-items:center;gap:1.25rem;display:flex}.button{border:1px solid var(--project-accent);border-radius:6px;justify-content:space-between;align-items:center;gap:2rem;min-height:46px;padding:.95rem 1.3rem;font-size:.8rem;font-weight:600;display:inline-flex}.primary{background:var(--project-accent);color:var(--project-bg)}.button:hover{filter:brightness(.92)}.outline:hover{background:color-mix(in srgb,var(--project-fg) 7%,transparent)}.store-links{gap:1.2rem;font-size:.75rem;display:flex}.store-links a{border-bottom:1px solid;padding:.5rem 0}.project-art{justify-self:center;width:min(100%,360px);height:auto;display:block}.content-section{padding:4rem var(--gutter);gap:2rem;display:grid}.content-section h2{letter-spacing:-.055em;margin:0;font-size:clamp(2.5rem,4.5vw,4.5rem);font-weight:500;line-height:1.08}.about-copy{max-width:540px}.about-copy p{color:var(--muted);margin:0 0 1.4rem;font-size:1rem;line-height:1.8}.about-copy .signature{color:var(--ink);margin-top:2rem;font-size:.8rem}.about-flower{color:#89936c;margin-top:2rem;font-size:5rem;line-height:1;display:inline-block}.contact{border-top:1px solid var(--line)}.contact-links{flex-direction:column;justify-content:center;gap:1.5rem;display:flex}footer{padding:1.5rem var(--gutter);border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.25rem;font-size:.7rem;display:flex}footer p{margin:0}footer div{gap:1.5rem;display:flex}@media (width>=700px){.menu-toggle{display:none}.header nav,.menu-toggle[aria-expanded=true]+nav{border:0;flex-direction:row;gap:2.5rem;padding:0;display:flex;position:static}.hero{grid-template-columns:1.6fr 1fr;align-items:end;padding-top:145px;padding-bottom:65px}.hero-side{justify-self:end;padding-bottom:.4rem}.project-inner{grid-template-columns:1.1fr 1fr;gap:3rem;min-height:50vh;padding-top:3rem;padding-bottom:3rem}.featured .project-inner{min-height:70vh}.project-art{width:min(100%,460px)}.featured .project-art{width:min(100%,520px)}.project-logo{width:min(100%,410px)}.project-description{font-size:1.1rem}.content-section{grid-template-columns:1fr 1fr;gap:4rem;padding-top:6rem;padding-bottom:6rem}.contact-links{justify-self:end;width:100%;max-width:450px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important}}.email-card{background:#eeefe5;border:1px solid #b7c0a5;border-radius:16px;justify-content:space-between;align-items:center;gap:1rem;padding:.65rem;display:flex}.contact-email{overflow-wrap:anywhere;min-width:0;padding:.6rem;font-size:1rem;font-weight:600}.contact-button{min-height:48px;color:var(--paper);white-space:nowrap;background:#344b33;border-radius:11px;justify-content:center;align-items:center;gap:.65rem;padding:1rem 1.2rem;font-size:.9rem;font-weight:600;display:inline-flex}.social-links{flex-wrap:wrap;gap:.65rem;display:flex}.social-links a{border:1px solid var(--line);border-radius:999px;align-items:center;gap:1rem;min-height:44px;padding:.75rem 1rem;font-size:.8rem;display:inline-flex}.social-links a:hover{background:#eeefe5;border-color:#b7c0a5}.back-to-top{right:max(1.25rem,env(safe-area-inset-right));bottom:max(1.25rem,env(safe-area-inset-bottom));z-index:9;width:48px;height:48px;color:var(--paper);background:#344b33;border-radius:50%;place-items:center;display:grid;position:fixed;box-shadow:0 3px 12px #27292226}.back-to-top[hidden]{display:none}.back-to-top:hover{background:#253526}@media (width<=420px){.email-card{flex-direction:column;align-items:stretch;gap:.4rem}.contact-email{text-align:center}footer{padding-bottom:5.5rem}}.social-links a{justify-content:center;width:48px;height:48px;padding:0}.project{isolation:isolate;position:relative}.project-background{object-fit:cover;opacity:.08;z-index:-1;width:100%;height:100%;position:absolute;inset:0}.project-logo.inverted{filter:invert()}.project-headline{letter-spacing:-.045em;white-space:pre-line;margin:0 0 1.5rem;font-size:clamp(2.5rem,4.5vw,4.75rem);font-weight:700;line-height:1.08}.app-banner .project-logo{width:min(100%,375px)}.app-banner .project-description{color:#d1d5db;white-space:normal;max-width:500px;line-height:1.7}.featured .project-inner{padding-top:4rem;padding-bottom:4rem}.app-banner .primary{color:#fff;border-radius:999px;min-height:48px;padding:.85rem 1.4rem}.app-banner .primary:hover{filter:none;background:#818cf8;border-color:#818cf8}.app-banner .project-actions{gap:1rem}.store-links.store-badges{flex-wrap:wrap;gap:.75rem}.store-badges a{border:0;border-radius:6px;padding:0;display:flex}.store-badges img{width:auto;height:48px;display:block}.store-badges a:hover{opacity:.85}.featured .project-art{filter:drop-shadow(0 18px 24px #0005);width:min(100%,600px)}.app-banner .outline{border-color:var(--project-accent);background:var(--project-accent);color:#fff;border-radius:999px;min-height:48px;padding:.85rem 1.4rem}.app-banner .outline:hover{filter:none;background:#818cf8}.project-art.screenshot{border:1px solid #ffffff26;border-radius:14px;width:100%;max-width:760px;box-shadow:0 20px 50px #0005}@media (width>=700px){.app-banner:has(.screenshot) .project-inner{grid-template-columns:.85fr 1.35fr;gap:clamp(2rem,4vw,4rem);min-height:70vh;padding-top:4rem;padding-bottom:4rem}}.coming-soon-label{color:var(--project-accent);letter-spacing:.14em;text-transform:uppercase;margin:0 0 1.25rem;font-size:.8rem;font-weight:600}.app-banner .coming-soon-label{color:#a5b4fc}.notify-button{letter-spacing:.1em;text-transform:uppercase;min-height:48px;padding:.85rem 1.4rem;font-size:.85rem}.coming-soon.app-banner{background:radial-gradient(ellipse at 75% 30%,#24213c 0%,var(--project-bg) 65%);border-top:1px solid #ffffff12}@media (width>=700px){.project.reversed .project-art{grid-area:1/1}.project.reversed .project-copy{grid-area:1/2}.app-banner.reversed:has(.screenshot) .project-inner{grid-template-columns:1.35fr .85fr}}.game-banner{background:radial-gradient(ellipse at 85% 50%,#e9d7ef 0%,var(--project-bg) 65%)}.game-banner .project-logo{width:min(100%,590px);margin:-1rem 0 -.5rem}.game-banner .project-description{white-space:normal;max-width:440px;font-size:1.1rem;line-height:1.7}.game-banner .notify-button{background:var(--project-accent);color:#fff;border-radius:999px}.game-banner .notify-button:hover{filter:none;background:#60416a}.game-scene{aspect-ratio:1/1.08;isolation:isolate;border-radius:45% 45% 24px 24px;width:min(100%,480px);max-width:none;position:relative}.game-character{object-fit:contain;filter:drop-shadow(0 7px 3px #49374c20);position:absolute}.character-0{z-index:2;width:85%;bottom:0;left:-15%;transform:rotate(-9deg)}.character-1{z-index:3;width:68%;bottom:-5%;right:-12%;transform:rotate(8deg)}.character-2{z-index:1;width:52%;top:0;right:-6%;transform:rotate(-65deg)}.game-banner .project-inner{padding-top:3.5rem;padding-bottom:4rem}@media (width>=700px){.game-banner .project-inner{grid-template-columns:1fr 1.1fr;min-height:60vh}.game-scene{width:min(100%,480px)}}.game-house{object-fit:cover;object-position:center;border-radius:inherit;border:5px solid #ffffff80;width:100%;height:100%;position:absolute;inset:0;box-shadow:0 18px 40px #75508020}.game-banner .project-background{opacity:1;object-fit:cover;object-position:center;width:100%}.game-banner:before{content:"";z-index:-1;background:linear-gradient(90deg,#f5c4e3de 0%,#f5c4e3cc 40%,#f5c4e38f 100%);position:absolute;inset:0}@media (width<=699px){.game-banner:before{background:linear-gradient(#f5c4e3e0 0%,#f5c4e3cc 40%,#f5c4e38f 100%)}}.game-banner .project-background{z-index:0}.game-banner:before{z-index:1;pointer-events:none}.game-banner .project-inner{z-index:2;position:relative}.project-background{background-position:50%;background-repeat:no-repeat;background-size:cover}@media (prefers-reduced-motion:no-preference){.reveal-pending,.reveal-visible{transition:opacity .65s,translate .8s cubic-bezier(.22,1,.36,1),scale .8s cubic-bezier(.22,1,.36,1)}.reveal-pending{opacity:0;translate:0 var(--reveal-y,24px)}.reveal-visible{opacity:1;translate:0;scale:1}.project-copy h2.reveal-visible{transition-delay:50ms}.project-description.reveal-visible{transition-delay:.1s}.project-actions.reveal-visible{transition-delay:.15s}.project-art.reveal-pending{translate:28px var(--reveal-y,24px);scale:.97}.reversed .project-art.reveal-pending{translate:-28px var(--reveal-y,24px)}.project-background{transition:scale 1.4s cubic-bezier(.22,1,.36,1);scale:1.045}.background-visible .project-background{scale:1}.game-character{transition:translate 1s cubic-bezier(.22,1,.36,1),scale 1s cubic-bezier(.22,1,.36,1);translate:0 22px;scale:.94}.background-visible .game-character{translate:0;scale:1}.background-visible .character-0{transition-delay:.18s}.background-visible .character-1{transition-delay:.3s}.background-visible .character-2{transition-delay:.42s}.button,.social-links a{transition:background-color .2s,translate .2s,box-shadow .2s}.button:hover,.social-links a:hover{translate:0 -2px}.button:active,.social-links a:active{translate:0}}@media (width<=699px){.project-art.reveal-pending,.reversed .project-art.reveal-pending{translate:0 var(--reveal-y,24px)}.project-copy{text-align:center}.project .project-logo{width:80%;margin-left:auto;margin-right:auto}.project-description{margin-left:auto;margin-right:auto}.project-actions,.store-links{justify-content:center}}.contact.content-section{text-align:center;grid-template-columns:1fr;justify-items:center;gap:2rem}.contact .eyebrow{justify-content:center}.contact.content-section h2{font-size:clamp(2rem,3.5vw,3.5rem)}.contact .contact-links{justify-self:center;align-items:center;width:100%;max-width:580px}.contact .email-card{cursor:pointer;width:100%}.contact .social-links{justify-content:center}.email-card:hover{background:#e4e8d8;border-color:#899a75;box-shadow:0 8px 24px #344b3314}@media (prefers-reduced-motion:no-preference){.email-card{transition:background-color .2s,border-color .2s,box-shadow .2s,translate .2s}.email-card:hover{translate:0 -2px}.email-card:active{translate:0}}.contact .social-links a{width:56px;height:56px}.contact .social-links svg{width:30px;height:30px}@media (width>=700px){.contact.content-section h2{white-space:nowrap;font-size:clamp(1.75rem,3.5vw,3.5rem)}}#projects{padding-top:76px}.about-link{background:var(--ink);color:var(--paper);border-radius:999px;padding:1rem 1.4rem;font-size:.85rem;display:inline-flex}.about-link:hover{background:#344b33}.header nav a[aria-current=page]{text-underline-offset:6px;text-decoration:underline}.about-page-intro.content-section{text-align:center;grid-template-columns:1fr;justify-items:center;padding-top:clamp(8rem,14vw,12rem)}.about-page-intro .eyebrow{justify-content:center}.about-page-intro h1{font-size:clamp(2.75rem,6vw,5.5rem);line-height:1.05}.intro-copy{max-width:750px;color:var(--muted);margin:2rem auto 0;font-size:1.15rem;line-height:1.8}.story-sections{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#eeefe7}.story-section.content-section{grid-template-columns:1fr;max-width:1100px;margin:auto}.story-section+.story-section{border-top:1px solid var(--line)}.story-section h2{font-size:clamp(2rem,3vw,3rem)}.story-copy p,.creator-copy>p{color:var(--muted);margin:0 0 1.5rem;font-size:1.05rem;line-height:1.85}.story-copy p:last-child,.creator-copy>p:last-child{margin-bottom:0}.story-copy .story-signature{color:var(--ink);margin-top:2rem;font-weight:600}.story-signature span{font-size:.9rem;font-weight:400}.creator-section{align-items:center;max-width:1200px;margin:auto}.creator-portrait{aspect-ratio:1;object-fit:cover;border-radius:24px;width:100%;height:auto;display:block}.creator-copy .creator-role{color:#6b7957;margin-top:.75rem}.creator-copy .social-links{margin:0 0 2rem}@media (width>=700px){.story-section.content-section{grid-template-columns:230px 1fr;gap:3rem}}.landing-about.content-section{text-align:center;color:#f8f7f2;background:#292b25;grid-template-columns:1fr;justify-items:center}.landing-about .about-copy{max-width:720px}.landing-about.content-section h2.eyebrow{letter-spacing:.16em;color:#d7dfbd;justify-content:center;margin:0 0 1.75rem;font-size:.8rem;font-weight:600;line-height:1.4}.landing-about .about-copy p{color:#eeefe5;margin-bottom:2rem;font-size:clamp(1.1rem,2vw,1.35rem);line-height:1.8}.landing-about .about-link{color:#253526;background:#e8edc9}.landing-about .about-link:hover{background:#f4f7df}.about-studio-logo{filter:brightness(0)saturate()invert(13%)sepia(8%)saturate(620%)hue-rotate(35deg)brightness(96%)contrast(91%);width:min(80%,300px);height:auto;margin:0 auto 2rem;display:block}.about-studio-logo.light-logo{filter:brightness(0)invert()}.contact.content-section h2{white-space:normal;text-wrap:balance;max-width:1000px;font-size:clamp(1.75rem,3vw,3rem)}.landing-about .about-link{min-height:54px;padding:1.15rem 1.8rem;font-size:1rem}.contact-email{text-align:center;flex:1;font-size:clamp(1.1rem,2vw,1.3rem)}.coming-soon-label{letter-spacing:.1em;background:color-mix(in srgb,var(--project-accent) 15%,var(--project-bg));color:var(--project-fg);border-radius:999px;align-items:center;padding:.8rem 1.2rem;font-size:.95rem;display:inline-flex}.app-banner .coming-soon-label{color:#e1e5ff;background:#33304d}.game-banner .coming-soon-label{color:#fff;background:#755080}.project-actions .coming-soon-label{min-height:48px;margin:0}.featured .project-actions .primary{font-size:1rem}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.language-control{cursor:pointer;align-self:flex-start;align-items:center;gap:4px;font-size:.9rem;display:inline-flex;position:relative}.language-control select{opacity:0;width:100%;height:100%;font:inherit;cursor:pointer;position:absolute;inset:0}.language-control:hover .language-selected{text-underline-offset:5px;text-decoration:underline}.language-chevron{pointer-events:none;flex-shrink:0}.language-control:focus-within{outline:2px solid var(--ink);outline-offset:4px}html:lang(ja),html:lang(zh-Hans),html:lang(zh-Hant){line-break:strict}html:lang(ja) h1,html:lang(ja) h2,html:lang(zh-Hans) h1,html:lang(zh-Hans) h2,html:lang(zh-Hant) h1,html:lang(zh-Hant) h2{letter-spacing:0}html:not(:lang(en)) .contact.content-section h2,html:not(:lang(en)) .contact-button{white-space:normal}@media (width>=700px) and (width<=950px){.header nav{gap:1rem}.brand img{width:150px;height:auto}}@media (width<=420px){.contact-email{font-size:1.1rem}}.language-selected{font-weight:600}.language-globe{pointer-events:none;flex-shrink:0;margin-right:2px}.language-control{color:#626e50}
