@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.12tyk43_3sh9u.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.0jzbimsg8vl84.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.0-wfv7uh4i7h9.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.0nx0ww8fni_q3.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.09~u27dqhyhd6.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_a71539c9-module__T19VSG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_a71539c9-module__T19VSG__variable{--font-geist-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5ce348bf30bf5439-s.0zgw-jeven.3w.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.0wkzw~je483f-.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6306c77e7c8268e4-s.0rhz0arwfsn~5.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7d817b4c03b0c5f1-s.0l76wvqk9d84w.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.0k4k9394f2q-k.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.08e28id.o-okb.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--radius-xl:.75rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.fixed{position:fixed}.static{position:static}.start{inset-inline-start:var(--spacing)}.grid{display:grid}.hidden{display:none}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.rounded{border-radius:.25rem}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.\!ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor)!important;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)!important}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--ink:#151515;--paper:#f4f3ef;--white:#fbfaf6;--orange:#ff6800;--blue:#315dea;--line:#15151533;--rail:300px;--gutter:clamp(22px,3.4vw,54px);--sans-en:var(--font-geist-sans),Arial,sans-serif;--sans-cn:"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans CJK SC",sans-serif;--serif-cn:"Songti SC","STSong","Noto Serif CJK SC",serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--sans-cn);font-synthesis:none;text-rendering:optimizelegibility;margin:0}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}p,h1,h2,h3{text-wrap:pretty}.portfolio{min-height:100vh}.side-rail{z-index:40;width:var(--rail);border-right:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f4f3eff0;flex-direction:column;padding:26px 22px 22px;transition:transform .55s cubic-bezier(.76,0,.24,1);display:flex;position:fixed;inset:0 auto 0 0}.rail-brand{width:max-content;font-family:var(--sans-en);align-items:center;gap:12px;display:flex}.rail-brand img{object-fit:contain;width:36px;height:36px}.rail-brand span{gap:2px;display:grid}.rail-brand strong{font-size:15px;font-weight:650;line-height:1}.rail-brand small{font:500 8px/1 var(--font-geist-mono);letter-spacing:.08em}.rail-toggle{border:1px solid var(--line);color:var(--ink);cursor:pointer;font:500 8px/1 var(--font-geist-mono);background:0 0;border-radius:999px;align-items:center;gap:8px;padding:7px 9px;transition:color .2s,background .2s,border-color .2s;display:flex;position:absolute;top:27px;right:18px}.rail-toggle:hover,.rail-toggle:focus-visible{color:var(--white);background:var(--ink);border-color:var(--ink);outline:none}.rail-toggle b{font-size:11px;font-weight:500}.language-toggle{border:1px solid var(--line);font:600 8px/1 var(--font-geist-mono);border-radius:999px;align-items:center;gap:5px;padding:7px 9px;display:flex;position:absolute;top:76px;right:18px}.language-toggle button{color:#15151561;cursor:pointer;font:inherit;background:0 0;border:0;padding:0;transition:color .2s}.language-toggle button:hover,.language-toggle button:focus-visible{color:var(--ink);outline:none}.language-toggle button.active{color:var(--ink)}.language-toggle span{color:#15151547}.mobile-language-toggle{display:none}.desktop-language-toggle{width:max-content;margin-top:5px;position:static}.side-rail nav{border-top:1px solid var(--ink);margin:auto 0}.side-rail nav a{border-bottom:1px solid var(--line);grid-template-columns:34px 1fr auto;align-items:center;min-height:48px;transition:padding .2s,background .2s;display:grid}.side-rail nav a:hover,.side-rail nav a:focus-visible{background:var(--ink);color:var(--white);outline:none;padding:0 10px}.side-rail nav small{font:500 8px/1 var(--font-geist-mono)}.side-rail nav span{font-size:14px;font-weight:520}.rail-foot{font:550 8px/1.3 var(--font-geist-mono);letter-spacing:.06em;gap:12px;display:grid}.rail-foot span{display:block}.rail-foot>a{border-bottom:1px solid var(--ink);width:max-content;padding-bottom:4px}.site-icon{width:18px;height:18px;color:inherit;flex:none;transition:transform .25s cubic-bezier(.2,.8,.2,1),opacity .2s;display:block;overflow:visible}.control-arrow{width:16px;height:16px}.nav-arrow{opacity:.48;width:20px;height:20px;transition:opacity .2s,transform .25s cubic-bezier(.2,.8,.2,1)}.side-rail nav a:hover .nav-arrow,.side-rail nav a:focus-visible .nav-arrow{opacity:1;transform:translate(2px,2px)}.rail-toggle:hover .control-arrow,.rail-toggle:focus-visible .control-arrow,.case-nav>a:first-child:hover .control-arrow,.case-nav>a:first-child:focus-visible .control-arrow{transform:translate(-2px)}.rail-reopen:hover .control-arrow,.rail-reopen:focus-visible .control-arrow{transform:translate(2px)}.rail-reopen{z-index:45;border:1px solid var(--ink);opacity:0;pointer-events:none;color:var(--ink);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:pointer;font:600 8px/1 var(--font-geist-mono);background:#f4f3efe6;border-radius:999px;align-items:center;gap:9px;padding:10px 13px;transition:opacity .28s,transform .45s cubic-bezier(.2,.8,.2,1),color .2s,background .2s;display:flex;position:fixed;top:22px;left:18px;transform:translate(-24px)}.rail-reopen:hover,.rail-reopen:focus-visible{color:var(--white);background:var(--ink);outline:none}.page-content{margin-left:var(--rail);transition:margin-left .55s cubic-bezier(.76,0,.24,1)}.rail-is-collapsed .rail-reopen{opacity:1;pointer-events:auto;transform:translate(0)}.rail-is-collapsed .page-content{margin-left:0}.mobile-nav-shell{display:contents}.mobile-topbar{display:none}.hero{min-height:100vh;padding:30px var(--gutter) 24px;flex-direction:column;display:flex;overflow:hidden}.hero-meta{font:600 9px/1 var(--font-geist-mono);letter-spacing:.08em;justify-content:space-between;display:flex}.hero-copy{margin:auto 0}.hero-copy>p{letter-spacing:.01em;max-width:420px;margin:0 0 clamp(40px,7vh,82px) auto;font-size:clamp(15px,1.2vw,18px);line-height:1.75}.hero h1{letter-spacing:-.075em;margin:0;font-size:clamp(72px,10.2vw,156px);font-weight:590;line-height:.82}.hero h1 span,.hero h1 em{display:block}.hero h1 em{color:var(--orange);font-family:var(--serif-cn);letter-spacing:-.09em;margin-left:7vw;font-style:normal;font-weight:400}.language-en .hero h1{font-size:clamp(62px,8.1vw,124px);line-height:.87}.language-en .hero h1 em{font-family:var(--sans-en);letter-spacing:-.075em;margin-left:5vw;font-weight:540}.hero-bottom{border-top:1px solid var(--ink);justify-content:space-between;align-items:end;padding-top:18px;display:flex}.hero-stats{gap:clamp(20px,4vw,64px);display:flex}.hero-stats span{font:550 8px/1 var(--font-geist-mono);letter-spacing:.06em;gap:3px;display:grid}.hero-stats strong{font:560 clamp(25px,2.7vw,38px)/1 var(--sans-en);letter-spacing:-.04em}.hero-bottom>a{border:1px solid var(--ink);font:600 9px/1 var(--font-geist-mono);border-radius:999px;align-items:center;gap:30px;padding:10px 14px;transition:background .2s,color .2s,transform .2s;display:flex}.hero-bottom>a:hover,.hero-bottom>a:focus-visible{color:var(--white);background:var(--ink);outline:none}.hero-bottom>a:active{transform:scale(.97)}.action-arrow{width:16px;height:16px}.hero-bottom>a:hover .action-arrow,.hero-bottom>a:focus-visible .action-arrow{transform:translateY(2px)}.signal-strip{color:var(--white);background:var(--ink);overflow:hidden}.signal-strip>div{width:max-content;padding:13px 0;animation:28s linear infinite marquee;display:flex}.signal-strip span,.signal-strip b{font:600 9px/1 var(--font-geist-mono);letter-spacing:.08em;margin-right:28px}.signal-strip b{color:var(--orange);font-size:8px}.section-intro{border-top:1px solid;grid-template-columns:minmax(150px,.6fr) minmax(0,1.4fr);gap:40px;padding:26px 0 76px;display:grid}.section-intro>div{align-items:baseline;gap:16px;display:flex}.section-intro span,.section-intro small{font:600 9px/1 var(--font-geist-mono);letter-spacing:.08em}.section-intro h2{letter-spacing:-.055em;max-width:900px;margin:0;font-size:clamp(42px,5.6vw,82px);font-weight:540;line-height:1.12}.section-intro-dark{color:var(--white)}.now-section,.about-section,.experience-section{padding:30px var(--gutter) 110px}.now-layout{grid-template-columns:minmax(240px,.65fr) minmax(500px,1.35fr);gap:clamp(40px,7vw,100px);display:grid}.now-statement{flex-direction:column;display:flex}.now-statement>p{max-width:420px;margin:0;font-size:16px;line-height:1.8}.now-principles{border-top:1px solid var(--ink);margin-top:auto;display:grid}.now-principles>span{border-bottom:1px solid var(--line);justify-content:space-between;padding:14px 0;font-size:14px;display:flex}.now-principles small{font:500 8px/1 var(--font-geist-mono);letter-spacing:.08em}.lab-card{color:#111827;background:linear-gradient(135deg,#e6e7e7 0%,#cfd5e1 68%,#b8c4e5 100%);flex-direction:column;min-height:540px;padding:22px;display:flex}.lab-top,.lab-bottom{font:600 8px/1 var(--font-geist-mono);letter-spacing:.08em;justify-content:space-between;gap:20px;display:flex}.lab-top i{align-items:center;gap:6px;font-style:normal;display:flex}.lab-top i:before{content:"";background:var(--blue);border-radius:50%;width:6px;height:6px}.lab-card h2{font:590 clamp(60px,8vw,114px)/.75 var(--sans-en);letter-spacing:-.08em;margin:auto 0}.lab-bottom{border-top:1px solid #11182799;align-items:end;padding-top:18px}.lab-bottom p{max-width:350px;font:400 13px/1.7 var(--sans-cn);letter-spacing:0;margin:0}.work-section{padding:30px var(--gutter) 120px;color:var(--white);background:var(--ink)}.project-grid{grid-template-columns:1fr 1fr;gap:100px 18px;display:grid}.project-card{background:#282828;min-width:0;position:relative;overflow:hidden}.project-featured{grid-column:1/-1}.project-image{background:#282828;position:relative;overflow:hidden}.project-image img{aspect-ratio:4/3;object-fit:cover;width:100%;transition:transform .65s cubic-bezier(.2,.8,.2,1)}.project-featured .project-image img{aspect-ratio:16/8.6}.project-card:hover .project-image img{transform:scale(1.018)}.ongroove-project-art{aspect-ratio:16/8.6;background:radial-gradient(circle at 50% 25%,#f2772e29,#0000 35%),#101014;justify-content:center;gap:clamp(18px,3vw,52px);padding:clamp(42px,5vw,78px) 9% 0;display:flex;position:relative;overflow:hidden}.ongroove-device{aspect-ratio:430/932;background:#050506;border:1px solid #ffffff42;border-radius:clamp(20px,2.3vw,38px);flex:none;padding:clamp(4px,.45vw,8px);position:relative;overflow:hidden;box-shadow:0 32px 80px #0000009e,inset 0 0 0 1px #ffffff0d}.ongroove-device img{object-fit:cover;object-position:top;border-radius:calc(clamp(20px,2.3vw,38px) - clamp(4px,.45vw,8px));width:100%;height:100%;display:block}.ongroove-project-art .ongroove-device{height:126%;transition:transform .45s}.ongroove-project-art .ongroove-device:first-child{transform:translateY(7%)}.ongroove-project-art .ongroove-device:nth-child(2){transform:translateY(-2%)}.ongroove-project-art .ongroove-device:last-child{transform:translateY(11%)}.ongroove-project-card:hover .ongroove-device:first-child{transform:translateY(5%)}.ongroove-project-card:hover .ongroove-device:nth-child(2){transform:translateY(-4%)}.ongroove-project-card:hover .ongroove-device:last-child{transform:translateY(9%)}.project-image:after{content:"";pointer-events:none;background:linear-gradient(#0000,#000000c2);position:absolute;inset:32% 0 0}.project-image>span{z-index:2;width:34px;height:34px;color:var(--white);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font:600 8px/1 var(--font-geist-mono);background:#0000002e;border:1px solid #ffffff8c;border-radius:50%;place-items:center;display:grid;position:absolute;top:18px;left:18px}.project-heading{z-index:2;color:var(--white);padding:28px;display:block;position:absolute;bottom:0;left:0;right:0}.project-heading p{color:#ffffffb3;font:500 9px/1.25 var(--sans-en);text-transform:uppercase;margin:0 0 7px}.project-heading h3{letter-spacing:-.045em;max-width:800px;margin:0;font-size:clamp(25px,3vw,46px);font-weight:540;line-height:1.12}.project-heading>span{text-align:right;font:600 9px/1 var(--font-geist-mono);letter-spacing:.05em;padding-bottom:4px}.project-tags{z-index:2;flex-wrap:wrap;justify-content:flex-end;gap:5px;max-width:62%;display:flex;position:absolute;top:18px;right:18px}.project-tags span{color:var(--white);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font:550 8px/1 var(--font-geist-mono);letter-spacing:.04em;background:#00000029;border:1px solid #ffffff7a;border-radius:999px;padding:7px 9px}@media (min-width:981px){.rail-is-collapsed .work-section{padding-left:clamp(18px,2vw,32px);padding-right:clamp(18px,2vw,32px)}.rail-is-collapsed .project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.rail-is-collapsed .project-card:first-child,.rail-is-collapsed .project-card:nth-child(2){grid-column:1/-1}.rail-is-collapsed .project-card:first-child .project-image img,.rail-is-collapsed .project-card:nth-child(2) .project-image img{aspect-ratio:16/7.2}.rail-is-collapsed .hero h1{font-size:clamp(86px,11.7vw,180px)}.rail-is-collapsed.language-en .hero h1{font-size:clamp(70px,9.5vw,146px)}}.about-grid{grid-template-columns:minmax(0,1.35fr) minmax(360px,.65fr);gap:clamp(50px,8vw,130px);display:grid}.about-lead{letter-spacing:-.045em;margin:0;font-size:clamp(30px,4vw,58px);font-weight:500;line-height:1.28}.about-lead em{font-family:var(--serif-cn);font-style:normal;font-weight:400}.capability-list{border-top:1px solid var(--ink)}.capability-list article{border-bottom:1px solid var(--line);grid-template-columns:30px 1fr;gap:8px;padding:16px 0;display:grid}.capability-list article>span{font:500 8px/1 var(--font-geist-mono)}.capability-list h3{letter-spacing:-.025em;margin:0;font-size:20px;font-weight:550}.capability-list p{color:#1515159e;grid-column:2;margin:2px 0 0;font-size:12px}.brand-manifesto{color:var(--white);background:var(--blue);margin-top:130px;padding:24px;position:relative;overflow:hidden}.brand-manifesto>span{font:600 9px/1 var(--font-geist-mono);letter-spacing:.1em}.brand-manifesto h2{letter-spacing:-.09em;margin:8vw 0 0;font-size:clamp(90px,15vw,220px);font-weight:600;line-height:.72}.language-en .brand-manifesto h2{max-width:1000px;font-size:clamp(62px,9.2vw,142px);line-height:.78}.brand-manifesto p{font-family:var(--serif-cn);margin:0;font-size:clamp(18px,2vw,30px);position:absolute;bottom:24px;right:24px}.experience-section{background:var(--white)}.experience-grid{grid-template-columns:minmax(240px,.58fr) minmax(500px,1.42fr);gap:clamp(50px,8vw,130px);display:grid}.experience-grid>p{max-width:390px;margin:0;font-size:14px;line-height:1.85}.timeline{border-top:1px solid var(--ink)}.timeline-row{border-bottom:1px solid var(--line);grid-template-columns:110px 1fr 1fr;align-items:center;gap:16px;min-height:66px;display:grid}.timeline-row span{font-size:11px;line-height:1.45}.timeline-row span:first-child{font-family:var(--sans-en)}.timeline-row span:last-child{text-align:right}.archive-block,.recognition-block{margin-top:130px}.archive-title{border-top:1px solid var(--ink);justify-content:space-between;align-items:end;padding:20px 0 34px;display:flex}.archive-title span{font:600 9px/1 var(--font-geist-mono);letter-spacing:.08em}.archive-title h2{letter-spacing:-.05em;margin:0;font-size:clamp(38px,4.2vw,60px);font-weight:550;line-height:1}.archive-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.archive-grid article{background:#e1e2e2;overflow:hidden}.archive-grid img{aspect-ratio:4/3;object-fit:cover;filter:saturate(.72);width:100%;transition:filter .3s,transform .5s}.archive-grid article:hover img{filter:saturate();transform:scale(1.01)}.archive-grid article>div{border-top:1px solid var(--line);grid-template-columns:62px 1fr;gap:10px;padding:13px;display:grid}.archive-grid span{font:500 8px/1 var(--font-geist-mono)}.archive-grid strong{font-size:13px;font-weight:530}.recognition-layout{grid-template-columns:minmax(0,1.45fr) minmax(250px,.55fr);gap:clamp(40px,7vw,100px);display:grid}.recognition-row{border-bottom:1px solid var(--line);grid-template-columns:90px 1fr;align-items:center;min-height:58px;display:grid}.recognition-row span{font:500 9px/1 var(--font-geist-mono)}.recognition-layout aside{min-height:300px;color:var(--white);background:var(--ink);flex-direction:column;padding:20px;display:flex}.recognition-layout aside strong{font:560 clamp(88px,10vw,140px)/.8 var(--sans-en);letter-spacing:-.08em}.recognition-layout aside p{margin:18px 0 auto;font-size:17px}.recognition-layout aside span{font-size:12px;line-height:1.7}.contact-section{min-height:100vh;padding:30px var(--gutter) 26px;color:var(--white);background:var(--ink);flex-direction:column;display:flex}.contact-top{font:600 9px/1 var(--font-geist-mono);letter-spacing:.08em;border-bottom:1px solid #ffffff8c;justify-content:space-between;padding-bottom:16px;display:flex}.contact-section h2{letter-spacing:-.065em;margin:auto 0;font-size:clamp(62px,9vw,136px);font-weight:550;line-height:.98}.contact-section h2 em{color:var(--orange);font-family:var(--serif-cn);margin-left:5vw;font-style:normal;font-weight:400;display:block}.contact-grid{border-top:1px solid #ffffff8c;grid-template-columns:.7fr 1.3fr;gap:60px;padding-top:18px;display:grid}.contact-grid>p{max-width:390px;margin:0;font-size:13px;line-height:1.8}.contact-details>a,.contact-details>div{border-bottom:1px solid #ffffff59;grid-template-columns:68px 1fr auto;align-items:center;min-height:52px;display:grid}.contact-details small{font:500 8px/1 var(--font-geist-mono);letter-spacing:.06em}.contact-details strong{font:500 clamp(16px,1.7vw,24px)/1 var(--sans-en);letter-spacing:-.025em}.contact-link-icon{opacity:.72;border:1px solid;border-radius:50%;width:32px;height:32px;padding:7px;transition:opacity .2s,transform .25s,background .2s}.contact-details>a:hover .contact-link-icon,.contact-details>a:focus-visible .contact-link-icon,.social-links a:hover .contact-link-icon,.social-links a:focus-visible .contact-link-icon{opacity:1;transform:translate(2px,-2px)}.contact-details>a:focus-visible{outline:none}.social-links{grid-template-columns:1fr repeat(3,auto);align-items:end;gap:8px;margin-top:32px;display:grid}.social-links>span{font:600 8px/1 var(--font-geist-mono);letter-spacing:.08em}.social-links a{min-width:142px;font:500 10px/1 var(--sans-en);border:1px solid #fff9;border-radius:999px;justify-content:space-between;align-items:center;gap:18px;padding:5px 5px 5px 14px;transition:background .2s,color .2s,transform .2s;display:flex}.social-links a:hover,.social-links a:focus-visible{color:var(--ink);background:var(--white);outline:none}.social-links a:active{transform:scale(.98)}.social-links a:last-child{font-family:var(--sans-cn)}.site-footer{padding:15px var(--gutter);color:var(--white);background:var(--ink);font:500 9px/1 var(--font-geist-mono);grid-template-columns:1fr 1fr 1fr;display:grid}.site-footer span:nth-child(2){text-align:center;font-family:var(--sans-cn)}.site-footer a{text-align:right;justify-self:end;align-items:center;gap:8px;display:inline-flex}.site-footer a:hover .footer-arrow,.site-footer a:focus-visible .footer-arrow{transform:translateY(-2px)}.case-page{min-height:100vh;color:var(--ink);background:var(--white)}.case-nav{z-index:50;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fbfaf6eb;grid-template-columns:1fr auto 1fr;align-items:center;height:64px;padding:0 clamp(20px,3vw,48px);display:grid;position:sticky;top:0}.case-nav>a:first-child{font:600 9px/1 var(--font-geist-mono);letter-spacing:.06em;align-items:center;gap:8px;display:inline-flex}.case-brand{font:650 14px/1 var(--sans-en);align-items:center;gap:9px;display:flex}.case-brand img{width:28px;height:28px}.case-language{border:1px solid var(--line);font:600 8px/1 var(--font-geist-mono);border-radius:999px;justify-self:end;align-items:center;gap:5px;padding:7px 9px;display:flex}.case-language button{color:#15151561;cursor:pointer;font:inherit;background:0 0;border:0;padding:0}.case-language button.active{color:var(--ink)}.case-hero{min-height:calc(100vh - 64px);color:var(--white);background:#111;position:relative;overflow:hidden}.case-hero>img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.case-hero-shade{background:linear-gradient(#00000040,#0000 35%,#000000c2);position:absolute;inset:0}.case-hero-meta{top:28px;right:var(--gutter);left:var(--gutter);font:600 9px/1 var(--font-geist-mono);letter-spacing:.05em;justify-content:space-between;align-items:start;display:flex;position:absolute}.case-hero-meta>div{gap:6px;display:flex}.case-hero-meta>div span{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid #ffffff8c;border-radius:999px;padding:7px 9px}.case-hero-title{right:var(--gutter);bottom:42px;left:var(--gutter);position:absolute}.case-hero-title p{margin:0 0 12px;font-size:15px}.case-hero-title h1{font:570 clamp(54px,8.5vw,130px)/.82 var(--sans-en);letter-spacing:-.075em;margin:0}.case-index{align-items:baseline;gap:16px;display:flex}.case-index span,.case-index small{font:600 9px/1 var(--font-geist-mono);letter-spacing:.08em}.case-overview{grid-template-columns:.45fr 1.15fr .4fr;gap:clamp(40px,6vw,100px);display:grid}.case-overview-copy h2{letter-spacing:-.055em;margin:0 0 36px;font-size:clamp(38px,5.2vw,76px);font-weight:530;line-height:1.15}.case-overview-copy p{max-width:720px;margin:0;font-size:16px;line-height:1.85}.case-facts{border-top:1px solid var(--ink);margin:0}.case-facts>div{border-bottom:1px solid var(--line);padding:14px 0}.case-facts dt{font:600 8px/1 var(--font-geist-mono);letter-spacing:.08em;margin-bottom:6px}.case-facts dd{margin:0;font-size:12px;line-height:1.5}.case-challenge{color:var(--white);background:var(--ink);grid-template-columns:.45fr 1.55fr;gap:60px;display:grid}.case-challenge>p{max-width:1100px;font-family:var(--serif-cn);letter-spacing:-.045em;margin:0;font-size:clamp(36px,5vw,72px);line-height:1.28}.language-en .case-challenge>p{font-family:var(--sans-en);font-weight:480}.case-section-head{border-top:1px solid var(--ink);grid-template-columns:.45fr 1.55fr;gap:60px;padding-top:20px;padding-bottom:62px;display:grid}.case-section-head h2{letter-spacing:-.05em;max-width:900px;margin:0;font-size:clamp(36px,4.5vw,66px);font-weight:530;line-height:1.15}.case-context{background:#efefec}.context-grid{background:var(--line);border:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.context-grid article{background:#efefec;flex-direction:column;min-height:290px;padding:22px;display:flex}.context-grid article>span,.insight-list article>span,.solution-list article>span,.solution-list small,.decision-grid article>span,.case-reflection>span{font:600 8px/1 var(--font-geist-mono);letter-spacing:.08em}.context-grid strong{letter-spacing:-.035em;margin:auto 0 18px;font-size:clamp(25px,2.4vw,36px);font-weight:550}.context-grid p,.insight-list p,.solution-list p,.decision-grid p,.case-reflection p{margin:0;font-size:13px;line-height:1.75}.case-four-grid{grid-template-columns:repeat(4,1fr)}.case-wide-media{background:#e9e8e4;margin:0 0 72px;overflow:hidden}.case-wide-media>img{aspect-ratio:16/9;object-fit:cover;width:100%;display:block}.case-wide-media figcaption{border-top:1px solid var(--line);grid-template-columns:.45fr 1.55fr;gap:60px;padding:18px 20px 22px;display:grid}.case-wide-media figcaption>span{font:600 8px/1 var(--font-geist-mono);letter-spacing:.08em}.case-wide-media figcaption>p{max-width:780px;margin:0;font-size:13px;line-height:1.7}.case-wide-media.dark{color:var(--white);background:#111}.case-wide-media.dark figcaption{border-color:#ffffff2e}.insight-list{border-top:1px solid var(--ink)}.insight-list article{border-bottom:1px solid var(--line);grid-template-columns:.45fr 1.05fr 1fr;align-items:start;gap:36px;padding:30px 0;display:grid}.insight-list h3{letter-spacing:-.04em;margin:0;font-size:clamp(25px,2.8vw,40px);font-weight:540;line-height:1.16}.insight-list p{max-width:500px}.system-grid{border-top:1px solid var(--ink);border-left:1px solid var(--ink);grid-template-columns:repeat(3,1fr);display:grid}.system-grid article{border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);flex-direction:column;min-height:380px;padding:22px;display:flex}.system-grid article>span{font:600 8px/1 var(--font-geist-mono);letter-spacing:.06em}.system-grid h3{letter-spacing:-.04em;margin:auto 0 20px;font-size:clamp(30px,3vw,44px);font-weight:550}.system-grid p{margin:0;font-size:13px;line-height:1.75}.case-visual-break{background:#dfe3e8;grid-template-columns:1.3fr .7fr;min-height:80vh;display:grid}.case-visual-break>div{overflow:hidden}.case-visual-break img{object-fit:cover;object-position:42% center;width:100%;height:100%}.case-visual-break aside{background:#dfe3e8;flex-direction:column;padding:clamp(28px,4vw,60px);display:flex}.case-visual-break aside>span{font:600 9px/1 var(--font-geist-mono);letter-spacing:.08em}.case-visual-break h2{letter-spacing:-.055em;margin:auto 0 24px;font-size:clamp(42px,5vw,72px);font-weight:540;line-height:1.08}.case-visual-break p{margin:0;font-size:14px;line-height:1.8}.principle-list{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.principle-list article{min-height:320px;color:var(--white);background:var(--ink);flex-direction:column;padding:20px;display:flex}.principle-list article>span{font:600 9px/1 var(--font-geist-mono)}.principle-list h3{margin:auto 0 16px;font-size:clamp(28px,3vw,42px);font-weight:540}.principle-list p{color:#ffffffa8;margin:0;font-size:13px;line-height:1.7}.case-solutions{background:#f7f6f2}.solution-list{border-top:1px solid var(--ink)}.solution-list article{border-bottom:1px solid var(--line);grid-template-columns:70px 1.05fr .95fr;gap:30px;padding:38px 0;display:grid}.solution-list h3{letter-spacing:-.045em;max-width:620px;margin:12px 0 0;font-size:clamp(30px,3.5vw,52px);font-weight:540;line-height:1.12}.solution-list p{max-width:560px}.case-decisions{color:var(--white);background:#191919}.case-decisions .case-section-head{border-color:#ffffffb3}.decision-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.decision-grid article{min-height:430px;color:var(--ink);background:#f2f1ed;flex-direction:column;padding:24px;display:flex}.decision-grid h3{letter-spacing:-.05em;max-width:600px;margin:auto 0 24px;font-size:clamp(34px,4vw,58px);font-weight:540;line-height:1.08}.decision-grid p{max-width:560px}.case-dna .case-wide-media{margin-bottom:0}.case-process{background:#efefec}.process-row{border-bottom:1px solid var(--line);grid-template-columns:70px 1fr 1fr;align-items:center;gap:24px;min-height:92px;display:grid}.process-row>span{font:600 9px/1 var(--font-geist-mono)}.process-row p{margin:0;font-size:13px;line-height:1.7}.case-final{background:#f7f6f2}.case-final .case-wide-media{margin-bottom:0}.case-reflection{background:var(--white);grid-template-columns:.45fr 1.55fr;gap:60px;display:grid}.case-reflection h2{letter-spacing:-.055em;max-width:1040px;margin:0 0 60px;font-size:clamp(42px,5.4vw,80px);font-weight:530;line-height:1.1}.case-reflection p{max-width:680px;margin-left:auto}.case-outcome{min-height:85vh;padding:80px var(--gutter);color:var(--white);background:var(--blue);flex-direction:column;justify-content:center;display:flex}.case-outcome>span{font:600 9px/1 var(--font-geist-mono);letter-spacing:.08em}.case-outcome h2{letter-spacing:-.065em;max-width:1250px;margin:80px 0 36px;font-size:clamp(48px,7.2vw,108px);font-weight:550;line-height:1.05}.case-outcome p{max-width:650px;margin:0 0 0 auto;font-size:13px;line-height:1.8}.case-footer{padding:18px var(--gutter);color:var(--white);background:var(--ink);font:600 9px/1 var(--font-geist-mono);letter-spacing:.05em;grid-template-columns:1fr auto 1fr;align-items:center;display:grid}.case-footer>a{align-items:center;gap:8px;width:max-content;display:inline-flex}.case-footer>a:first-child:hover .footer-arrow,.case-footer>a:first-child:focus-visible .footer-arrow{transform:translate(-2px)}.case-footer>a:last-child:hover .footer-arrow,.case-footer>a:last-child:focus-visible .footer-arrow{transform:translate(2px,-2px)}.case-footer>a:last-child{justify-self:end}.case-footer .case-language{border-color:#ffffff61;justify-self:center}.case-footer .case-language button{color:#ffffff73}.case-footer .case-language button.active{color:var(--white)}.ongroove-page{--og-orange:#f2772e;--og-green:#23866d}.ongroove-hero{min-height:calc(100vh - 64px);color:var(--white);background:#101014;position:relative;overflow:hidden}.ongroove-hero-art{background:radial-gradient(circle at 50% 28%,#f2772e2e,#0000 34%),linear-gradient(135deg,#17181d,#0d0d10);justify-content:center;gap:clamp(20px,3vw,56px);padding:6vh 3% 0;display:flex;position:absolute;inset:0}.ongroove-hero-art .ongroove-device{height:min(91vh,900px)}.ongroove-hero-art .ongroove-device:first-child{transform:translateY(8%)}.ongroove-hero-art .ongroove-device:nth-child(2){transform:translateY(-2%)}.ongroove-hero-art .ongroove-device:last-child{transform:translateY(12%)}.ongroove-page .case-hero-shade{background:linear-gradient(#00000014,#0000000d 38%,#000000db)}.ongroove-page .case-hero-title h1{font-family:var(--serif-en);letter-spacing:-.065em;font-size:clamp(58px,8.5vw,132px);font-weight:500;line-height:.82}.ongroove-page .case-hero-title p{color:#ff8a44;font-family:var(--sans-cn)}.ongroove-context,.ongroove-context .context-grid article{background:#f0eee8}.ongroove-manifesto{background:#111216}.ongroove-product-showcase,.ongroove-feedback-section{min-height:100vh;color:var(--white);background:#111216;grid-template-columns:.8fr 1.2fr;display:grid}.ongroove-screen-copy{flex-direction:column;justify-content:center;padding:clamp(36px,6vw,92px);display:flex}.ongroove-screen-copy>span{font:600 9px/1 var(--font-geist-mono);letter-spacing:.08em;color:var(--og-orange)}.ongroove-screen-copy h2{letter-spacing:-.055em;max-width:720px;margin:80px 0 30px;font-size:clamp(42px,5.4vw,78px);font-weight:530;line-height:1.08}.ongroove-screen-copy p{color:#ffffffad;max-width:620px;margin:0;font-size:14px;line-height:1.85}.ongroove-single-screen,.ongroove-feedback-phone{background:radial-gradient(circle at 50% 32%,#f2772e2e,#0000 42%),#17181d;justify-content:center;align-items:flex-start;padding:7vh 8% 0;display:flex;overflow:hidden}.ongroove-single-screen .ongroove-device,.ongroove-feedback-phone .ongroove-device{height:min(88vh,900px)}.ongroove-flow{background:#f7f5ef}.ongroove-feedback-section{grid-template-columns:1.15fr .85fr}.ongroove-feedback-phone{background:radial-gradient(circle at 45% 30%,#23866d38,#0000 40%),#0c0d10;order:0}.ongroove-feedback-section blockquote{max-width:620px;color:var(--white);font-family:var(--serif-cn);border-top:1px solid #ffffff38;margin:46px 0 0;padding:22px 0 0;font-size:clamp(18px,2vw,28px);line-height:1.6}.language-en .ongroove-feedback-section blockquote{font-family:var(--serif-en)}.ongroove-ai-boundary{background:#111216}.ongroove-ai-boundary .decision-grid article:first-child{background:#dfe8e3}.ongroove-ai-boundary .decision-grid article:last-child{background:#f0e5dd}.ongroove-vibe{background:#efede7}.ongroove-reflection{background:#faf9f5}.ongroove-outcome{color:#111216;background:var(--og-orange)}.m9-page{--m9-cyan:#63e5cf;--m9-blue:#78cfff}.m9-hero .case-hero-shade{background:linear-gradient(#0000001f,#00000008 42%,#000000e6)}.m9-hero .case-hero-title p{color:var(--m9-cyan)}.m9-context,.m9-context .context-grid article{background:#f1f3f2}.m9-challenge{background:#0a0e10}.m9-benchmark{background:#fafaf8}.m9-optics-section{background:#f1f3f2}.m9-spec-grid{border-top:1px solid var(--ink);border-left:1px solid var(--ink);grid-template-columns:repeat(4,1fr);display:grid}.m9-spec-grid article{border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);flex-direction:column;min-height:220px;padding:20px;display:flex}.m9-spec-grid span{font:600 8px/1 var(--font-geist-mono);letter-spacing:.08em}.m9-spec-grid strong{letter-spacing:-.05em;margin:auto 0 12px;font-size:clamp(30px,3.6vw,54px);font-weight:550}.m9-spec-grid p{margin:0;font-size:12px}.m9-principles{background:#f8f8f5}.m9-principles .principle-list article{background:#101416}.m9-architecture{background:#0a0e10}.m9-architecture .decision-grid article:first-child{background:#dff2ed}.m9-architecture .decision-grid article:last-child{background:#e3edf1}.m9-scenarios{background:#f5f6f4}.m9-scenario-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.m9-scenario-grid figure{color:var(--white);background:#0a0e10;margin:0;overflow:hidden}.m9-scenario-grid img{aspect-ratio:16/9;object-fit:cover;width:100%;display:block}.m9-scenario-grid figcaption{justify-content:space-between;align-items:end;gap:20px;padding:16px 18px 18px;display:flex}.m9-scenario-grid figcaption span{font:600 8px/1 var(--font-geist-mono);letter-spacing:.06em;color:#ffffff8c}.m9-scenario-grid figcaption strong{font-size:17px;font-weight:540}.m9-audit,.m9-audit .context-grid article{background:#e9ecea}.m9-concept{background:linear-gradient(135deg,#091011,#0b1517 60%,#12302d);min-height:75vh}.m9-concept>p{flex-wrap:wrap;align-content:center;gap:.2em .42em;display:flex}.m9-concept>p span{color:var(--white)}.m9-concept>p span:after{content:"·";color:var(--m9-cyan);margin-left:.42em}.m9-concept>p span:last-child:after{display:none}.m9-upgrade{background:#f1f3f2}.m9-upgrade-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.m9-upgrade-grid figure{color:var(--white);background:#0b1012;flex-direction:column;margin:0;display:flex}.m9-upgrade-grid img{aspect-ratio:16/9;object-fit:cover;width:100%;display:block}.m9-upgrade-grid figcaption{flex-direction:column;min-height:260px;padding:20px;display:flex}.m9-upgrade-grid figcaption span{font:600 9px/1 var(--font-geist-mono);color:var(--m9-cyan)}.m9-upgrade-grid figcaption strong{margin:auto 0 20px;font-size:clamp(24px,2.4vw,36px);font-weight:540;line-height:1.18}.m9-upgrade-grid figcaption p{color:#ffffffa6;margin:0;font-size:13px;line-height:1.75}.m9-synthesis{color:var(--white);background:#0a0e10}.m9-synthesis .case-section-head{border-color:#fff9}.m9-final-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.m9-final-grid figure{background:#121719;margin:0}.m9-final-grid img{aspect-ratio:16/9;object-fit:cover;width:100%;display:block}.m9-final-grid figcaption{color:#ffffffb3;min-height:70px;padding:18px;font-size:12px;line-height:1.55}.m9-reflection{background:#f4f6f5}.m9-outcome{background:linear-gradient(135deg,#071011,#123a35)}.m9-outcome>span{color:var(--m9-cyan)}@media (max-width:980px){.m9-scenario-grid{grid-template-columns:1fr 1fr}.m9-upgrade-grid,.m9-final-grid{grid-template-columns:1fr}.m9-upgrade-grid figcaption{min-height:230px}}.webrobot-page{--wr-gold:#c6a46b;--wr-night:#090d12}.webrobot-hero{min-height:calc(100vh - 64px);color:var(--white);background:var(--wr-night);position:relative;overflow:hidden}.webrobot-hero>img{object-fit:cover;object-position:center;filter:saturate(.76)contrast(1.08);width:100%;height:100%;position:absolute;inset:0}.webrobot-page .case-hero-shade{background:linear-gradient(#04070a2e,#04070a14 38%,#04070ae6)}.webrobot-page .case-hero-title p{color:#e2c996}.webrobot-page .case-hero-title h1{font-size:clamp(58px,8.4vw,128px)}.webrobot-context,.webrobot-context .context-grid article{background:#ebe9e3}.webrobot-manifesto{background:var(--wr-night)}.webrobot-system{background:#f7f6f2}.webrobot-space-break,.webrobot-space-break aside{background:#d9d4ca}.webrobot-capabilities{background:#f4f3ef}.webrobot-runtime-showcase{min-height:100vh;color:var(--white);background:var(--wr-night);grid-template-columns:.72fr 1.28fr;display:grid}.webrobot-runtime-copy{flex-direction:column;justify-content:center;padding:clamp(38px,6vw,92px);display:flex}.webrobot-runtime-copy>span{color:#e2c996;font:600 9px/1 var(--font-geist-mono);letter-spacing:.08em}.webrobot-runtime-copy h2{letter-spacing:-.055em;margin:80px 0 28px;font-size:clamp(42px,5.2vw,76px);font-weight:530;line-height:1.08}.webrobot-runtime-copy p{color:#ffffffa8;margin:0;font-size:14px;line-height:1.85}.webrobot-runtime-showcase figure{background:radial-gradient(circle at 50% 46%,#c6a46b29,#0000 38%),#11171e;flex-direction:column;justify-content:center;margin:0;padding:4vw;display:flex;overflow:hidden}.webrobot-runtime-showcase figure img{border:1px solid #ffffff24;width:100%;display:block;box-shadow:0 32px 80px #0000006b}.webrobot-runtime-showcase figcaption{color:#ffffff7a;font:600 8px/1 var(--font-geist-mono);letter-spacing:.08em;margin-top:14px}.webrobot-architecture{background:#11171e}.webrobot-architecture .decision-grid article:first-child{background:#e7e2d7}.webrobot-architecture .decision-grid article:last-child{background:#dce3e3}.webrobot-process{background:#ebe9e3}.webrobot-reflection{background:#f9f8f4}.webrobot-outcome{color:#111;background:var(--wr-gold)}@keyframes marquee{to{transform:translate(-50%)}}@media (max-width:980px){:root{--rail:0px}.side-rail{border-right:0;border-bottom:1px solid var(--line);grid-template-columns:1fr auto auto;align-items:center;gap:6px;width:100%;height:62px;padding:0 20px;display:grid;position:sticky;top:0}.rail-brand img{width:30px;height:30px}.side-rail nav{border:0;margin:0;display:flex}.side-rail nav a{border:1px solid #0000;border-radius:999px;min-height:auto;padding:8px 10px}.side-rail nav a:hover,.side-rail nav a:focus-visible{border-color:var(--ink);color:var(--ink);background:0 0;padding:8px 10px}.side-rail nav small,.side-rail nav i,.rail-foot,.rail-toggle,.rail-reopen{display:none}.language-toggle{padding:7px 8px;position:static}.mobile-language-toggle{display:flex}.desktop-language-toggle{display:none}.page-content{margin-left:0}.rail-is-collapsed .side-rail{transform:none}.rail-is-collapsed .page-content{margin-left:0}.hero{min-height:calc(100vh - 62px)}.now-layout,.about-grid,.experience-grid,.contact-grid{grid-template-columns:1fr}.now-layout,.experience-grid{gap:62px}.now-principles{margin-top:54px}.project-grid{gap:82px 12px}.rail-is-collapsed .project-grid{grid-template-columns:1fr 1fr;gap:82px 12px}.rail-is-collapsed .project-card:nth-child(n){grid-column:auto;margin-top:0}.rail-is-collapsed .project-card:first-child{grid-column:1/-1}.rail-is-collapsed .project-featured .project-image img{aspect-ratio:16/8.6}.about-grid{gap:72px}.social-links{grid-template-columns:1fr 1fr}.social-links>span{grid-column:1/-1}.case-overview{grid-template-columns:1fr 2fr}.case-overview .case-facts{grid-column:2}.case-visual-break{grid-template-columns:1fr}.case-visual-break>div{min-height:58vh}.case-visual-break aside{min-height:440px}}@media (max-width:640px){.side-rail nav a{padding:7px;font-size:12px}.side-rail nav a:hover,.side-rail nav a:focus-visible{padding:7px}.side-rail nav a:first-child,.side-rail nav a:nth-child(3),.side-rail nav a:nth-child(4),.rail-brand small{display:none}.hero{min-height:82vh;padding-top:24px}.hero-meta span:last-child{display:none}.hero-copy>p{margin:0 0 50px;font-size:14px}.hero h1{font-size:19vw;line-height:.9}.language-en .hero h1{font-size:16vw}.hero h1 em{margin-left:0}.hero-bottom{align-items:center}.hero-stats{gap:14px}.hero-stats span:nth-child(2){display:none}.hero-bottom>a{gap:8px;padding:9px 11px}.section-intro{grid-template-columns:1fr;gap:28px;padding-bottom:54px}.section-intro h2{font-size:11.4vw}.now-section,.about-section,.experience-section{padding-bottom:82px}.lab-card{min-height:390px}.lab-card h2{font-size:16vw}.lab-bottom{display:grid}.project-grid,.rail-is-collapsed .project-grid{grid-template-columns:1fr;gap:78px}.rail-is-collapsed .project-card:first-child,.project-featured{grid-column:auto}.project-featured .project-image img,.rail-is-collapsed .project-featured .project-image img,.project-image img{aspect-ratio:4/3}.project-heading{grid-template-columns:1fr}.project-heading>span{text-align:left}.about-lead{font-size:9.2vw}.brand-manifesto{min-height:260px;margin-top:82px}.brand-manifesto h2{margin-top:80px;font-size:24vw}.brand-manifesto p{bottom:18px;right:18px}.timeline-row{grid-template-columns:78px 1fr;padding:10px 0}.timeline-row span:last-child{text-align:left;grid-column:2}.archive-block,.recognition-block{margin-top:88px}.archive-title{gap:20px;display:grid}.archive-grid,.recognition-layout{grid-template-columns:1fr}.contact-section{min-height:88vh}.contact-top span:last-child{display:none}.contact-section h2{font-size:16vw}.contact-section h2 em{margin-left:0}.contact-grid{gap:44px}.contact-details>a,.contact-details>div{grid-template-columns:54px 1fr auto}.social-links a{min-width:0}.site-footer{grid-template-columns:1fr auto}.site-footer span:nth-child(2){display:none}.case-nav{grid-template-columns:1fr auto}.case-brand{display:none}.case-hero{min-height:78vh}.case-hero-meta>div{display:none}.case-hero-title h1{font-size:14vw;line-height:.88}.case-overview,.case-challenge,.case-section-head{grid-template-columns:1fr}.case-overview,.case-challenge,.case-system,.case-context,.case-insights,.case-principles,.case-solutions,.case-decisions,.case-process,.case-final,.case-reflection{padding-top:72px;padding-bottom:72px}.case-overview .case-facts{grid-column:auto}.case-challenge{gap:48px}.case-challenge>p{font-size:9vw}.case-section-head{gap:34px}.system-grid,.principle-list,.context-grid,.case-four-grid,.decision-grid{grid-template-columns:1fr}.system-grid article,.principle-list article{min-height:250px}.context-grid article{min-height:240px}.insight-list article,.solution-list article,.case-reflection{grid-template-columns:1fr;gap:22px}.insight-list article{padding:26px 0}.solution-list article{grid-template-columns:42px 1fr}.solution-list article>p{grid-column:2}.decision-grid article{min-height:350px}.case-wide-media{margin-bottom:50px}.case-wide-media figcaption{grid-template-columns:1fr;gap:14px}.case-reflection h2{margin-bottom:38px}.case-reflection p{margin-left:0}.case-visual-break>div{min-height:46vh}.process-row{grid-template-columns:44px 1fr;padding:16px 0}.process-row p{grid-column:2}.case-outcome h2{margin-top:58px;font-size:11vw}.case-outcome p{margin-left:0}.case-footer{grid-template-columns:1fr auto;gap:16px}.case-footer .case-language{grid-area:2/1/auto/-1;justify-self:start}.ongroove-project-art{gap:8px;padding:26px 7% 0}.ongroove-project-art .ongroove-device{height:124%}.ongroove-hero{min-height:78vh}.ongroove-hero-art{gap:10px;padding:5vh 4% 0}.ongroove-hero-art .ongroove-device{height:70vh}.ongroove-page .case-hero-title h1{font-size:13vw}.webrobot-hero{min-height:78vh}.webrobot-page .case-hero-title h1{font-size:13vw}.webrobot-runtime-showcase{grid-template-columns:1fr;min-height:0}.webrobot-runtime-copy{min-height:620px;padding:72px var(--gutter)}.webrobot-runtime-copy h2{margin-top:60px}.webrobot-runtime-showcase figure{min-height:62vh;padding:24px var(--gutter)}.ongroove-product-showcase,.ongroove-feedback-section{grid-template-columns:1fr;min-height:0}.ongroove-screen-copy{min-height:560px;padding:72px var(--gutter)}.ongroove-screen-copy h2{margin-top:60px}.ongroove-single-screen,.ongroove-feedback-phone{min-height:76vh;padding-top:6vh}.ongroove-single-screen .ongroove-device,.ongroove-feedback-phone .ongroove-device{width:min(76%,460px);height:auto}.ongroove-feedback-phone{order:1}.m9-spec-grid,.m9-scenario-grid{grid-template-columns:1fr}.m9-spec-grid article{min-height:170px}.m9-concept>p{font-size:14vw}.m9-upgrade-grid figcaption{min-height:210px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.signal-strip>div{animation:none}.project-image img,.archive-grid img{transition:none}}:root{--ink:#1d1d1f;--paper:#f5f5f7;--white:#fff;--line:#1d1d1f1f;--muted:#6e6e73;--surface:#fff;--surface-soft:#f5f5f7;--radius-s:14px;--radius-m:22px;--radius-l:32px;--radius-xl:42px;--shadow-card:0 1px 2px #0000000a,0 18px 50px #0000000f;--shadow-float:0 10px 40px #0000001a;--gutter:clamp(24px,4.2vw,72px)}html{background:var(--paper)}body{background:var(--paper);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"kern" 1,"liga" 1,"calt" 1}p{color:inherit;line-height:1.75}h1,h2,h3{text-wrap:balance}.language-en{font-family:var(--sans-en)}.side-rail{width:calc(var(--rail) - 24px);border-radius:var(--radius-l);box-shadow:var(--shadow-card);-webkit-backdrop-filter:blur(28px)saturate(150%);backdrop-filter:blur(28px)saturate(150%);background:#ffffffd1;border:1px solid #1d1d1f14;padding:28px 24px 24px;top:12px;bottom:12px;left:12px}.rail-brand{gap:14px}.rail-brand img{width:40px;height:40px}.rail-brand strong{letter-spacing:-.025em;font-size:17px;font-weight:620}.rail-brand small{color:var(--muted);letter-spacing:.1em;margin-top:2px;font-size:8px}.rail-toggle,.language-toggle,.rail-reopen{background:#ffffffb8;border-color:#1d1d1f1a;box-shadow:0 1px 3px #0000000a}.side-rail nav{border:0;gap:5px;display:grid}.side-rail nav a{border-radius:var(--radius-s);border:0;min-height:52px;padding:0 13px}.side-rail nav a:hover,.side-rail nav a:focus-visible{background:#1d1d1f;padding:0 13px}.side-rail nav small{color:var(--muted)}.side-rail nav a:hover small{color:#ffffff94}.side-rail nav span{letter-spacing:-.015em;font-size:15px;font-weight:540}.rail-foot{color:var(--muted);gap:14px}.rail-foot>a{color:var(--ink);border-color:#1d1d1f3d;padding-bottom:6px}.rail-is-collapsed .side-rail{transform:translate(calc(-100% - 12px))}.hero,.now-section,.about-section,.experience-section,.work-section,.contact-section{border-radius:var(--radius-xl);margin:12px;overflow:hidden}.hero{min-height:calc(100vh - 24px);padding:38px var(--gutter) 32px;background:var(--surface);box-shadow:var(--shadow-card)}.hero-meta{color:var(--muted);letter-spacing:.1em;font-size:9px}.hero-copy>p{max-width:470px;color:var(--muted);letter-spacing:0;font-size:clamp(16px,1.25vw,19px);line-height:1.72}.hero h1{letter-spacing:-.062em;max-width:1500px;font-size:clamp(70px,9.3vw,144px);font-weight:610;line-height:.9}.hero h1 em{letter-spacing:-.06em;margin-left:6vw}.language-en .hero h1{line-height:.92}.hero-bottom{border-color:#1d1d1f2e;padding-top:22px}.hero-bottom>a{background:#f0f0f2;border:0;min-height:42px;padding:0 18px;font-size:9px}.hero-stats strong{font-weight:600}.signal-strip{background:#1d1d1f;border-radius:18px;margin:0 12px}.signal-strip>div{padding:15px 0}.section-intro{border-color:#1d1d1f2e;grid-template-columns:minmax(140px,.45fr) minmax(0,1.55fr);gap:48px;padding:24px 0 clamp(70px,8vw,112px)}.section-intro>div,.case-index{color:var(--muted)}.now-section,.about-section,.experience-section{padding:42px var(--gutter) clamp(110px,10vw,160px);background:var(--surface);box-shadow:var(--shadow-card)}.now-principles{border-color:#1d1d1f24}.now-principles>span{border-color:#1d1d1f1a;align-items:center;min-height:50px;padding:0 4px}.lab-card{border-radius:var(--radius-l);background:radial-gradient(circle at 82% 18%,#ffffffe6,#0000 30%),linear-gradient(145deg,#f0f2f5,#cfd7e7 70%,#b6c6ec);border:1px solid #ffffffb3;min-height:580px;padding:34px;box-shadow:0 28px 70px #37496e24}.lab-card h2{letter-spacing:-.07em;font-size:clamp(58px,7.4vw,108px);line-height:.84}.lab-bottom{border-color:#11182733;padding-top:22px}.work-section{padding:42px var(--gutter) clamp(110px,10vw,160px);box-shadow:var(--shadow-card);background:#111113}.project-card{border-radius:var(--radius-l);background:#242426;transform:translateZ(0);box-shadow:0 28px 70px #00000038}.project-image{border-radius:inherit}.project-image:after{background:linear-gradient(#0000,#000000d1);inset:34% 0 0}.project-image>span{background:#1414166b;border:0;width:38px;height:38px;top:22px;left:22px;box-shadow:inset 0 0 0 1px #ffffff2e}.project-heading p{color:#ffffff9e;letter-spacing:.035em;margin-bottom:10px;font-size:10px}.project-heading>span{color:#ffffffb3}.project-tags{gap:7px;top:22px;right:22px}.project-tags span{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#1414166b;border:0;padding:8px 11px;box-shadow:inset 0 0 0 1px #ffffff29}.ongroove-project-art{border-radius:inherit}.about-lead{letter-spacing:-.035em;max-width:980px;font-size:clamp(32px,3.6vw,54px);font-weight:560;line-height:1.32}.capability-list{border:0;gap:8px;display:grid}.capability-list article{border-radius:var(--radius-m);background:var(--surface-soft);border:0;min-height:92px;padding:18px}.capability-list h3{font-size:19px;font-weight:590}.brand-manifesto{border-radius:var(--radius-xl);background:linear-gradient(145deg,#315dea,#2447c7);min-height:520px;margin-top:140px;padding:36px;box-shadow:0 30px 80px #315dea33}.brand-manifesto h2{line-height:.78}.brand-manifesto p{bottom:36px;right:36px}.timeline{border-color:#1d1d1f24}.timeline-row{border-color:#1d1d1f1a;min-height:74px}.timeline-row span{color:var(--muted);font-size:12px}.timeline-row strong{font-size:16px;font-weight:590}.archive-title{border-color:#1d1d1f2e}.archive-grid{gap:16px}.archive-grid article{border-radius:var(--radius-m);background:var(--surface-soft);box-shadow:0 10px 32px #0000000d}.archive-grid article>div{border:0;align-items:center;min-height:70px;padding:16px 18px}.recognition-row{border-color:#1d1d1f1a;min-height:66px}.recognition-row strong{font-size:15px;font-weight:560}.recognition-layout aside{border-radius:var(--radius-l);box-shadow:var(--shadow-card);background:#1d1d1f;padding:28px}.contact-section{min-height:calc(100vh - 24px);padding:40px var(--gutter) 34px;box-shadow:var(--shadow-card);background:#111113}.contact-top,.contact-grid{border-color:#ffffff2e}.contact-section h2{letter-spacing:-.055em;font-size:clamp(60px,8.2vw,124px);font-weight:590;line-height:1.02}.contact-details>a,.contact-details>div{border-color:#ffffff24;min-height:64px}.social-links a{background:#ffffff0f;border-color:#ffffff38;align-items:center;min-height:44px;padding:5px 5px 5px 14px;display:flex}.site-footer{padding:20px var(--gutter);border-radius:var(--radius-m);background:#111113;margin:0 12px 12px}.case-page{background:var(--paper);padding-bottom:1px}.case-nav{-webkit-backdrop-filter:blur(28px)saturate(160%);backdrop-filter:blur(28px)saturate(160%);background:#ffffffc7;border:1px solid #1d1d1f14;border-radius:20px;width:calc(100% - 24px);height:60px;margin:12px;padding:0 clamp(20px,3vw,44px);top:12px;box-shadow:0 8px 30px #0000000f}.case-nav>a:first-child{color:#1d1d1f;letter-spacing:.04em;background:#f0f0f2;border-radius:999px;align-items:center;min-height:36px;padding:0 12px;display:flex}.case-project-title{color:#1d1d1f;letter-spacing:-.018em;text-align:center;text-overflow:ellipsis;white-space:nowrap;grid-column:2;max-width:min(48vw,680px);font-size:14px;font-weight:620;line-height:1.2;overflow:hidden}.case-hero,.ongroove-hero,.webrobot-hero{border-radius:var(--radius-xl);min-height:calc(100svh - 96px);box-shadow:var(--shadow-card);margin:12px}.case-hero-title{bottom:clamp(34px,5vw,72px)}.case-hero-title p{margin-bottom:18px;font-size:clamp(15px,1.3vw,19px);line-height:1.5}.case-hero-title h1{letter-spacing:-.058em;max-width:1400px;font-size:clamp(52px,7.8vw,118px);font-weight:610;line-height:.9}.case-hero-meta{color:#fffc;top:32px}.case-hero-meta>div span{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#1111134d;border:0;padding:8px 11px;box-shadow:inset 0 0 0 1px #ffffff29}.case-overview,.case-challenge,.case-system,.case-context,.case-insights,.case-principles,.case-solutions,.case-decisions,.case-process,.case-final,.case-reflection,.case-outcome,.ongroove-product-showcase,.ongroove-feedback-section,.webrobot-runtime-showcase,.case-visual-break{border-radius:var(--radius-xl);margin:12px;overflow:hidden}.case-overview{background:var(--surface);box-shadow:var(--shadow-card)}.case-overview-copy h2{letter-spacing:-.04em;margin-bottom:42px;font-size:clamp(40px,4.8vw,70px);font-weight:600;line-height:1.14}.case-overview-copy p{max-width:760px;color:var(--muted);font-size:17px;line-height:1.82}.case-facts{border-color:#1d1d1f24}.case-facts>div{border-color:#1d1d1f1a;padding:18px 0}.case-section-head{border-color:#1d1d1f2e;gap:clamp(40px,6vw,96px);padding-top:24px;padding-bottom:clamp(64px,7vw,100px)}.case-section-head h2{letter-spacing:-.038em;max-width:980px;font-size:clamp(38px,4.2vw,62px);font-weight:600;line-height:1.16}.case-challenge>p{font-family:var(--sans-cn);letter-spacing:-.035em;font-size:clamp(38px,4.6vw,68px);font-weight:570;line-height:1.28}.context-grid,.system-grid{background:0 0;border:0;gap:14px}.context-grid article,.system-grid article{border-radius:var(--radius-m);background:#ffffffc7;border:1px solid #1d1d1f0f;min-height:310px;padding:28px;box-shadow:0 12px 36px #0000000b}.context-grid strong,.system-grid h3{letter-spacing:-.03em;font-weight:600}.context-grid p,.insight-list p,.solution-list p,.decision-grid p,.case-reflection p,.system-grid p{color:var(--muted);font-size:14px;line-height:1.75}.case-wide-media{border-radius:var(--radius-l);box-shadow:var(--shadow-card);margin-bottom:clamp(64px,7vw,96px)}.case-wide-media figcaption{border-color:#1d1d1f14;gap:48px;padding:24px 28px 28px}.case-wide-media figcaption>p{color:var(--muted);font-size:14px;line-height:1.75}.case-wide-media.dark figcaption>p{color:#ffffffa3}.insight-list,.solution-list{border:0;gap:12px;display:grid}.insight-list article,.solution-list article{border-radius:var(--radius-m);background:#ffffffb8;border:1px solid #1d1d1f0f;box-shadow:0 10px 32px #0000000a}.insight-list article{padding:30px}.insight-list h3,.solution-list h3{letter-spacing:-.035em;font-weight:600}.solution-list article{border-bottom:0;padding:32px}.principle-list,.decision-grid{gap:16px}.principle-list article,.decision-grid article{border-radius:var(--radius-l);padding:30px;box-shadow:0 18px 48px #0000001a}.principle-list h3,.decision-grid h3{letter-spacing:-.038em;font-weight:600}.process-row{background:#ffffffb8;border:1px solid #1d1d1f0f;border-radius:18px;min-height:106px;margin-bottom:10px;padding:20px 24px}.process-row strong{font-size:19px;font-weight:600}.process-row p{color:var(--muted);font-size:14px;line-height:1.7}.case-visual-break{box-shadow:var(--shadow-card)}.case-visual-break aside{padding:clamp(36px,5vw,72px)}.case-visual-break h2{letter-spacing:-.04em;font-weight:600}.case-reflection{background:var(--surface);box-shadow:var(--shadow-card)}.case-reflection h2{letter-spacing:-.04em;font-size:clamp(40px,5vw,74px);font-weight:600;line-height:1.14}.case-outcome{min-height:78vh;padding:clamp(90px,9vw,150px) var(--gutter);box-shadow:var(--shadow-card)}.case-outcome h2{letter-spacing:-.048em;max-width:1250px;font-size:clamp(48px,6.6vw,98px);font-weight:610;line-height:1.07}.case-outcome p{font-size:15px;line-height:1.75}.case-footer{padding:20px var(--gutter);border-radius:var(--radius-m);margin:0 12px 12px}.ongroove-product-showcase,.ongroove-feedback-section,.webrobot-runtime-showcase{box-shadow:var(--shadow-card)}.ongroove-screen-copy h2,.webrobot-runtime-copy h2{letter-spacing:-.04em;font-weight:600;line-height:1.12}.m9-spec-grid{border:0;gap:14px}.m9-spec-grid article{border-radius:var(--radius-m);background:#ffffffb8;border:1px solid #1d1d1f0f;min-height:230px;padding:28px;box-shadow:0 10px 32px #0000000a}.m9-scenario-grid,.m9-upgrade-grid,.m9-final-grid{gap:16px}.m9-scenario-grid figure,.m9-upgrade-grid figure,.m9-final-grid figure{border-radius:var(--radius-m);box-shadow:0 18px 44px #0000001f}.m9-upgrade-grid figcaption{padding:28px}.m9-concept>p{font-family:var(--sans-cn);font-weight:590}@media (max-width:980px){.side-rail{border-width:0 0 1px;border-radius:0;width:100%;inset:0 0 auto;box-shadow:0 8px 26px #0000000d}.rail-is-collapsed .side-rail{transform:none}.rail-is-collapsed .page-content{margin-left:0}.hero,.now-section,.about-section,.experience-section,.work-section,.contact-section{border-radius:34px;margin:8px}.signal-strip{margin:0 8px}.project-grid{gap:18px}.case-nav{width:calc(100% - 16px);margin:8px;top:8px}.case-hero,.ongroove-hero,.webrobot-hero,.case-overview,.case-challenge,.case-system,.case-context,.case-insights,.case-principles,.case-solutions,.case-decisions,.case-process,.case-final,.case-reflection,.case-outcome,.ongroove-product-showcase,.ongroove-feedback-section,.webrobot-runtime-showcase,.case-visual-break{border-radius:34px;margin:8px}.case-footer{margin:0 8px 8px}}@media (max-width:640px){:root{--gutter:22px;--radius-l:24px;--radius-xl:28px}.hero,.now-section,.about-section,.experience-section,.work-section,.contact-section{border-radius:28px;margin:6px}.hero{min-height:calc(100svh - 68px);padding:30px var(--gutter) 24px}.hero h1{letter-spacing:-.055em;font-size:18vw;line-height:.92}.hero-copy>p{font-size:15px;line-height:1.7}.signal-strip{border-radius:14px;margin:0 6px}.section-intro{gap:26px;padding-bottom:64px}.section-intro h2{letter-spacing:-.035em;font-size:10.5vw;line-height:1.16}.now-section,.about-section,.experience-section,.work-section{padding-top:34px;padding-bottom:90px}.lab-card{border-radius:24px;min-height:430px;padding:24px}.project-grid{gap:18px}.project-card{border-radius:24px}.project-heading{padding:24px}.project-heading h3{font-size:28px;line-height:1.14}.project-heading>span{color:#ffffff9e}.project-tags{top:16px;right:16px}.project-image>span{top:16px;left:16px}.about-lead{font-size:8.4vw;line-height:1.36}.brand-manifesto{border-radius:28px;min-height:330px;margin-top:90px;padding:24px}.brand-manifesto p{bottom:24px;right:24px}.archive-grid{gap:12px}.contact-section{min-height:calc(100svh - 12px)}.site-footer{margin:0 6px 6px}.case-nav{border-radius:18px;width:calc(100% - 12px);height:56px;margin:6px;top:6px}.case-project-title{max-width:48vw;font-size:12px}.case-hero,.ongroove-hero,.webrobot-hero,.case-overview,.case-challenge,.case-system,.case-context,.case-insights,.case-principles,.case-solutions,.case-decisions,.case-process,.case-final,.case-reflection,.case-outcome,.ongroove-product-showcase,.ongroove-feedback-section,.webrobot-runtime-showcase,.case-visual-break{border-radius:28px;margin:6px}.case-hero,.ongroove-hero,.webrobot-hero{min-height:74svh}.case-hero-title h1,.ongroove-page .case-hero-title h1,.webrobot-page .case-hero-title h1{letter-spacing:-.045em;font-size:12.5vw;line-height:.94}.case-overview,.case-challenge,.case-system,.case-context,.case-insights,.case-principles,.case-solutions,.case-decisions,.case-process,.case-final,.case-reflection{padding-top:80px;padding-bottom:80px}.case-overview-copy h2,.case-section-head h2{letter-spacing:-.03em;font-size:9.6vw;line-height:1.2}.case-overview-copy p{font-size:16px;line-height:1.8}.case-challenge>p{font-size:8.8vw;line-height:1.34}.context-grid,.principle-list,.decision-grid{gap:12px}.context-grid article,.system-grid article{min-height:230px;padding:24px}.principle-list article,.decision-grid article{border-radius:24px;min-height:310px;padding:26px}.case-wide-media{border-radius:24px}.case-wide-media figcaption{padding:20px}.insight-list article,.solution-list article{border-radius:20px;padding:24px}.process-row{padding:20px}.case-outcome{min-height:68vh}.case-outcome h2{font-size:10.5vw;line-height:1.12}.case-footer{border-radius:20px;margin:0 6px 6px}.m9-scenario-grid figure,.m9-upgrade-grid figure,.m9-final-grid figure{border-radius:20px}}@media (max-width:980px){.mobile-nav-shell{z-index:90;-webkit-backdrop-filter:blur(24px)saturate(160%);backdrop-filter:blur(24px)saturate(160%);background:#fffffff0;border:1px solid #1d1d1f14;border-radius:20px;width:calc(100% - 16px);height:64px;margin:8px;display:block;position:sticky;top:8px;overflow:hidden;box-shadow:0 8px 28px #0000000f}.mobile-menu-is-open .mobile-nav-shell{border-radius:28px;width:auto;height:auto;margin:0;position:fixed;inset:8px;box-shadow:0 24px 80px #00000029}.mobile-topbar{z-index:2;background:0 0;justify-content:space-between;align-items:center;width:100%;height:64px;padding:0 12px;display:flex;position:relative}.mobile-brand{border-radius:0;align-items:center;gap:9px;width:auto;height:42px;display:flex}.mobile-brand img{object-fit:contain;flex:none;width:30px;height:30px}.mobile-brand span{letter-spacing:-.025em;font-size:16px;font-weight:620;line-height:1}.mobile-menu-toggle{width:42px;height:42px;color:var(--ink);box-shadow:none;cursor:pointer;background:0 0;border:0;border-radius:0;place-content:center;padding:0;transition:color .2s,opacity .2s,transform .2s;display:grid;position:relative}.mobile-menu-toggle:hover,.mobile-menu-toggle.is-open{color:var(--ink);background:0 0}.mobile-menu-toggle:focus-visible{color:var(--ink);outline-offset:2px;background:0 0;outline:2px solid #315dea38}.mobile-menu-toggle:active{transform:scale(.94)}.mobile-menu-toggle{gap:4px}.mobile-menu-toggle i{transform-origin:50%;background:currentColor;border-radius:2px;width:17px;height:1.5px;transition:opacity .2s,transform .28s;display:block}.mobile-menu-toggle.is-open i:first-child{transform:translateY(5.5px)rotate(45deg)}.mobile-menu-toggle.is-open i:nth-child(2){opacity:0}.mobile-menu-toggle.is-open i:last-child{transform:translateY(-5.5px)rotate(-45deg)}.side-rail,.rail-is-collapsed .side-rail{z-index:1;width:100%;height:auto;padding:20px 12px max(24px,env(safe-area-inset-bottom));opacity:0;visibility:hidden;pointer-events:none;box-shadow:none;background:0 0;border:0;border-radius:0;flex-direction:column;transition:opacity .24s,transform .42s cubic-bezier(.2,.8,.2,1),visibility .42s;display:flex;position:absolute;inset:64px 0 0;transform:translateY(-12px)}.mobile-menu-is-open .side-rail,.mobile-menu-is-open.rail-is-collapsed .side-rail{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.side-rail .rail-brand,.side-rail .rail-toggle,.rail-reopen,.mobile-language-toggle{display:none}.side-rail nav{border:0;gap:2px;width:100%;margin:auto 0;display:grid}.side-rail nav a,.side-rail nav a:nth-child(n){border:0;border-radius:16px;grid-template-columns:1fr auto;align-items:center;min-height:64px;padding:0;display:grid}.side-rail nav a:hover,.side-rail nav a:focus-visible{color:var(--white);background:var(--ink);padding:0 14px}.side-rail nav small{display:none}.side-rail nav i{display:block}.side-rail nav a i{opacity:.38;transition:opacity .25s,transform .25s}.side-rail nav a:hover i,.side-rail nav a:focus-visible i{opacity:.72;transform:translate(2px,2px)}.side-rail nav span{letter-spacing:-.04em;font-size:clamp(28px,4vw,34px);font-weight:620;line-height:1.04}.side-rail nav i{font-size:13px}.side-rail .rail-foot{text-align:left;justify-items:start;gap:14px;width:100%;display:grid}.side-rail .desktop-language-toggle{display:flex}.page-content,.rail-is-collapsed .page-content{margin-left:0}.case-nav{display:none}.hero{min-height:calc(100svh - 80px)}}@media (max-width:640px){.mobile-nav-shell{border-radius:18px;width:calc(100% - 12px);height:60px;margin:6px;top:6px}.mobile-menu-is-open .mobile-nav-shell{border-radius:24px;inset:6px}.mobile-topbar{height:60px}.mobile-brand{width:auto;height:40px}.mobile-menu-toggle{width:40px;height:40px}.mobile-brand img{width:28px;height:28px}.mobile-brand span{font-size:15px}.side-rail,.rail-is-collapsed .side-rail{padding-top:16px;padding-left:12px;padding-right:12px;inset:60px 0 0}.side-rail nav a,.side-rail nav a:nth-child(n){min-height:60px}.side-rail nav span{font-size:clamp(28px,7.4vw,32px)}}.work-section{color:var(--ink);background:var(--surface);padding-bottom:clamp(140px,12vw,210px)}.work-section .section-intro{padding-bottom:clamp(96px,10vw,150px)}.project-grid{gap:clamp(36px,4vw,64px)}.project-card{isolation:isolate;background:#e9e9e7;border:0;border-radius:38px;padding:0;transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s;box-shadow:0 22px 64px #0000001a}.project-card .project-image{border-radius:inherit;background:#171719}.project-card .project-heading{bottom:0;left:0;right:0}.project-card .project-tags{top:22px;right:22px}.project-card:focus-visible{outline-offset:5px;outline:2px solid #315dea57}@media (hover:hover){a.project-card:hover{z-index:2;transform:translateY(-6px);box-shadow:0 34px 90px #00000029}}@media (min-width:981px){.rail-is-collapsed .project-grid{gap:clamp(36px,4vw,64px)}}@media (max-width:980px){.project-grid,.rail-is-collapsed .project-grid{gap:30px}.project-card{border-radius:32px}.project-card .project-image{border-radius:inherit}.project-card .project-heading{bottom:0;left:0;right:0}}@media (max-width:640px){.work-section{padding-bottom:110px}.work-section .section-intro{padding-bottom:74px}.project-grid,.rail-is-collapsed .project-grid{gap:26px}.project-card{border-radius:28px}.project-card .project-image{border-radius:inherit}.project-card .project-heading{padding:22px;bottom:0;left:0;right:0}.project-card .project-tags{top:16px;right:16px}}:root{--frame-gap:12px;--gutter:clamp(28px,4.4vw,76px);--section-y:clamp(112px,9vw,156px);--section-head-space:clamp(68px,7vw,108px);--text-primary:#1d1d1f;--text-secondary:#6e6e73;--text-tertiary:#86868b;--text-inverse:#f5f5f7;--text-inverse-secondary:#f5f5f7ad;--type-label:10px;--type-body:16px;--type-body-large:18px}body{color:var(--text-primary);font-size:var(--type-body);line-height:1.7}p{line-height:1.72}.portfolio,.case-page{color:var(--text-primary)}.hero,.now-section,.about-section,.experience-section,.work-section,.contact-section,.case-hero,.ongroove-hero,.webrobot-hero,.case-overview,.case-challenge,.case-system,.case-context,.case-insights,.case-principles,.case-solutions,.case-decisions,.case-process,.case-final,.case-reflection,.case-outcome,.ongroove-product-showcase,.ongroove-feedback-section,.webrobot-runtime-showcase,.case-visual-break{margin:var(--frame-gap)}.signal-strip{margin:0 var(--frame-gap)}.site-footer,.case-footer{margin:0 var(--frame-gap) var(--frame-gap)}.case-nav{top:var(--frame-gap);width:calc(100% - (var(--frame-gap) * 2));margin:var(--frame-gap)}.hero{padding:40px var(--gutter) 34px;isolation:isolate;position:relative}.hero>:not(.hero-particle-field):not(.hero-touch-ring){z-index:2;position:relative}.hero-particle-field{z-index:0;pointer-events:none;width:100%;height:100%;display:block;position:absolute;inset:0}.hero-touch-ring{z-index:4;border:4px solid var(--orange);opacity:0;pointer-events:none;will-change:transform,opacity;border-radius:50%;width:22px;height:22px;transition:opacity .12s;position:absolute;top:0;left:0}.brand-cursor-ring{z-index:9999;border:5px solid var(--orange);opacity:0;pointer-events:none;will-change:transform,opacity;border-radius:50%;width:18px;height:18px;transition:opacity .1s;display:none;position:fixed;top:0;left:0}.hero-touch-ring{border-width:3px;width:30px;height:30px}.lab-card{isolation:isolate;position:relative;overflow:hidden}.lab-card>*{z-index:2;position:relative}.lab-card:before,.lab-card:after{content:"";z-index:0;pointer-events:none;will-change:transform,opacity;position:absolute}.lab-card:before{filter:blur(18px);opacity:.78;background:radial-gradient(at 22% 72%,#315dea66 0%,#4969f233 24%,#0000 58%),radial-gradient(at 78% 24%,#6080ff57 0%,#758fff29 26%,#0000 57%),radial-gradient(at 58% 88%,#5570ee3d 0%,#0000 52%);animation:13s ease-in-out infinite alternate lab-diffuse-drift;inset:-28%}.lab-card:after{filter:blur(24px);opacity:.72;background:radial-gradient(#315dea52 0%,#6481fa2e 34%,#97aaff14 52%,#0000 72%);border-radius:50%;width:138%;height:64%;animation:8.5s cubic-bezier(.45,0,.25,1) infinite lab-diffuse-wave;bottom:-16%;right:-20%}@keyframes lab-diffuse-drift{0%{opacity:.64;transform:translate(-4%,4%)scale(1)}50%{opacity:.86;transform:translate(5%,-3%)scale(1.08)}to{opacity:.72;transform:translate(-1%,-6%)scale(1.03)}}@keyframes lab-diffuse-wave{0%,to{opacity:.54;transform:translate(-8%,12%)rotate(-7deg)scaleX(.92)}50%{opacity:.82;transform:translate(8%,-10%)rotate(5deg)scaleX(1.08)}}.now-section,.about-section,.experience-section,.work-section{padding:48px var(--gutter) var(--section-y)}.contact-section{padding:42px var(--gutter) 36px}.section-intro{padding:28px 0 var(--section-head-space);gap:clamp(34px,4vw,60px)}.case-overview,.case-challenge,.case-system,.case-context,.case-insights,.case-principles,.case-solutions,.case-decisions,.case-process,.case-final,.case-reflection{padding-top:var(--section-y);padding-bottom:var(--section-y)}.case-section-head{padding-top:28px;padding-bottom:var(--section-head-space)}.hero-meta,.hero-stats span,.signal-strip span,.signal-strip b,.section-intro span,.section-intro small,.lab-top,.lab-bottom,.archive-title span,.archive-grid span,.recognition-row span,.contact-top,.contact-details small,.social-links>span,.site-footer,.case-index span,.case-index small,.case-hero-meta,.case-facts dt,.context-grid article>span,.insight-list article>span,.solution-list article>span,.solution-list small,.decision-grid article>span,.case-reflection>span,.case-wide-media figcaption>span,.process-row>span,.case-outcome>span,.case-footer,.m9-spec-grid span,.m9-scenario-grid figcaption span,.m9-upgrade-grid figcaption span{font-size:var(--type-label);letter-spacing:.075em;line-height:1.25}.hero-meta,.section-intro>div,.case-index,.archive-grid span,.recognition-row span{color:var(--text-tertiary)}.hero-copy>p{max-width:520px;color:var(--text-secondary);font-size:clamp(17px,1.25vw,19px);line-height:1.75}.hero h1{letter-spacing:-.06em;font-size:clamp(72px,9.2vw,142px);line-height:.91}.section-intro h2{letter-spacing:-.043em;max-width:1020px;font-size:clamp(46px,5vw,78px);font-weight:600;line-height:1.1}.now-statement>p,.experience-grid>p{color:var(--text-secondary);font-size:16px;line-height:1.78}.now-principles>span{min-height:56px;font-size:14px;line-height:1.45}.lab-bottom p{color:#111827b8;font-size:14px;line-height:1.68}.project-grid,.rail-is-collapsed .project-grid{gap:clamp(24px,2.2vw,36px)}.project-heading p{color:var(--text-inverse-secondary);font-size:10px;line-height:1.35}.project-heading h3{letter-spacing:-.038em;font-size:clamp(30px,3.15vw,48px);font-weight:600;line-height:1.1}.project-heading>span,.project-tags span{font-size:10px;line-height:1.2}.project-heading h3{max-width:min(850px,80%)}.about-lead{letter-spacing:-.034em;font-size:clamp(34px,3.7vw,56px);font-weight:560;line-height:1.3}.capability-list article{min-height:104px;padding:22px}.capability-list h3{font-size:20px;line-height:1.3}.capability-list p{color:var(--text-secondary);font-size:14px;line-height:1.62}.timeline-row{min-height:80px}.timeline-row span{color:var(--text-secondary);font-size:13px;line-height:1.5}.timeline-row strong{font-size:17px;line-height:1.35}.archive-title h2{font-size:clamp(40px,4.2vw,62px);line-height:1.04}.archive-grid article>div{flex-direction:column;justify-content:center;align-items:flex-start;gap:8px;min-height:92px;padding:20px;display:flex}.archive-grid strong{font-size:15px;line-height:1.45}.archive-grid span{line-height:1.2}.recognition-row{min-height:70px}.recognition-row strong{font-size:15px;line-height:1.5}.recognition-layout aside p{font-size:18px;line-height:1.45}.recognition-layout aside span{color:var(--text-inverse-secondary);font-size:13px;line-height:1.72}.contact-section h2{letter-spacing:-.052em;font-size:clamp(62px,8.1vw,122px);line-height:1}.contact-grid>p{color:var(--text-inverse-secondary);font-size:15px;line-height:1.75}.contact-details>a,.contact-details>div{min-height:68px}.contact-details small{color:var(--text-inverse-secondary)}.contact-details strong{font-size:clamp(18px,1.75vw,25px);line-height:1.15}.social-links a{font-size:11px}.case-project-title{font-size:15px;line-height:1.25}.case-hero-title p{color:var(--text-inverse-secondary);font-size:clamp(16px,1.25vw,19px);line-height:1.5}.case-hero-title h1{letter-spacing:-.055em;font-size:clamp(54px,7.7vw,116px);line-height:.92}.case-hero-meta{color:#f5f5f7c7}.case-overview-copy h2{letter-spacing:-.038em;margin-bottom:44px;font-size:clamp(42px,4.8vw,72px);line-height:1.12}.case-overview-copy p{color:var(--text-secondary);font-size:17px;line-height:1.8}.case-facts>div{padding:20px 0}.case-facts dd{color:var(--text-secondary);font-size:14px;line-height:1.6}.case-section-head h2{letter-spacing:-.036em;max-width:1020px;font-size:clamp(40px,4.2vw,64px);line-height:1.14}.case-challenge>p{letter-spacing:-.032em;line-height:1.25}.context-grid article,.system-grid article{padding:32px}.context-grid strong,.system-grid h3{line-height:1.12}.context-grid p,.insight-list p,.solution-list p,.decision-grid p,.case-reflection p,.system-grid p,.case-wide-media figcaption>p,.process-row p,.m9-upgrade-grid figcaption p{color:var(--text-secondary);font-size:15px;line-height:1.72}.case-wide-media.dark figcaption>p,.principle-list p,.ongroove-screen-copy p,.webrobot-runtime-copy p,.m9-upgrade-grid figcaption p{color:var(--text-inverse-secondary)}.case-wide-media figcaption{padding:28px 30px 30px}.insight-list article,.solution-list article{padding:32px}.insight-list h3,.solution-list h3{line-height:1.15}.principle-list article,.decision-grid article{padding:32px}.principle-list p{font-size:14px;line-height:1.7}.process-row{min-height:110px;padding:22px 26px}.process-row strong{font-size:19px;line-height:1.35}.case-reflection h2{line-height:1.12}.case-outcome p{color:var(--text-inverse-secondary);font-size:16px;line-height:1.75}.ongroove-outcome p{color:#111216ad}.ongroove-screen-copy p,.webrobot-runtime-copy p{font-size:16px;line-height:1.75}.m9-spec-grid p,.m9-final-grid figcaption{font-size:14px;line-height:1.65}.m9-scenario-grid figcaption strong{font-size:18px;line-height:1.35}.m9-upgrade-grid figcaption strong{line-height:1.2}@media (max-width:980px){:root{--frame-gap:8px;--gutter:clamp(24px,5vw,42px);--section-y:clamp(94px,12vw,124px);--section-head-space:clamp(62px,8vw,84px)}.section-intro{gap:32px}.project-grid,.rail-is-collapsed .project-grid{gap:24px}.case-section-head{gap:36px}}@media (max-width:640px){:root{--frame-gap:6px;--gutter:20px;--section-y:84px;--section-head-space:58px;--type-label:9px;--type-body:15px}body{line-height:1.68}.hero{padding:26px var(--gutter) 24px}.now-section,.about-section,.experience-section,.work-section{padding-top:32px;padding-bottom:var(--section-y)}.contact-section{padding:30px var(--gutter) 26px}.section-intro{padding-top:22px;padding-bottom:var(--section-head-space);grid-template-columns:1fr;gap:22px}.section-intro h2{letter-spacing:-.028em;max-width:11em;font-size:clamp(34px,9.2vw,40px);line-height:1.18}.hero-copy>p{font-size:15px;line-height:1.72}.hero h1{letter-spacing:-.045em;font-size:clamp(52px,15.5vw,64px);line-height:.98}.hero h1 em{margin-left:0}.now-statement>p,.experience-grid>p{font-size:15px;line-height:1.72}.now-principles>span{min-height:52px;font-size:13px}.project-grid,.rail-is-collapsed .project-grid{gap:24px}.project-heading h3{max-width:100%;font-size:28px;line-height:1.14}.about-lead{letter-spacing:-.022em;font-size:clamp(25px,7vw,29px);font-weight:540;line-height:1.42}.capability-list article{min-height:96px;padding:20px}.capability-list h3{font-size:18px}.capability-list p{font-size:13px;line-height:1.62}.timeline-row{min-height:72px}.timeline-row span{font-size:12px}.timeline-row strong{font-size:15px}.archive-grid article>div{min-height:70px;padding:16px}.archive-grid strong{font-size:14px}.portfolio:not(.language-en) .brand-manifesto h2{letter-spacing:-.065em;white-space:nowrap;margin-top:54px;font-size:clamp(58px,17vw,68px);line-height:.9}.contact-section h2{letter-spacing:-.04em;font-size:clamp(44px,12.2vw,52px);line-height:1.08}.contact-grid>p{font-size:14px;line-height:1.72}.contact-details>a,.contact-details>div{min-height:62px}.contact-details strong{font-size:17px}.case-project-title{font-size:12px}.case-hero-title h1,.ongroove-page .case-hero-title h1,.webrobot-page .case-hero-title h1{letter-spacing:-.042em;font-size:12.2vw;line-height:.96}.case-overview,.case-challenge,.case-system,.case-context,.case-insights,.case-principles,.case-solutions,.case-decisions,.case-process,.case-final,.case-reflection{padding-top:var(--section-y);padding-bottom:var(--section-y)}.case-overview-copy h2,.case-section-head h2{letter-spacing:-.028em;font-size:9.4vw;line-height:1.18}.case-overview-copy p{font-size:16px;line-height:1.78}.case-facts dd,.context-grid p,.insight-list p,.solution-list p,.decision-grid p,.case-reflection p,.system-grid p,.case-wide-media figcaption>p,.process-row p{font-size:14px;line-height:1.7}.context-grid article,.system-grid article,.insight-list article,.solution-list article,.principle-list article,.decision-grid article{padding:24px}.case-wide-media figcaption{padding:20px}.process-row{min-height:0;padding:20px}.case-outcome p,.ongroove-screen-copy p,.webrobot-runtime-copy p{font-size:15px;line-height:1.72}}@media (hover:hover) and (pointer:fine){html,body,a,button,input,textarea,select,[role=button]{cursor:none!important}.brand-cursor-ring{display:block}}@media (prefers-reduced-motion:reduce){.lab-card:before,.lab-card:after{animation:none}}.project-grid,.rail-is-collapsed .project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(30px,3.4vw,52px) clamp(20px,2vw,32px);width:100%;max-width:1380px;margin-left:auto;margin-right:auto;display:grid}.project-card,.rail-is-collapsed .project-card:nth-child(n){grid-column:auto}.project-card.project-featured,.rail-is-collapsed .project-card.project-featured{grid-column:1/-1}.project-card .project-image{aspect-ratio:4/3;width:100%}.project-card.project-featured .project-image{aspect-ratio:16/9}.project-card .project-image>img{aspect-ratio:auto;object-fit:cover;width:100%;height:100%}.project-card .ongroove-project-art{aspect-ratio:auto;width:100%;height:100%}.project-card:not(.project-featured) .project-heading h3{max-width:88%;font-size:clamp(24px,2.15vw,34px)}@media (max-width:640px){.project-grid,.rail-is-collapsed .project-grid{grid-template-columns:1fr;row-gap:24px}.project-card.project-featured,.rail-is-collapsed .project-card.project-featured{grid-column:auto}.project-card .project-image,.project-card.project-featured .project-image,.rail-is-collapsed .project-card .project-image,.rail-is-collapsed .project-card.project-featured .project-image{aspect-ratio:4/3}.project-card:not(.project-featured) .project-heading h3{max-width:100%;font-size:27px}}:root{--frame-gap:16px;--gutter:48px;--section-y:96px;--section-head-space:80px;--nested-inset:32px;--media-inset:24px;--layout-gap:80px;--grid-gap-x:24px;--grid-gap-y:48px;--radius-frame:40px;--radius-panel:32px;--radius-card-lg:32px;--radius-card-md:24px;--radius-card-sm:16px;--radius-s:var(--radius-card-sm);--radius-m:var(--radius-card-md);--radius-l:var(--radius-card-lg);--radius-xl:var(--radius-frame);--control-s:32px;--control-m:40px;--control-l:48px;--control-s-radius:16px;--control-m-radius:20px;--control-l-radius:24px;--device-radius:32px;--device-bezel:8px;--device-inner-radius:24px}@media (min-width:981px) and (max-width:1279px){:root{--frame-gap:12px;--gutter:40px;--section-y:80px;--section-head-space:72px;--nested-inset:24px;--media-inset:20px;--layout-gap:64px;--grid-gap-x:20px;--grid-gap-y:40px;--radius-frame:32px;--radius-panel:24px;--radius-card-lg:24px;--radius-card-md:20px;--radius-card-sm:12px}}@media (max-width:980px){:root{--frame-gap:8px;--gutter:32px;--section-y:64px;--section-head-space:56px;--nested-inset:24px;--media-inset:16px;--layout-gap:48px;--grid-gap-x:16px;--grid-gap-y:32px;--radius-frame:28px;--radius-panel:24px;--radius-card-lg:24px;--radius-card-md:16px;--radius-card-sm:12px;--device-radius:28px;--device-bezel:4px;--device-inner-radius:24px}}@media (max-width:640px){:root{--gutter:24px;--section-y:48px;--section-head-space:48px;--nested-inset:16px;--layout-gap:32px;--grid-gap-y:24px;--radius-frame:24px;--radius-panel:20px;--radius-card-lg:20px;--radius-card-md:16px;--radius-card-sm:12px;--device-radius:24px;--device-inner-radius:20px}}.hero,.now-section,.about-section,.experience-section,.work-section,.contact-section,.case-hero,.ongroove-hero,.webrobot-hero,.case-overview,.case-challenge,.case-system,.case-context,.case-insights,.case-principles,.case-solutions,.case-decisions,.case-process,.case-final,.case-reflection,.case-outcome,.ongroove-product-showcase,.ongroove-feedback-section,.webrobot-runtime-showcase,.case-visual-break{margin:var(--frame-gap);border-radius:var(--radius-frame)}.hero,.now-section,.about-section,.experience-section,.work-section,.contact-section{padding:var(--gutter)}.hero,.contact-section{min-height:calc(100vh - var(--frame-gap) - var(--frame-gap))}.signal-strip{margin:0 var(--frame-gap);border-radius:var(--radius-card-sm)}.site-footer,.case-footer{margin:0 var(--frame-gap) var(--frame-gap);padding:20px var(--gutter);border-radius:var(--radius-card-md)}@media (min-width:981px){.side-rail{top:var(--frame-gap);bottom:var(--frame-gap);left:var(--frame-gap);width:calc(var(--rail) - var(--frame-gap));padding:var(--media-inset);border-radius:var(--radius-panel)}.rail-toggle{top:var(--media-inset);right:var(--media-inset)}}.section-intro{gap:var(--layout-gap);padding:var(--nested-inset) 0 var(--section-head-space)}.now-layout,.about-grid,.experience-grid{gap:var(--layout-gap)}.case-overview,.case-challenge,.case-system,.case-context,.case-insights,.case-principles,.case-solutions,.case-decisions,.case-process,.case-final,.case-reflection{padding:var(--section-y) max(var(--gutter),calc(50% - 720px + var(--gutter)))}.case-outcome{padding:var(--section-y) var(--gutter)}.case-section-head{gap:var(--layout-gap);padding:var(--nested-inset) 0 var(--section-head-space)}.project-grid,.rail-is-collapsed .project-grid{column-gap:var(--grid-gap-x);row-gap:var(--grid-gap-y)}.archive-grid,.principle-list,.decision-grid,.m9-scenario-grid,.m9-upgrade-grid,.m9-final-grid,.context-grid,.system-grid,.m9-spec-grid{gap:var(--grid-gap-x)}.insight-list,.solution-list{gap:16px}.capability-list{gap:8px}.lab-card,.brand-manifesto,.recognition-layout aside,.context-grid article,.system-grid article,.insight-list article,.solution-list article,.principle-list article,.decision-grid article,.m9-spec-grid article{padding:var(--nested-inset)}.brand-manifesto p{right:var(--nested-inset);bottom:var(--nested-inset)}.archive-grid article>div{padding:var(--media-inset)}.case-wide-media figcaption,.m9-upgrade-grid figcaption{padding:var(--nested-inset)}.process-row{padding:var(--media-inset) var(--nested-inset)}.project-heading{padding:var(--media-inset)}.project-tags{top:var(--media-inset);right:var(--media-inset);gap:8px}.project-image>span{top:var(--media-inset);left:var(--media-inset);width:40px;height:40px}.project-card,.lab-card,.brand-manifesto,.recognition-layout aside,.principle-list article,.decision-grid article{border-radius:var(--radius-card-lg)}.project-image,.ongroove-project-art{border-radius:inherit}.capability-list article,.archive-grid article,.context-grid article,.system-grid article,.insight-list article,.solution-list article,.m9-spec-grid article,.case-wide-media,.m9-scenario-grid figure,.m9-upgrade-grid figure,.m9-final-grid figure,.process-row{border-radius:var(--radius-card-md)}.side-rail nav{gap:4px;width:auto;margin:auto -8px}.side-rail nav a{border-radius:var(--radius-card-sm);text-align:left;grid-template-columns:minmax(0,1fr) 20px;justify-items:stretch;column-gap:16px;width:100%;min-height:56px;padding:0 8px}.side-rail nav a:hover,.side-rail nav a:focus-visible{padding:0 8px}.side-rail nav span{letter-spacing:-.016em;text-align:left;justify-self:start;font-size:16px;font-weight:560;line-height:1.25}.side-rail nav .nav-arrow{justify-self:end;margin-left:auto}.rail-toggle,.language-toggle,.rail-reopen,.case-language,.case-nav>a:first-child{min-height:var(--control-m);border-radius:var(--control-m-radius);padding:0 16px}.hero-bottom>a{min-height:var(--control-l);border-radius:var(--control-l-radius);padding:0 20px}.project-tags span,.case-hero-meta>div span{min-height:var(--control-s);border-radius:var(--control-s-radius);align-items:center;padding:0 12px;display:flex}.social-links a{min-height:var(--control-l);border-radius:var(--control-l-radius);padding:4px 4px 4px 16px}.contact-link-icon{width:40px;height:40px;padding:9px}.case-nav{top:var(--frame-gap);width:calc(100% - var(--frame-gap) - var(--frame-gap));height:64px;margin:var(--frame-gap);padding:0 var(--nested-inset);border-radius:var(--radius-panel)}.ongroove-device{padding:var(--device-bezel);border-radius:var(--device-radius)}.ongroove-device img{border-radius:var(--device-inner-radius)}@media (max-width:980px){.mobile-nav-shell{--menu-control-column:42px;top:var(--frame-gap);width:calc(100% - var(--frame-gap) - var(--frame-gap));height:64px;margin:var(--frame-gap);border-radius:var(--radius-panel)}.mobile-menu-is-open .mobile-nav-shell{inset:var(--frame-gap);border-radius:var(--radius-frame)}.mobile-topbar{height:64px;padding:0 var(--gutter)}.side-rail,.rail-is-collapsed .side-rail{padding:16px var(--gutter) max(24px,env(safe-area-inset-bottom));inset:64px 0 0}.side-rail nav{align-self:stretch;gap:4px;width:100%;margin:auto 0}.side-rail nav a,.side-rail nav a:nth-child(n){grid-template-columns:minmax(0,1fr) var(--menu-control-column);border-radius:var(--radius-card-sm);min-height:64px;padding:0}.side-rail nav a:hover,.side-rail nav a:focus-visible{padding:0}.side-rail nav span{letter-spacing:-.035em;text-align:left;justify-self:start;font-size:30px;font-weight:620;line-height:1.12}.side-rail nav .nav-arrow{justify-self:center;margin:0}.side-rail .rail-foot{gap:12px}}@media (max-width:640px){.mobile-nav-shell{--menu-control-column:40px}.hero,.contact-section{min-height:calc(100svh - 80px)}.project-image>span{width:32px;height:32px}.side-rail nav span{font-size:28px}}.timeline-row{grid-template-columns:minmax(0,1.1fr) minmax(180px,.9fr) auto;grid-template-areas:"company role period";column-gap:32px;min-height:88px;padding:20px 0}.timeline-row strong{letter-spacing:-.018em;grid-area:company;font-size:18px;font-weight:640;line-height:1.35}.timeline-row .timeline-role{color:var(--text-secondary);text-align:left;grid-area:role;font-family:inherit;font-size:14px;line-height:1.5}.timeline-row time{color:var(--text-tertiary);font:500 11px/1.35 var(--font-geist-mono);letter-spacing:.02em;text-align:right;white-space:nowrap;grid-area:period;align-self:center}.recognition-row{grid-template-columns:minmax(0,1fr) auto;align-items:start;column-gap:24px;min-height:80px;padding:20px 0}.recognition-row strong{letter-spacing:-.012em;font-size:17px;font-weight:620;line-height:1.45}.recognition-row time{color:var(--text-tertiary);font:500 11px/1.35 var(--font-geist-mono);letter-spacing:.02em;text-align:right;white-space:nowrap;padding-top:4px}@media (max-width:640px){.timeline-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"company period""role role";gap:8px 16px;min-height:96px;padding:20px 0}.timeline-row strong{font-size:18px}.timeline-row .timeline-role{font-size:14px}.timeline-row time{align-self:start;padding-top:3px;font-size:10px}.recognition-row{column-gap:16px;min-height:88px;padding:20px 0}.recognition-row strong{font-size:17px;line-height:1.4}.recognition-row time{font-size:10px}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
