*,:before,:after{box-sizing:border-box}:root{--keima-ink:#12120e;--keima-paper:#f1efe7;--keima-cyan:#2eb8c6;--surface-light:#fffdf7;--text-secondary:#6f6a61;--text-muted:#918b80;--border-primary:#d0cabe;--border-subtle:#e5e0d6;--accent-hover:#279faa;--focus-ring:#2eb8c6;--page-margin:clamp(1.25rem, 4vw, 4.5rem);--content-max:118rem;--ease-keima:cubic-bezier(.22, 1, .36, 1);--header-height:5.5rem;--mobile-nav-height:3.375rem;--type-display-xl:clamp(3.75rem, 6.4vw, 7rem);--type-display-lg:clamp(3.25rem, 5.6vw, 6rem);--type-display-md:clamp(2.6rem, 4.6vw, 4.5rem);--type-heading:clamp(1.9rem, 2.7vw, 3.25rem);--type-body-lg:clamp(1.0625rem, 1.2vw, 1.25rem);--type-body:clamp(1rem, 1.05vw, 1.125rem);--measure-copy:34rem}html{background:var(--keima-paper);scroll-behavior:smooth;scroll-padding-top:var(--header-height)}body{background:var(--keima-paper);color:var(--keima-ink);font-family:var(--font-latin), var(--font-cjk), sans-serif;text-rendering:optimizelegibility;margin:0;font-size:1rem;line-height:1.5}::selection{background:var(--keima-cyan);color:var(--keima-ink)}a{color:inherit}:focus-visible{outline:2px solid var(--keima-ink);outline-offset:3px;box-shadow:0 0 0 5px var(--focus-ring)}.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}.skip-link{top:.75rem;left:var(--page-margin);z-index:100;background:var(--keima-ink);color:var(--surface-light);padding:.75rem 1rem;font-weight:700;text-decoration:none;position:fixed;transform:translateY(calc(-100% - 1rem))}.skip-link:focus{transform:translateY(0)}.skip-link:focus-visible{background:var(--surface-light);color:var(--keima-ink)}.site-header{z-index:50;min-height:5.5rem;padding:0 var(--page-margin);background:var(--keima-paper);border-bottom:1px solid var(--border-subtle);grid-template-columns:2fr 8fr 2fr;grid-template-areas:"brand navigation locale";align-items:center;display:grid;position:fixed;inset:0 0 auto}.brand-link{grid-area:brand;justify-self:start;align-items:center;width:148px;min-height:44px;display:inline-flex}.brand-link picture,.brand-link img{width:148px;height:auto;display:block}.primary-navigation{grid-area:navigation;justify-self:center}.primary-navigation ul{align-items:center;gap:clamp(1.5rem,3vw,3.5rem);margin:0;padding:0;list-style:none;display:flex}.primary-navigation a,.locale-link{letter-spacing:.12em;text-transform:uppercase;align-items:center;min-height:44px;font-size:.75rem;font-weight:700;text-decoration:none;display:inline-flex;position:relative}.primary-navigation a:after,.locale-link:after{background:var(--keima-cyan);content:"";transform-origin:100%;height:2px;transition:transform .26s var(--ease-keima);position:absolute;bottom:.5rem;left:0;right:0;transform:scaleX(0)}.primary-navigation a:hover:after,.primary-navigation a[aria-current=location]:after,.primary-navigation a:focus-visible:after,.locale-link:hover:after,.locale-link:focus-visible:after{transform-origin:0;transform:scaleX(1)}.primary-navigation a[aria-current=location]{box-shadow:inset 0 -2px 0 var(--keima-ink)}.locale-link{grid-area:locale;justify-self:end}.hero{min-height:100svh;padding:clamp(8.5rem, 14vh, 11rem) var(--page-margin) clamp(5rem, 10vh, 7rem);isolation:isolate;grid-template-rows:1fr;grid-template-columns:repeat(12,minmax(0,1fr));align-items:center;gap:0 clamp(.75rem,1.4vw,1.75rem);display:grid;position:relative;overflow:hidden}.hero-eyebrow{z-index:2;color:var(--text-secondary);letter-spacing:.16em;text-transform:uppercase;grid-column:1/span 3;margin:0;font-size:clamp(.72rem,1vw,.88rem);font-weight:700}.hero-motion{z-index:2;will-change:transform;grid-column:1/span 8;align-self:center;display:grid}.hero-mark{gap:clamp(1.1rem,2vw,1.8rem);width:min(43rem,48vw);display:grid;transform:translateY(clamp(.75rem,3vh,2rem))}.hero-logo{width:100%;height:auto;display:block}.hero-subtitle{border-top:1px solid var(--border-primary);max-width:32rem;color:var(--text-secondary);letter-spacing:.04em;text-wrap:balance;margin:0;padding-top:clamp(.9rem,1.6vw,1.25rem);font-size:clamp(1.08rem,1.28vw,1.42rem);font-weight:750;line-height:1.45}.hero-title{max-width:11ch;font-family:var(--font-latin), var(--font-cjk), sans-serif;letter-spacing:-.07em;text-wrap:balance;margin:clamp(1.75rem,5vh,4rem) 0;font-size:clamp(4.5rem,9vw,10rem);font-weight:650;line-height:.82}[data-locale=zh-TW] .hero-title{letter-spacing:-.045em;max-width:9ch;font-size:clamp(4rem,7.8vw,8.5rem);line-height:.94}.hero-cut{z-index:0;--hero-cut-shape:polygon(23% 0, 100% 0, 100% 100%, 0 100%, 38% 56%);background:var(--keima-ink);width:35%;height:100%;clip-path:var(--hero-cut-shape);position:absolute;top:0;right:-9%}.hero-cut:after{background:var(--keima-cyan);clip-path:polygon(22.5% 0,23.4% 0,38.5% 56%,.8% 100%,0 100%,37.5% 56%);content:"";position:absolute;inset:0}@keyframes hero-enter{0%{clip-path:inset(0 0 115%);opacity:0;transform:translateY(44px)}to{clip-path:inset(0 0 0%);opacity:1;transform:translateY(0)}}@keyframes hero-cut-enter{0%{clip-path:polygon(50% 0,100% 0,100% 100%,0 100%,50% 60%);opacity:0;transform:translate(8%)skew(-4deg)}to{clip-path:var(--hero-cut-shape);opacity:1;transform:translate(0)skew(0)}}@keyframes hero-cut-enter-contained{0%{clip-path:polygon(50% 0,100% 0,100% 100%,0 100%,50% 60%);opacity:0;transform:skew(-4deg)}to{clip-path:var(--hero-cut-shape);opacity:1;transform:skew(0)}}.hero-reveal{animation:1s cubic-bezier(.16,1,.3,1) both hero-enter}.hero-reveal--eyebrow,.hero-reveal--logo{animation-delay:80ms}.hero-reveal--title{animation-delay:.2s}.hero-reveal--subtitle{animation-delay:.22s}.hero[data-motion-intensity=enhanced] .hero-cut{animation:1.1s cubic-bezier(.16,1,.3,1) .28s both hero-cut-enter}.content-section{padding:clamp(5.5rem, 9vw, 9rem) var(--page-margin);scroll-margin-top:var(--header-height)}.section-grid{width:min(100%, var(--content-max));grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(2.5rem,5vw,7rem) clamp(.75rem,1.4vw,1.75rem);margin-inline:auto;display:grid}.section-index{color:var(--keima-ink);letter-spacing:.16em;margin:0;font-size:.72rem;font-weight:800;line-height:1}.section-index span{background:var(--keima-cyan);border:1px solid var(--keima-ink);min-width:3rem;padding:.55rem .7rem;display:inline-block}.section-kicker{color:var(--text-secondary);letter-spacing:.18em;margin:0 0 1.25rem;font-size:.72rem;font-weight:800}.section-title{letter-spacing:-.055em;text-wrap:balance;margin:0;font-size:clamp(3.25rem,6.25vw,7rem);font-weight:650;line-height:.92}.about{background:var(--surface-light);border-top:1px solid var(--border-primary)}.about-index{grid-area:1/1}.about-brand-panel{background:var(--keima-paper);border:1px solid var(--border-primary);grid-area:1/2/auto/12;grid-template-columns:minmax(16rem,.9fr) minmax(0,1.1fr);align-items:start;gap:clamp(2rem,4vw,4.5rem);padding:clamp(1.4rem,2.6vw,2.6rem);display:grid}.about-lead{max-width:14ch;color:var(--keima-ink);letter-spacing:-.055em;text-wrap:balance;margin:0;font-size:clamp(2rem,3.25vw,4rem);font-weight:650;line-height:.98}.about-copy{gap:clamp(.9rem,1.5vw,1.25rem);max-width:44rem;margin-top:0;display:grid}.about-copy p{max-width:39rem;color:var(--text-primary);letter-spacing:.01em;margin:0;font-size:clamp(1.05rem,1.25vw,1.28rem);line-height:1.75}.about-copy p:first-child{border-top:1px solid var(--border-primary);padding-top:0}.about-portrait{aspect-ratio:3/4}.about-portrait--compact{justify-self:start;width:min(100%,clamp(12rem,18vw,17rem))}.about-person-panel{border-top:1px solid var(--keima-ink);grid-area:2/2/auto/12;grid-template-columns:minmax(12rem,.42fr) minmax(0,1fr);align-self:start;gap:clamp(2rem,4vw,4rem);margin-top:clamp(2.5rem,5vw,4.5rem);padding:clamp(1.4rem,2.5vw,2rem) 0 0;display:grid}.about-person-copy{align-self:center}.about-person-role{max-width:100%;color:var(--text-secondary);letter-spacing:.08em;margin:1rem 0 0;font-size:clamp(1.05rem,1.25vw,1.35rem);font-weight:800;line-height:1.3}.about-person-panel h3,.about-person-name{letter-spacing:-.04em;max-width:20ch;margin:.35rem 0 0;font-size:clamp(2.4rem,4.5vw,5rem);font-weight:650;line-height:.98}.about-person-panel p:not(.section-kicker,.about-person-role){max-width:30rem;color:var(--text-primary);letter-spacing:0;margin:1.25rem 0 0;font-size:clamp(1rem,1.08vw,1.18rem);font-weight:500;line-height:1.75}.field-rule{background:var(--keima-cyan);width:min(7rem,42%);height:2px;display:block}.media-placeholder{background:var(--surface-light);border:1px solid var(--keima-ink);place-items:center;width:100%;height:100%;min-height:15rem;transition:background-color .26s,transform .42s cubic-bezier(.16,1,.3,1);display:grid;position:relative;overflow:hidden}.media-placeholder:before,.media-placeholder:after{content:"";transform-origin:50%;height:0;position:absolute;top:50%;left:50%}.media-placeholder:before{border-top:1px solid var(--keima-ink);width:76%;transform:translate(-50%,-50%)rotate(-34deg)}.media-placeholder:after{border-top:2px solid var(--keima-cyan);width:24%;transform:translate(-50%,-50%)rotate(34deg)}.media-placeholder-label{z-index:1;background:var(--surface-light);border:1px solid var(--keima-ink);letter-spacing:.08em;text-align:center;max-width:16rem;padding:.85rem 1rem;font-size:.75rem;font-weight:750;transition:transform .42s cubic-bezier(.16,1,.3,1)}.editorial-image{object-fit:cover;width:100%;height:100%;transition:transform .7s cubic-bezier(.16,1,.3,1);display:block}.reveal[data-motion-ready=true][data-reduced-motion=false][data-reveal-state=hidden] .reveal-content{clip-path:inset(0 0 112%);filter:blur(10px);opacity:0;transform:translateY(56px)}.section-wipe{background:var(--keima-paper);position:relative;overflow:clip}.section-wipe-content{background:var(--keima-ink);position:relative}.section-wipe[data-motion-ready=true] .section-wipe-content{clip-path:var(--section-wipe-clip)}.section-wipe[data-motion-ready=true][data-reduced-motion=false] .section-wipe-content{will-change:clip-path}.section-wipe:not([data-motion-ready=true]) .section-wipe-content{clip-path:none!important}.contact{background:var(--keima-ink);min-height:72svh;color:var(--keima-paper);align-content:center;position:relative;overflow:hidden}.contact-index{grid-column:1/3;align-self:start}.contact-email{z-index:1;letter-spacing:-.065em;overflow-wrap:anywhere;grid-column:3/13;margin:clamp(2rem,5vw,5rem) 0 0;font-size:clamp(2.35rem,6vw,7rem);font-weight:620;line-height:.88}.contact-email a{-webkit-text-decoration-color:var(--keima-cyan);text-decoration-color:var(--keima-cyan);text-underline-offset:.12em;text-decoration-thickness:.04em}.contact-email a:focus-visible{outline-color:var(--keima-paper)}.contact-marker{background:var(--keima-cyan);transform-origin:100%;width:29%;height:2px;position:absolute;bottom:17%;right:4%;transform:rotate(-27deg)}.contact[data-motion-accent=contact-finale] .contact-marker{animation:2.2s cubic-bezier(.16,1,.3,1) infinite alternate contact-marker-drift}@keyframes contact-marker-drift{0%{opacity:.58;transform:rotate(-27deg)scaleX(.72)}to{opacity:1;transform:rotate(-27deg)scaleX(1)}}.site-footer{padding:clamp(2.5rem, 4vw, 3.75rem) var(--page-margin) clamp(1.5rem, 2vw, 2rem);background:var(--keima-ink);color:var(--keima-paper);border-top:1px solid var(--keima-cyan);grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;gap:clamp(1.25rem,2vw,2rem) clamp(.75rem,1.4vw,1.75rem);display:grid}.footer-brand{background:var(--keima-paper);width:100%;min-height:clamp(7rem,9vw,8.5rem);color:var(--keima-ink);grid-column:1/5;place-items:center;padding:clamp(1.5rem,2vw,2.25rem);display:grid}.footer-brand img{width:min(100%,16rem);height:auto;display:block}.footer-navigation{border-top:1px solid var(--text-secondary);grid-column:6/13;align-self:start;padding-top:1rem}.footer-navigation ul{grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem clamp(1.5rem,4vw,4rem);margin:0;padding:0;list-style:none;display:grid}.footer-navigation a{min-height:2.35rem;color:var(--keima-paper);letter-spacing:.055em;-webkit-text-decoration-color:var(--keima-cyan);text-decoration-color:var(--keima-cyan);text-underline-offset:.28em;align-items:center;font-size:clamp(.84rem,.9vw,.96rem);font-weight:700;text-decoration-thickness:1px;display:inline-flex}.footer-copyright{border-top:1px solid var(--text-secondary);color:var(--border-primary);letter-spacing:.025em;text-align:right;overflow-wrap:anywhere;grid-column:1/-1;margin:0;padding-top:.9rem;font-size:clamp(.72rem,.76vw,.8rem);line-height:1.5}@media (max-width:1023px){.section-grid,.site-footer{grid-template-columns:repeat(6,minmax(0,1fr))}.footer-brand{grid-column:1/3}.footer-navigation{grid-column:3/7}.footer-navigation ul{grid-template-columns:repeat(2,minmax(0,1fr))}.about-brand-panel{grid-column:1/7;grid-template-columns:1fr}.about-person-panel{grid-area:2/1/auto/7;grid-template-columns:minmax(10rem,.35fr) minmax(0,1fr)}.contact-label{grid-column:2/5}.contact-email{grid-column:2/7}}@media (max-width:767px){:root{--header-height:4.75rem}body{padding-bottom:var(--mobile-nav-height)}.site-header{grid-template-columns:1fr auto;grid-template-areas:"brand locale";min-height:4.75rem}.brand-link{width:44px}.brand-link picture,.brand-link img{width:32px;height:32px}.locale-link{justify-content:flex-end;min-width:44px}.primary-navigation{z-index:60;background:var(--keima-ink);width:100%;color:var(--surface-light);border-top:2px solid var(--keima-cyan);justify-self:stretch;position:fixed;bottom:0;left:0;right:0}.primary-navigation ul{grid-template-columns:repeat(4,minmax(0,1fr));gap:0;display:grid}.primary-navigation li+li{border-left:1px solid color-mix(in srgb, var(--surface-light) 20%, transparent)}.primary-navigation a{justify-content:center;width:100%;min-height:52px;padding:.25rem;font-size:.68rem}.primary-navigation a:focus-visible{background:var(--surface-light);color:var(--keima-ink);outline-color:var(--keima-ink);outline-offset:-4px;box-shadow:inset 0 0 0 4px var(--focus-ring)}.primary-navigation a[aria-current=location]{background:var(--surface-light);color:var(--keima-ink);box-shadow:inset 0 -2px 0 var(--keima-ink), inset 0 -4px 0 var(--keima-cyan)}.primary-navigation a:after{bottom:0;left:25%;right:25%}.hero{grid-template-rows:1fr;gap:1.5rem .75rem;min-height:100svh;padding-top:7.5rem;padding-bottom:6rem}.hero-eyebrow{grid-column:1/span 8}.hero-motion{will-change:auto;grid-column:1/-1;align-self:start;margin-top:clamp(8rem,22vh,12rem);transform:none!important}.hero-mark{gap:1rem;width:min(100%,22rem);transform:none}.hero-subtitle{max-width:18rem;font-size:clamp(1rem,4.8vw,1.35rem);line-height:1.55}.hero-title{max-width:9ch;margin:1.5rem 0;font-size:clamp(3.25rem,17vw,5.5rem)}[data-locale=zh-TW] .hero-title{max-width:6ch;font-size:clamp(3.25rem,14vw,5rem);line-height:.98}.hero-cut{--hero-cut-shape:polygon(30% 0, 100% 0, 100% 100%, 0 100%, 20% 55%);width:54%;height:30%;top:64%;right:-14%}.hero[data-motion-intensity=enhanced] .hero-cut{animation-name:hero-cut-enter-contained}.hero-cut:after{clip-path:polygon(29.4% 0,30.5% 0,20.8% 55%,1% 100%,0 100%,19.2% 55%)}.content-section{padding-top:clamp(6rem,24vw,8rem);padding-bottom:clamp(6rem,24vw,8rem)}.section-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:2.5rem .75rem}.section-title{font-size:clamp(3rem,15vw,4.75rem)}.about-index,.about-brand-panel,.about-person-panel{grid-area:auto/1/auto/-1}.about-brand-panel{margin-top:1rem;padding:1.25rem}.about-lead{max-width:100%;font-size:clamp(2.25rem,10vw,4rem);line-height:1.08}.about-copy{margin-top:2rem}.about-portrait{justify-self:start;width:min(62vw,13rem);max-width:none;margin-top:0}.about-person-panel{grid-template-columns:1fr;margin-top:0;padding-top:1.4rem}.about-person-role{font-size:clamp(.95rem,4vw,1.15rem)}.about-person-panel h3{max-width:100%;font-size:clamp(2rem,8vw,3rem)}.about-person-panel p:not(.section-kicker,.about-person-role){max-width:100%;font-size:clamp(1.05rem,4.8vw,1.35rem)}.contact{align-content:end;min-height:68svh;padding-bottom:clamp(6rem,24vw,9rem)}.contact-index,.contact-label,.contact-email{grid-column:1/-1}.contact-email{margin-top:.5rem;font-size:clamp(2.35rem,12.5vw,4.8rem);line-height:.92}.contact-marker{width:42%;bottom:12%;right:0}.section-wipe-content{will-change:auto;clip-path:none!important}.reveal-content{clip-path:none!important;opacity:1!important;transform:none!important}.site-footer{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:1.25rem .75rem;padding-top:2.5rem;padding-bottom:1.5rem}.footer-brand{grid-column:1/-1;width:100%;min-height:7rem;padding:1.5rem}.footer-brand img{width:min(100%,14rem)}.footer-navigation{grid-column:1/-1;padding-top:.75rem}.footer-navigation ul{grid-template-columns:repeat(3,minmax(0,1fr));gap:.3rem .75rem}.footer-copyright{text-align:left;grid-column:1/-1;padding-top:1rem}}.hero-supporting{color:var(--text-secondary);letter-spacing:.08em;margin:0;font-size:clamp(.9rem,1vw,1.1rem);font-weight:700;line-height:1.35}.brand-section{background:var(--surface-light);border-top:1px solid var(--border-primary)}.brand-section:nth-of-type(2n){background:var(--keima-paper)}.brand-section-grid{width:min(100%, var(--content-max));grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(2rem,4vw,5.5rem) clamp(.75rem,1.4vw,1.75rem);margin-inline:auto;display:grid}.section-heading-block{grid-column:2/7}.section-intro{max-width:30rem;color:var(--text-secondary);font-size:var(--type-body);margin:1.25rem 0 0;line-height:1.78}.positioning-index,.approach-index,.in-motion-index,.profile-index{grid-column:1}.positioning .section-heading-block{grid-column:2/8}.positioning-display,.approach-title,.in-motion-title{white-space:pre-line;text-wrap:balance;margin:0}.positioning-display{max-width:12ch;font-size:var(--type-display-lg);letter-spacing:-.055em;font-weight:620;line-height:.92}.positioning-copy{grid-column:8/12;align-self:end;gap:2rem;display:grid}.positioning-copy p{max-width:var(--measure-copy);color:var(--keima-ink);font-size:var(--type-body-lg);margin:0;font-weight:450;line-height:1.78}.positioning-belief{border-top:2px solid var(--keima-ink);padding-top:1.25rem;font-weight:850}.approach-list{border-top:1px solid var(--keima-ink);grid-column:2/12;margin:clamp(1rem,2.5vw,2.5rem) 0 0;padding:0;list-style:none;display:grid}.approach-row{border-bottom:1px solid var(--border-primary)}.approach-row .reveal-content{grid-template-columns:minmax(2.75rem,.4fr) minmax(10rem,1.7fr) minmax(9rem,1.15fr) minmax(18rem,2.5fr) 2rem;align-items:baseline;gap:clamp(.75rem,1.4vw,1.75rem);padding:clamp(1.25rem,1.9vw,1.8rem) 0;display:grid}.row-index{color:var(--keima-cyan);letter-spacing:.12em;font-size:.78rem;font-weight:850}.approach-row h3{color:var(--keima-ink);letter-spacing:-.045em;margin:0;font-size:clamp(1.65rem,2.6vw,3rem);font-weight:620;line-height:1}.row-label{color:var(--keima-ink);font-size:var(--type-body);letter-spacing:.015em;margin:0;font-weight:700}.row-description{color:#57544d;font-size:var(--type-body);margin:0;line-height:1.7}.project-list{grid-column:2/12;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1rem,1.6vw,1.75rem);margin:clamp(2rem,4vw,4rem) 0 0;padding:0;list-style:none;display:grid}.project-card,.project-card .reveal,.project-card .reveal-content{min-width:0;height:100%}.project-card-link{height:100%;color:var(--keima-ink);grid-template-rows:auto 1fr;text-decoration:none;display:grid}.project-card-link:focus-visible{outline:3px solid var(--keima-cyan);outline-offset:5px}.project-media{aspect-ratio:4/3;background:var(--keima-ink);border:1px solid var(--keima-ink);isolation:isolate;position:relative;overflow:hidden}.project-media-shape{transition:transform .42s var(--ease-keima), translate .42s var(--ease-keima);display:block;position:absolute}.project-media-marker{z-index:3;color:var(--surface-light);letter-spacing:.12em;font-size:.68rem;font-weight:850;position:absolute;inset:auto auto 1rem 1rem}.project-card--jobsgame .project-media-shape--primary{aspect-ratio:1;border:4px solid var(--keima-cyan);width:76%;top:-12%;left:-28%;transform:rotate(35deg)}.project-card--jobsgame .project-media-shape--secondary{background:var(--keima-paper);border-left:4px solid var(--keima-cyan);width:52%;height:150%;top:-25%;right:-23%;transform:rotate(26deg)}.project-card--indie-guider .project-media-shape--primary{background:var(--keima-cyan);width:120%;height:42%;top:24%;left:-15%;transform:rotate(-18deg)}.project-card--indie-guider .project-media-shape--secondary{aspect-ratio:1;border:clamp(.8rem, 1.5vw, 1.35rem) solid var(--keima-paper);border-radius:50%;width:46%;top:12%;right:10%}.project-card--gamecf .project-media-shape--primary{border:4px solid var(--keima-cyan);inset:12% 14%;transform:skew(-20deg)}.project-card--gamecf .project-media-shape--secondary{background:var(--keima-paper);width:38%;height:160%;box-shadow:-5px 0 0 var(--keima-cyan);top:-28%;right:-5%;transform:rotate(38deg)}.project-card-copy{border-bottom:1px solid var(--keima-ink);grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:1rem;padding:1.35rem 0 1.5rem;display:grid}.project-card-text{gap:.65rem;display:grid}.project-title{color:var(--keima-ink);letter-spacing:-.045em;margin:0;font-size:clamp(1.7rem,2.25vw,2.6rem);font-weight:620;line-height:.96}.project-label,.project-description{margin:0}.project-label{color:var(--keima-ink);letter-spacing:.04em;font-size:.78rem;font-weight:800;line-height:1.45}.project-description{color:#57544d;font-size:.95rem;line-height:1.65}.project-arrow{color:var(--keima-cyan);transition:transform .22s var(--ease-keima);font-size:clamp(1.5rem,2vw,2rem);line-height:1}.project-card-link:hover .project-arrow,.project-card-link:focus-visible .project-arrow{transform:translate(.35rem,-.35rem)}.project-card-link:hover .project-media-shape--primary,.project-card-link:focus-visible .project-media-shape--primary{transform:translate(.45rem,-.35rem)rotate(35deg)}.project-card--indie-guider .project-card-link:hover .project-media-shape--primary,.project-card--indie-guider .project-card-link:focus-visible .project-media-shape--primary{transform:translate(.45rem,-.35rem)rotate(-18deg)}.project-card--gamecf .project-card-link:hover .project-media-shape--primary,.project-card--gamecf .project-card-link:focus-visible .project-media-shape--primary{transform:translate(.45rem,-.35rem)skew(-20deg)}.project-card-link:hover .project-media-shape--secondary,.project-card-link:focus-visible .project-media-shape--secondary{translate:-.4rem .3rem}.project-card[data-link-state=pending]{color:var(--text-muted)}.profile-heading{grid-column:2/5}.profile-heading h2{max-width:12ch;font-size:var(--type-heading);letter-spacing:-.04em;margin:0;font-weight:620;line-height:1}.profile-card{border-top:1px solid var(--keima-ink);grid-column:6/12;padding-top:clamp(1.5rem,2vw,2rem)}.profile-role{color:var(--text-secondary);letter-spacing:.06em;margin:0;font-size:clamp(1rem,1.1vw,1.18rem);font-weight:850}.profile-card h3{font-size:var(--type-display-md);letter-spacing:-.045em;margin:.45rem 0 0;font-weight:620;line-height:.95}.profile-fields{flex-wrap:wrap;gap:.6rem;margin:clamp(1.5rem,3vw,2.5rem) 0;padding:0;list-style:none;display:flex}.profile-fields li{border:1px solid var(--border-primary);color:var(--text-secondary);letter-spacing:.08em;padding:.45rem .65rem;font-size:.72rem;font-weight:850}.profile-bio{gap:1rem;max-width:42rem;display:grid}.profile-bio p{color:var(--keima-ink);font-size:var(--type-body);margin:0;line-height:1.78}.contact-title{max-width:12ch;color:var(--surface-light);font-size:var(--type-display-xl);letter-spacing:-.055em;grid-column:2/10;margin:0;font-weight:620;line-height:.9}.contact-label{color:var(--keima-cyan);letter-spacing:.16em;text-transform:uppercase;grid-column:2/7;margin:0;font-size:.78rem;font-weight:850}.contact-body{color:var(--border-primary);grid-column:2/7;margin:1rem 0 0;font-size:clamp(1.1rem,1.45vw,1.55rem);font-weight:750}.contact-email{grid-column:2/9}.contact-email a{color:var(--surface-light);letter-spacing:-.025em;white-space:nowrap;gap:.65rem;font-size:clamp(1.35rem,2.5vw,3rem);line-height:1.08;display:inline-grid}.contact-email a span{color:var(--keima-cyan);letter-spacing:.08em;font-size:clamp(.9rem,1vw,1rem)}@media (max-width:1023px){.brand-section-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.positioning-index,.approach-index,.in-motion-index,.profile-index,.section-heading-block,.positioning .section-heading-block,.positioning-copy,.approach-list,.project-list,.profile-heading,.profile-card{grid-column:1/-1}.positioning .section-heading-block,.profile-heading{grid-column:1/4}.positioning-copy,.profile-card{grid-column:4/-1;align-self:end}.approach-row .reveal-content{grid-template-columns:minmax(2.5rem,.35fr) minmax(10rem,1.3fr) minmax(0,1fr)}.row-description{grid-column:2/-1}.project-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:767px){.primary-navigation ul{grid-template-columns:repeat(6,minmax(0,1fr))}.primary-navigation a{letter-spacing:.015em;min-height:44px;font-size:.625rem}.hero-supporting{font-size:.82rem}.hero-motion{margin-top:clamp(5.5rem,16vh,8rem)}.brand-section-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.positioning .section-heading-block,.positioning-copy,.profile-heading,.profile-card{grid-column:1/-1}.positioning-copy,.profile-card{margin-top:.5rem}.positioning-display{font-size:clamp(2.75rem,13vw,3.5rem);line-height:.95}.approach-title,.in-motion-title,.profile-heading h2{font-size:clamp(1.85rem,8vw,2.5rem);line-height:1}.profile-card h3{font-size:clamp(2.5rem,12vw,3.5rem)}.contact-title{font-size:clamp(3rem,14vw,4rem);line-height:.92}.section-intro,.positioning-copy p,.row-description,.profile-bio p{font-size:1rem}.approach-row .reveal-content{grid-template-columns:2.25rem minmax(0,1fr);align-items:start}.approach-row h3,.row-label,.row-description{grid-column:2}.project-list{grid-template-columns:1fr;gap:1.5rem;margin-top:2rem}.project-media{aspect-ratio:16/10}.project-card-copy{padding-block:1.1rem 1.25rem}.project-title{font-size:clamp(1.8rem,9vw,2.5rem)}.project-description{font-size:1rem}.contact-title,.contact-label,.contact-body,.contact-email{grid-column:1/-1}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.hero-cut,.hero-motion{transform:none!important}.hero-motion,.section-wipe-content{will-change:auto}[data-reduced-motion],[data-reduced-motion] .reveal-content,[data-reduced-motion] .section-wipe-content{clip-path:none!important;filter:none!important;opacity:1!important;transform:none!important}}
