:root{--bg:#f2f1ea;--surface:#fff;--fg:#151514;--muted:#6c6b65;--border:#c8c6bd;--accent:#b8ff2c;--display:"Helvetica Neue","Neue Haas Grotesk Text","Arial Nova",Arial,"Noto Sans SC",sans-serif;--body:"Helvetica Neue",-apple-system,BlinkMacSystemFont,"Noto Sans SC",Arial,sans-serif;--mono:"SFMono-Regular",Consolas,monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--fg);font:14px var(--body);-webkit-font-smoothing:antialiased;margin:0}button,a{font:inherit;color:inherit}a{text-decoration:none}button{cursor:pointer}.shell{width:min(100% - 64px,1500px);margin:auto}.nav{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;height:74px;display:flex}.logo{font:600 22px var(--display);letter-spacing:-.045em}.nav nav{align-items:center;gap:28px;display:flex}.nav nav a,.nav nav button{font:10px var(--mono);letter-spacing:.08em;background:0 0;border:0}.nav nav a:hover,.nav nav button:hover{opacity:.45}.identity{border-bottom:1px solid var(--border);grid-template-columns:1.05fr .95fr;align-items:center;gap:6vw;min-height:calc(100svh - 74px);padding:70px 0;display:grid}.eyebrow{font:10px var(--mono);letter-spacing:.1em;color:var(--muted)}.identity h1{font:400 clamp(80px,10vw,155px)/.72 var(--display);letter-spacing:-.08em;margin:65px 0 55px}.identity h1 span{font:400 .54em var(--display);letter-spacing:-.05em}.contact-line{font:10px var(--mono);align-items:center;gap:24px;margin-top:45px;display:flex}.contact-line button{background:0 0;border:0;padding:0}.contact-line span{margin-left:auto}.contact-line span i{background:var(--accent);border:1px solid var(--fg);border-radius:50%;width:7px;height:7px;margin-right:8px;display:inline-block}.ph{background:color-mix(in oklch,var(--fg) 7%,var(--bg));border:1px solid var(--border);color:var(--muted);font:10px/1.6 var(--mono);letter-spacing:.1em;text-align:center;place-items:center;display:grid}.portrait{height:min(72vh,800px);position:relative}.portrait:after{content:"";border:1px dashed var(--muted);position:absolute;inset:8%}.works{padding:120px 0}.section-head{border-bottom:1px solid var(--fg);grid-template-columns:80px 1fr auto;align-items:end;padding-bottom:30px;display:grid}.section-head>span{font:10px var(--mono)}.section-head h2,.about-entry h2,.project-modal h2,.about-page h2{font-family:var(--display);font-weight:400}.section-head h2{letter-spacing:-.05em;margin:0;font-size:clamp(44px,5vw,76px)}.section-head p{color:var(--muted);font-size:11px}.work-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:58px 18px;padding-top:48px;display:grid}.work-card{text-align:left;background:0 0;border:0;min-width:0;padding:0}.work-ph{aspect-ratio:4/5;background:var(--fg);width:100%;color:var(--bg);font:9px var(--mono);place-items:center;transition:transform .35s;display:grid}.tone-1{background:color-mix(in oklch,var(--fg) 78%,var(--accent))}.tone-2{background:color-mix(in oklch,var(--fg) 74%,var(--bg))}.tone-3{background:color-mix(in oklch,var(--fg) 88%,var(--bg))}.work-card:hover .work-ph{transform:scale(.985)}.work-meta{grid-template-columns:45px 1fr auto;padding-top:18px;display:grid}.work-meta h3{font:400 28px var(--display);margin:7px 0}.about-entry{border-top:1px solid var(--border);padding:130px 0}.about-entry>p{font:10px var(--mono)}.about-entry button{background:var(--fg);color:var(--bg);border:0;padding:15px 20px}.footer{border-top:1px solid var(--border);height:110px;font:9px var(--mono);color:var(--muted);grid-template-columns:1fr 1fr 1fr;align-items:center;display:grid}.footer a:nth-child(2){text-align:center}.footer a:last-child{text-align:right}.intro-screen{background:var(--fg);color:var(--bg);z-index:100;place-items:center;animation:.55s 2.05s forwards intro-out;display:grid;position:fixed;inset:0}.intro-screen>button{color:var(--bg);font:9px var(--mono);background:0 0;border:0;position:absolute;top:30px;right:32px}.intro-grid{border:1px dashed color-mix(in oklch,var(--bg) 55%,transparent);grid-template-columns:.6fr 1.4fr;align-items:center;width:min(70vw,920px);height:min(48vh,480px);padding:8%;animation:1.5s cubic-bezier(.2,.8,.2,1) organize;display:grid;position:relative}.intro-grid i{background:var(--bg);width:9px;height:9px;position:absolute}.intro-grid i:first-child{top:-5px;left:-5px}.intro-grid i:nth-child(2){top:-5px;right:-5px}.intro-grid i:nth-child(3){bottom:-5px;left:-5px}.intro-grid i:nth-child(4){bottom:-5px;right:-5px}.intro-grid span{font:500 clamp(70px,10vw,150px)/1 var(--display)}.intro-grid strong{font:500 clamp(50px,7vw,110px)/.83 var(--body);letter-spacing:-.07em}.intro-grid em{font:10px var(--mono);color:var(--accent);font-style:normal;position:absolute;bottom:8%;right:8%}@keyframes organize{0%{opacity:0;filter:blur(12px);transform:scale(1.25)rotate(4deg)}to{opacity:1;filter:none;transform:none}}@keyframes intro-out{to{opacity:0;visibility:hidden}}.project-modal{z-index:50;background:var(--bg);grid-template-columns:1.55fr .85fr;display:grid;position:fixed;inset:0}.close{z-index:2;background:var(--fg);color:var(--bg);font:9px var(--mono);border:0;padding:10px 14px;position:fixed;top:22px;right:25px}.project-gallery{padding:22px;overflow-y:auto}.project-image{background:var(--fg);height:82vh;color:var(--bg);font:10px var(--mono);place-items:center;margin-bottom:22px;display:grid}.project-image.alt{background:color-mix(in oklch,var(--fg) 72%,var(--accent))}.project-modal aside{border-left:1px solid var(--border);padding:12vh 5vw 6vh;overflow-y:auto}.project-modal aside>span{font:9px var(--mono);color:var(--muted)}.project-modal h2{letter-spacing:-.06em;margin:35px 0;font-size:clamp(48px,5vw,80px);line-height:.95}.project-modal aside>p{color:var(--muted);font-size:16px;line-height:1.8}.project-modal dl div{border-top:1px solid var(--border);grid-template-columns:1fr 2fr;padding:16px 0;display:grid}.project-modal dt{font:9px var(--mono);color:var(--muted)}.project-modal dd{margin:0;font-size:11px}.project-modal aside>button{background:var(--fg);width:100%;color:var(--bg);text-align:left;border:0;padding:17px}.about-page{z-index:60;background:var(--fg);color:var(--bg);position:fixed;inset:0;overflow-y:auto}.about-page>header{border-bottom:1px solid color-mix(in oklch,var(--bg) 22%,transparent);height:74px;font:9px var(--mono);justify-content:space-between;align-items:center;padding:0 32px;display:flex}.about-page>header button{color:inherit;background:0 0;border:0}.about-content{grid-template-columns:1fr 1fr;gap:9vw;width:min(100% - 64px,1500px);margin:auto;padding:12vh 0;display:grid}.about-page h2{letter-spacing:-.06em;margin:45px 0;font-size:clamp(62px,7vw,110px);line-height:.95}.about-lead{color:color-mix(in oklch,var(--bg) 62%,transparent);max-width:520px;font-size:17px;line-height:1.8}.resume section{border-top:1px solid color-mix(in oklch,var(--bg) 25%,transparent);padding:28px 0}.resume section>span{font:9px var(--mono);color:var(--accent)}.resume article{grid-template-columns:140px 1fr;margin-top:30px;display:grid}.resume time{font:10px var(--mono);color:color-mix(in oklch,var(--bg) 55%,transparent)}.resume h3{margin:0 0 7px;font-size:20px}.resume p{color:color-mix(in oklch,var(--bg) 55%,transparent)}@media (width<=1100px) and (width>=851px){.work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=850px){.shell{width:calc(100% - 36px)}.nav nav{gap:15px}.identity{grid-template-columns:1fr;padding:50px 0}.identity h1{margin:45px 0;font-size:22vw}.portrait{height:58vh}.contact-line{flex-wrap:wrap}.contact-line span{width:100%;margin-left:0}.work-grid{grid-template-columns:1fr}.section-head{grid-template-columns:45px 1fr}.section-head p{display:none}.work-ph{height:72vw}.about-entry{padding:90px 0}.project-modal{grid-template-columns:1fr;overflow-y:auto}.project-gallery{overflow:visible}.project-image{height:62vh}.project-modal aside{border-left:0;padding:60px 24px 80px;overflow:visible}.about-content{grid-template-columns:1fr;width:calc(100% - 36px);padding:80px 0}.intro-grid{grid-template-columns:1fr;width:84vw;height:42vh}.intro-grid span{font-size:20vw}.intro-grid strong{font-size:13vw}.footer{grid-template-columns:1fr 1fr}.footer a:nth-child(2){display:none}}@media (prefers-reduced-motion:reduce){.intro-screen,.intro-grid{animation:none}}.project-modal{background:var(--surface);grid-template-columns:minmax(0,1fr) 390px;gap:18px;padding:18px;overflow:hidden}.project-story{background:var(--bg);border:1px solid var(--border);scrollbar-width:thin;overflow-y:auto}.project-story>section,.project-story>.project-image{width:calc(100% - 8vw);margin-left:auto;margin-right:auto}.case-cover{flex-direction:column;justify-content:flex-end;min-height:76vh;padding:12vh 0 8vh;display:flex}.case-cover small,.case-analysis>span,.side-preview>span{font:9px var(--mono);color:var(--muted);letter-spacing:.08em}.case-cover h1{font:400 clamp(62px,8vw,130px)/.88 var(--display);letter-spacing:-.075em;margin:35px 0}.case-cover p{max-width:620px;color:var(--muted);font-size:17px;line-height:1.8}.project-story>.project-image{height:76vh;margin-bottom:0}.project-story>.project-image.alt{background:color-mix(in oklch,var(--fg) 72%,var(--accent))}.project-story>.project-image.light{background:color-mix(in oklch,var(--fg) 12%,var(--bg));color:var(--fg)}.case-analysis{padding:110px 0 130px}.case-analysis h2{letter-spacing:-.055em;max-width:850px;margin:30px 0;font-size:clamp(42px,5vw,76px);line-height:1.05}.case-analysis p{max-width:700px;color:var(--muted);font-size:16px;line-height:1.9}.project-modal aside{border:1px solid var(--border);background:var(--bg);padding:94px 28px 28px;overflow-y:auto}.side-preview{margin-bottom:54px}.side-preview>div{border:1px solid var(--border);grid-template-columns:1fr 1fr;gap:12px;height:170px;margin-top:15px;padding:16px;display:grid}.side-preview i{background:color-mix(in oklch,var(--fg) 12%,var(--bg))}.project-modal aside>p{font-size:14px}.project-modal dl{margin:48px 0 22px}.case-nav{border-top:1px solid var(--border);justify-content:space-between;padding-top:18px;display:flex}.case-nav button{font:9px var(--mono);background:0 0;border:0;padding:0}.project-modal aside>button{width:auto;color:inherit;background:0 0;padding:0}.close{top:26px;right:28px}@media (width<=850px){.project-modal{padding:0;display:block;overflow-y:auto}.project-story{border:0;overflow:visible}.project-story>section,.project-story>.project-image{width:calc(100% - 36px)}.case-cover{min-height:70vh}.case-cover h1{font-size:16vw}.project-story>.project-image{height:58vh}.case-analysis{padding:75px 0 90px}.project-modal aside{border:0;border-top:1px solid var(--border);padding:70px 18px}.side-preview{display:none}.close{top:14px;right:14px}}.intro-screen{background:var(--bg);color:var(--fg);animation:.65s cubic-bezier(.7,0,.2,1) 3.15s forwards figma-exit}.intro-screen>button{color:var(--fg);z-index:5}.figma-selection{border:1px solid var(--fg);opacity:0;place-items:center;width:min(82vw,1300px);height:clamp(150px,27vw,390px);animation:.55s cubic-bezier(.2,.8,.2,1) .75s forwards selection-in,.5s 2.75s forwards selection-click;display:grid;position:relative}.figma-selection strong{font:600 clamp(65px,13.2vw,220px)/.8 var(--body);letter-spacing:-.085em;opacity:0;animation:.75s cubic-bezier(.2,.8,.2,1) .15s forwards portfolio-in;transform:scale(.92)}.figma-selection small{font:9px var(--mono);letter-spacing:.12em;color:var(--muted);opacity:0;animation:.4s 1.1s forwards label-in;position:absolute;bottom:-34px;left:0}.handle{background:var(--bg);border:1px solid var(--fg);opacity:0;width:10px;height:10px;animation:.2s 1.22s forwards handles-in;position:absolute}.h1{top:-6px;left:-6px}.h2{top:-6px;left:50%}.h3{top:-6px;right:-6px}.h4{top:50%;right:-6px}.h5{bottom:-6px;right:-6px}.h6{bottom:-6px;left:50%}.h7{bottom:-6px;left:-6px}.h8{top:50%;left:-6px}.figma-cursor{filter:drop-shadow(0 2px 2px color-mix(in oklch,var(--fg) 22%,transparent));align-items:center;gap:7px;animation:1.05s cubic-bezier(.2,.75,.25,1) 1.55s forwards cursor-move,.18s 2.62s forwards cursor-tap;display:flex;position:absolute;top:78vh;left:76vw}.figma-cursor svg{width:29px;height:36px;overflow:visible}.figma-cursor path:first-child{fill:var(--fg);stroke:var(--bg);stroke-width:2px}.figma-cursor path:last-child{fill:none;stroke:var(--fg);stroke-width:4px}.figma-cursor span{background:var(--fg);color:var(--bg);font:9px var(--mono);padding:4px 7px}.click-ring{border:1px solid var(--fg);opacity:0;border-radius:50%;width:14px;height:14px;animation:.45s ease-out 2.64s forwards ring;position:absolute;top:calc(50% - min(13.5vw,195px));left:calc(50% - min(41vw,650px))}@keyframes portfolio-in{to{opacity:1;transform:none}}@keyframes selection-in{0%{opacity:0;transform:scaleX(.15)}to{opacity:1;transform:none}}@keyframes handles-in{to{opacity:1}}@keyframes label-in{to{opacity:1}}@keyframes cursor-move{to{top:calc(50% - min(13.5vw,195px) - 5px);left:calc(50% - min(41vw,650px) - 10px)}}@keyframes cursor-tap{50%{transform:scale(.82)}to{transform:none}}@keyframes ring{0%{opacity:1;transform:scale(.2)}to{opacity:0;transform:scale(4)}}@keyframes selection-click{50%{background:color-mix(in oklch,var(--accent) 14%,transparent)}to{transform:scale(.97)}}@keyframes figma-exit{to{opacity:0;visibility:hidden;transform:scale(1.08)}}@media (width<=850px){.figma-selection{width:86vw;height:28vw}.figma-selection strong{font-size:13vw}.figma-cursor{left:78vw}.click-ring{top:calc(50% - 14vw);left:7vw}@keyframes cursor-move{to{top:calc(50% - 14vw - 5px);left:5vw}}}@media (prefers-reduced-motion:reduce){.figma-selection,.figma-selection strong,.figma-selection small,.handle,.figma-cursor,.click-ring,.intro-screen{animation-duration:.01ms!important;animation-delay:0s!important}}.project-story,.project-modal aside,.project-modal{scrollbar-width:none;-ms-overflow-style:none}.project-story::-webkit-scrollbar{width:0;height:0;display:none}.project-modal aside::-webkit-scrollbar{width:0;height:0;display:none}.project-modal::-webkit-scrollbar{width:0;height:0;display:none}.file-intro{isolation:isolate;color:#191817;perspective:1200px;background:#eee9df;animation:.5s cubic-bezier(.7,0,.2,1) 3.9s forwards file-intro-exit;overflow:hidden}.file-intro>button{color:#191817;letter-spacing:.12em;z-index:20;padding:8px 0;top:26px;right:30px}.intro-status{font:9px var(--mono);letter-spacing:.12em;color:#57534d;justify-content:space-between;margin:0;display:flex;position:absolute;top:28px;left:30px;right:100px}.loose-files{z-index:2;position:absolute;inset:0}.loose-file{--x:-32vw;--y:-26vh;--r:-5deg;width:112px;height:138px;transform:translate(calc(-50% + var(--x)),calc(-50% + var(--y))) rotate(var(--r));transform-origin:50%;animation:file-archive .72s var(--delay,.85s) cubic-bezier(.65,0,.25,1) forwards;background:#fbfaf6;border:1px solid #19181747;padding:9px;position:absolute;top:50%;left:50%;box-shadow:0 16px 38px #362f261f}.loose-file:after{content:"";clip-path:polygon(0 0,100% 100%,0 100%);background:#eee9df;border-bottom:1px solid #19181740;border-left:1px solid #19181740;width:24px;height:24px;position:absolute;top:-1px;right:-1px}.loose-file i{color:#fbfaf6;height:82px;font:500 22px var(--body);letter-spacing:-.03em;background:#1c1b1a;place-items:center;font-style:normal;display:grid}.loose-file span{text-overflow:ellipsis;font:8px var(--mono);white-space:nowrap;margin-top:13px;display:block;overflow:hidden}.wide-file{width:156px;height:112px}.wide-file i{background:#6f9db4;height:58px}.image-file i{color:#191817;background:#b8ff2c}.dark-file i{background:#292d35}.file-a{--x:-38vw;--y:-25vh;--r:-6deg;--delay:.72s}.file-b{--x:30vw;--y:-29vh;--r:4deg;--delay:.82s}.file-c{--x:39vw;--y:8vh;--r:7deg;--delay:.92s}.file-d{--x:-38vw;--y:23vh;--r:5deg;--delay:1.02s}.file-e{--x:-18vw;--y:31vh;--r:-4deg;--delay:1.12s}.file-f{--x:17vw;--y:28vh;--r:3deg;--delay:1.22s}.file-g{--x:36vw;--y:30vh;--r:-5deg;--delay:1.32s}.portfolio-folder{z-index:4;aspect-ratio:1.32;width:min(34vw,490px);transform-style:preserve-3d;animation:.6s cubic-bezier(.16,1,.3,1) .18s both folder-arrive,.7s cubic-bezier(.7,0,.25,1) 3.18s forwards folder-enter;position:absolute;top:50%;left:50%;transform:translate(-50%,-45%)scale(.9)}.folder-back,.folder-front{background:#6fa8c6;border-radius:8px 8px 18px 18px;position:absolute;inset:0}.folder-back:before{content:"";background:#6fa8c6;border-radius:12px 12px 0 0;width:42%;height:20%;position:absolute;top:-12%;left:0}.folder-back{box-shadow:0 34px 80px #2e41492e}.folder-back span,.folder-back small{z-index:2;color:#17313e;position:absolute;left:25px}.folder-back span{font:600 clamp(18px,2.1vw,32px) var(--body);letter-spacing:-.03em;top:26px}.folder-back small{font:9px var(--mono);letter-spacing:.1em;top:66px}.folder-paper{z-index:1;background:#fbfaf6;border-radius:6px;height:80%;padding:28px;animation:.55s cubic-bezier(.16,1,.3,1) 2.58s forwards paper-rise;position:absolute;top:8%;left:7%;right:7%;transform:translateY(38%)}.folder-paper b,.folder-paper em{display:block}.folder-paper b{font:600 clamp(26px,3vw,48px) var(--body);letter-spacing:-.035em}.folder-paper em{font:9px var(--mono);letter-spacing:.12em;color:#67625c;margin-top:9px;font-style:normal}.folder-front{z-index:3;transform-origin:50% 100%;backface-visibility:hidden;background:#7bb8d7;animation:.58s cubic-bezier(.16,1,.3,1) 2.62s forwards folder-open;top:24%}.folder-cursor{z-index:8;animation:.75s cubic-bezier(.16,1,.3,1) 1.75s forwards folder-cursor-move,.28s linear 2.42s folder-cursor-click;position:absolute;top:76%;left:76%}.folder-cursor svg{filter:drop-shadow(0 2px 2px #0000002e);width:31px}.folder-cursor path{fill:#fbfaf6;stroke:#191817;stroke-width:2.3px;stroke-linejoin:round}.folder-click{z-index:7;opacity:0;border:1px solid #191817;border-radius:50%;width:16px;height:16px;animation:.46s ease-out 2.43s folder-click-ring;position:absolute;top:50%;left:50%}@keyframes file-archive{0%{opacity:1}72%{opacity:1}to{opacity:0;transform:translate(-50%,-40%)rotate(0)scale(.08)}}@keyframes folder-arrive{0%{opacity:0;filter:blur(10px);transform:translate(-50%,-42%)scale(.76)}to{opacity:1;filter:blur();transform:translate(-50%,-45%)scale(.9)}}@keyframes folder-cursor-move{to{top:calc(50% - 4px);left:calc(50% - 5px)}}@keyframes folder-cursor-click{0%,45%,to{transform:scale(1)}20%,70%{transform:scale(.78)}}@keyframes folder-click-ring{0%,48%{opacity:0;transform:scale(.25)}49%{opacity:.7}to{opacity:0;transform:scale(4)}}@keyframes folder-open{to{filter:brightness(.93);transform:rotateX(-112deg)}}@keyframes paper-rise{to{transform:translateY(-8%)}}@keyframes folder-enter{0%{transform:translate(-50%,-45%)scale(.9)}45%{transform:translate(-50%,-45%)scale(1.02)}to{opacity:0;transform:translate(-50%,-45%)scale(6.8)}}@keyframes file-intro-exit{to{opacity:0;visibility:hidden}}@media (width<=700px){.intro-status span:last-child{display:none}.portfolio-folder{width:68vw}.loose-file{width:82px;height:104px}.loose-file i{height:58px;font-size:16px}.loose-file span{margin-top:9px;font-size:7px}.wide-file{width:108px;height:84px}.wide-file i{height:42px}.file-a{--x:-34vw;--y:-29vh}.file-b{--x:25vw;--y:-31vh}.file-c{--x:34vw;--y:-8vh}.file-d{--x:-35vw;--y:26vh}.file-e{--x:-19vw;--y:34vh}.file-f{--x:22vw;--y:30vh}.file-g{display:none}.folder-cursor{top:74%;left:82%}@keyframes folder-cursor-move{to{top:55%;left:61%}}}@media (prefers-reduced-motion:reduce){.loose-file{opacity:0;animation:none}.portfolio-folder{animation:none;transform:translate(-50%,-45%)scale(.9)}.folder-front{animation:.01ms 1s forwards folder-open}.folder-paper{animation:.01ms 1s forwards paper-rise}.folder-cursor,.folder-click{display:none}.file-intro{animation:.25s 1.35s forwards file-intro-exit}}.hero-widget{-webkit-backdrop-filter:blur(22px)saturate(1.08);backdrop-filter:blur(22px)saturate(1.08);border-radius:13px}@keyframes portrait-3d-arrive{0%{opacity:0;filter:blur(10px)saturate(.7);transform:translate3d(-7%,5%,-260px)rotateY(-112deg)scale(.96)}42%{opacity:1;filter:blur()saturate(.78);transform:translate3d(0,1%,-20px)rotateY(17deg)scale(1.13)}70%{opacity:1;transform:translateZ(8px)rotateY(-5deg)scale(1.16)}to{opacity:1;transform:translate(0,0)rotateY(0)scale(1.15)}}@keyframes portrait-edge{0%,12%{opacity:0}36%{opacity:.85}62%{opacity:.18}to{opacity:0}}@media (width<=850px){.hero-person{width:min(92vw,520px);height:81%;bottom:-1%}.hero-intro-card{z-index:2;width:166px;padding:12px;top:25%;left:10px}.hero-skills-card{z-index:5;width:138px;top:39%;right:9px}.hero-contact-card{z-index:5;width:210px;bottom:13%;left:12px}}@media (prefers-reduced-motion:reduce){.person-standing{opacity:1;transform:none;display:block!important}.is-ready .person-standing,.is-ready .person-edge{animation:none}}@media (width<=850px){.hero-identity .hero-person{width:min(104vw,610px);height:77%;bottom:3%}}@media (prefers-reduced-motion:reduce){.hero-identity .hero-person .person-standing{display:none!important}.hero-identity .hero-person .person-seated{opacity:1!important;display:block!important;transform:none!important}.hero-identity.is-ready .hero-person .person-standing,.hero-identity.is-ready .hero-person .person-seated,.hero-identity.is-ready .hero-widget{animation:none!important}.hero-identity .hero-widget{opacity:1!important;filter:none!important;transform:none!important}}.hero-identity .hero-person{z-index:3;width:min(53vw,780px);height:98%;bottom:-4%}.hero-identity .hero-person .person-seated{opacity:0;display:block;transform:translate3d(0,28px,-110px)scale(.9)}.hero-identity .person-edge,.hero-identity .person-standing{display:none!important}.hero-decor{z-index:1;pointer-events:none;width:min(72vw,980px);height:36%;position:absolute;bottom:-2%;left:50%;transform:translate(-50%)}.hero-decor img{object-fit:contain;object-position:center bottom;opacity:0;mix-blend-mode:multiply;filter:saturate(.78)contrast(.96);width:100%;height:100%}.hero-identity.is-ready .hero-decor img{animation:.7s cubic-bezier(.16,1,.3,1) .72s both decor-settle}.hero-designer{z-index:4;opacity:0;color:#292a28;font:400 clamp(19px,2vw,29px)/1 var(--hand);letter-spacing:.01em;margin:0;position:absolute;bottom:1.2%;left:50%;transform:translate(-50%)}.hero-identity .hero-widget{transform-origin:50%}@keyframes seated-focus-in{0%{opacity:0;filter:blur(11px)saturate(.7);transform:translate3d(0,28px,-110px)scale(.9)}68%{opacity:1;filter:blur()saturate(.78);transform:translate3d(0,-2px,8px)scale(1.008)}to{opacity:1;filter:blur()saturate(.78);transform:translate(0,0)scale(1)}}@keyframes decor-settle{0%{opacity:0;filter:blur(8px)saturate(.72);transform:translateY(18px)scale(.94)}to{opacity:.9;filter:blur()saturate(.78)contrast(.96);transform:none}}@keyframes designer-sign{0%{opacity:0;transform:translate(-50%,9px)rotate(-2deg)}to{opacity:.8;transform:translate(-50%)rotate(-2deg)}}@keyframes widget-burst-left{0%{opacity:0;filter:blur(9px);transform:translate3d(150px,70px,-80px)scale(.78)}to{opacity:1;filter:none;transform:none}}@keyframes widget-burst-right{0%{opacity:0;filter:blur(9px);transform:translate3d(-130px,54px,-40px)scale(.78)}to{opacity:1;filter:none;transform:none}}@keyframes widget-burst-lower-left{0%{opacity:0;filter:blur(9px);transform:translate3d(120px,-78px,55px)scale(.78)}to{opacity:1;filter:none;transform:none}}@keyframes widget-burst-lower-right{0%{opacity:0;filter:blur(9px);transform:translate3d(-110px,-70px,-55px)scale(.78)}to{opacity:1;filter:none;transform:none}}@media (width<=850px){.hero-identity .hero-person{width:min(104vw,610px);height:77%;bottom:4%}.hero-decor{width:112vw;height:25%;bottom:1%}.hero-designer{font-size:20px;bottom:5.5%}}@media (prefers-reduced-motion:reduce){.hero-identity .hero-person .person-seated,.hero-decor img,.hero-designer{opacity:1!important;animation:none!important;transform:none!important}}.hero-identity .hero-person{width:min(49vw,720px)}.portrait-selection{z-index:6;opacity:0;pointer-events:none;border:1px solid #1777ef;position:absolute;inset:8% 8% 4% 17%}.portrait-selection i{background:#f5f7f7;border:1px solid #1777ef;width:8px;height:8px;position:absolute}.portrait-selection i:first-child{top:-5px;left:-5px}.portrait-selection i:nth-child(2){top:-5px;left:50%;transform:translate(-50%)}.portrait-selection i:nth-child(3){top:-5px;right:-5px}.portrait-selection i:nth-child(4){top:50%;right:-5px;transform:translateY(-50%)}.portrait-selection i:nth-child(5){bottom:-5px;right:-5px}.portrait-selection i:nth-child(6){bottom:-5px;left:50%;transform:translate(-50%)}.portrait-selection i:nth-child(7){bottom:-5px;left:-5px}.portrait-selection i:nth-child(8){top:50%;left:-5px;transform:translateY(-50%)}.portrait-selection b{color:#fff;font:500 9px/1 var(--body);letter-spacing:.04em;background:#1777ef;padding:4px 7px;position:absolute;top:-25px;left:-1px}.hero-identity.is-ready .portrait-selection{animation:.48s cubic-bezier(.16,1,.3,1) 1.02s both selection-draw}.hero-decor{z-index:2;width:min(24vw,330px);height:27%;bottom:0;left:calc(50% + 214px)}.hero-decor img{mix-blend-mode:multiply}.hero-designer{font-size:clamp(17px,1.55vw,23px);bottom:1.6%;left:calc(50% - 8px)}@keyframes selection-draw{0%{opacity:0;clip-path:inset(48%)}to{opacity:.84;clip-path:inset(0)}}@media (width<=850px){.hero-identity .hero-person{width:min(96vw,560px)}.portrait-selection{inset:7% 5% 5% 12%}.hero-decor{width:40vw;height:19%;bottom:2%;left:calc(50% + 28vw)}.hero-designer{bottom:5.2%;left:43%}}@media (prefers-reduced-motion:reduce){.portrait-selection{opacity:.84;animation:none!important}}.hero-identity:before{content:"";z-index:0;clip-path:polygon(5% 18%,95% 18%,100% 100%,0 100%);pointer-events:none;background:#f8f8f5;height:39%;position:absolute;bottom:-8%;left:-4%;right:-4%;box-shadow:inset 0 28px 55px #383a3b14}.hero-identity:after{content:"";z-index:0;pointer-events:none;background:#27292a1a;height:1px;position:absolute;bottom:21%;left:19%;right:19%;box-shadow:0 18px 35px #27292a1f}.hero-designer{z-index:2;color:#f7f7f4;font:500 clamp(18px,2vw,28px)/1 var(--body);letter-spacing:.14em;text-transform:uppercase;top:10%;bottom:auto;left:50%;transform:translate(-50%)}.hero-identity.is-ready .hero-designer{animation:.55s cubic-bezier(.16,1,.3,1) .62s both designer-top-in}.phone-action{color:#071b0c;background:#55c96f;border-radius:50%;place-items:center;width:27px;height:27px;display:grid}@keyframes designer-top-in{0%{opacity:0;filter:blur(5px);transform:translate(-50%,10px)}to{opacity:.9;filter:none;transform:translate(-50%)}}@media (width<=850px){.hero-designer{font-size:15px;top:8%}.hero-identity:before{height:32%}}.hero-identity{background:radial-gradient(43% 48% at 50% 44%,#ffffff6b 0%,#ffffff21 54%,#0000 76%),linear-gradient(#d4d5d3 0%,#d9dad8 49%,#e9eae7 76%,#f6f6f3 100%)}.hero-identity:before{clip-path:none;height:38%;box-shadow:none;background:linear-gradient(#f6f6f300 0%,#f8f8f59e 38%,#fafaf7 100%);bottom:0;left:0;right:0}.hero-identity:after{filter:blur(12px);height:5%;box-shadow:none;background:radial-gradient(#22252729,#2225270e 42%,#0000 72%);bottom:4.5%;left:29%;right:25%}@media (width<=850px){.hero-identity .hero-person{width:min(104vw,610px);height:77%;bottom:3%}}@media (prefers-reduced-motion:reduce){.hero-identity .hero-person .person-standing{display:none!important}.hero-identity .hero-person .person-seated{opacity:1!important;display:block!important;transform:none!important}}.hero-identity{--hero-ease:cubic-bezier(.16,1,.3,1);perspective:1800px;background:#dedfdd}.hero-person{width:min(53vw,780px);height:98%;transform-style:preserve-3d;bottom:-4%;transform:translate(-50%)}.hero-person img{mix-blend-mode:multiply;transform-origin:50% 52%;backface-visibility:hidden;will-change:transform,opacity,filter;display:block}.person-standing{opacity:0;transform:translate3d(-5%,3%,-180px)rotateY(-72deg)scale(.91)}.person-seated{opacity:0;display:block;transform:translate3d(5%,1%,-180px)rotateY(88deg)scale(.91)}.person-edge{filter:blur(2px);background:#1c1f2333;width:5px;top:7%;bottom:5%;left:50%}.hero-widget{will-change:transform,opacity,filter}.hero-intro-card{z-index:2;width:220px;top:29%;left:calc(50% - 330px)}.hero-skills-card{z-index:5;width:184px;top:36%;right:calc(50% - 330px)}.is-ready .hero-intro-card{animation:widget-from-left .62s 2.34s var(--hero-ease) both}.is-ready .hero-skills-card{animation:widget-from-right .62s 2.48s var(--hero-ease) both}.is-ready .hero-contact-card{animation:widget-from-left .62s 2.62s var(--hero-ease) both}.is-ready .hero-status-card{animation:widget-from-right .62s 2.76s var(--hero-ease) both}@keyframes portrait-stand-turn{0%{opacity:0;filter:blur(9px)saturate(.72);transform:translate3d(-5%,3%,-180px)rotateY(-72deg)scale(.91)}25%{opacity:1;filter:blur()saturate(.78);transform:translate(0,0)rotateY(0)scale(1)}62%{opacity:1;filter:blur()saturate(.78);transform:translate(0,0)rotateY(0)scale(1)}82%{opacity:1;filter:blur(1px)saturate(.76);transform:translate3d(-1%,0,-30px)rotateY(68deg)scale(.97)}to{opacity:0;filter:blur(5px)saturate(.72);transform:translate3d(-3%,0,-130px)rotateY(91deg)scale(.92)}}@keyframes portrait-seat-turn{0%{opacity:0;filter:blur(5px)saturate(.72);transform:translate3d(4%,1%,-150px)rotateY(-89deg)scale(.92)}48%{opacity:1;filter:blur()saturate(.78);transform:translate3d(1%,0,-12px)rotateY(13deg)scale(.99)}76%{opacity:1;transform:translateZ(5px)rotateY(-3deg)scale(1.005)}to{opacity:1;filter:blur()saturate(.78);transform:translate(0,0)rotateY(0)scale(1)}}@keyframes portrait-turn-edge{0%,to{opacity:0;transform:translate(-50%)scaleY(.72)}45%{opacity:.72;transform:translate(-50%)scaleY(1)}}@keyframes widget-from-left{0%{opacity:0;filter:blur(8px);transform:translate3d(-34px,10px,-60px)scale(.94)}to{opacity:1;filter:blur();transform:translate(0,0)scale(1)}}@keyframes widget-from-right{0%{opacity:0;filter:blur(8px);transform:translate3d(34px,10px,48px)scale(.94)}to{opacity:1;filter:blur();transform:translate(0,0)scale(1)}}@media (width<=850px){.hero-person{width:min(104vw,610px);height:77%;bottom:3%}.hero-intro-card{width:164px;top:25%;left:10px}.hero-skills-card{width:136px;top:40%;right:9px}.hero-contact-card{width:208px;bottom:12%;left:11px}}@media (prefers-reduced-motion:reduce){.person-standing{display:none!important}.person-seated{opacity:1;filter:saturate(.78)contrast(.98)brightness(1.02);transform:none;display:block!important}.is-ready .person-standing,.is-ready .person-seated,.is-ready .person-edge,.is-ready .hero-widget{animation:none!important}.hero-widget{opacity:1!important;filter:none!important;transform:none!important}}.hero-person{height:100%;bottom:-6%}.hero-intro-card{width:218px;top:28%;left:calc(50% - 250px)}.hero-skills-card{width:180px;top:34%;right:calc(50% - 250px)}.hero-contact-card{width:236px;bottom:17%;left:calc(50% - 210px)}.hero-status-card{bottom:20%;right:calc(50% - 218px)}.hero-scroll{left:auto;right:24px;transform:none}@media (width<=850px){.hero-person{height:86%;bottom:-4%}.hero-intro-card{width:160px;top:24%;left:7px}.hero-skills-card{width:132px;top:38%;right:7px}.hero-contact-card{width:202px;bottom:11%;left:9px}.hero-scroll{right:12px}}.file-intro:before{content:"";clip-path:ellipse(55% 120% at 54%);pointer-events:none;background:linear-gradient(112deg,#0000 22%,#ffffff61 50%,#0000 73%);position:absolute;inset:0}.mac-menu{z-index:18;-webkit-backdrop-filter:blur(20px)saturate(1.45);backdrop-filter:blur(20px)saturate(1.45);color:#202124;background:#f8f8f8ad;border-bottom:1px solid #2d30341f;justify-content:space-between;align-items:center;height:31px;padding:0 15px;font:12px -apple-system,BlinkMacSystemFont,Helvetica Neue,sans-serif;display:flex;position:absolute;top:0;left:0;right:0}.mac-menu>div{align-items:center;gap:18px;display:flex}.mac-menu svg{fill:currentColor;width:15px;height:18px}.mac-menu i{display:block}.menu-wifi{border:2px solid #0000;border-top-color:#202124;border-bottom:0;border-radius:50% 50% 0 0;width:15px;height:11px;position:relative}.menu-wifi:after{content:"";background:#202124;border-radius:50%;width:4px;height:4px;position:absolute;top:6px;left:4px}.menu-battery{border:1.5px solid #202124;border-radius:3px;width:20px;height:10px;position:relative}.menu-battery:before{content:"";background:#202124;border-radius:1px;position:absolute;inset:1.5px}.menu-battery:after{content:"";background:#202124;border-radius:0 2px 2px 0;width:2px;height:4px;position:absolute;top:2px;right:-3px}.file-intro>button{top:42px}.intro-status{top:45px}.folder-file{box-shadow:none;background:0 0;border:0;height:100px;padding:0}.folder-file:after{display:none}.folder-file i{background:#6db9e7;border-radius:5px 5px 8px 8px;height:78px;position:relative;box-shadow:0 8px 18px #1936482e}.folder-file i:before{content:"";background:#5eaddd;border-radius:6px 6px 0 0;width:40%;height:18px;position:absolute;top:-9px;left:0}.folder-file span{text-align:center;text-shadow:0 1px 2px #fffc}.photo-file i{background:linear-gradient(155deg,#f3a465 0 45%,#d95050 46% 61%,#543a68 62%);position:relative;overflow:hidden}.photo-file i:before{content:"";opacity:.9;background:#ffe8b8;border-radius:50%;width:33px;height:33px;position:absolute;top:10px;right:12px}.photo-file i:after{content:"";background:#263f4b;height:47px;position:absolute;bottom:-11px;left:-8px;right:-8px;transform:rotate(-7deg)}.video-file i{background:#23252a;justify-content:center;align-items:center;display:flex;position:relative}.video-file i b{font:16px var(--body);color:#fff}.video-file i small{color:#fff;font:6px var(--mono);position:absolute;bottom:5px;right:6px}.mac-dock{z-index:16;-webkit-backdrop-filter:blur(22px)saturate(1.4);backdrop-filter:blur(22px)saturate(1.4);background:#f0f3f67a;border:1px solid #ffffff94;border-radius:22px;align-items:flex-end;gap:9px;height:76px;padding:9px 11px;animation:.55s cubic-bezier(.16,1,.3,1) .12s both dock-arrive,.35s 3.28s forwards dock-leave;display:flex;position:absolute;bottom:13px;left:50%;transform:translate(-50%);box-shadow:0 14px 40px #29323a2e,inset 0 1px #ffffff85}.dock-icon{border-radius:13px;flex:none;width:56px;height:56px;position:relative;overflow:hidden;box-shadow:0 5px 12px #1a1f2529}.dock-icon:after{content:"";border-radius:inherit;pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #ffffff47}.adobe{place-items:center;font:500 24px/1 -apple-system,BlinkMacSystemFont,sans-serif;display:grid}.ps{color:#31a8ff;background:#071e35}.ai{color:#ff9a00;background:#321300}.ae{color:#bca8ff;background:#1f1142}.finder{background:linear-gradient(90deg,#61b7ee 0 50%,#e5f3fc 50%)}.finder:before{content:"";background:#154e7859;width:1px;position:absolute;top:0;bottom:0;left:27px}.finder i:before,.finder i:after{content:"";background:#143d60;border-radius:50%;width:4px;height:7px;position:absolute;top:17px}.finder i:before{left:15px}.finder i:after{right:15px}.finder span{border-bottom:2px solid #143d60;border-radius:0 0 50% 50%;height:12px;position:absolute;bottom:13px;left:13px;right:12px}.figma{background:#242424}.figma i{width:13px;height:13px;position:absolute}.figma i:first-child{background:#f24e1e;border-radius:7px 0 0 7px;top:9px;left:15px}.figma i:nth-child(2){background:#ff7262;border-radius:0 7px 7px 0;top:9px;left:28px}.figma i:nth-child(3){background:#a259ff;border-radius:7px 0 0 7px;top:22px;left:15px}.figma i:nth-child(4){background:#1abcfe;border-radius:50%;top:22px;left:28px}.figma i:nth-child(5){background:#0acf83;border-radius:7px 0 7px 7px;top:35px;left:15px}.codex{color:#fff;background:#111}.codex i{border:2px solid #fff;border-radius:9px;width:24px;height:24px;position:absolute;top:15px;left:16px;transform:rotate(30deg)}.codex i:nth-child(2){transform:rotate(90deg)}.codex i:nth-child(3){transform:rotate(150deg)}.chrome{background:conic-gradient(#e94235 0 33%,#fabb05 0 66%,#34a853 0);border-radius:50%}.chrome i{background:#4285f4;border:3px solid #e9f1ff;border-radius:50%;position:absolute;inset:16px}.dock-separator{background:#24272b33;width:1px;height:45px;margin:0 2px 4px}@keyframes dock-arrive{0%{opacity:0;transform:translate(-50%,20px)scale(.96)}to{opacity:1;transform:translate(-50%)scale(1)}}@keyframes dock-leave{to{opacity:0;transform:translate(-50%,18px)scale(.96)}}@media (width<=700px){.mac-menu>div:first-child span,.mac-menu>div:last-child i{display:none}.mac-menu>div{gap:11px}.mac-menu{font-size:11px}.mac-dock{border-radius:17px;gap:5px;max-width:calc(100vw - 18px);height:58px;padding:7px}.dock-icon{border-radius:10px;width:42px;height:42px}.dock-separator{height:34px}.adobe{font-size:18px}.finder:before{left:20px}.finder i:before{left:11px}.finder i:after{right:11px}.finder span{bottom:9px;left:9px;right:9px}.figma{transform:scale(.75)}.codex i{width:18px;height:18px;top:11px;left:12px}.chrome i{inset:12px}}@media (prefers-reduced-motion:reduce){.mac-dock{animation:none}.file-intro:before{display:none}}.loose-file.folder-file i{width:84px;height:72px;box-shadow:none;mix-blend-mode:multiply;background:url(/media/portfolio-folder-transparent.png) 50%/contain no-repeat;border-radius:0;margin-top:0}@media (width<=700px){.loose-file.folder-file i{width:68px;height:58px}.file-a{--x:-34vw;--y:-29vh}.file-b{--x:-15vw;--y:-35vh}.file-c{--x:34vw;--y:-24vh}.file-d{--x:-35vw;--y:9vh}.file-e{--x:27vw;--y:-3vh}.file-f{--x:35vw;--y:21vh}.file-g{--x:-22vw;--y:28vh}}.portfolio-folder{aspect-ratio:1;width:168px;animation:.48s cubic-bezier(.16,1,.3,1) .18s both folder-icon-arrive,.62s cubic-bezier(.7,0,.25,1) 3.18s forwards folder-icon-enter;transform:translate(-50%,-50%)}.portfolio-folder img{object-fit:contain;mix-blend-mode:multiply;pointer-events:none;width:100%;height:100%;display:block}.portfolio-folder-name{color:#17222c;text-shadow:0 1px 3px #fffffff2;white-space:nowrap;border-radius:4px;padding:2px 5px;font:12px -apple-system,BlinkMacSystemFont,Helvetica Neue,sans-serif;position:absolute;bottom:4px;left:50%;transform:translate(-50%)}.loose-file,.loose-file.wide-file,.loose-file.folder-file{--r:0deg;width:92px;height:108px;box-shadow:none;background:0 0;border:0;padding:5px}.loose-file:after{display:none}.loose-file i,.loose-file.wide-file i,.loose-file.folder-file i{border-radius:5px;width:72px;height:68px;margin:0 auto;box-shadow:0 5px 13px #1e2a3433}.loose-file span{color:#18212a;text-align:center;text-shadow:0 1px 3px #fffffff2;white-space:normal;margin-top:8px;font:11px/1.25 -apple-system,BlinkMacSystemFont,Helvetica Neue,sans-serif;overflow:visible}.loose-file.folder-file i{background:linear-gradient(#5bafe1,#74c2ed);border-radius:4px 4px 7px 7px;height:58px;margin-top:8px}.loose-file.folder-file i:before{background:#56a9dc;border-radius:5px 5px 0 0;height:12px;top:-7px}.loose-file.photo-file i{background:linear-gradient(155deg,#8dcfe5 0 47%,#d78c6f 48% 62%,#415763 63%);border:3px solid #ffffffeb;border-radius:3px;height:58px;margin-top:6px}.loose-file.image-file:not(.photo-file) i{color:#fff;background:linear-gradient(145deg,#dfff93,#82b6aa 52%,#243d52 53%);border:3px solid #fffffff0;border-radius:3px;height:70px;font-size:15px}.loose-file.video-file i{border:3px solid #fffffff0;border-radius:3px;height:58px;margin-top:6px}.loose-file.dark-file i{border-radius:4px;height:70px;font-size:15px}@keyframes folder-icon-arrive{0%{opacity:0;filter:blur(7px);transform:translate(-50%,-47%)scale(.82)}to{opacity:1;filter:none;transform:translate(-50%,-50%)scale(1)}}@keyframes folder-icon-enter{0%{transform:translate(-50%,-50%)scale(1)}35%{transform:translate(-50%,-50%)scale(.94)}to{opacity:0;transform:translate(-50%,-50%)scale(10)}}@media (width<=700px){.portfolio-folder{width:142px}.loose-file,.loose-file.wide-file,.loose-file.folder-file{width:76px;height:92px}.loose-file i,.loose-file.wide-file i,.loose-file.folder-file i{width:58px;height:54px}.loose-file span{font-size:9px}.file-a{--x:-38vw;--y:-26vh}.file-b{--x:-38vw;--y:-8vh}.file-d{--x:-38vw;--y:12vh}.file-c{--x:38vw;--y:-26vh}.file-e{--x:38vw;--y:-8vh}.file-f{--x:38vw;--y:12vh}}@media (prefers-reduced-motion:reduce){.portfolio-folder{animation:none;transform:translate(-50%,-50%)}.portfolio-folder-name{display:block}}.loose-file.folder-file i{width:84px;height:72px;box-shadow:none;mix-blend-mode:multiply;background:url(/media/portfolio-folder-transparent.png) 50%/contain no-repeat;border:0;border-radius:0;margin-top:0}.loose-file.folder-file i:before{display:none}.file-a{--x:-39vw;--y:-28vh}.file-b{--x:-19vw;--y:-32vh}.file-c{--x:39vw;--y:-24vh}.file-d{--x:-36vw;--y:9vh}.file-e{--x:24vw;--y:-4vh}.file-f{--x:41vw;--y:17vh}.file-g{--x:-18vw;--y:27vh}@media (width<=700px){.loose-file.folder-file i{width:68px;height:58px;box-shadow:none;background:url(/media/portfolio-folder-transparent.png) 50%/contain no-repeat;border:0;border-radius:0;margin-top:0}.file-a{--x:-34vw;--y:-29vh}.file-b{--x:-15vw;--y:-35vh}.file-c{--x:34vw;--y:-24vh}.file-d{--x:-35vw;--y:9vh}.file-e{--x:27vw;--y:-3vh}.file-f{--x:35vw;--y:21vh}.file-g{--x:-22vw;--y:28vh}}.mac-dock .dock-icon{box-shadow:none;color:#0000;background:0 0;border-radius:13px;overflow:visible}.mac-dock .dock-icon:before,.mac-dock .dock-icon:after{display:none}.mac-dock .dock-icon img{object-fit:contain;filter:drop-shadow(0 5px 7px #141b242e);-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;display:block}.portfolio-folder img{mix-blend-mode:normal}.mac-menu{background:#f8f8f8c7;height:30px;padding:0 14px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,sans-serif}.mac-menu>div{gap:20px;height:100%}.apple-mark{width:17px;font:20px/1 -apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif;display:block;transform:translateY(-1px)}.mac-menu b{font-weight:600}.menu-symbol{object-fit:contain;filter:none;width:auto;display:block!important}.wifi-symbol{height:14px}.battery-symbol{height:13px}.mac-dock .dock-icon{border-radius:11px;width:46px;height:46px}.dock-separator{height:37px;margin-bottom:3px}.folder-cursor img{object-fit:contain;filter:drop-shadow(0 1px 1px #00000029);width:27px;height:36px;display:block}.folder-click{margin-top:-8px;margin-left:-8px}@media (width<=700px){.mac-dock{border-radius:15px;gap:4px;height:50px;padding:6px 7px;bottom:8px}.mac-dock .dock-icon{border-radius:9px;width:36px;height:36px}.dock-separator{height:29px;margin-bottom:2px}@keyframes folder-cursor-move{to{top:calc(50% - 4px);left:calc(50% - 5px)}}}.file-intro{background:radial-gradient(70% 86% at 12% 8%,#ffffffe6 0,#fff0 64%),radial-gradient(82% 78% at 50% 104%,#cdcdca75 0,#cdcdca00 72%),linear-gradient(135deg,#f6f6f3 0%,#ececea 58%,#dededb 100%)}.file-intro:before{content:"";z-index:0;pointer-events:none;filter:blur(58px);background:linear-gradient(118deg,#0000 28%,#ffffff61 45%,#78787614 58%,#0000 72%);position:absolute;inset:-18%;transform:rotate(-8deg)}.mac-menu{-webkit-backdrop-filter:none;backdrop-filter:none;text-shadow:0 1px 8px #ffffff6b;background:0 0;border-bottom:0}.mac-dock{-webkit-backdrop-filter:blur(26px)saturate(1.45);background:linear-gradient(#ffffff5c,#ffffff2e);border:1px solid #ffffff8c;border-radius:19px;gap:7px;height:58px;padding:6px 8px;bottom:11px;box-shadow:0 12px 34px #1b365b38,inset 0 1px #ffffffb8,inset 0 -1px #fff3}.mac-dock .dock-icon{filter:saturate(.96);border-radius:11px;width:44px;height:44px;overflow:hidden}.mac-dock .dock-icon img{filter:drop-shadow(0 4px 6px #18274233)}.mac-dock .dock-icon img[src*=illustrator-latest]{background:#310b00;border-radius:11px;padding:0}@media (width<=700px){.mac-dock{border-radius:16px;gap:5px;height:47px;padding:5px 7px}.mac-dock .dock-icon{border-radius:9px;width:35px;height:35px}}.loose-file,.loose-file.wide-file,.loose-file.folder-file{flex-direction:column;justify-content:flex-start;align-items:center;width:96px;height:112px;padding:4px;display:flex}.loose-file i,.loose-file.wide-file i,.loose-file.folder-file i{box-shadow:none;flex:none}.loose-file.folder-file i{filter:drop-shadow(0 5px 5px #1e2d3e29);background:url(/media/portfolio-folder-transparent.png) 50%/contain no-repeat;width:76px;height:66px;margin:3px auto 0}.loose-file.photo-file i{background:linear-gradient(160deg,#d9e5e9 0 42%,#aeb9aa 43% 58%,#586b62 59% 100%);border:2px solid #fffffff0;border-radius:4px;width:72px;height:58px;margin:7px auto 4px;overflow:hidden;box-shadow:0 2px 5px #1d262e38}.loose-file.photo-file i:before{background:#f8f5df;width:18px;height:18px;top:7px;right:8px}.loose-file.photo-file i:after{background:#41544c;height:38px;bottom:-12px;left:-5px;right:-5px;transform:rotate(-5deg)}.loose-file.video-file i{background:linear-gradient(145deg,#3e4750,#171b20 72%);border:2px solid #fffffff0;border-radius:4px;width:74px;height:52px;margin:10px auto 7px;box-shadow:0 2px 5px #1d262e3d}.loose-file.video-file i b{color:#202328;background:#ffffffe0;border-radius:50%;place-items:center;width:24px;height:24px;padding-left:2px;font-size:10px;display:grid}.loose-file.video-file i small{font-size:6px;bottom:3px;right:4px}.loose-file.image-file:not(.photo-file) i,.loose-file.dark-file i{clip-path:polygon(0 0,72% 0,100% 24%,100% 100%,0 100%);color:#361700;background:linear-gradient(155deg,#ffad35,#ff7c00);border:1px solid #30363e2e;border-radius:7px 7px 8px 8px;width:58px;height:70px;margin:1px auto 2px;font:600 13px/1 -apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif;position:relative;box-shadow:0 3px 7px #2028302e}.loose-file.dark-file i{color:#fff;background:linear-gradient(155deg,#393d45,#181b20)}.loose-file.image-file:not(.photo-file) i:after,.loose-file.dark-file i:after{content:"";background:#ffffff7a;border-bottom:1px solid #30363e26;border-left:1px solid #30363e26;width:28%;height:24%;position:absolute;top:0;right:0}.loose-file span{color:#1d1d1f;text-align:center;text-shadow:0 1px 3px #fffffff5;overflow-wrap:anywhere;border-radius:4px;max-width:94px;margin-top:5px;padding:1px 4px 2px;font:11px/1.22 -apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,sans-serif}.mac-dock{border-radius:24px;gap:10px;height:76px;padding:9px 12px;bottom:14px}.mac-dock .dock-icon{border-radius:14px;width:56px;height:56px;overflow:visible}.mac-dock .dock-icon img{object-fit:contain;transform-origin:50%;width:100%;height:100%}.mac-dock .dock-icon img[src*=photoshop],.mac-dock .dock-icon img[src*=after-effects]{transform:scale(1)}.mac-dock .dock-icon img[src*=figma],.mac-dock .dock-icon img[src*=codex]{transform:scale(1.08)}.mac-dock .dock-icon img[src*=illustrator-latest]{border-radius:12px;transform:scale(.86)}@media (width<=700px){.mac-dock{border-radius:20px;gap:7px;height:62px;padding:7px 9px;bottom:10px}.mac-dock .dock-icon{border-radius:11px;width:46px;height:46px}.mac-dock .dock-icon img[src*=illustrator-latest]{border-radius:10px}}.folder-cursor{opacity:0;animation:.62s cubic-bezier(.16,1,.3,1) 1.9s forwards folder-cursor-arrive,.28s linear 2.52s folder-cursor-click,.22s 2.84s forwards folder-cursor-hide;top:61%;left:61%}@keyframes folder-cursor-arrive{0%{opacity:0;top:61%;left:61%;transform:translate(8px,8px)}20%{opacity:1}to{opacity:1;top:calc(50% - 4px);left:calc(50% - 5px);transform:none}}@keyframes folder-cursor-hide{to{opacity:0}}@media (width<=700px){.folder-cursor{top:60%;left:64%}@keyframes folder-cursor-arrive{0%{opacity:0;top:60%;left:64%;transform:translate(7px,7px)}20%{opacity:1}to{opacity:1;top:calc(50% - 4px);left:calc(50% - 5px);transform:none}}}.hero-identity.motion-complete .hero-widget,.hero-identity.motion-complete .hero-person .person-seated,.hero-identity.motion-complete .hero-decor img,.hero-identity.motion-complete .hero-decor.hero-plant .decor-selection,.hero-identity.motion-complete .hero-heading span,.hero-identity.motion-complete .hero-heading strong{opacity:1!important;filter:none!important;animation:none!important;transform:none!important}.hero-identity.motion-complete .hero-person .person-seated{filter:var(--portrait-grade)!important}.hero-identity .hero-decor.hero-plant img,.hero-identity.motion-complete .hero-decor.hero-plant img{filter:saturate(.74)brightness(1.06)contrast(.96)!important}:root{--pencil:#2559b8;--archive-paper:#f5f4ef}body{background:var(--archive-paper)}.nav{border-color:#15151438;height:68px;position:relative}.nav:after{content:"打开的设计档案 · 2026";font:8px var(--mono);letter-spacing:.12em;color:var(--muted);position:absolute;left:50%;transform:translate(-50%)}.identity{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);grid-template-areas:"portrait copy";gap:clamp(48px,7vw,120px);min-height:calc(100svh - 68px);padding:clamp(44px,6vh,78px) 0;position:relative}.identity-copy{grid-area:copy;padding-top:34px;position:relative}.identity-copy:before{content:"把复杂的事，慢慢理清楚 ↘";color:var(--pencil);letter-spacing:.015em;font:400 20px/1 Bradley Hand,Noteworthy,Marker Felt,cursive;position:absolute;top:0;left:2px;transform:rotate(-2deg)}.identity-copy:after{content:"";border-bottom:1.5px solid var(--pencil);opacity:.75;border-radius:50%;width:168px;height:13px;position:absolute;top:23px;left:14px;transform:rotate(-2deg)}.portrait{background:#e8e7e1;grid-area:portrait;height:min(78vh,820px);overflow:visible}.portrait:before{content:"是我本人，偶尔不太严肃 ↑";z-index:2;color:var(--pencil);font:400 17px/1 Bradley Hand,Noteworthy,Marker Felt,cursive;position:absolute;bottom:-28px;right:14px;transform:rotate(-1.5deg)}.identity h1{margin:58px 0 46px;font-size:clamp(76px,8.4vw,132px)}.lead{max-width:520px}.works{padding-top:150px;position:relative}.works:before{content:"这些是我认真做过的项目 ↙";color:var(--pencil);font:400 18px/1 Bradley Hand,Noteworthy,Marker Felt,cursive;position:absolute;top:96px;right:1%;transform:rotate(1.8deg)}.section-head{position:relative}.section-head h2{letter-spacing:-.055em}.work-card .work-ph{outline-offset:3px;outline:1px solid #0000;transition:outline-color .18s,transform .35s,filter .25s}.work-card:hover .work-ph{outline-color:var(--pencil);filter:brightness(1.04);transform:translateY(-3px)}.work-card:hover .work-meta h3{color:var(--pencil)}.about-entry{position:relative}.about-entry:before{content:"完整简历和更多碎片，在这里 ↖";color:var(--pencil);font:400 18px/1 Bradley Hand,Noteworthy,Marker Felt,cursive;position:absolute;inset:auto auto 92px 190px;transform:rotate(-3deg)}.about-entry button{transition:transform .2s,background .2s}.about-entry button:hover{background:var(--pencil);transform:translateY(-2px)}@media (width<=850px){.nav:after{display:none}.identity{grid-template-columns:1fr;grid-template-areas:"copy""portrait";gap:46px}.identity-copy{padding-top:36px}.portrait{height:58vh;margin-bottom:24px}.works{padding-top:116px}.works:before{font-size:15px;top:74px;right:0}.about-entry:before{font-size:15px;top:54px}}:root{--display:"PingFang SC","Hiragino Sans GB","Noto Sans SC",-apple-system,sans-serif;--body:"PingFang SC","Hiragino Sans GB","Noto Sans SC",-apple-system,sans-serif;--hand:"Xiaolai Local","Kaiti SC","STKaiti",cursive}@font-face{font-family:Xiaolai Local;src:url(/fonts/Xiaolai-Regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}.logo{letter-spacing:.04em;font-size:18px;font-weight:500}.nav nav{gap:24px}.nav nav a,.nav nav button{font:11px var(--body);letter-spacing:.04em}.nav:after{font-family:var(--body);letter-spacing:.08em}.eyebrow{font:11px var(--body);letter-spacing:.08em}.identity-copy:before,.portrait:before,.works:before,.about-entry:before{font-family:var(--hand);font-weight:400}.identity-copy:before{font-size:21px}.identity h1{letter-spacing:-.055em;margin:44px 0 38px;font-size:clamp(58px,6.2vw,96px);line-height:.9}.identity h1 span{letter-spacing:.08em;color:var(--muted);font-size:.26em}.lead{max-width:460px;font-size:15px;line-height:1.9}.contact-line{font:11px var(--body);gap:20px;margin-top:34px}.section-head{grid-template-columns:58px 1fr auto;padding-bottom:22px}.section-head h2{letter-spacing:-.04em;font-size:clamp(34px,3.8vw,56px)}.section-head p{font-size:12px}.works{padding-bottom:140px}.work-grid{align-items:start;gap:38px 20px;padding-top:38px}.work-card:nth-child(2),.work-card:nth-child(4){margin-top:56px}.work-meta{grid-template-columns:34px 1fr auto;padding-top:14px}.work-meta>span,.work-meta small{font:10px var(--body);color:var(--muted)}.work-meta h3{letter-spacing:-.02em;margin-top:6px;font-size:20px}.about-entry{padding:110px 0 125px}.about-entry h2{letter-spacing:-.045em;margin:54px 0;font-size:clamp(40px,5vw,72px);line-height:1.14}.about-entry button{padding:13px 18px;font-size:12px}.case-cover h1{letter-spacing:-.055em;font-size:clamp(48px,6vw,88px);line-height:.96}.case-analysis h2{letter-spacing:-.04em;font-size:clamp(34px,4vw,58px)}.project-modal h2{font-size:clamp(34px,4vw,58px);line-height:1.04}.about-page h2{letter-spacing:-.045em;font-size:clamp(48px,5.5vw,82px);line-height:1.05}.close,.case-nav button{font-family:var(--body);font-size:11px}@media (width<=850px){.identity h1{margin:38px 0 30px;font-size:17vw;line-height:.92}.identity h1 span{font-size:.22em}.work-card:nth-child(2),.work-card:nth-child(4){margin-top:0}.section-head{grid-template-columns:36px 1fr}.section-head h2{font-size:10vw}.about-entry h2{font-size:11vw}.about-entry:before{inset:54px 0 auto auto}}.identity-copy{padding-top:0}.identity-copy:before,.identity-copy:after{display:none}.identity .lead{color:#292926;max-width:560px;font:400 clamp(22px,1.65vw,28px)/1.65 var(--hand);letter-spacing:.015em;margin:0;transform:rotate(-.35deg)}@media (width<=850px){.identity-copy{padding-top:0}.identity .lead{font-size:21px;line-height:1.62;transform:none}}figure.portrait-photo{box-shadow:none;isolation:isolate;background:0 0;border:0;margin:0;padding:0}.portrait-photo:before{display:none}.portrait-photo img{object-fit:cover;object-position:50% 38%;filter:grayscale()contrast(1.04);border:1px solid #1515144d;width:100%;height:100%;display:block}.portrait-photo:after{display:none}.portrait-photo figcaption{color:var(--pencil);font:400 15px/1 var(--hand);position:absolute;bottom:-28px;right:8px;transform:rotate(-1.5deg)}@media (width<=850px){.portrait-photo{margin-bottom:30px}.portrait-photo figcaption{font-size:13px;bottom:-23px}}.about-page{color:#1b1b19;background:#e9e8e3;overflow-y:auto}.about-page>header{z-index:5;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);height:62px;font:11px var(--body);letter-spacing:.04em;background:#f5f4efe0;border-bottom:1px solid #1b1b1938;padding:0 28px;position:sticky;top:0}.about-page>header button{font:11px var(--body)}.about-sheet{background:#f7f6f1;border:1px solid #1b1b1938;grid-template-columns:minmax(280px,.78fr) minmax(420px,1.22fr);gap:72px 7vw;width:min(100% - 64px,1320px);margin:32px auto;padding:clamp(38px,5vw,72px);display:grid;box-shadow:0 18px 55px #22221f14}.about-portrait{align-self:start;margin:0;position:relative}.about-portrait img{aspect-ratio:4/5;object-fit:cover;object-position:50% 38%;filter:grayscale()contrast(1.05);border:1px solid #1b1b1957;width:100%;display:block}.about-portrait:after{content:"";z-index:-1;border:1px solid #b0382d80;position:absolute;inset:14px -14px -14px 14px}.about-portrait figcaption{color:#b23e34;font:400 23px/1 var(--hand);position:absolute;top:-34px;right:8px;transform:rotate(-4deg)}.about-portrait figcaption:after{content:"↓";margin-left:5px;display:inline-block;transform:rotate(10deg)}.about-profile{background:0 0;align-self:start;padding:8px 18px 30px 24px}.about-index{color:#a9362e;margin:0;font:400 35px/1.1 Georgia,Songti SC,serif}.about-profile h2{letter-spacing:-.05em;margin:24px 0 26px;font-size:clamp(44px,5vw,72px);line-height:1.08}.about-profile .about-lead{color:#343431;max-width:720px;margin:0;font-size:15px;line-height:1.9}.about-facts{border-top:1px solid #1b1b1947;margin:34px 0 0}.about-facts>div{border-bottom:1px solid #1b1b192e;grid-template-columns:92px 1fr;gap:18px;padding:11px 0;display:grid}.about-facts dt{color:#77756f;font-size:11px}.about-facts dd{margin:0;font-size:12px}.about-skills{margin-top:30px}.about-skills>span{color:#77756f;font-size:11px}.about-skills>div{flex-wrap:wrap;gap:7px;margin-top:10px;display:flex}.about-skills b{color:#fff;text-align:center;min-width:36px;font:500 11px var(--body);background:#1e1e1c;border-radius:5px;padding:7px 9px}.about-sheet>.resume{border-top:1px solid #1b1b1961;grid-column:1/-1;grid-template-columns:1.2fr 1.2fr .8fr;gap:42px;padding-top:8px;display:grid}.about-sheet .resume section{color:#1b1b19;border-top:0;padding:22px 0 0}.about-sheet .resume section>span{color:#a9362e;font:11px var(--body);letter-spacing:.06em}.about-sheet .resume article{grid-template-columns:118px 1fr;margin-top:24px}.about-sheet .resume time{color:#77756f;font:10px var(--body)}.about-sheet .resume h3{font-size:16px;font-weight:500}.about-sheet .resume p{color:#66645f}@media (width<=850px){.about-page>header{height:56px;padding:0 18px}.about-sheet{grid-template-columns:1fr;gap:56px;width:calc(100% - 24px);margin:12px auto;padding:42px 18px}.about-portrait{width:min(78%,340px);margin:auto}.about-profile{padding:4px 10px 24px}.about-index{font-size:28px}.about-profile h2{font-size:12vw}.about-sheet>.resume{grid-column:auto;grid-template-columns:1fr;gap:12px}}.about-sheet{width:min(100% - 64px,1260px);box-shadow:none;background:0 0;border:0;margin:0 auto;padding:68px 58px 76px;display:block}.about-portrait{isolation:isolate;width:min(900px,88%);height:690px;margin:0 auto 74px;position:relative}.about-portrait:after{display:none}.about-portrait>img{z-index:1;aspect-ratio:auto;object-fit:cover;object-position:50% 38%;border:8px solid #fff;width:360px;height:480px;position:absolute;top:104px;left:50%;transform:translate(-50%);box-shadow:0 9px 26px #1c1c191f}.about-portrait figcaption{z-index:4;color:#242421;width:max-content;max-width:78%;font:400 clamp(23px,2.5vw,34px)/1.1 var(--hand);position:absolute;top:42px;left:50%;right:auto;transform:translate(-50%)rotate(-1.5deg)}.about-portrait figcaption:after{display:none}.memory{z-index:3;background:#fff;border:1px solid #1c1c1929;width:150px;padding:7px 7px 24px;display:block;position:absolute;box-shadow:0 8px 22px #1c1c191c}.memory:before{content:"";z-index:4;background:#aa211c;border-radius:50%;width:14px;height:14px;position:absolute;top:-7px;left:50%;box-shadow:0 2px 4px #1e141240}.about-portrait .memory img{aspect-ratio:auto;object-fit:cover;filter:grayscale()contrast(1.08);width:100%;height:145px;display:block}.memory small{text-align:center;color:#77746e;font:8px var(--body);letter-spacing:.08em;position:absolute;bottom:7px;left:0;right:0}.about-profile{background:0 0;grid-template-columns:1fr 1fr;gap:20px 56px;width:min(800px,78%);margin:0 auto 88px;padding:0;display:grid}.about-profile .about-index,.about-profile h2{grid-column:1/-1}.about-profile .about-index{font-size:30px}.about-profile h2{margin:12px 0 20px;font-size:clamp(42px,4.6vw,64px)}.about-profile .about-lead{font-size:15px;line-height:1.95}.about-profile .about-facts{margin:0}.about-profile .about-skills{border-top:1px solid #1b1b1938;grid-column:1/-1;margin-top:8px;padding-top:18px}.about-sheet>.resume{width:min(1040px,92%);margin:auto}@media (width<=850px){.about-sheet{width:calc(100% - 24px);padding:48px 18px 62px}.about-portrait{width:100%;height:540px;margin-bottom:54px}.about-portrait>img{border-width:6px;width:240px;height:340px;top:90px}.about-portrait figcaption{text-align:center;max-width:94%;font-size:24px;top:34px}.memory{width:92px;padding:4px 4px 18px}.about-portrait .memory img{height:90px}.memory:before{width:10px;height:10px;top:-5px}.memory-one{top:160px;left:0}.memory-two{top:142px;right:0}.memory-three,.memory-four{display:none}.about-profile{width:100%;margin-bottom:62px;display:block}.about-profile .about-lead{margin-bottom:28px}.about-profile .about-skills{margin-top:28px}.about-sheet>.resume{width:100%}}.about-page{background:#f1f0eb radial-gradient(circle at 1px 1px,#22221f21 .7px,#0000 .8px) 0 0/20px 20px}.about-page>header{background:#f1f0ebeb}.about-sheet{grid-template-columns:minmax(230px,.82fr) minmax(330px,1.18fr);grid-template-areas:"portrait profile""resume resume";gap:58px 8vw;width:min(100% - 64px,1340px);min-height:calc(100svh - 62px);padding:46px 24px 70px;display:grid}.about-portrait{grid-area:portrait;width:100%;height:430px;margin:0}.about-portrait>img{border:7px solid #f9f8f3;width:240px;height:320px;top:54px;left:49%;transform:translate(-50%)rotate(-.7deg);box-shadow:0 13px 30px #23221e24}.about-portrait>img:before{content:""}.about-portrait figcaption{color:#242421;text-align:left;max-width:300px;font-size:19px;top:5px;left:18px;transform:rotate(-2deg)}.about-portrait figcaption:before{content:"";background:#d9ef35;width:48px;height:2px;margin:0 10px 7px 0;display:inline-block;transform:rotate(-4deg)}.memory{border:0;width:92px;padding:4px 4px 17px;box-shadow:0 8px 20px #1c1c191a}.memory:before{width:54px;height:17px;box-shadow:none;background:#cfc9b7b8;border-radius:1px;top:-9px;left:50%;transform:translate(-50%)rotate(-3deg)}.about-portrait .memory img{height:82px}.memory small{font-size:7px;bottom:5px}.memory-one{top:136px;left:2%;transform:rotate(-3deg)}.memory-two{top:100px;right:2%;transform:rotate(2.2deg)}.memory-three{width:102px;bottom:4px;left:8%;transform:rotate(2.5deg)}.memory-three img{height:76px!important}.memory-four{width:100px;bottom:8px;right:5%;transform:rotate(-2deg)}.memory-four img{height:78px!important}.about-profile{grid-area:profile;grid-template-columns:1.15fr .85fr;gap:18px 46px;width:100%;margin:0;padding:30px 0 0;display:grid;position:relative}.about-profile:after{content:"这里是我 →";color:#2e2e2a;font:400 15px/1 var(--hand);position:absolute;top:82px;right:4px;transform:rotate(-5deg)}.about-profile .about-index{z-index:0;color:#20201e;font:600 14px/1 var(--body);letter-spacing:.04em;justify-self:start;margin:0;position:relative}.about-profile .about-index:after{content:"";z-index:-1;background:#d9ef35;height:11px;position:absolute;bottom:-3px;left:-7px;right:-9px;transform:rotate(-1.5deg)}.about-profile h2{letter-spacing:-.03em;max-width:560px;margin:15px 0 24px;font-size:clamp(36px,3.6vw,50px);line-height:1.08}.about-profile .about-lead{max-width:58ch;font-size:13px;line-height:1.85}.about-profile .about-facts{border-top:0;margin:0;padding-top:4px}.about-facts>div{border-color:#1b1b1933;grid-template-columns:72px 1fr;padding:10px 0}.about-skills b{aspect-ratio:1;color:#f6f5ef;background:#242421;border-radius:50%;place-items:center;min-width:42px;padding:10px 9px;font-size:10px;display:grid}.about-sheet>.resume{border-top:1px solid #1b1b1961;grid-area:resume;grid-template-columns:1.25fr 1.25fr .8fr;gap:56px;width:100%;margin:0;padding-top:24px}.about-sheet .resume section{padding-top:24px;position:relative}.about-sheet .resume section>span{z-index:0;color:#20201e;font-size:12px;font-weight:600;position:relative}.about-sheet .resume section>span:after{content:"";z-index:-1;background:#d9ef35;height:9px;position:absolute;bottom:-3px;left:-6px;right:-8px;transform:rotate(-1deg)}.about-sheet .resume article{margin-top:28px}@media (width>=681px) and (width<=1000px){.about-sheet{gap:48px 42px}.about-profile{display:block}.about-profile .about-lead{margin-bottom:22px}.about-profile .about-skills{margin-top:22px}.about-profile h2{font-size:clamp(32px,5vw,42px)}.about-profile:after{display:none}}@media (width<=680px){.about-sheet{grid-template-columns:1fr;grid-template-areas:"portrait""profile""resume";gap:46px;width:calc(100% - 24px);padding:46px 12px 64px}.about-portrait{height:460px}.about-portrait>img{border-width:7px;width:230px;height:310px;top:68px}.about-portrait figcaption{width:max-content;max-width:92%;font-size:21px;top:12px;left:50%;transform:translate(-50%)rotate(-2deg)}.memory-one{top:172px}.memory-two{top:132px}.about-profile{padding:0;display:block}.about-profile:after{font-size:15px;top:46px;right:5px}.about-profile h2{margin-top:22px;font-size:clamp(42px,12vw,58px)}.about-profile .about-lead{margin-bottom:26px}.about-sheet>.resume{grid-template-columns:1fr;gap:18px}}.about-sheet{grid-template-columns:minmax(390px,.88fr) minmax(430px,1.12fr);grid-template-areas:"profile portrait""resume resume";column-gap:6vw}.about-portrait{height:500px;overflow:visible}.about-portrait>img{content:url(/media/portrait-sketch-v1.png);object-fit:contain;object-position:right center;width:100%;height:100%;box-shadow:none;filter:none;mix-blend-mode:multiply;border:0;top:0;left:auto;right:-24px;transform:none}.about-portrait .memory{display:none}.about-portrait figcaption{width:110px;font-size:0;top:132px;left:-28px;transform:rotate(-6deg)}.about-portrait figcaption:before{display:none}.about-portrait figcaption:after{content:"关于我 ↘";color:#2b2b28;font:400 17px/1.15 var(--hand);display:block}.about-profile{align-self:center;padding:54px 0 12px;display:block}.about-profile:after{display:none}.about-profile h2{max-width:510px;margin:20px 0 24px;font-size:clamp(38px,4vw,54px)}.about-profile .about-lead{max-width:56ch;margin-bottom:24px}.about-profile .about-facts{grid-template-columns:1fr 1fr;margin-top:18px;display:grid}.about-facts>div:last-child{grid-column:1/-1}.about-profile .about-skills{margin-top:20px;padding-top:18px}@media (width>=681px) and (width<=1000px){.about-sheet{grid-template-columns:minmax(300px,.9fr) minmax(340px,1.1fr);gap:46px 28px}.about-portrait{height:450px}.about-portrait figcaption{left:-8px}.about-profile{padding-top:30px}.about-profile .about-facts{display:block}}@media (width<=680px){.about-sheet{grid-template-columns:1fr;grid-template-areas:"profile""portrait""resume"}.about-profile{padding:6px 4px 0}.about-profile h2{font-size:clamp(38px,11vw,50px)}.about-portrait{height:410px;margin-top:-28px}.about-portrait>img{width:105%;height:100%;right:-18px}.about-portrait figcaption{top:110px;left:12px}}.hero-identity{isolation:isolate;perspective:1500px;background:#d8d9d7;border-bottom:1px solid #15151438;width:100%;max-width:none;min-height:calc(100svh - 74px);padding:0;display:block;position:relative;overflow:hidden}.hero-heading{z-index:0;text-align:center;color:#f8f8f5;text-transform:uppercase;-webkit-user-select:none;user-select:none;width:max-content;position:absolute;top:10%;left:50%;transform:translate(-50%)}.hero-heading span{font:400 clamp(18px,2vw,31px)/1 var(--body);letter-spacing:.14em;display:block}.hero-heading strong{font:600 clamp(78px,11.5vw,190px)/.78 var(--display);letter-spacing:-.065em;margin-top:10px;display:block}.hero-person{z-index:2;width:min(59vw,900px);height:82%;transform-style:preserve-3d;position:absolute;bottom:-2%;left:50%;transform:translate(-50%)}.hero-person img{object-fit:contain;object-position:center bottom;mix-blend-mode:multiply;filter:saturate(.78)contrast(.98)brightness(1.025);transform-origin:50% 55%;backface-visibility:hidden;width:100%;height:100%;position:absolute;inset:0}.person-standing{opacity:0;transform:translateY(7%)rotateY(-18deg)scale(.93);filter:saturate(.7)contrast(.96)!important}.person-seated{opacity:0;transform:rotateY(88deg)scale(.9)}.is-ready .person-standing{animation:.72s cubic-bezier(.16,1,.3,1) both hero-stand-in,.62s cubic-bezier(.7,0,.25,1) 1.65s forwards hero-stand-out}.is-ready .person-seated{animation:.78s cubic-bezier(.16,1,.3,1) 1.88s both hero-seat-in}.hero-widget{z-index:4;opacity:0;color:#171716;-webkit-backdrop-filter:blur(18px)saturate(1.08);backdrop-filter:blur(18px)saturate(1.08);background:#f8f8f6e8;border:1px solid #ffffffb8;border-radius:14px;margin:0;position:absolute;box-shadow:0 18px 44px #21242729,0 2px 8px #21242714}.is-ready .hero-widget{animation:.58s cubic-bezier(.16,1,.3,1) both widget-arrive}.hero-intro-card{width:250px;padding:20px 20px 15px;top:34%;left:10%}.hero-intro-card b{font-size:15px}.hero-intro-card p{color:#5d5e5c;margin:8px 0 18px;font-size:12px;line-height:1.55}.hero-intro-card button{color:#1967d2;text-align:left;background:0 0;border:0;border-top:1px solid #15151424;width:100%;padding:10px 0 0;font-size:11px}.hero-skills-card{color:#f6f6f3;background:#27282adb;border-color:#ffffff1f;width:205px;padding:14px 16px 10px;top:35%;right:9%}.hero-skills-card>span{padding:2px 0 10px;font-size:11px;display:block}.hero-skills-card ul{margin:0;padding:0;list-style:none}.hero-skills-card li{color:#d9d9d6;border-top:1px solid #ffffff21;padding:8px 0;font-size:11px}.hero-skills-card li:after{content:"✦";float:right;color:#7fb5ff}.hero-contact-card{color:#fff;background:#181819e8;grid-template-columns:38px 1fr 28px;align-items:center;gap:11px;width:270px;padding:10px 12px;display:grid;bottom:16%;left:11%}.hero-avatar{color:#171716;width:36px;height:36px;font:600 13px var(--display);background:#e4e5e2;border-radius:50%;place-items:center;display:grid}.hero-contact-card div{min-width:0}.hero-contact-card b,.hero-contact-card-card small{display:block}.hero-contact-card b{font-size:11px}.hero-contact-card small{text-overflow:ellipsis;color:#aaa;margin-top:3px;font-size:9px;display:block;overflow:hidden}.hero-contact-card a{color:#071b0c;background:#55c96f;border-radius:50%;place-items:center;width:27px;height:27px;display:grid}.hero-status-card{align-items:center;gap:9px;padding:10px 13px;font-size:10px;display:flex;bottom:17%;right:11%}.hero-status-card i{background:#67c56f;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 3px #67c56f26}.hero-scroll{z-index:5;font:9px var(--mono);letter-spacing:.06em;position:absolute;bottom:18px;left:50%;transform:translate(-50%)}.hero-scroll span{margin-left:8px;display:inline-block}@keyframes hero-stand-in{0%{opacity:0;filter:blur(10px);transform:translateY(7%)rotateY(-18deg)scale(.93)}to{opacity:1;filter:blur();transform:translateY(0)rotateY(0)scale(1)}}@keyframes hero-stand-out{0%{opacity:1;transform:rotateY(0)scale(1)}48%{opacity:1;transform:rotateY(72deg)scale(.96)}to{opacity:0;transform:rotateY(94deg)scale(.93)}}@keyframes hero-seat-in{0%{opacity:0;filter:blur(5px);transform:rotateY(-88deg)scale(.9)}48%{opacity:1}to{opacity:1;filter:blur();transform:rotateY(0)scale(1)}}@keyframes widget-arrive{0%{opacity:0;filter:blur(7px);transform:translateY(18px)scale(.94);box-shadow:0 4px 12px #2124270d}to{opacity:1;filter:none;transform:none}}@media (width<=850px){.hero-identity{min-height:calc(100svh - 62px)}.hero-heading{top:9%}.hero-heading span{font-size:13px}.hero-heading strong{margin-top:7px;font-size:21vw}.hero-person{width:108vw;height:68%;bottom:7%}.hero-intro-card{width:178px;padding:13px;top:28%;left:14px}.hero-intro-card p{margin-bottom:11px;font-size:10px}.hero-skills-card{width:146px;padding:10px 12px;top:43%;right:12px}.hero-skills-card li{padding:6px 0;font-size:9px}.hero-contact-card{width:224px;bottom:12%;left:14px}.hero-status-card{display:none}}@media (prefers-reduced-motion:reduce){.person-standing{display:none}.person-seated{opacity:1;transform:none}.is-ready .person-standing,.is-ready .person-seated,.is-ready .hero-widget{animation:none}.hero-widget{opacity:1}.hero-contact-card,.hero-status-card{transform:none}}.hero-identity{perspective:1800px;background:#dedfdd}.hero-heading{display:none}.hero-person{z-index:3;width:min(44vw,650px);height:94%;transform-style:preserve-3d;bottom:-3%;transform:translate(-50%)}.hero-person img{mix-blend-mode:multiply;opacity:0;filter:saturate(.78)contrast(.98)brightness(1.02);transform-origin:50% 54%;backface-visibility:hidden}.person-seated{display:none}.is-ready .person-standing{animation:1.16s cubic-bezier(.16,1,.3,1) .18s both portrait-3d-arrive;display:block}.person-edge{z-index:-1;opacity:0;filter:blur(3px);background:#191c1f2e;border-radius:50%;width:8px;position:absolute;top:9%;bottom:7%;left:50%;transform:translate(-50%)}.is-ready .person-edge{animation:1.16s cubic-bezier(.16,1,.3,1) .18s both portrait-edge}.hero-intro-card{z-index:2;width:232px;padding:17px 18px 13px;top:29%;left:calc(50% - 380px)}.hero-skills-card{z-index:5;width:190px;padding:12px 15px 9px;top:34%;right:calc(50% - 360px)}.hero-contact-card{z-index:5;width:250px;bottom:20%;left:calc(50% - 330px)}.hero-status-card{z-index:2;bottom:22%;right:calc(50% - 335px)}.is-ready .hero-intro-card{animation-delay:1.08s}.is-ready .hero-skills-card{animation-delay:1.21s}.is-ready .hero-contact-card{animation-delay:1.34s}.is-ready .hero-status-card{animation-delay:1.47s}@media (width<=850px){.hero-person{width:min(92vw,520px);height:81%;bottom:-1%}.hero-intro-card{z-index:2;width:166px;padding:12px;top:25%;left:10px}.hero-skills-card{z-index:5;width:138px;top:39%;right:9px}.hero-contact-card{z-index:5;width:210px;bottom:13%;left:12px}}@media (prefers-reduced-motion:reduce){.person-standing{opacity:1;transform:none;display:block!important}.is-ready .person-standing,.is-ready .person-edge{animation:none}}.hero-identity .hero-person .person-standing,.hero-identity .hero-person .person-seated{will-change:transform,opacity,filter;display:block}.hero-identity.is-ready .hero-person .person-standing{animation:2.08s cubic-bezier(.16,1,.3,1) .1s both portrait-stand-turn}@media (width<=850px){.hero-identity .hero-person{width:min(104vw,610px);height:77%;bottom:3%}}@media (prefers-reduced-motion:reduce){.hero-identity .hero-person .person-standing{display:none!important}.hero-identity .hero-person .person-seated{opacity:1!important;display:block!important;transform:none!important}.hero-identity.is-ready .hero-person .person-standing,.hero-identity.is-ready .hero-person .person-seated,.hero-identity.is-ready .hero-widget{animation:none!important}.hero-identity .hero-widget{opacity:1!important;filter:none!important;transform:none!important}}.hero-identity .hero-person{width:min(58vw,860px);height:96%;bottom:0}.hero-identity .hero-person .person-seated{object-fit:contain;object-position:center bottom}@media (width<=850px){.hero-identity .hero-person{width:min(112vw,650px);height:72%;bottom:5%}}.hero-identity{background:#ededec;min-height:calc(100svh - 74px)}.hero-identity .hero-heading{z-index:1;color:#fffffff0;display:block;top:7%}.hero-identity .hero-heading span{letter-spacing:.08em;font-size:clamp(18px,1.75vw,27px)}.hero-identity .hero-heading strong{letter-spacing:.1em;margin-top:30px;font-size:clamp(68px,8vw,122px);line-height:.78}.hero-identity .hero-person img{mix-blend-mode:normal;filter:saturate(.82)contrast(.99)brightness(1.015)}.hero-identity .portrait-selection,.hero-identity .hero-decor{display:none}.hero-identity .hero-skills-card{z-index:5;width:240px;top:40%;right:calc(50% - 390px)}.hero-identity .hero-contact-card{z-index:5;width:335px;bottom:16%;left:calc(50% - 405px)}.hero-identity .hero-status-card{z-index:2;bottom:16%;right:calc(50% - 365px)}.hero-identity .hero-designer{display:none}@media (width<=850px){.hero-identity{min-height:calc(100svh - 62px)}.hero-identity .hero-heading{top:6%}.hero-identity .hero-heading span{font-size:14px}.hero-identity .hero-heading strong{margin-top:20px;font-size:16vw}.hero-identity .hero-person{width:min(113.4vw,630px);height:70.2%;bottom:4%;left:47%}.hero-identity .hero-intro-card{width:184px;top:30%;left:6px}.hero-identity .hero-skills-card{width:154px;top:42%;right:5px}.hero-identity .hero-contact-card{width:236px;bottom:12%;left:6px}}header.nav{background:#ededec;border-bottom:0;width:100%;max-width:none;margin:0;padding-inline:max(32px,50vw - 750px)}@media (width<=850px){header.nav{padding-inline:18px}}@keyframes portrait-direct-in{0%{opacity:.08;filter:blur(9px)saturate(.76);transform:translateY(16px)}45%{opacity:.72;filter:blur(3px)saturate(.8);transform:translateY(5px)}to{opacity:1;filter:blur()saturate(.82)contrast(.99)brightness(1.015);transform:translate(0,0)}}@media (prefers-reduced-motion:reduce){.hero-identity.is-ready .hero-person .person-seated{animation:.18s ease-out both portrait-direct-fade!important}}@keyframes portrait-direct-fade{0%{opacity:.01}to{opacity:1}}.hero-identity .hero-contact-card.incoming-call{-webkit-backdrop-filter:blur(28px)saturate(1.35);background:#161618eb;border:0;border-radius:24px;grid-template-columns:44px minmax(0,1fr) auto;gap:12px;width:300px;min-height:72px;padding:12px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Helvetica Neue,sans-serif;box-shadow:0 22px 48px #14181e45,inset 0 1px #ffffff1a}.incoming-call .hero-avatar{object-fit:cover;background:#ecebe8;border-radius:50%;width:44px;height:44px;box-shadow:inset 0 0 0 1px #ffffff61,0 3px 10px #00000038}.incoming-call .caller-copy{flex-direction:column;justify-content:center;min-width:0;display:flex}.incoming-call .caller-copy b{letter-spacing:-.01em;font-size:16px;font-weight:600;line-height:1.15}.incoming-call .caller-copy small{color:#a8a8ad;letter-spacing:.01em;margin-top:4px;font-size:11px;line-height:1.15}.call-actions{align-items:center;gap:7px;display:flex}.call-button{color:#fff;border:0;border-radius:50%;place-items:center;width:40px;height:40px;padding:0;display:grid}.call-button svg{fill:currentColor;stroke:none;width:17px;height:17px}.call-button.decline{background:#ff453a}.call-button.decline svg{transform:rotate(135deg)}.call-button.accept{background:#30d158}.call-button:hover{filter:brightness(1.08)}.call-button:focus-visible{outline-offset:3px;outline:2px solid #fff}@media (width<=850px){.hero-identity .hero-contact-card.incoming-call{border-radius:23px;grid-template-columns:42px minmax(0,1fr) auto;gap:8px;width:252px;padding:9px 10px}.incoming-call .hero-avatar{width:42px;height:42px}.incoming-call .caller-copy b{font-size:14px}.incoming-call .caller-copy small{font-size:9px}.call-actions{gap:5px}.call-button{width:31px;height:31px}.call-button svg{width:13px;height:13px}}.file-intro{animation:.38s cubic-bezier(.7,0,.2,1) 2.38s forwards file-intro-exit}.loose-file{animation:file-archive-fast .48s var(--delay,.42s) cubic-bezier(.72,0,.25,1) forwards;will-change:transform,opacity,filter}.file-a{--delay:.32s;--trail-x:-18px;--trail-y:-12px}.file-b{--delay:.38s;--trail-x:-12px;--trail-y:-16px}.file-c{--delay:.44s;--trail-x:18px;--trail-y:-12px}.file-d{--delay:.5s;--trail-x:-18px;--trail-y:6px}.file-e{--delay:.56s;--trail-x:16px;--trail-y:-3px}.file-f{--delay:.62s;--trail-x:18px;--trail-y:8px}.file-g{--delay:.68s;--trail-x:-12px;--trail-y:14px}@keyframes file-archive-fast{0%,38%{opacity:1;filter:none}68%{opacity:.88;filter:drop-shadow(var(--trail-x) var(--trail-y) 7px #36414c47) blur(.55px)}to{opacity:0;filter:blur(2px);transform:translate(-50%,-40%)rotate(0)scale(.06)}}.portfolio-folder{animation:.42s cubic-bezier(.16,1,.3,1) .1s both folder-icon-arrive,.55s cubic-bezier(.7,0,.25,1) 1.92s forwards folder-icon-enter}.folder-cursor{animation:.45s cubic-bezier(.16,1,.3,1) 1.12s forwards folder-cursor-arrive,.22s linear 1.57s folder-cursor-click,.16s 1.78s forwards folder-cursor-hide}.folder-click{animation:.36s ease-out 1.58s folder-click-ring}.hero-identity.is-ready .hero-intro-card{animation-delay:.36s}.hero-identity.is-ready .hero-skills-card{animation-delay:.46s}.hero-identity.is-ready .hero-contact-card{animation-delay:.56s}.hero-identity.is-ready .hero-status-card{animation-delay:.66s}.works{padding-top:88px}.works:before{display:none}.works>.section-head{border-bottom:0;padding-bottom:72px}.work-groups{grid-template-columns:1fr;gap:150px;display:grid}.work-group{gap:24px;display:grid}.work-group-head{border-bottom:0;grid-template-columns:1fr auto;align-items:baseline;padding-bottom:0;display:grid}.work-group-head h3{font:500 21px var(--display);letter-spacing:-.02em;margin:0}.work-group-head p{color:var(--muted);margin:0;font-size:11px}.work-group .work-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:42px 18px;padding-top:0}.work-group .work-card{margin-top:0}.work-group .work-ph{aspect-ratio:16/9;color:#161616;isolation:isolate;border:0;height:auto;position:relative;overflow:hidden}.work-group .work-cover-image{z-index:1;object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.work-group .work-ph:before,.work-group .work-ph:after{display:none}.work-group .work-ph:before{background:#ffffffbd;inset:10%;transform:rotate(-3deg);box-shadow:0 16px 34px #15181e1f}.work-group .work-ph:after{background:#ffffffe6;width:36%;height:54%;bottom:9%;right:8%;transform:rotate(4deg);box-shadow:0 12px 28px #15181e24}.work-group .work-ph>span{z-index:2;font:9px var(--mono);letter-spacing:.06em;background:#ffffffdb;padding:5px 7px;position:absolute;bottom:14px;left:16px}.work-group .tone-0{background:linear-gradient(145deg,#eef0f2,#d7dce2)}.work-group .tone-0:before{background:linear-gradient(#fff 0 18%,#f5f6f7 18% 100%)}.work-group .tone-0:after{background:linear-gradient(#20252b 0 14%,#fff 14% 100%)}.work-group .tone-1{background:linear-gradient(135deg,#eef0ff,#aebcff)}.work-group .tone-1:before{background:linear-gradient(145deg,#fff 0 48%,#7c92f2 49% 100%)}.work-group .tone-1:after{background:linear-gradient(#2d3f85 0 16%,#f5f6ff 16% 100%)}.work-group .tone-2{background:linear-gradient(145deg,#eee2d2,#c9ad86)}.work-group .tone-2:before{background:radial-gradient(circle at 50% 38%,#fff6df,#0000 34%),linear-gradient(135deg,#b38855,#f4e6cc);inset:13% 9%}.work-group .tone-2:after{display:none}.work-group .tone-3{background:linear-gradient(145deg,#07157c,#185af0)}.work-group .tone-3:before{box-shadow:none;background:radial-gradient(at 50% 52%,#7ebeffb8,#0000 32%),linear-gradient(165deg,#0000 44%,#fff3 45% 46%,#0000 47%);inset:0;transform:none}.work-group .tone-3:after{display:none}.work-group .work-meta{padding-top:16px;display:block}.work-group .work-meta h3{margin:0;font-size:20px;line-height:1.25}.work-group .work-meta p{color:#585956;max-width:34ch;margin:7px 0 12px;font-size:11px;line-height:1.55}.work-group .work-meta small{color:#777874;font-size:10px;line-height:1.4;display:block}@media (width<=850px){.works{padding-top:68px}.works>.section-head{padding-bottom:52px}.work-groups{grid-template-columns:1fr;gap:78px}.work-group-head{grid-template-columns:1fr}.work-group-head p{display:none}.work-group .work-grid{grid-template-columns:1fr;gap:44px}.work-group .work-meta h3{font-size:21px}}@media (width>=851px) and (width<=1100px){.work-group .work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.file-intro .mac-dock{isolation:isolate;-webkit-backdrop-filter:none;background:linear-gradient(#fafbfcd1,#e5e8ebb8);box-shadow:0 14px 36px #262f3733,inset 0 1px #ffffffeb,inset 0 -1px #ffffff5c}@keyframes portrait-center-reveal{0%{opacity:.06;clip-path:inset(0% 45% 0);filter:blur(10px)saturate(.74)}52%{opacity:.8;clip-path:inset(0 12%);filter:blur(3px)saturate(.8)}to{opacity:1;clip-path:inset(0);filter:blur()saturate(.82)contrast(.99)brightness(1.015)}}@keyframes widget-radiate-left-up{0%{opacity:0;clip-path:inset(40% 42%);filter:blur(9px);transform:translate3d(175px,72px,-30px)scale(.76)}to{opacity:1;clip-path:inset(0);filter:none;transform:none}}@keyframes widget-radiate-right-up{0%{opacity:0;clip-path:inset(40% 42%);filter:blur(9px);transform:translate3d(-155px,62px,-20px)scale(.76)}to{opacity:1;clip-path:inset(0);filter:none;transform:none}}@keyframes widget-radiate-left-down{0%{opacity:0;clip-path:inset(40% 42%);filter:blur(9px);transform:translate3d(165px,-96px,25px)scale(.76)}to{opacity:1;clip-path:inset(0);filter:none;transform:none}}@keyframes widget-radiate-right-down{0%{opacity:0;clip-path:inset(40% 42%);filter:blur(9px);transform:translate3d(-145px,-88px,-20px)scale(.76)}to{opacity:1;clip-path:inset(0);filter:none;transform:none}}.hero-identity .hero-widget{-webkit-backdrop-filter:none;will-change:auto}.hero-identity .hero-intro-card{background:#f8f8f6f7}.hero-identity .hero-skills-card{background:#353638f7}.hero-identity .hero-contact-card.incoming-call{-webkit-backdrop-filter:none;background:#161618f7}.hero-identity .hero-status-card{background:#f8f8f6f7}.hero-identity{border-bottom:0}.works{z-index:0;clip-path:inset(0 -100vmax);background:#fafaf7;position:relative;box-shadow:0 0 0 100vmax #fafaf7}.nav .logo{color:#171716;width:36px;height:19px;display:block}.nav .logo svg{width:100%;height:100%;display:block;overflow:visible}.nav .logo path{fill:none;stroke:currentColor;stroke-width:3.2px;stroke-linecap:round;stroke-linejoin:round}.nav .logo:hover{opacity:.5}.nav .logo:focus-visible{outline-offset:5px;outline:2px solid}.hero-identity .hero-heading span,.hero-identity .hero-heading strong{opacity:0}.hero-identity.is-ready .hero-person .person-seated{animation:.62s cubic-bezier(.2,.7,.2,1) 10ms both portrait-smooth-arrive}.hero-identity.is-ready .hero-heading span{animation:.54s cubic-bezier(.16,1,.3,1) .2s both hero-title-rise}.hero-identity.is-ready .hero-heading strong{animation:.62s cubic-bezier(.16,1,.3,1) .27s both hero-title-rise}.hero-identity.is-ready .hero-intro-card{animation:.58s cubic-bezier(.16,1,.3,1) .43s both widget-spread-left-up}.hero-identity.is-ready .hero-skills-card{animation:.58s cubic-bezier(.16,1,.3,1) .49s both widget-spread-right-up}.hero-identity.is-ready .hero-contact-card{animation:.6s cubic-bezier(.16,1,.3,1) .55s both widget-spread-left-down}.hero-identity.is-ready .hero-status-card{animation:.58s cubic-bezier(.16,1,.3,1) .61s both widget-spread-right-down}@keyframes portrait-smooth-arrive{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translate(0,0)}}@keyframes hero-title-rise{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translate(0,0)}}@keyframes widget-spread-left-up{0%{opacity:0;transform:translate(150px,64px)scale(.88)}to{opacity:1;transform:translate(0,0)scale(1)}}@keyframes widget-spread-right-up{0%{opacity:0;transform:translate(-135px,54px)scale(.88)}to{opacity:1;transform:translate(0,0)scale(1)}}@keyframes widget-spread-left-down{0%{opacity:0;transform:translate(145px,-78px)scale(.88)}to{opacity:1;transform:translate(0,0)scale(1)}}@keyframes widget-spread-right-down{0%{opacity:0;transform:translate(-125px,-72px)scale(.88)}to{opacity:1;transform:translate(0,0)scale(1)}}@media (prefers-reduced-motion:reduce){.hero-identity .hero-heading span,.hero-identity .hero-heading strong{opacity:1!important;animation:none!important;transform:none!important}}.work-group .work-ph{border-radius:14px}.nav:after{display:none}.hero-identity .hero-intro-card{width:350px;top:34%;left:calc(50% - 455px)}.hero-identity .hero-contact-card{width:355px;bottom:15%;left:calc(50% - 420px)}.hero-identity .hero-status-card{padding:12px 16px;bottom:17%;right:calc(50% - 390px)}@media (width<=850px){.hero-identity .hero-person{width:min(94vw,530px);height:62%;bottom:5%;left:48%}.hero-identity .hero-intro-card{width:194px;top:28%;left:6px}.hero-identity .hero-skills-card{width:164px;top:40%;right:5px}.hero-identity .hero-contact-card{width:244px;bottom:11%;left:6px}.hero-identity .hero-status-card{padding:9px 11px;bottom:25%;right:5px}}.work-group .work-ph{transition:transform .45s cubic-bezier(.16,1,.3,1),filter .35s}.work-group .work-ph:after{content:"";z-index:3;opacity:0;box-shadow:none;pointer-events:none;background:#0f11148a;transition:opacity .3s;display:block;position:absolute;inset:0;transform:none}.work-group .work-hover{z-index:4;color:#fff;min-width:108px;font:500 12px var(--body);letter-spacing:.08em;opacity:0;pointer-events:none;background:#0c0d0f1f;border:1px solid #ffffffdb;border-radius:999px;padding:11px 20px;transition:opacity .28s,transform .4s cubic-bezier(.16,1,.3,1),background .25s;position:absolute;top:50%;left:50%;transform:translate(-50%,-42%)scale(.94)}.work-card:hover .work-ph,.work-card:focus-visible .work-ph{transform:scale(1.012)}.work-card:hover .work-ph:after,.work-card:focus-visible .work-ph:after,.work-card:hover .work-hover,.work-card:focus-visible .work-hover{opacity:1}.work-card:hover .work-hover,.work-card:focus-visible .work-hover{transform:translate(-50%,-50%)scale(1)}.work-card:focus-visible{outline-offset:7px;border-radius:14px;outline:2px solid #171716}@media (hover:none){.work-group .work-hover,.work-group .work-ph:after{display:none}}@media (prefers-reduced-motion:reduce){.work-group .work-ph,.work-group .work-ph:after,.work-group .work-hover{transition:none}}.hero-identity .hero-widget{box-shadow:0 8px 22px #181b1f16,0 1px 3px #181b1f0b}.hero-identity .hero-contact-card.incoming-call{box-shadow:0 10px 24px #14181e21,inset 0 1px #ffffff14}.hero-identity .incoming-call .hero-avatar{box-shadow:inset 0 0 0 1px #ffffff57,0 2px 5px #0000001f}.hero-identity .hero-heading span{color:#ffffffc2}@media (width<=850px){.hero-identity .hero-heading{top:5.5%}.hero-identity .hero-heading strong{letter-spacing:.12em;margin-top:22px;font-size:14.5vw}}.hero-identity .hero-heading span{color:#171716;background:#609dff6b;width:max-content;margin-inline:auto;padding:2px 4px 3px;display:block;position:relative;box-shadow:inset 2px 0 #1473e6,inset -2px 0 #1473e6}.hero-identity .hero-heading span:before,.hero-identity .hero-heading span:after{content:"";z-index:2;background:#1473e6;border-radius:50%;width:13px;height:13px;position:absolute}.hero-identity .hero-heading span:before{top:-10px;left:-5px}.hero-identity .hero-heading span:after{bottom:-10px;right:-5px}.work-group .work-card,.work-group .work-card:focus,.work-group .work-card:focus-visible{box-shadow:none;outline:none}.work-group .work-hover{color:#fff;background:#0c0d0f14;border:1px solid #ffffffe6;padding:11px 20px;inset:50% auto auto 50%}.work-group .work-ph:after{border-radius:inherit}.work-group .work-meta h3{transition:color .24s}.work-group .work-card:hover .work-meta h3{color:#1769d2}.work-group .work-card:focus-visible .work-ph{box-shadow:none}.work-group .work-card .work-ph,.work-group .work-card:hover .work-ph,.work-group .work-card:focus .work-ph,.work-group .work-card:focus-visible .work-ph{box-shadow:none!important;border:0!important;outline:0 #0000!important}.work-group .work-card:hover .work-ph:after,.work-group .work-card:hover .work-hover{opacity:1!important;display:block!important}.work-group .work-ph:after,.work-group .tone-0:after,.work-group .tone-1:after,.work-group .tone-2:after,.work-group .tone-3:after{inset:0!important;border-radius:inherit!important;width:auto!important;height:auto!important;box-shadow:none!important;background:#10121580!important;inset:0!important;transform:none!important}.work-group .work-ph>.work-hover{color:#fff!important;text-align:center!important;background:#0c0d0f14!important;border:1px solid #ffffffe6!important;border-radius:999px!important;min-width:108px!important;margin:0!important;padding:11px 20px!important;line-height:1.2!important;inset:50% auto auto 50%!important;transform:translate(-50%,-42%)scale(.94)!important}.work-group .work-card:hover .work-ph>.work-hover{transform:translate(-50%,-50%)scale(1)!important}.work-group .work-card:hover .work-meta h3,.work-group .work-card:focus .work-meta h3,.work-group .work-card:focus-visible .work-meta h3{color:inherit}.work-group .work-ph:after{z-index:3!important}.work-group .work-ph>.work-hover{z-index:5!important}.hero-identity .hero-heading{z-index:1;top:5.7%}.hero-identity .hero-heading strong{color:#ffffffd1;letter-spacing:.12em;margin-top:30px;font-size:clamp(70px,8vw,122px);font-weight:400}.hero-identity .hero-heading span{color:#171716;font-size:clamp(15px,1.35vw,21px)}.hero-identity .hero-person{width:min(52vw,770px);height:80%;bottom:6.5%;left:48%}.hero-identity .hero-intro-card{z-index:5;background:#fafaf8f0;border-color:#fffc;width:300px;top:32%;left:calc(50% - 405px)}.hero-identity .hero-skills-card{z-index:4;color:#ffffffeb;background:#37383ae6;width:220px;padding:12px 15px 9px;top:40%;right:calc(50% - 385px)}.hero-identity .hero-skills-card li{color:#ffffffb8;padding:7px 0}.hero-identity .hero-contact-card.incoming-call{background:#26272aeb;border-radius:22px;width:310px;min-height:66px;padding:11px 12px;bottom:20%;left:calc(50% - 410px)}.hero-identity .hero-contact-card .contact-action{color:#fff;text-align:center;background:#1677ff;border-radius:999px;width:auto;min-width:62px;height:auto;padding:9px 13px;font-size:11px;font-weight:600;line-height:1;transition:background .2s,transform .2s;display:block}.hero-identity .hero-contact-card .contact-action:hover{filter:none;background:#0668e8;transform:translateY(-1px)}.hero-identity .hero-status-card{background:#fafaf8e6;padding:9px 12px;font-size:9px;bottom:15%;right:calc(50% - 385px)}.hero-identity .hero-decor{z-index:2;opacity:.92;pointer-events:none;width:min(22vw,300px);height:23%;display:block;bottom:-1%;left:calc(50% + 175px)}.hero-identity .hero-decor img{object-fit:contain;object-position:center bottom;mix-blend-mode:normal;width:100%;height:100%;display:block}.decor-selection{border:1px solid #1677ffb8;width:34%;height:72%;position:absolute;top:7%;left:7%}.decor-selection i{background:#1677ff;border-radius:50%;width:5px;height:5px;position:absolute}.decor-selection i:first-child{top:-3px;left:-3px}.decor-selection i:nth-child(2){top:-3px;right:-3px}.decor-selection i:nth-child(3){bottom:-3px;right:-3px}.decor-selection i:nth-child(4){bottom:-3px;left:-3px}.decor-selection b{color:#fff;font:500 7px var(--mono);white-space:nowrap;background:#1677ff;padding:2px 4px;position:absolute;bottom:-16px;left:50%;transform:translate(-50%)}.hero-identity .hero-scroll{z-index:7;text-align:center;color:#151514a3;width:100%;height:58px;font:500 11px var(--mono);letter-spacing:.11em;text-transform:uppercase;background:linear-gradient(#ededec4d,#f7f7f4db);border-top:1px solid #15151412;justify-content:center;align-items:center;margin:0;display:flex;bottom:0;left:0;right:0;transform:none}.hero-identity .hero-scroll span{margin-left:10px;font-size:13px}@media (width<=850px){.hero-identity .hero-heading{top:5%}.hero-identity .hero-heading strong{margin-top:22px;font-size:15.5vw}.hero-identity .hero-person{width:min(104vw,585px);height:68%;bottom:8%;left:49%}.hero-identity .hero-intro-card{width:180px;top:26%;left:18px}.hero-identity .hero-skills-card{width:144px;top:41%;right:6px}.hero-identity .hero-contact-card.incoming-call{width:240px;bottom:16%;left:7px}.hero-identity .hero-status-card{display:none}.hero-identity .hero-decor{width:42vw;height:16%;bottom:1%;left:auto;right:-4%}.decor-selection{display:none}}.hero-identity .hero-decor.hero-plant{z-index:4;width:min(10.8vw,158px);height:17.6%;bottom:9.9%;left:calc(50% + 135px);right:auto}.hero-identity .hero-decor.hero-books{z-index:2;width:min(15vw,220px);height:13%;bottom:27%;left:calc(50% - 181px);right:auto}.hero-identity .hero-decor.hero-plant .decor-selection,.hero-identity .hero-decor.hero-books .decor-selection{width:auto;height:auto;inset:5% 5% 4%}.hero-identity .hero-decor.hero-plant .decor-selection{inset:2% 8% 3%}.hero-identity .hero-decor.hero-books .decor-selection{inset:9% 3% 4%}@media (width<=850px){.hero-identity .hero-decor.hero-plant{width:23.2vw;height:13.6%;bottom:10.4%;left:auto;right:4%}.hero-identity .hero-decor.hero-books{width:31vw;height:11%;bottom:29.25%;left:30.2%;right:auto}.hero-identity .hero-scroll{height:50px;font-size:10px}}.hero-identity .hero-intro-card{z-index:2}.hero-identity .hero-person{z-index:3;width:min(49.14vw,728px);height:75.6%;bottom:6.5%;left:48%}.hero-identity .hero-heading{top:5.7%}.hero-identity .hero-heading span{top:0}.hero-identity .hero-heading strong{font-size:clamp(70px,8vw,122px)}.hero-identity .hero-intro-card{z-index:2;width:300px;top:32%;left:calc(50% - 405px)}.hero-identity .hero-skills-card{width:202px;top:40%;right:calc(50% - 420px)}.hero-identity .hero-contact-card.incoming-call{width:294px;bottom:24%;left:calc(50% - 379px)}.hero-identity .hero-status-card{padding:9px 12px;inset:62% auto auto calc(50% + 218px)}.hero-identity .hero-decor.hero-books{width:min(10.8vw,158px);height:9.6%;display:none;bottom:22%;left:calc(34% + min(13.5vw,198px))}.hero-identity .hero-decor.hero-plant{width:min(9.94vw,145px);height:16.2%;bottom:12%;left:calc(50% + 130px)}.hero-identity .hero-decor.hero-plant .decor-selection{opacity:0}.hero-identity.is-ready .hero-decor.hero-plant .decor-selection{animation:.7s cubic-bezier(.16,1,.3,1) .72s both plant-selection-arrive}@keyframes plant-selection-arrive{0%{opacity:0;filter:blur(5px);transform:translateY(18px)scale(.94)}to{opacity:1;filter:none;transform:none}}.hero-identity .hero-scroll{padding-top:4px}@media (width<=850px){.hero-identity .hero-person{z-index:3;width:min(98.28vw,553px);height:64.26%;bottom:8%;left:49%}.hero-identity .hero-heading{top:5%}.hero-identity .hero-heading span{top:0}.hero-identity .hero-intro-card{width:180px;top:28%;left:14px}.hero-identity .hero-skills-card{width:132px;top:41%;right:8px}.hero-identity .hero-contact-card.incoming-call{width:228px;bottom:19%;left:-22px}.hero-identity .hero-decor.hero-books{width:22.32vw;height:8%;bottom:22%;left:52.9%}.hero-identity .hero-decor.hero-plant{width:21.3vw;height:12.5%;bottom:12%;left:auto;right:13.8%}}@media (prefers-reduced-motion:reduce){.hero-identity .hero-decor.hero-plant .decor-selection{opacity:1;transform:none;animation:none!important}}.hero-identity{--person-half:min(24.57vw,364px)}.hero-identity .hero-skills-card,.hero-identity .hero-status-card{left:calc(48% + var(--person-half) - 80px);right:auto}.hero-identity .hero-decor.hero-plant{left:calc(48% + var(--person-half) - 170px);right:auto}@media (width<=850px){.hero-identity{--person-half:min(49.14vw,276.5px)}.hero-identity .hero-skills-card{left:auto;right:-10px}.hero-identity .hero-decor.hero-plant{left:auto;right:8%}}.hero-tools-group{z-index:4;left:calc(48% + var(--person-half) - 80px);width:202px;position:absolute;top:40%}.hero-identity .hero-tools-group .hero-skills-card,.hero-identity .hero-tools-group .hero-status-card{position:relative;inset:auto!important}.hero-identity .hero-tools-group .hero-skills-card{width:100%}.hero-identity .hero-tools-group .hero-status-card{width:max-content;max-width:100%;margin-top:14px}@media (width<=1100px) and (width>=851px){.hero-tools-group{width:184px;left:auto;right:3%}}@media (width<=850px){.hero-tools-group{width:132px;top:41%;left:auto;right:8px}.hero-identity .hero-tools-group .hero-skills-card{right:auto!important}.hero-identity .hero-tools-group .hero-status-card{white-space:nowrap;width:max-content;max-width:none;margin-top:10px;padding:8px 10px;font-size:8px;display:flex!important}}.about-page.about-redesign{z-index:1000;color:#171716;font-family:var(--sans);background:#ededec;animation:.42s ease-out both about-page-in;position:fixed;inset:0;overflow:auto}.about-redesign .about-nav{z-index:20;color:#1717167a;height:56px;font:500 11px var(--mono);letter-spacing:.08em;-webkit-backdrop-filter:blur(18px);background:#ededecd1;grid-template-columns:1fr auto;align-items:center;padding:0 clamp(24px,4vw,68px);display:grid;position:sticky;top:0}.about-redesign .about-mark{color:#171716;font:650 46px/1 var(--sans);letter-spacing:-.12em;justify-self:start}.about-redesign .about-nav button{color:#171716;font:500 12px var(--sans);cursor:pointer;background:0 0;border:0;justify-self:end;padding:10px 0}.about-redesign .about-nav button:hover{color:#1677ff}.about-redesign .about-canvas{min-height:100%;overflow:hidden}.about-redesign .about-hero-new{background:#ededec;border-radius:0 0 30px 30px;grid-template-columns:minmax(0,1fr) minmax(280px,420px);align-items:center;gap:clamp(48px,8vw,128px);min-height:calc(100svh - 56px);padding:clamp(72px,9vw,132px) max(6vw,56px);display:grid;overflow:hidden}.about-redesign .about-copy-new{width:min(100%,620px);animation:.7s cubic-bezier(.16,1,.3,1) .12s both about-rise}.about-redesign .about-selection{color:#1677ff;font:500 12px var(--sans);letter-spacing:.08em;margin-bottom:28px;display:block}.about-redesign .about-copy-new h1{max-width:480px;font:500 clamp(36px,4vw,62px)/1.08 var(--sans);letter-spacing:-.055em;margin:0 0 22px}.about-redesign .about-copy-new>p{color:#1717169e;max-width:430px;margin:0;font-size:15px;line-height:1.85}.about-redesign .about-copy-new dl{border-top:1px solid #1717161f;gap:30px;margin:38px 0 0;padding-top:18px;display:flex}.about-redesign .about-copy-new dl div{color:#171716;flex-direction:column;gap:7px;font-size:12px;line-height:1.5;display:flex}.about-redesign .about-copy-new dt{color:#1717166b;font:500 9px var(--mono);letter-spacing:.12em}.about-redesign .about-copy-new dd{margin:0}.about-redesign .about-copy-new dd i{background:#50c878;border-radius:50%;width:6px;height:6px;margin-right:6px;display:inline-block}.about-redesign .about-person-new{pointer-events:none;place-self:center end;width:min(100%,390px);height:min(62vh,560px);margin:0}.about-redesign .about-person-new img{object-fit:contain;object-position:center bottom;mix-blend-mode:multiply;width:100%;height:100%}.about-redesign .about-person-new figcaption{display:none}.about-redesign .about-records{background:#f7f7f4;padding:clamp(80px,10vw,150px) max(6vw,56px)}.about-redesign .about-records>header{justify-content:space-between;align-items:end;margin-bottom:54px;display:flex}.about-redesign .about-records>header span{font-size:26px;font-weight:500}.about-redesign .about-records>header p{color:#1717166b;font:500 10px var(--mono);letter-spacing:.12em;margin:0}.about-redesign .about-record-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(28px,5vw,80px);display:grid}.about-redesign .about-record-grid article{border-top:1px solid #17171633;padding-top:18px}.about-redesign .about-record-grid article>span{color:#1677ff;font:500 10px var(--mono);letter-spacing:.12em;margin-bottom:30px;display:block}.about-redesign .about-record-grid h2{letter-spacing:-.025em;margin:7px 0;font-size:21px;font-weight:500}.about-redesign .about-record-grid time{color:#1717166b;font:500 10px var(--mono);margin-top:22px;display:block}.about-redesign .about-record-grid p{color:#17171685;margin:0;font-size:12px;line-height:1.75}.about-redesign .about-tool-list{flex-wrap:wrap;gap:8px;margin-bottom:26px;display:flex}.about-redesign .about-tool-list b{border:1px solid #17171624;border-radius:999px;padding:8px 11px;font-size:11px;font-weight:500}.about-redesign .about-footer-new{color:#f7f7f4;background:#171716;grid-template-columns:1fr auto 1fr;align-items:end;padding:48px max(6vw,56px) 56px;font-size:12px;display:grid}.about-redesign .about-footer-new div{flex-direction:column;gap:7px;display:flex}.about-redesign .about-footer-new span{color:#f7f7f473;font:500 9px var(--mono);letter-spacing:.12em}.about-redesign .about-footer-new a{color:inherit;text-decoration:none}.about-redesign .about-footer-new a:hover{color:#70aaff}.about-redesign .about-footer-new button{color:#f7f7f4;font:500 12px var(--sans);cursor:pointer;background:0 0;border:0;justify-self:end}@keyframes about-page-in{0%{opacity:0}to{opacity:1}}@keyframes about-rise{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}@keyframes about-person-in{0%{opacity:0;transform:translate(-50%,22px)}to{opacity:1;transform:translate(-50%)}}@media (width<=850px){.about-redesign .about-nav{grid-template-columns:1fr auto;height:56px;padding:0 20px}.about-redesign .about-mark{font-size:38px}.about-redesign .about-hero-new{border-radius:0 0 22px 22px;grid-template-columns:1fr;gap:42px;min-height:0;padding:64px 24px 0}.about-redesign .about-copy-new{width:auto}.about-redesign .about-copy-new h1{max-width:390px;font-size:38px}.about-redesign .about-copy-new>p{max-width:360px;font-size:13px}.about-redesign .about-copy-new dl{flex-wrap:wrap;gap:18px;margin-top:24px}.about-redesign .about-copy-new dl div{min-width:90px}.about-redesign .about-person-new{justify-self:center;width:min(82vw,400px);height:460px}.about-redesign .about-records{padding:72px 24px}.about-redesign .about-records>header{margin-bottom:44px}.about-redesign .about-record-grid{grid-template-columns:1fr;gap:56px}.about-redesign .about-footer-new{grid-template-columns:1fr;align-items:start;gap:28px;padding:40px 24px}.about-redesign .about-footer-new>div:nth-child(2),.about-redesign .about-footer-new button{justify-self:start}}@media (prefers-reduced-motion:reduce){.about-page.about-redesign,.about-redesign .about-copy-new,.about-redesign .about-person-new{animation:none!important}}.project-modal.project-redesign{z-index:900;color:#171716;font-family:var(--sans);background:#ededec;grid-template-columns:minmax(0,1fr) 250px;gap:0;padding:0;animation:.42s ease-out both project-open;display:grid;position:fixed;inset:0;overflow:hidden}.project-redesign .project-topbar{z-index:30;color:#17171673;height:56px;font:500 9px/1 var(--mono);letter-spacing:.08em;-webkit-backdrop-filter:blur(18px);background:#ededecd6;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 clamp(24px,4vw,68px);display:grid;position:absolute;inset:0 0 auto}.project-redesign .project-mark{color:#171716;font:650 46px/1 var(--sans);letter-spacing:-.12em;justify-self:start}.project-redesign .project-topbar button{color:#171716;cursor:pointer;background:0 0;border:0;min-height:44px;padding:10px 0;font-size:12px;position:absolute;top:50%;right:clamp(24px,4vw,68px);transform:translateY(-50%)}.project-redesign .project-topbar button:hover{color:#1677ff}.project-redesign .project-story{scroll-behavior:smooth;scrollbar-width:thin;background:#ededec;border:0;grid-column:1;overflow-y:auto}.project-redesign .case-cover{flex-direction:column;justify-content:flex-end;width:100%;min-height:100svh;padding:160px max(6vw,64px) 74px;display:flex;position:relative;overflow:hidden}.project-redesign .case-title{z-index:2;max-width:900px;position:relative}.project-redesign .case-selection{font:500 11px var(--mono);letter-spacing:.1em;background:#1677ff26;margin-bottom:32px;padding:4px 8px;display:inline-block;position:relative;box-shadow:inset 2px 0 #1677ff,inset -2px 0 #1677ff}.project-redesign .case-selection i{background:#1677ff;border-radius:50%;width:9px;height:9px;position:absolute}.project-redesign .case-selection i:first-child{top:0;left:1px;transform:translate(-50%,-50%)}.project-redesign .case-selection i:last-child{bottom:0;right:1px;transform:translate(50%,50%)}.project-redesign .case-cover h1{max-width:900px;font:500 clamp(58px,8vw,118px)/.95 var(--sans);letter-spacing:-.04em;text-wrap:balance;margin:0}.project-redesign .case-title>p{color:#17171694;max-width:610px;margin:30px 0 0;font-size:15px;line-height:1.8}.project-redesign .case-facts{z-index:2;grid-template-columns:repeat(3,minmax(120px,190px));gap:28px;margin:70px 0 0;display:grid;position:relative}.project-redesign .case-facts div{border-top:1px solid #17171629;padding-top:13px}.project-redesign .case-facts dt{color:#17171666;font:500 9px var(--mono);letter-spacing:.1em;margin-bottom:8px}.project-redesign .case-facts dd{margin:0;font-size:12px}.project-redesign .case-ghost{z-index:0;color:#ffffffb8;font:400 clamp(100px,16vw,240px)/1 var(--sans);letter-spacing:.01em;writing-mode:vertical-rl;position:absolute;top:12%;right:-.04em}.project-redesign .project-image{color:#fff;width:calc(100% - max(8vw,96px));height:min(76vh,760px);font:500 11px var(--mono);letter-spacing:.08em;background:#222327;border-radius:18px;justify-content:space-between;align-items:flex-end;margin:0 auto;padding:30px;display:flex;position:relative;overflow:hidden}.project-redesign .project-image:before,.project-redesign .project-image:after{content:"";background:#ffffffeb;border-radius:14px;position:absolute}.project-redesign .project-image:before{inset:11% 38% 16% 8%;transform:rotate(-3deg)}.project-redesign .project-image:after{background:#ffffffb8;inset:20% 8% 9% 58%;transform:rotate(3deg)}.project-redesign .project-image span,.project-redesign .project-image small{z-index:2;position:relative}.project-redesign .project-image small{opacity:.58;font:inherit}.project-redesign .project-image.alt{color:#171716;background:#bbc4e6}.project-redesign .project-image.alt:before{background:#eef1ff}.project-redesign .project-image.alt:after{background:#5469bf}.project-redesign .project-image.light{color:#171716;background:#d7c2a2}.project-redesign .project-image.light:before{background:#f5ead7}.project-redesign .project-image.light:after{background:#9e7b53}.project-redesign .case-analysis{grid-template-columns:minmax(0,1.35fr) minmax(240px,.65fr);align-content:center;column-gap:8vw;width:calc(100% - max(12vw,140px));min-height:620px;margin:0 auto;padding:150px 0;display:grid;position:relative}.project-redesign .case-analysis>span{color:#1677ff;font:500 10px var(--mono);letter-spacing:.12em;grid-column:1/-1;margin-bottom:46px}.project-redesign .case-analysis h2{font:500 clamp(40px,5vw,72px)/1.08 var(--sans);letter-spacing:-.035em;grid-column:1;margin:0}.project-redesign .case-analysis>p{color:#1717168f;grid-column:2;margin:8px 0 0;font-size:14px;line-height:1.9}.project-redesign .case-analysis>aside{border-top:1px solid #17171629;grid-column:2;margin-top:40px;padding-top:16px}.project-redesign .case-analysis>aside b{font-size:12px;font-weight:500}.project-redesign .case-analysis>aside p{color:#17171685;font-size:12px;line-height:1.8}.project-redesign .case-analysis.reverse h2{grid-column:2}.project-redesign .case-analysis.reverse>p{grid-area:3/1;max-width:430px}.project-redesign .case-analysis.result{min-height:680px}.project-redesign .case-footer{color:#f7f7f4;background:#171716;justify-content:space-between;align-items:end;padding:72px max(6vw,64px);display:flex}.project-redesign .case-footer div{flex-direction:column;gap:10px;display:flex}.project-redesign .case-footer span{color:#f7f7f466;font:500 9px var(--mono);letter-spacing:.12em}.project-redesign .case-footer strong{font-size:clamp(24px,3vw,42px);font-weight:500}.project-redesign .case-footer button{color:#fff;background:#1677ff;border:0;border-radius:999px;padding:14px 20px;font-size:12px}.project-redesign .project-rail{background:#f7f7f4;border-left:1px solid #1717161a;flex-direction:column;grid-column:2;padding:112px 26px 28px;display:flex}.project-redesign .project-rail>div:first-child{border-bottom:1px solid #17171624;justify-content:space-between;align-items:baseline;padding-bottom:22px;display:flex}.project-redesign .project-rail span{color:#1717166b;font:500 9px var(--mono);letter-spacing:.1em}.project-redesign .project-rail strong{font:500 12px var(--mono)}.project-redesign .project-rail ol{margin:34px 0;padding:0;list-style:none}.project-redesign .project-rail li{border-bottom:1px solid #1717161a}.project-redesign .project-rail a{color:#1717168f;padding:15px 0;font-size:12px;display:block}.project-redesign .project-rail a:hover{color:#1677ff}.project-redesign .case-nav{border-top:1px solid #17171624;justify-content:space-between;margin-top:auto;padding-top:20px;display:flex}.project-redesign .case-nav button{background:0 0;border:0;padding:0;font-size:11px}.project-redesign .case-nav button:hover{color:#1677ff}@keyframes project-open{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@media (width<=850px){.project-modal.project-redesign{display:block;overflow-y:auto}.project-redesign .project-topbar{grid-template-columns:1fr auto;height:56px;padding:0 20px;position:fixed}.project-redesign .project-topbar button{right:20px}.project-redesign .project-story{overflow:visible}.project-redesign .case-cover{min-height:760px;padding:130px 24px 56px}.project-redesign .case-cover h1{font-size:16vw}.project-redesign .case-ghost{opacity:.65;font-size:32vw;top:17%}.project-redesign .case-facts{grid-template-columns:1fr;gap:12px;margin-top:48px}.project-redesign .case-facts div{justify-content:space-between;display:flex}.project-redesign .case-facts dt{margin:0}.project-redesign .project-image{border-radius:14px;width:calc(100% - 32px);height:62vh;min-height:440px;padding:20px}.project-redesign .case-analysis,.project-redesign .case-analysis.reverse{width:calc(100% - 48px);min-height:0;padding:100px 0;display:block}.project-redesign .case-analysis>span{margin-bottom:34px;display:block}.project-redesign .case-analysis h2{font-size:42px}.project-redesign .case-analysis>p{margin-top:32px}.project-redesign .case-analysis>aside{margin-top:38px}.project-redesign .case-footer{padding:54px 24px;display:block}.project-redesign .case-footer button{margin-top:32px}.project-redesign .project-rail{display:none}}@media (prefers-reduced-motion:reduce){.project-modal.project-redesign{animation:none!important}}.project-modal.project-redesign{grid-template-columns:minmax(0,1fr) clamp(360px,31vw,480px);padding-top:56px}.project-redesign .project-longview{scrollbar-width:thin;background:#e5e5e3;min-width:0;height:100%;padding:28px;overflow-y:auto}.project-redesign .project-long-image{border-radius:16px;width:100%;height:auto;margin-inline:auto;display:block}.project-redesign .long-image-placeholder{color:#ffffffb8;width:100%;min-height:2400px;font:500 10px var(--mono);letter-spacing:.08em;background:#242529;border-radius:16px;justify-content:space-between;align-items:flex-start;padding:30px;display:flex;position:relative;overflow:hidden}.project-redesign .long-image-placeholder:before,.project-redesign .long-image-placeholder:after{content:"";background:#ffffffeb;border-radius:14px;position:absolute}.project-redesign .long-image-placeholder:before{inset:8% 36% 70% 7%;transform:rotate(-2deg)}.project-redesign .long-image-placeholder:after{background:#cbd5f8;inset:30% 7% 42% 42%;transform:rotate(2deg)}.project-redesign .long-image-placeholder span,.project-redesign .long-image-placeholder small{z-index:2;position:relative}.project-redesign .long-image-placeholder small{font:inherit;opacity:.56}.project-redesign .project-notes{scrollbar-width:thin;background:#f7f7f4;border-left:1px solid #1717161a;height:100%;padding:38px clamp(28px,3vw,46px) 30px;overflow-y:auto}.project-redesign .notes-index{border-bottom:1px solid #17171624;justify-content:space-between;align-items:baseline;padding-bottom:20px;display:flex}.project-redesign .notes-index span,.project-redesign .notes-index strong{font:500 9px var(--mono);letter-spacing:.1em}.project-redesign .notes-index span{color:#1717166b}.project-redesign .notes-title{padding:56px 0 44px}.project-redesign .notes-title .case-selection{margin-bottom:26px}.project-redesign .notes-title h1{font:500 clamp(38px,3.5vw,58px)/1.05 var(--sans);letter-spacing:-.035em;text-wrap:balance;margin:0}.project-redesign .notes-title>p{color:#17171694;margin:22px 0 0;font-size:13px;line-height:1.8}.project-redesign .notes-facts{border-top:1px solid #17171624;margin:0 0 66px}.project-redesign .notes-facts div{border-bottom:1px solid #1717161a;grid-template-columns:72px 1fr;gap:18px;padding:14px 0;display:grid}.project-redesign .notes-facts dt{color:#1717166b;font:500 9px var(--mono);letter-spacing:.08em}.project-redesign .notes-facts dd{margin:0;font-size:11px;line-height:1.65}.project-redesign .project-notes section{padding:0 0 62px}.project-redesign .project-notes section>span{color:#1677ff;font:500 9px var(--mono);letter-spacing:.1em;margin-bottom:18px;display:block}.project-redesign .project-notes section h2{font:500 clamp(22px,2vw,29px)/1.25 var(--sans);letter-spacing:-.025em;margin:0 0 20px}.project-redesign .project-notes section p{color:#1717168f;margin:0;font-size:12px;line-height:1.9}.project-redesign .project-notes .case-nav{background:linear-gradient(#f7f7f480,#f7f7f4 34%);margin:0 -46px -30px;padding:22px 46px 30px;position:sticky;bottom:-30px}@media (width<=850px){.project-modal.project-redesign{padding-top:56px;display:block;overflow-y:auto}.project-redesign .project-longview{height:auto;padding:14px;overflow:visible}.project-redesign .long-image-placeholder{border-radius:12px;min-height:1500px;padding:20px}.project-redesign .long-image-placeholder small{display:none}.project-redesign .project-long-image{width:100%}.project-redesign .project-notes{border:0;height:auto;padding:62px 24px 32px;overflow:visible}.project-redesign .notes-title{padding-top:46px}.project-redesign .notes-title h1{font-size:46px}.project-redesign .project-notes .case-nav{background:0 0;margin:0;padding:24px 0 0;position:static}}.footer.shell{color:#17171685;background:#ededec;border-top:0;grid-template-columns:1fr auto 1fr 1fr;column-gap:clamp(28px,5vw,88px);width:100%;height:110px;margin:0;padding-inline:max(32px,50vw - 750px)}.footer.shell button{color:inherit;font:inherit;background:0 0;border:0;justify-self:center;padding:8px 0}.footer.shell button:hover,.footer.shell a:hover{color:#1677ff}.footer.shell a:first-of-type{text-align:center}.footer.shell a:last-child{text-align:right}@media (width<=850px){.footer.shell{grid-template-columns:1fr 1fr;gap:24px;height:auto;min-height:126px;padding:30px 18px}.footer.shell button{justify-self:end}.footer.shell a:first-of-type{text-align:left}.footer.shell a:last-child{text-align:right}}.hero-identity .hero-scroll{background:0 0;border-top:0}.hero-identity .hero-scroll:hover{color:#171716;background:0 0}.works{background:#fafaf7;box-shadow:0 0 0 100vmax #fafaf7}.project-redesign .project-notes{--notes-divider:#17171613;border-left-color:var(--notes-divider)}.project-redesign .notes-index{border-bottom-color:var(--notes-divider)}.project-redesign .notes-facts{border-top:0}.project-redesign .notes-facts div{border-top:1px solid var(--notes-divider);border-bottom:0}.project-redesign .notes-facts div:last-child{border-bottom:1px solid var(--notes-divider)}.project-redesign .project-notes .case-nav{border-top-color:var(--notes-divider)}.footer.shell button{color:#fff;min-height:42px;font:500 13px var(--sans);letter-spacing:.01em;background:#171716;border-radius:999px;padding:0 20px;transition:background-color .2s,transform .2s}.footer.shell button:hover{color:#fff;background:#1677ff;transform:translateY(-2px)}.footer.shell button:focus-visible{outline-offset:3px;outline:2px solid #1677ff}.footer.shell{grid-template-columns:1fr auto 1fr}.footer.shell .footer-contact{text-align:center;justify-self:center}.footer.shell .footer-actions{justify-self:end;align-items:center;gap:30px;display:flex}.footer.shell .footer-actions button{color:#fff;background:#1677ff;box-shadow:0 8px 22px #1677ff29}.footer.shell .footer-actions button:hover{color:#fff;background:#0868e8;box-shadow:0 10px 26px #1677ff38}.footer.shell .footer-actions>a{text-align:right;color:#17171685}@media (width<=850px){.footer.shell{grid-template-columns:1fr;gap:22px}.footer.shell .footer-contact{text-align:left;justify-self:start}.footer.shell .footer-actions{justify-content:space-between;justify-self:stretch}}.project-redesign .project-image-stack{flex-direction:column;gap:24px;display:flex}.work-group .work-card{flex-direction:column;align-items:stretch;min-width:0;display:flex}.work-group .work-meta{text-align:left;flex-direction:column;flex:1;width:100%;min-width:0;display:flex}.work-group .work-meta p{flex:1;width:100%;max-width:none;min-height:3.1em;margin:10px 0 16px;line-height:1.55}.work-group .work-meta small{margin-top:auto}@media (width>=851px){.hero-identity .hero-intro-card{width:270px}.footer.shell{align-items:center;height:76px;min-height:0;padding-block:12px}}@media (width<=850px){.footer.shell{row-gap:14px;min-height:0;padding-block:20px}}.about-redesign .about-mark{letter-spacing:0;width:36px;height:19px;font-size:0;display:block}.about-redesign .about-mark svg{width:100%;height:100%;display:block;overflow:visible}.about-redesign .about-mark path{fill:none;stroke:currentColor;stroke-width:3.2px;stroke-linecap:round;stroke-linejoin:round}.project-redesign .project-mark{letter-spacing:0;width:36px;height:19px;font-size:0;display:block}.project-redesign .project-mark svg{width:100%;height:100%;display:block;overflow:visible}.project-redesign .project-mark path{fill:none;stroke:currentColor;stroke-width:3.2px;stroke-linecap:round;stroke-linejoin:round}.institute-case-frame{aspect-ratio:1/4.32;background:#f4f4f4;border:0;border-radius:16px;width:100%;height:auto;display:block}.hero-software-dock{z-index:5;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f7f8fab3;border:1px solid #ffffffe6;border-radius:22px;padding:9px 12px;position:absolute;bottom:62px;left:50%;transform:translate(-50%);box-shadow:0 12px 28px #1e23281f,inset 0 1px 1px #fff}.hero-software-dock ul{align-items:center;gap:10px;margin:0;padding:0;list-style:none;display:flex}.hero-software-dock li{width:44px;height:44px;transition:transform .2s}.hero-software-dock img{object-fit:contain;filter:drop-shadow(0 3px 4px #191e2324);width:100%;height:100%;display:block}.hero-software-dock .is-rive{background:#fff;border-radius:11px;place-items:center;display:grid;box-shadow:0 3px 8px #191e231f}.hero-software-dock .is-rive img{filter:none;width:27px;height:27px}@media (hover:hover){.hero-software-dock li:hover{transform:translateY(-4px)}}.hero-identity.is-ready .hero-widget,.hero-identity.is-ready .hero-person,.hero-identity.is-ready .hero-heading{animation-duration:.5s;animation-delay:0s}@media (width<=850px){.hero-software-dock{border-radius:18px;padding:7px 9px;bottom:58px;left:50%}.hero-software-dock ul{gap:7px}.hero-software-dock li{width:32px;height:32px}.hero-software-dock .is-rive{border-radius:8px}.hero-software-dock .is-rive img{width:20px;height:20px}}@media (prefers-reduced-motion:reduce){.hero-software-dock li{transition:none}.hero-software-dock li:hover{transform:none}}.about-redesign .about-copy-new h1{letter-spacing:-.035em;max-width:650px;font-size:clamp(32px,3.5vw,54px);line-height:1.3}.about-redesign .about-copy-new>p{color:#555750;max-width:560px;font-size:16px}.about-redesign .about-copy-new>p+p{margin-top:16px}.about-cta{flex-wrap:wrap;align-items:center;gap:16px;margin-top:28px;display:flex}.about-cta button,.about-cta a{background:0 0;border:1px solid #171716;border-radius:6px;min-height:44px;padding:12px 20px;font-size:14px}.about-cta button{color:#fff;background:#171716}.about-cta a:hover,.about-cta button:hover{color:#fff;background:#1677ff;border-color:#1677ff}.about-redesign :is(button,a):focus-visible{outline-offset:5px;outline:3px solid #1677ff}.about-redesign .about-nav button{min-width:60px;min-height:44px}.about-redesign .about-record-grid p{color:#555750;margin-top:16px;font-size:16px;line-height:1.9}.about-redesign .about-record-grid article>span{color:#155dc2;font-size:12px}.about-redesign .about-experience{padding-top:0}.about-timeline article{border-top:1px solid #d3d3cc;grid-template-columns:190px minmax(0,1fr);gap:40px;padding:32px 0;display:grid}.about-timeline time{color:#60625b;font:13px/2 var(--mono)}.about-redesign .about-timeline h2{letter-spacing:0;margin:0 0 6px;font-size:24px;font-weight:500;line-height:1.5}.about-timeline h3{color:#155dc2;margin:0 0 14px;font-size:14px;font-weight:500}.about-timeline p{color:#555750;max-width:760px;margin:0;font-size:16px;line-height:1.9}.about-support{border-top:1px solid #d3d3cc;grid-template-columns:1.4fr 1fr;gap:40px;margin-top:24px;padding-top:32px;display:grid}.about-support h3{margin:0 0 18px;font-size:15px;font-weight:500}.about-support p{color:#555750;margin:0;font-size:14px;line-height:1.9}.about-redesign .about-tool-list b{font-size:13px}.about-redesign .about-footer-new{grid-template-columns:1fr auto;gap:28px}.about-redesign .about-footer-new h2{letter-spacing:0;margin:8px 0;font-size:26px;line-height:1.5}.about-footer-new p{color:#bdbdb6;margin:0;font-size:14px;line-height:1.8}.about-redesign .about-footer-new>a{overflow-wrap:anywhere;padding:12px 0;font-size:16px}.about-redesign .about-footer-new button{grid-column:2;min-height:44px}@media (width<=850px){.about-redesign .about-copy-new>p{max-width:none;font-size:16px}.about-timeline article{grid-template-columns:1fr;gap:12px}.about-support,.about-redesign .about-footer-new{grid-template-columns:1fr}.about-redesign .about-footer-new button{grid-column:1}.about-redesign .about-timeline h2{font-size:21px}.about-redesign .about-copy-new h1{font-size:clamp(30px,7.5vw,46px)}}.about-page.about-redesign{color:#20201e;background:#f7f7f5;animation:none}.about-redesign .about-nav{background:#f7f7f5f0;border-bottom:0;padding-inline:clamp(24px,5vw,80px)}.about-editorial{grid-template-columns:minmax(220px,.95fr) minmax(200px,.8fr) minmax(330px,1.45fr);align-content:center;align-items:start;gap:clamp(36px,5vw,80px);width:min(1240px,100% - 112px);min-height:calc(100svh - 56px);margin:0 auto;padding:100px 0 88px;display:grid}.about-identity{min-width:0;padding-top:8px;position:relative}.about-editorial-portrait{width:168px;height:168px;margin:0 auto 24px}.about-editorial-portrait img{object-fit:contain;object-position:center bottom;filter:grayscale();mix-blend-mode:multiply;width:100%;height:100%;display:block}.about-greeting{text-align:center}.about-greeting h1{font:500 25px/1.5 var(--sans);letter-spacing:-.04em;margin:0 0 8px}.about-greeting p{color:#565652;margin:0;font-size:15px;line-height:1.9}.about-details{gap:32px;min-width:0;padding-top:8px;display:grid}.about-redesign .about-editorial h2{font-family:var(--body);letter-spacing:-.01em;margin:0 0 18px;font-size:15px;font-weight:600;line-height:1.5}.about-editorial h2 span{font:9px/1.7 var(--mono);letter-spacing:.1em;color:#73736b;margin-top:2px;display:block}.about-details p,.about-details a{color:#53534e;margin:0;font-size:13px;line-height:1.95}.about-details a{overflow-wrap:anywhere;width:fit-content;min-height:32px;display:block}.about-details a:hover{color:#2156c9;text-underline-offset:4px;text-decoration:underline}.about-history{min-width:0;padding:8px 0 0 36px;position:relative}.about-history:before{content:"";background:#d3d3cd;width:1px;position:absolute;top:8px;bottom:0;left:-36px}.about-history article{margin-top:28px}.about-history time{font:11px/1.8 var(--mono);color:#73736b;margin-bottom:6px;display:block}.about-history h3{font-family:var(--body);margin:0;font-size:medium;font-weight:400;line-height:1.65}.about-role{color:#53534e;margin:2px 0 10px;font-size:12px;line-height:1.8;display:block}.about-history p{color:#62625a;margin:0;font-size:13px;line-height:1.9}.about-back-to-work{color:#20201e;background:0 0;border:0;border-bottom:1px solid #20201e;justify-content:space-between;align-items:center;gap:38px;min-height:44px;margin-top:30px;padding:12px 0;font-size:13px;transition:color .2s,border-color .2s;display:flex}.about-back-to-work:hover{color:#2156c9;border-color:#2156c9}@media (width>=1600px){.about-editorial{gap:80px;padding-block:130px}.about-editorial-portrait{height:390px}}@media (width<=1100px){.about-editorial{grid-template-columns:minmax(180px,.85fr) minmax(170px,.8fr) minmax(280px,1.4fr);gap:30px;width:calc(100% - 64px);padding-block:80px}.about-history{padding-left:24px}.about-editorial-portrait{height:290px}.about-greeting{padding-left:0}.about-greeting h1{font-size:22px}}@media (width<=850px){.about-editorial{grid-template-columns:1fr 1.2fr;gap:48px 32px;width:calc(100% - 48px);padding:70px 0}.about-identity{padding-top:8px}.about-history{border-top:1px solid #d3d3cd;grid-column:1/-1;padding:32px 0 0}.about-history:before{display:none}.about-editorial-portrait{height:300px}.about-history article{grid-template-columns:125px 1fr;column-gap:20px;display:grid}.about-history time{grid-row:1/4}.about-history h3,.about-history .about-role,.about-history p{grid-column:2}.about-history p{font-size:14px}}@media (width<=480px){.about-editorial{grid-template-columns:1fr;gap:40px;padding-top:58px}.about-identity{width:100%;max-width:280px;margin:auto}.about-editorial-portrait{height:310px;margin-bottom:20px}.about-greeting h1{font-size:25px}.about-details{grid-template-columns:1fr 1fr;gap:28px 20px}.about-details section:first-child{grid-column:1/-1}.about-history article{margin-top:30px;display:block}.about-history time{margin-bottom:8px}.about-handwriting{left:0}.about-details p,.about-details a{font-size:13px}}.about-editorial-portrait{border-radius:50%;width:168px;max-width:100%;height:168px;margin:0 auto 24px;overflow:hidden}.about-editorial-portrait img{object-fit:cover;object-position:50% 20.6%;filter:none;mix-blend-mode:normal}@media (width<=1100px) and (width>=851px){.about-editorial-portrait{width:150px;height:150px}}@media (width<=480px){.about-editorial-portrait{width:168px;height:168px;margin-top:0}}.hero-identity .hero-widget{-webkit-backdrop-filter:blur(18px);border:1px solid #ffffff73;border-radius:22px;box-shadow:0 12px 28px #1e23281f,inset 0 1px 1px #ffffff8c}.hero-identity .hero-contact-card.incoming-call{border:1px solid #ffffff73;border-radius:22px;grid-template-columns:40px minmax(0,1fr) auto;gap:10px;width:280px;min-height:64px;padding:10px 12px;box-shadow:0 12px 28px #1e23281f,inset 0 1px 1px #ffffff8c}.hero-contact-card.incoming-call .hero-avatar{width:40px;height:40px}.hero-software-dock li{border-radius:11px;place-items:center;width:44px;height:44px;display:grid;overflow:hidden}.hero-software-dock li img{object-fit:contain;width:44px;height:44px}.hero-software-dock li:not(.is-rive) img[src$=\.png]{transform:scale(1.16)}.hero-software-dock .is-rive img{width:27px;height:27px}@media (width>=851px){.hero-identity .hero-intro-card{width:270px;top:32%;left:calc(50% - 375px)}.hero-identity .hero-contact-card.incoming-call{z-index:4;bottom:23%;left:calc(50% - 330px)}.hero-identity .hero-decor.hero-plant{bottom:16%}}@media (width<=850px){.hero-identity .hero-contact-card.incoming-call{grid-template-columns:36px minmax(0,1fr) auto;gap:8px;width:240px;padding:9px 10px;bottom:20%;left:8px}.hero-contact-card.incoming-call .hero-avatar{width:36px;height:36px}.hero-identity .hero-decor.hero-plant{bottom:16%}.hero-software-dock li,.hero-software-dock li img{width:32px;height:32px}.hero-software-dock .is-rive img{width:20px;height:20px}}.hero-identity .hero-decor.hero-plant{aspect-ratio:1372/1146;opacity:1;isolation:isolate;height:auto;bottom:12%}.hero-identity .hero-decor.hero-plant img{z-index:1;object-fit:contain;opacity:1;width:100%;height:100%;position:relative}.hero-identity .hero-decor.hero-plant:before{content:"";z-index:0;filter:blur(3px);background:#23221c3d;border-radius:50%;height:7%;position:absolute;bottom:1%;left:27%;right:23%}.hero-identity .hero-decor.hero-plant .decor-selection{z-index:2;inset:3% 8%}@media (width<=850px){.hero-identity .hero-decor.hero-plant{height:auto;bottom:12%}}.hero-identity .hero-person{bottom:calc(6.5% + var(--scene-lift))}.hero-identity .hero-decor.hero-plant{bottom:calc(12% + var(--scene-lift))}@media (width<=850px){.hero-identity .hero-person{bottom:calc(8% + var(--scene-lift))}}.hero-identity{--scene-lift:7%}.hero-identity .hero-heading,.hero-identity .hero-intro-card,.hero-identity .hero-tools-group,.hero-identity .hero-contact-card.incoming-call{translate:0 -20px}.hero-identity .hero-heading span{isolation:isolate;background:0 0;box-shadow:inset 2px 0 #1473e6}.hero-label-selection{z-index:-1;transform-origin:0;background:#609dff6b;border-right:2px solid #1473e6;width:100%;animation:5s ease-in-out infinite hero-label-sweep;position:absolute;top:0;bottom:0;left:0}.hero-identity .hero-heading span:after{animation:5s ease-in-out infinite hero-label-handle;left:calc(100% - 5px);right:auto}@keyframes hero-label-sweep{0%,5%{opacity:0;width:0}6%{opacity:1;width:0}22%,99.99%{opacity:1;width:100%}to{opacity:0;width:0}}@keyframes hero-label-handle{0%,5%{opacity:0;left:0}6%{opacity:1;left:0}22%,99.99%{opacity:1;left:100%}to{opacity:0;left:0}}@media (prefers-reduced-motion:reduce){.hero-label-selection,.hero-identity .hero-heading span:after{animation:none}}.hero-identity .hero-heading strong{font-weight:400}.hero-label-selection{box-sizing:border-box;border-right:2px solid #1473e6;animation:3s linear infinite hero-label-sweep}.hero-identity .hero-heading span:before{top:0;left:0;transform:translate(-50%,-50%)}.hero-identity .hero-heading span:after{animation:3s linear infinite hero-label-handle;bottom:0;left:100%;right:auto;transform:translate(-50%,50%)}@media (prefers-reduced-motion:reduce){.hero-label-selection,.hero-identity .hero-heading span:after{animation:none}}.hero-identity.is-ready .hero-decor.hero-plant{animation:.85s cubic-bezier(.16,1,.3,1) .18s both plant-soft-enter}.hero-identity.is-ready .hero-software-dock{animation:.7s cubic-bezier(.16,1,.3,1) .3s both software-tray-enter}@keyframes plant-soft-enter{0%{opacity:0;translate:0 18px}to{opacity:1;translate:0}}@keyframes software-tray-enter{0%{opacity:0;translate:0 32px}to{opacity:1;translate:0}}@media (prefers-reduced-motion:reduce){.hero-identity.is-ready .hero-decor.hero-plant,.hero-identity.is-ready .hero-software-dock{animation:none}}.hero-identity.is-ready .hero-decor.hero-plant:not(.plant-ready){opacity:0;animation:none}.hero-identity.is-ready .hero-decor.hero-plant.plant-ready{animation:.85s cubic-bezier(.16,1,.3,1) both plant-soft-enter}.hero-identity.is-ready .hero-decor.hero-plant img,.hero-identity.is-ready .hero-decor.hero-plant .decor-selection{opacity:1!important;animation:none!important;transform:none!important}@media (prefers-reduced-motion:reduce){.hero-identity.is-ready .hero-decor.hero-plant.plant-ready{animation:none}}.hero-label-selection{animation:.5s ease-out .15s both hero-label-select-once}.hero-identity .hero-heading span:after{animation:.5s ease-out .15s both hero-label-handle-once}@keyframes hero-label-select-once{0%{width:0}to{width:100%}}@keyframes hero-label-handle-once{0%{left:0}to{left:100%}}@media (prefers-reduced-motion:reduce){.hero-label-selection,.hero-identity .hero-heading span:after{animation:none}}.hero-identity .hero-heading span:before,.hero-identity .hero-heading span:after{width:9px;height:9px}@media (width>=851px){.hero-identity{--person-half:min(22.1vw,328px);--scene-lift:5%;height:calc(85svh - 74px);min-height:560px}.hero-identity .hero-person{width:min(44.2vw,655px)}.hero-identity .hero-heading{top:6.5%}.hero-identity .hero-heading strong{margin-top:26px;font-size:clamp(64px,7.2vw,110px)}.hero-identity .hero-intro-card{transform-origin:100%;left:calc(50% - 340px);scale:.9}.hero-identity .hero-tools-group{transform-origin:0 0;scale:.9}.hero-identity .hero-contact-card.incoming-call{transform-origin:100%;left:calc(50% - 300px);scale:.9}.hero-identity .hero-decor.hero-plant{width:min(8.95vw,131px)}.hero-software-dock{transform-origin:0;bottom:48px;scale:.9}.hero-identity .hero-scroll{color:#454541;height:42px;font-size:12px;font-weight:600}.works{padding-top:28px}}@media (width<=850px){.hero-identity{min-height:max(650px,90svh - 62px)}.works{padding-top:32px}}@media (width>=851px){.hero-software-dock{scale:1.05}}.hero-scroll.reveal-visible,.work-card.reveal-visible,.work-card.reveal-pending:focus-visible,.hero-scroll.reveal-pending:focus-visible{opacity:1;translate:0}@media (prefers-reduced-motion:reduce){.hero-scroll.reveal-pending,.work-card.reveal-pending{opacity:1;transition:none;translate:none}}.hero-scroll.reveal-pending{translate:0 -18px}.hero-scroll.reveal-visible,.hero-scroll.reveal-pending:focus-visible{translate:0}@media (prefers-reduced-motion:reduce){.hero-scroll.reveal-pending{translate:none}}@media (width>=851px){.hero-software-dock{bottom:36px}}@media (width<=850px){.hero-software-dock{bottom:48px}}.hero-scroll.reveal-pending,.work-card.reveal-pending{opacity:0;transition:none;translate:none}.hero-scroll.reveal-visible{animation:.7s ease-out both project-label-enter}.work-card.reveal-visible{animation:project-card-enter .8s cubic-bezier(.16,1,.3,1) var(--reveal-delay,0s) both}@keyframes project-label-enter{0%{opacity:0;translate:0 -24px}to{opacity:1;translate:0}}@keyframes project-card-enter{0%{opacity:0;translate:0 40px}to{opacity:1;translate:0}}.hero-scroll.reveal-pending:focus-visible,.work-card.reveal-pending:focus-visible{opacity:1;animation:none;translate:none}@media (prefers-reduced-motion:reduce){.hero-scroll.reveal-pending,.work-card.reveal-pending{opacity:1;animation:none;translate:none}}@media (width>=851px){.works{padding-top:12px}}@media (width<=850px){.works{padding-top:16px}}@media (width>=851px){.hero-software-dock{bottom:56px}.works{padding-top:32px}}@media (width<=850px){.hero-software-dock{bottom:68px}.works{padding-top:32px}}.hero-identity{margin-bottom:24px;overflow:visible}.hero-identity .hero-scroll{bottom:-24px}@media (width>=851px){.hero-software-dock{bottom:32px}}@media (width<=850px){.hero-software-dock{bottom:44px}}main{background:#fafaf7}.hero-identity .hero-scroll,.hero-identity .hero-scroll:hover{background:0 0}@media (width>=851px){.about-editorial{--about-column-gap:clamp(36px,5vw,80px)}.about-history:before{left:calc((36px - var(--about-column-gap)) / 2)}}@media (width>=851px) and (width<=1100px){.about-editorial{--about-column-gap:30px}.about-history:before{left:calc((24px - var(--about-column-gap)) / 2)}}@media (width>=851px){.about-history:before{left:var(--divider-left,-36px)}}.hero-identity .hero-scroll{color:#777770;font-weight:400}.hero-identity .hero-person,.hero-identity .hero-heading{pointer-events:none}.hero-identity .hero-intro-card button{pointer-events:auto;cursor:pointer;min-height:36px;position:relative}.about-redesign .about-back-to-work{color:#1967d2;background:0 0;border:0;justify-content:flex-start;gap:6px;min-height:44px;padding:10px 0;font-size:13px;font-weight:400;display:inline-flex}.about-redesign .about-back-to-work:hover{color:#155dc2;text-underline-offset:4px;text-decoration:underline}.about-redesign .about-greeting{text-align:center;flex-direction:column;align-items:center;width:100%;padding:0;display:flex}.about-redesign .about-greeting h1{font-family:var(--body);letter-spacing:-.01em;margin:0 0 12px;font-size:15px;font-weight:600;line-height:1.5}.about-redesign .about-greeting p{text-align:center;width:100%;margin:0;line-height:1.9}.hero-identity .hero-person .person-ground-shadow{pointer-events:none;opacity:0;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.hero-identity.is-ready .hero-person .person-ground-shadow{animation:.62s cubic-bezier(.2,.7,.2,1) 10ms both portrait-smooth-arrive}@media (prefers-reduced-motion:reduce){.hero-identity.is-ready .hero-person .person-ground-shadow{opacity:1;animation:none}}.hero-identity{--portrait-grade:saturate(.72) brightness(1.05) contrast(.97)}.hero-identity .hero-person img.person-seated{filter:var(--portrait-grade)!important}.hero-identity .hero-person{transform-origin:50% 100%;left:51%;scale:1.08}@media (width<=850px){.hero-identity .hero-person{left:51%}}@media (width>=851px){.hero-identity .hero-contact-card.incoming-call{translate:-20px -20px}}.project-mobile-intro{display:none}@media (width<=850px){.hero-identity .hero-heading{width:100%;max-width:100%;padding-top:8px;left:0;right:0;overflow:visible;transform:none}.project-mobile-intro{background:#f7f7f4;padding:32px 24px 28px;display:block}.project-mobile-intro>span{color:#1768cf;font-size:11px;line-height:1.5;display:block}.project-mobile-intro h1{letter-spacing:-.02em;margin:12px 0 14px;font-size:22px;font-weight:500;line-height:1.4}.project-mobile-intro p{color:#555651;margin:0;font-size:13px;line-height:1.85}.project-redesign .project-notes .notes-title{display:none}.hero-identity{overflow:clip visible}.project-modal.project-redesign,.project-redesign .project-topbar,.project-redesign .project-longview,.project-redesign .project-notes{background:#f7f7f4}.hero-identity .hero-heading strong{letter-spacing:.035em;white-space:nowrap;max-width:100%;margin-top:22px;font-size:clamp(30px,12.5vw,100px);line-height:1.1}.about-details section:first-child>p,.about-details section:first-child>a{align-items:center;min-height:32px;margin:0;padding:4px 0;line-height:24px;display:flex}}.project-redesign .case-nav{align-items:center;gap:12px}.project-redesign .case-nav button{white-space:nowrap;min-height:44px}.about-details .about-contact-details>p,.about-details .about-contact-details>a{align-items:center;gap:6px;min-height:32px;margin:0;padding:4px 0;line-height:24px;display:flex}.about-contact-details>a>span{color:#1967d2;flex-shrink:0;font-size:13px}@media (prefers-reduced-motion:reduce){.project-modal,.project-longview,.project-notes{scroll-behavior:auto}}.work-group .work-meta p{color:#53544f;font-size:13px;line-height:1.75}.hero-intro-card p{color:#53544f}@media (width>=851px){.hero-identity .hero-intro-card p{font-size:13px;line-height:1.7}.project-redesign .notes-title>p,.project-redesign .project-notes section p{color:#53544f;font-size:14px;line-height:1.85}.project-redesign .notes-facts dd{font-size:12px}}.project-image-open{text-align:left;cursor:zoom-in;background:0 0;border:0;border-radius:16px;width:100%;padding:0;display:block;position:relative}.project-image-open>span{color:#fff;opacity:0;background:#141414bf;border-radius:18px;padding:8px 12px;font-size:12px;transition:opacity .2s;position:absolute;bottom:12px;right:12px}.project-image-open:hover>span,.project-image-open:focus-visible>span{opacity:1}.project-image-open:focus-visible{outline-offset:4px;outline:2px solid #1677ff}.image-lightbox{color:#fff;background:#222;border:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;position:fixed;inset:0;overflow:hidden}.image-lightbox::backdrop{background:#000000d9}.image-lightbox header{justify-content:space-between;align-items:center;gap:12px;height:64px;padding:0 20px;font-size:13px;display:flex}.image-lightbox header div{flex-shrink:0;gap:12px;display:flex}.image-lightbox header button{color:#fff;background:#333;border:1px solid #666;border-radius:8px;min-height:44px;padding:0 12px}.lightbox-scroll{overscroll-behavior:contain;height:calc(100% - 64px);padding:12px;overflow:auto}.lightbox-scroll img{cursor:zoom-in;width:auto;max-width:100%;height:auto;max-height:100%;margin:auto;display:block}.lightbox-scroll img.is-expanded{cursor:zoom-out;width:1600px;max-width:none;max-height:none}@media (width<=850px){.project-image-open>span{opacity:1;padding:6px 9px;font-size:10px}.image-lightbox header{padding:0 12px;font-size:11px}.lightbox-scroll img.is-expanded{width:1100px}}.image-lightbox .lightbox-scroll img.is-expanded{cursor:default}.image-lightbox header{z-index:2;background:#222;position:relative}.image-lightbox .lightbox-zoom-controls{align-items:center;gap:8px;display:flex}.image-lightbox .lightbox-zoom-controls output{text-align:center;color:#d7d7d7;min-width:48px;font:12px var(--mono)}.image-lightbox .lightbox-zoom-controls button{min-width:44px}.image-lightbox .lightbox-scroll{touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab;place-items:center;padding:16px;display:grid;overflow:hidden}.image-lightbox .lightbox-scroll:active{cursor:grabbing}.image-lightbox .lightbox-scroll img,.image-lightbox .lightbox-scroll img.is-expanded{transform-origin:50%;will-change:transform;width:auto;max-width:100%;height:auto;max-height:100%;cursor:inherit;margin:auto;display:block}@media (width<=850px){.project-modal.project-redesign{animation:none!important;transform:none!important}.project-redesign .project-topbar{z-index:1000;width:100%;inset:0 0 auto;position:fixed!important}.image-lightbox header{height:58px;padding:0 10px}.image-lightbox header>span{text-overflow:ellipsis;white-space:nowrap;max-width:26vw;overflow:hidden}.image-lightbox .lightbox-zoom-controls{gap:4px}.image-lightbox .lightbox-zoom-controls button{min-width:40px;padding-inline:8px}.image-lightbox .lightbox-zoom-controls output{min-width:42px;font-size:10px}.image-lightbox .lightbox-scroll{height:calc(100% - 58px);padding:8px}}.project-modal.project-redesign{transition:grid-template-columns .24s}.project-redesign .project-notes{min-width:0;transition:opacity .16s}.project-notes-toggle{z-index:40;color:#53544f;-webkit-backdrop-filter:blur(12px);cursor:pointer;background:#f7f7f4eb;border:1px solid #17171629;border-radius:999px;min-height:36px;padding:7px 11px;font-size:11px;transition:right .24s,color .16s,background .16s;position:absolute;top:70px;right:calc(clamp(360px,31vw,480px) - 118px);box-shadow:0 4px 16px #17171614}.project-notes-toggle:hover{color:#1677ff;background:#fff}.project-redesign.notes-collapsed .project-notes{opacity:0;pointer-events:none;border-left:0;padding-left:0;padding-right:0;overflow:hidden}@media (width<=850px){.project-notes-toggle{display:none}.project-modal.project-redesign.notes-collapsed{display:block}}@media (prefers-reduced-motion:reduce){.project-modal.project-redesign,.project-redesign .project-notes,.project-notes-toggle{transition:none}}.project-notes-toggle{width:36px;height:36px;min-height:36px;box-shadow:none;background:#f7f7f4;border-radius:8px;place-items:center;padding:0;display:grid;top:82px;right:26px}.project-notes-toggle svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px;display:block}.project-modal.project-redesign.notes-collapsed{grid-template-columns:minmax(0,1fr) 52px}.project-redesign.notes-collapsed .project-notes{opacity:1;pointer-events:auto;background:#f7f7f4;border-left:1px solid #1717161a;padding:0}.project-redesign.notes-collapsed .project-notes>*{display:none}.project-video-viewer{z-index:1400;-webkit-backdrop-filter:blur(14px);color:#fff;background:#0c0c0cd1;grid-template-rows:56px 1fr;display:grid;position:fixed;inset:0}.project-video-viewer>header{justify-content:space-between;align-items:center;gap:20px;width:min(880px,84vw);margin:auto;font-size:12px;display:flex}.project-video-viewer>header button{color:#fff;background:#252525;border:1px solid #ffffff59;border-radius:8px;min-height:44px;padding:0 12px}.project-video-stage{place-items:center;padding:18px 24px 34px;display:grid}.project-video-stage video{background:#000;border-radius:12px;width:min(880px,84vw);max-height:68vh;display:block;box-shadow:0 24px 70px #00000057}@media (width<=850px){.project-video-viewer{background:#111;grid-template-rows:58px 1fr}.project-video-viewer>header{width:100%;padding:0 14px}.project-video-viewer>header span{text-overflow:ellipsis;white-space:nowrap;max-width:70vw;overflow:hidden}.project-video-stage{padding:10px 0 58px}.project-video-stage video{width:100%;max-height:calc(100dvh - 126px);box-shadow:none;border-radius:0}.project-notes-toggle{display:none}}.project-video-viewer{background:#050505ed}.project-video-viewer>header{width:min(1100px,90vw)}.project-video-stage video{width:min(1100px,90vw);max-height:76vh}.project-notes-toggle,.project-notes-toggle:hover{width:32px;height:36px;min-height:36px;box-shadow:none;-webkit-backdrop-filter:none;color:#5e5f5b;background:0 0;border:0;border-radius:0;padding:0}.project-notes-toggle svg{stroke-width:1.15px;width:18px;height:18px}.project-redesign.notes-collapsed .project-notes-toggle{right:10px}@media (width<=850px){.project-video-viewer{background:#080808}.project-video-viewer>header{width:100%}.project-video-stage video{width:100%;max-height:calc(100dvh - 126px)}.footer.shell{grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px 24px}.footer.shell>span{grid-area:1/1;align-self:end}.footer.shell .footer-contact{text-align:left;grid-area:2/1;place-self:start;display:block}.footer.shell .footer-actions{grid-area:1/2/span 2;place-self:center end}.footer.shell .footer-actions>a{display:none}.institute-case-frame{background:#f7f7f4}}@media (width>=851px){.project-notes-toggle{z-index:1001;right:clamp(28px,3vw,46px);position:fixed!important;top:66px!important}.project-notes-toggle{right:calc(clamp(28px,3vw,46px) + 2px)}.project-redesign.notes-collapsed .project-notes-toggle{right:10px}.project-redesign .project-notes{padding-top:0}.project-redesign .notes-index{z-index:20;background:#f7f7f4;align-items:center;min-height:76px;padding:26px 0 20px;position:sticky;top:0}.project-redesign .notes-index .project-notes-toggle{z-index:auto;flex:0 0 32px;place-items:center;display:grid;position:static!important;inset:auto!important}.project-redesign.notes-collapsed .project-notes .notes-index{border-bottom:0;justify-content:center;min-height:56px;padding:10px;display:flex!important}.project-redesign.notes-collapsed .notes-index span{display:none}}
