@font-face{font-family:"Instrument Serif";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/instrument-serif-latin-400-normal-DnYpCC2O.woff2) format("woff2"),url(/assets/instrument-serif-latin-400-normal-BVbkICAY.woff) format("woff")}@font-face{font-family:"Instrument Serif";font-style:italic;font-display:swap;font-weight:400;src:url(/assets/instrument-serif-latin-400-italic-DKMiL14s.woff2) format("woff2"),url(/assets/instrument-serif-latin-400-italic-u__WvvIK.woff) format("woff")}@layer reset,base,layout,components,motion,responsive;@layer reset{*,*:before,*:after{box-sizing:border-box}body,h1,h2,h3,h4,p,figure,ul{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}img{display:block;max-width:100%}svg{flex-shrink:0}ul{padding:0;list-style:none}}@layer base{@font-face{font-family:Inter Variable;font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2) format("woff2-variations")}:root{--paper:#f3f1e9;--panel:#fffdf7;--ink:#212b43;--muted:#626b7b;--line:#293858;--blue:#3159df;--blue-deep:#2449bb;--blue-light:#dbe5ff;--note:#f1edbd;--sans:"Inter Variable",Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--serif:"Instrument Serif",Georgia,serif;--accent:#3159df;--bg:#f3f1e9;font-family:var(--sans);color-scheme:light;font-synthesis:none;-webkit-font-smoothing:antialiased;scroll-behavior:smooth;scroll-padding-top:90px}:root[data-theme=dark]{--paper:#181e2d;--panel:#242c40;--ink:#f0f1f5;--muted:#aab6cd;--line:#9aaed4;--blue:#9bb6ff;--blue-deep:#203a85;--blue-light:#303e61;--note:#3c3c2c;--accent:#9bb6ff;--bg:#181e2d;color-scheme:dark}body{background:var(--paper);color:var(--ink);font-size:14px;line-height:1.65}button{border:0}h1,h2,h3,h4{font-weight:550}::selection{background:var(--blue);color:var(--paper)}:focus-visible{outline:2px solid var(--blue);outline-offset:5px}button:disabled{cursor:default;color:inherit;opacity:1}main{overflow-x:clip}.section-wrap{width:min(1120px,calc(100% - 96px));margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.filter-definitions{position:absolute;pointer-events:none}.skip-link{position:fixed;top:10px;left:12px;transform:translateY(-150%);z-index:200;background:var(--ink);color:var(--paper);padding:10px 18px}.skip-link:focus{transform:none}.name-dot{color:var(--blue)}}@layer layout{.menubar{height:70px;position:sticky;top:0;z-index:80;display:flex;align-items:center;gap:30px;padding-inline:40px;background:var(--panel);border-bottom:1px solid var(--line)}.site-name{display:inline-flex;align-items:center;gap:10px;font-size:19px;font-weight:750;letter-spacing:-.06em}.site-name>img{width:27px;height:27px;border-radius:50%}nav{display:flex;gap:26px;align-items:center}nav a{font-size:12px;padding-block:17px}nav a[aria-current]{color:var(--blue);text-decoration:underline;text-underline-offset:6px}.menu-right{margin-left:auto;display:flex;align-items:center;gap:20px}.local-time{display:inline-flex;gap:7px;font-size:10px;align-items:center;color:var(--muted)}.time-digits{font-variant-numeric:tabular-nums;color:var(--ink)}.time-zone{font-size:8px}.status-dot{width:5px;height:5px;border-radius:50%;background:var(--blue)}.theme-switch{background:transparent;border:1px solid var(--line);width:32px;height:32px;display:grid;place-items:center;border-radius:50%}.theme-name{display:none}.desk-hero{position:relative;height:calc(100svh + 160px);background-color:var(--paper);background-image:radial-gradient(color-mix(in srgb,var(--ink) 18%,transparent) .7px,transparent .7px);background-size:18px 18px}.desk-stage{position:sticky;top:70px;width:min(1280px,calc(100% - 72px));margin-inline:auto;height:calc(100svh - 70px);min-height:700px;max-height:950px;isolation:isolate}.desk-intro{position:absolute;left:2%;top:6%;z-index:1;pointer-events:none;transform:translateY(var(--title-drift,0px))}.hello-note{font-size:22px;letter-spacing:-.04em}.desk-intro h1{font-size:clamp(145px,17.4vw,240px);font-weight:800;line-height:.95;letter-spacing:-.09em;margin-left:-8px;margin-top:9px}.desk-intro p{max-width:390px;font-size:14px;line-height:1.8;margin-top:24px;letter-spacing:-.015em}.desk-sticker{translate:0 var(--title-drift,0px);opacity:var(--sticker-opacity,1);position:absolute;left:40%;top:8%;font-family:var(--serif);font-size:29px;line-height:1.05;transform:rotate(-9deg);color:var(--blue);z-index:2}.desk-sticker svg{display:block;width:85px;height:60px;margin-left:75px;margin-top:8px}.desk-bottom{position:absolute;bottom:24px;left:2%;right:2%;display:flex;align-items:center;justify-content:space-between;z-index:1000}.desk-explore{font-size:12px;display:inline-flex;gap:28px;align-items:center;border:1px solid var(--line);background:var(--panel);padding:12px 18px;box-shadow:3px 3px 0 var(--line)}.tidy-button{background:var(--panel);border:1px solid var(--line);font-size:11px;padding:7px 13px;border-radius:30px;display:inline-flex;gap:8px;align-items:center}.tidy-button>span{font-size:19px;line-height:1}.desk-window{position:absolute;background:var(--panel);border:1.5px solid var(--line);border-radius:8px;box-shadow:5px 6px color-mix(in srgb,var(--line) 85%,transparent);transform:translate3d(calc(var(--drag-x,0px) + var(--flight-x,0px)),calc(var(--drag-y,0px) + var(--flight-y,0px)),0) rotate(calc(var(--base-turn,0deg) + var(--flight-turn,0deg)));transform-origin:center;transition:box-shadow .2s;overflow:hidden;animation:window-drop 1s cubic-bezier(.16,.8,.2,1) calc(var(--intro-delay,0s) + var(--enter-delay,.1s)) backwards}.window-handle{display:flex;align-items:center;gap:8px;width:100%;height:33px;padding:0 11px;background:var(--panel);border-bottom:1px solid var(--line);font-size:10px;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.window-handle:active{cursor:grabbing}.window-dots{display:inline-flex;gap:4px;align-items:center;margin-right:8px}.window-dots>i{width:6px;height:6px;border:1px solid currentColor;border-radius:50%;display:block}.window-dots>i:first-child{background:currentColor}.handle-grip{margin-left:auto;font-size:16px;opacity:.65}.desk-window[data-intro-complete=true]{animation:none}.desk-window[data-dragging=true]{box-shadow:9px 12px color-mix(in srgb,var(--line) 60%,transparent)}.photo-window{width:285px;right:15%;top:6%;--base-turn:7deg;--enter-delay:.15s;z-index:6}.desk-avatar{width:100%;height:auto;aspect-ratio:1;object-fit:cover;border:9px solid var(--panel);border-bottom:0}.photo-signature{display:flex;align-items:center;justify-content:space-between;padding:11px 14px 15px}.photo-signature>span:first-child{font-family:var(--serif);font-size:28px;font-style:italic;line-height:1}.photo-signature>span:last-child{font-size:10px;color:var(--muted)}.note-window{width:350px;left:22%;top:49%;--base-turn:-5deg;--enter-delay:.25s;z-index:5;background:var(--note)}.note-window .window-handle{background:var(--note)}.desk-note-content{padding:18px 20px 20px}.desk-note-content>p{font-family:var(--serif);font-size:26px;line-height:1.15;letter-spacing:-.015em}.desk-affiliations{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:22px}.academic-affiliation{display:inline-flex;align-items:center;gap:7px;font-size:10px}.cds-wordmark{width:104px;height:auto;filter:brightness(0);opacity:.85}.note-rule{height:22px;width:1px;background:color-mix(in srgb,var(--line) 35%,transparent)}.founder{display:inline-flex;align-items:center;gap:6px;font-size:9px}.kinitech-logo{position:relative;display:inline-block;width:83px;height:17px;overflow:hidden;flex-shrink:0}.kinitech-logo img{position:absolute;width:130px;max-width:none;height:auto;left:-24px;top:-20px}[data-theme=dark] .cds-wordmark{filter:none;opacity:.95}[data-theme=dark] .kinitech-logo img{filter:url(#light-brand)}.games-window{width:264px;right:1%;top:54%;--base-turn:5deg;--enter-delay:.4s;z-index:7}.games-window .window-handle{background:var(--blue-light);color:var(--ink)}.games-window .window-handle svg{color:var(--blue)}.game-cartridges{display:flex;justify-content:space-around;gap:12px;padding:22px 15px 20px}.game-cartridges figure{width:60px;text-align:center}.game-cartridges img{width:58px;height:58px;border-radius:12px;border:1px solid color-mix(in srgb,var(--line) 25%,transparent);box-shadow:0 4px color-mix(in srgb,var(--line) 20%,transparent);transition:transform .3s}.game-cartridges figcaption{font-size:9px;margin-top:8px;color:var(--muted)}.cards-window{width:235px;left:1%;top:61%;--base-turn:-8deg;--enter-delay:.35s;z-index:4;background:var(--blue-light)}.cards-window .bank-fan{overflow:hidden}.cards-window .collect-card{top:55px}.cards-window .window-handle{background:var(--blue-light)}.toy-window{width:210px;left:56%;top:57%;--base-turn:-6deg;--enter-delay:.45s;z-index:3}.toy-window .kinetic-form{width:100%;aspect-ratio:1}.form-control{display:block;position:relative;width:100%;aspect-ratio:1;padding:0;background:transparent;cursor:grab;touch-action:pan-y}.form-control canvas{display:block;width:100%;aspect-ratio:1;pointer-events:none}.form-cross{display:none}.bank-fan{height:177px;position:relative;isolation:isolate}.collect-card{position:absolute;left:27px;top:39px;width:175px;height:108px;border:1px solid #182d61;border-radius:9px;display:flex;flex-direction:column;justify-content:space-between;padding:10px 13px;box-shadow:0 4px 7px #16274620;transition:transform .45s cubic-bezier(.2,.8,.2,1)}.card-back{background:#d9cce7;color:#342949;transform:translate(9px,-19px) rotate(13deg)}.card-middle{background:#e9e5c9;color:#313d36;transform:translate(-10px,-7px) rotate(-10deg)}.card-front{background:#3159df;color:#fff;transform:rotate(1deg)}.card-small{font-size:7px;letter-spacing:.1em}.card-front strong{font-family:var(--serif);font-style:italic;font-size:39px;font-weight:400;line-height:1}.card-bottom{display:flex;justify-content:space-between;align-items:center;font-size:8px}.card-chip{display:block;width:18px;height:13px;border:1px solid currentColor;border-radius:3px;opacity:.65;background:linear-gradient(90deg,transparent 45%,currentColor 45%,currentColor 50%,transparent 50%)}.card-stripe{height:18px;background:#34294930;margin-inline:-13px}.work-section{position:relative;z-index:35;background:#3159df;color:#fffdf7;padding:75px 0 100px;margin-top:-1px;border-top:1.5px solid var(--line);border-bottom:1.5px solid var(--line)}.work-heading{display:flex;align-items:center;gap:22px;margin-bottom:50px}.work-heading h2{font-size:72px;letter-spacing:-.065em;line-height:1}.work-heading h2>span{color:#b7caff}.folder-symbol{display:block;width:54px;height:37px;border:2px solid #fffdf7;border-radius:3px;position:relative;transform:rotate(-8deg)}.folder-symbol:before{content:"";position:absolute;left:-2px;top:-11px;width:24px;height:10px;border:2px solid #fffdf7;border-bottom:0;border-radius:4px 4px 0 0}.project-stack{display:grid;gap:50px}.project-window{position:relative;border:1.5px solid #17294f;background:var(--panel);color:var(--ink);border-radius:9px;box-shadow:8px 9px #193993;overflow:hidden;scroll-margin-top:100px;--project-turn:0deg;transform:rotate(var(--project-turn))}.project-dorm{width:95%;--project-turn:-1.5deg}.project-bitmo{width:86%;justify-self:end;--project-turn:1.5deg}.project-note{width:88%;--project-turn:-1deg}.project-bar{display:flex;align-items:center;gap:10px;padding:9px 15px;border-bottom:1px solid var(--line);font-size:11px;line-height:1.5}.bar-corner{margin-left:auto;font-size:18px;line-height:1}.project-body{display:grid;grid-template-columns:1fr 1.12fr;min-height:275px}.project-copy{padding:35px 38px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.project-copy h3{font-size:33px;font-weight:600;letter-spacing:-.055em;line-height:1.1}.project-copy>p{font-size:13px;line-height:1.85;color:var(--muted);margin-top:15px;max-width:340px}.project-links{display:flex;gap:22px;flex-wrap:wrap;margin-top:25px}.text-link{display:inline-flex;gap:10px;align-items:center;font-size:12px;width:fit-content}.project-visual{position:relative;min-height:275px;overflow:hidden;border-left:1px solid var(--line)}.visual-dorm{background:#e5ede7;color:#176447;display:flex;align-items:center;justify-content:center;gap:32px}.dorm-large-icon{width:100px;transform:rotate(-9deg);box-shadow:0 15px 20px -15px #17644780;border-radius:24%}.dorm-large-icon img{width:100%;height:auto}.dorm-visual-name{font-size:42px;line-height:1;letter-spacing:-.05em}.dorm-visual-name i{font-family:var(--serif);font-size:1.3em;font-weight:400}.visual-bitmo{background:#212a3d;color:#d2dfff}.large-x{position:absolute;top:50%;left:50%;translate:-50% -50%;font-size:210px;font-weight:350;line-height:1;letter-spacing:-.05em}.bitmo-rings{position:absolute;inset:0;transform:rotate(-25deg)}.bitmo-rings span{position:absolute;top:50%;left:50%;translate:-50% -50%;width:65%;height:45%;border:1px solid #8fa6d443;border-radius:50%}.bitmo-rings span:nth-child(2){width:85%;height:65%}.bitmo-rings span:nth-child(3){width:105%;height:85%}.visual-note{background:#eae5d9;color:#6b675a}.watch-band{position:absolute;top:50%;left:43%;translate:-50% -50%;height:270px;width:71px;border-radius:15px;background:repeating-linear-gradient(0deg,#aaa693 0 2px,#b8b4a3 2px 5px);transform:rotate(-12deg)}.watch-face{position:absolute;top:50%;left:43%;translate:-50% -50%;width:130px;height:155px;border:2px solid #454749;border-radius:28px;padding:12px 10px;background:#272a2c;box-shadow:inset 0 0 0 2px #151719,4px 9px 18px #25251420;transform:rotate(-12deg)}.watch-face img{height:100%;width:100%;object-fit:cover;border-radius:14px}.watch-crown{position:absolute;right:-6px;top:35px;width:5px;height:21px;background:#454749;border-radius:0 3px 3px 0}.note-handwriting{position:absolute;right:4%;bottom:25px;font-family:var(--serif);font-size:25px;font-style:italic;line-height:1;transform:rotate(6deg)}.about-section{display:grid;grid-template-columns:.8fr 1.5fr;gap:70px;padding-block:110px 100px;align-items:start}.about-label{position:sticky;top:110px}.hand-note{font-family:var(--serif);font-size:23px;font-style:italic;display:block;color:var(--blue);line-height:1.2}.about-label h2{font-size:65px;letter-spacing:-.065em;line-height:1;margin-top:20px}.about-label h2 i{font-family:var(--serif);font-size:1.13em;font-weight:400;letter-spacing:-.035em}.about-document{border:1.5px solid var(--line);border-radius:8px;box-shadow:6px 7px color-mix(in srgb,var(--line) 30%,transparent);background:var(--panel);overflow:hidden;transform:rotate(.8deg)}.document-bar{display:flex;gap:10px;align-items:center;padding:10px 15px;border-bottom:1px solid var(--line);font-size:11px}.document-content{padding:32px}.about-introduction{display:flex;align-items:flex-start;gap:17px}.about-avatar{width:58px;height:58px;border-radius:50%;border:1px solid var(--line)}.about-introduction h3{font-size:24px;letter-spacing:-.04em;line-height:1.2;margin-bottom:13px}.about-introduction p{font-size:13px;color:var(--muted);line-height:1.9}.education{display:flex;gap:13px;align-items:center;margin-top:30px;padding-bottom:27px;border-bottom:1px solid color-mix(in srgb,var(--line) 25%,transparent)}.hku-crest{width:33px;height:37px;flex:0 0 33px;overflow:hidden;display:block}.hku-crest img{width:110px;max-width:none;height:auto;filter:brightness(0);opacity:.8}[data-theme=dark] .hku-crest img{filter:none}.education-school{display:flex;align-items:center;gap:13px;min-width:0;flex:0 1 auto}.education-school>div{min-width:0}.education-company{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:5px;padding-left:20px;margin-left:7px;border-left:1px solid color-mix(in srgb,var(--line) 25%,transparent);flex-shrink:0}.education strong{font-size:11px;font-weight:550;display:block}.education-school>div>span,.education-company>span:not(.kinitech-logo){font-size:10px;color:var(--muted);display:block;margin-top:2px}.tools-section{margin-top:24px}.tools-section>h3{font-size:14px;margin-bottom:18px}.tool-group{margin-top:16px}.tool-group h4{font-size:10px;color:var(--muted);font-weight:450;margin-bottom:9px}.tool-group>div{display:flex;flex-wrap:wrap;gap:11px 18px}.skill-item{display:inline-flex;align-items:center;gap:6px;font-size:11px}.skill-item img{width:18px;height:18px;object-fit:contain}.life-section{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:30px;padding-top:25px;border-top:1px solid color-mix(in srgb,var(--line) 25%,transparent)}.life-section h3{font-size:13px;letter-spacing:-.02em;line-height:1.4}.life-games h3{display:flex;gap:8px;align-items:center}.life-games h3 svg{color:var(--blue)}.life-games ul{display:grid;gap:11px;margin-top:17px}.life-games li{display:flex;align-items:center;gap:8px;font-size:10px;color:var(--muted)}.life-games li>img{width:29px;height:29px;border-radius:6px}.life-cards p{font-size:11px;line-height:1.8;color:var(--muted);margin-top:12px}.bank-fan.compact{height:128px;margin-top:2px;transform:scale(.66);transform-origin:top left;width:240px;margin-bottom:-40px}.contact-section{padding-bottom:90px}.contact-heading{margin-bottom:35px}.contact-heading h2{font-size:85px;line-height:1;letter-spacing:-.065em;margin-top:8px;display:flex;align-items:baseline;gap:15px}.contact-heading h2 i{font-family:var(--serif);font-weight:400;font-size:1.25em}.hello-star{width:1em;height:1em;flex-shrink:0;font-size:45px;color:var(--blue);align-self:center;margin-left:12px}.mail-window{border:1.5px solid var(--line);background:var(--panel);box-shadow:6px 7px 0 var(--blue-light);border-radius:8px;overflow:hidden}.mail-bar{display:flex;gap:9px;align-items:center;font-size:11px;padding:12px 22px;border-bottom:1px solid var(--line);background:var(--blue-light)}.mail-postmark{margin-left:auto;font-size:22px;line-height:1}.contact-row{display:grid;grid-template-columns:160px 1fr 36px;gap:25px;padding:28px;align-items:center}.contact-row+.contact-row{border-top:1px solid color-mix(in srgb,var(--line) 25%,transparent)}.contact-person{display:flex;flex-direction:column;align-items:flex-start;gap:9px;font-size:11px}.contact-avatar{width:34px;height:34px;border-radius:50%}.email-link{font-size:clamp(25px,3.3vw,40px);letter-spacing:-.055em;display:flex;gap:20px;align-items:center;width:fit-content}.email-link svg{color:var(--blue)}.copy-button{width:36px;height:36px;border:1px solid var(--line);background:transparent;border-radius:50%;display:grid;place-items:center}.social-links{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:0;padding:10px 24px;border-top:1px solid color-mix(in srgb,var(--line) 25%,transparent);background:color-mix(in srgb,var(--paper) 55%,var(--panel))}.social-caption{font-size:10px;color:var(--muted)}.social-buttons{display:flex;align-items:center;gap:8px}.social-links a{position:relative;display:grid;place-items:center;width:36px;height:36px;padding:0;border-radius:6px;color:var(--muted)}.social-mark{display:block;width:18px;height:18px;background:currentColor;-webkit-mask:var(--social-icon) center/contain no-repeat;mask:var(--social-icon) center/contain no-repeat}.social-mark[style*=bonjour]{width:23px;height:23px}.social-tooltip{position:absolute;bottom:calc(100% + 7px);left:50%;translate:-50% 3px;background:var(--ink);color:var(--panel);font-size:10px;line-height:1.4;padding:5px 8px;border-radius:4px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .15s,translate .15s}.social-links a:focus-visible .social-tooltip{opacity:1;translate:-50% 0}.social-links a:focus-visible{outline-offset:2px}.site-footer{border-top:1px solid var(--line);padding-block:28px 35px;display:flex;gap:25px;justify-content:space-between;align-items:center}.footer-signature{display:inline-flex;align-items:center;gap:11px}.footer-signature>img{width:38px;height:38px;border-radius:50%}.footer-signature>span{font-family:var(--serif);font-style:italic;font-size:32px;line-height:1}.site-footer>span{font-size:11px;color:var(--muted)}.back-top{display:inline-flex;gap:12px;align-items:center;font-size:11px}.back-top svg{rotate:-90deg}}@layer components{.opening-scene{position:fixed;inset:0;z-index:150;pointer-events:none}.opening-cover,.opening-underlay{position:absolute;inset:0}.opening-underlay{background:#a5bdff;animation:desk-open 1.55s cubic-bezier(.65,0,.2,1) both}.opening-cover{display:grid;place-items:center;background:#3159df;color:#fffdf7;animation:desk-open 1.45s cubic-bezier(.65,0,.2,1) both}.opening-name{font-size:clamp(70px,11vw,160px);font-weight:800;letter-spacing:-.08em;line-height:1;animation:opening-name .7s .08s cubic-bezier(.16,.8,.2,1) both}.opening-name>span{color:#b8cdff}.text-link svg,.desk-explore svg,.email-link svg{transition:transform .25s}a,button{transition:color .2s,background-color .2s}@media(hover:hover){nav a:hover,.text-link:hover,.email-link:hover,.back-top:hover{color:var(--blue)}.text-link:hover svg,.email-link:hover svg{transform:translate(2px,-2px)}.desk-explore:hover{background:var(--blue-light)}.desk-explore:hover svg{transform:translateY(3px)}.tidy-button:hover{background:var(--blue-light)}.game-cartridges figure:hover img{transform:translateY(-6px) rotate(-6deg)}.bank-fan:hover .card-back{transform:translate(17px,-22px) rotate(23deg)}.bank-fan:hover .card-middle{transform:translate(-17px,-12px) rotate(-18deg)}.social-links a:hover{background:var(--blue-light);color:var(--blue)}.social-links a:hover .social-tooltip{opacity:1;translate:-50% 0}.copy-button:hover{color:var(--blue);background:var(--blue-light)}}}@layer motion{.desk-intro h1{animation:name-in .95s cubic-bezier(.16,.8,.2,1) calc(var(--intro-delay,0s) + .04s) backwards}.desk-intro .hello-note,.desk-intro p{animation:note-in .8s cubic-bezier(.16,.8,.2,1) var(--intro-delay,0s) backwards}.desk-sticker{animation:sticker-in 1s cubic-bezier(.16,.8,.2,1) calc(var(--intro-delay,0s) + .4s) backwards}.desk-explore{animation:note-in .8s calc(var(--intro-delay,0s) + .55s) backwards}.reveal{transition:translate .8s cubic-bezier(.16,.8,.2,1)}.motion-ready .reveal:not(.revealed){translate:0 35px}.project-window{transform:translateY(var(--project-y,0px)) rotate(calc(var(--project-turn) + var(--scroll-turn,0deg)));transition:translate .8s cubic-bezier(.16,.8,.2,1)}.dorm-large-icon{transform:translateY(var(--visual-y,0px)) rotate(calc(-9deg + var(--scroll-turn,0deg)))}.large-x{transform:translateY(var(--visual-y,0px)) rotate(var(--scroll-turn,0deg))}.watch-band,.watch-face{transform:translateY(var(--visual-y,0px)) rotate(calc(-12deg + var(--scroll-turn,0deg)))}@keyframes desk-open{0%,40%{transform:translateZ(0)}to{transform:translate3d(0,-101%,0)}}@keyframes opening-name{0%{transform:translateY(35px) scale(.95);clip-path:inset(0 0 100% 0)}to{transform:none;clip-path:inset(-10% -10% -10% -10%)}}@keyframes name-in{0%{transform:translateY(40px) skewY(5deg);clip-path:inset(0 0 100% 0)}to{transform:none;clip-path:inset(-20% -20% -20% -20%)}}@keyframes window-drop{0%{transform:translate3d(var(--drag-x,0px),calc(var(--drag-y,0px) + 50px),0) rotate(calc(var(--base-turn,0deg) + 12deg)) scale(.87)}to{transform:translate3d(var(--drag-x,0px),var(--drag-y,0px),0) rotate(var(--base-turn,0deg)) scale(1)}}@keyframes note-in{0%{translate:0 18px}to{translate:0 0}}@keyframes sticker-in{0%{transform:rotate(-20deg) scale(.7)}to{transform:rotate(-9deg) scale(1)}}@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.opening-scene{display:none}.motion-ready .reveal:not(.revealed){translate:none}.desk-window{transform:translate(var(--drag-x,0px),var(--drag-y,0px)) rotate(var(--base-turn,0deg))}.desk-intro{transform:none}.project-window{transform:rotate(var(--project-turn))}.dorm-large-icon{transform:rotate(-9deg)}.large-x{transform:none}.watch-band,.watch-face{transform:rotate(-12deg)}}}@layer responsive{@media(min-width:1550px){.desk-stage{max-height:1000px}.desk-intro{top:7%}.photo-window{top:10%;width:310px}.note-window{top:48%}.cards-window{top:65%}.toy-window{top:61%}.games-window{top:60%}}@media(max-width:1100px){.section-wrap{width:calc(100% - 72px)}.menubar{padding-inline:28px;gap:25px}.menu-right{gap:15px}.desk-stage{width:calc(100% - 56px);min-height:720px}.desk-intro h1{font-size:180px}.desk-intro p{font-size:12px;max-width:320px}.photo-window{width:250px;right:12%;top:8%}.note-window{left:20%;width:320px;top:48%}.desk-note-content{padding:15px}.desk-note-content>p{font-size:24px}.desk-sticker{left:42%;top:5%;font-size:24px}.games-window{right:1%;width:225px;top:58%}.game-cartridges{gap:8px;padding:18px 10px}.game-cartridges img{width:51px;height:51px}.cards-window{width:215px;left:0;top:65%}.toy-window{width:180px;left:55%;top:62%}.collect-card{left:19px}.about-section{gap:42px;grid-template-columns:.75fr 1.4fr}.about-label h2{font-size:54px}.document-content{padding:25px}.project-copy{padding:30px}.contact-row{grid-template-columns:130px 1fr 36px;gap:20px}.email-link{font-size:32px}}@media(max-width:900px){.menu-right .local-time{display:none}.desk-intro h1{font-size:155px}.desk-intro p{max-width:285px;font-size:12px}.photo-window{width:230px;right:5%}.desk-sticker{left:44%;top:4%;font-size:22px}.note-window{left:20%;top:50%;width:300px}.desk-affiliations{gap:6px}.cds-wordmark{width:95px}.founder{font-size:8px}.founder .kinitech-logo{width:75px}.founder .kinitech-logo img{width:117px;left:-22px;top:-18px}.toy-window{left:54%;top:70%;width:150px}.games-window{width:210px;top:52%;right:0}.cards-window{top:66%;width:205px}.bank-fan{height:165px}.collect-card{width:165px;height:102px;left:19px}.project-copy h3{font-size:29px}.project-copy p{font-size:12px}.project-body{grid-template-columns:1fr 1fr}.project-visual{min-height:260px}.dorm-large-icon{width:80px}.visual-dorm{gap:22px}.dorm-visual-name{font-size:36px}.about-section{grid-template-columns:1fr;gap:30px;padding-top:75px}.about-label{position:static}.about-label h2 br{display:none}.about-label h2{font-size:58px;margin-top:12px}.hand-note{font-size:22px}.about-document{max-width:750px;width:95%;justify-self:center}.document-content{padding:32px}.contact-heading h2{font-size:76px}}@media(max-width:799px){.desk-hero{height:auto;padding:15px 0 45px}.desk-stage{position:relative;top:0;display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:27px 20px;width:calc(100% - 56px);height:auto;max-height:none;min-height:0;padding-bottom:65px}.desk-intro{position:relative;left:auto;top:auto;grid-column:1/-1;pointer-events:auto;padding-top:20px;transform:none}.desk-intro h1{font-size:clamp(125px,23vw,180px);margin-top:7px}.hello-note{font-size:20px}.desk-intro p{max-width:100%;font-size:13px;margin-top:20px}.desk-intro p br{display:none}.desk-sticker{top:280px;left:auto;right:0;font-size:25px}.desk-sticker svg{width:60px;margin-left:40px}.desk-window{position:relative;inset:auto;width:100%;--flight-x:0px!important;--flight-y:0px!important;--flight-turn:0deg!important}.window-handle{cursor:default;touch-action:pan-y}.handle-grip{display:none}.photo-window{grid-column:1/-1;width:290px;justify-self:center;margin-top:12px;margin-bottom:6px;--base-turn:-5deg}.note-window{grid-column:1/-1;width:min(410px,94%);justify-self:center;--base-turn:2deg}.desk-note-content{padding:20px}.desk-note-content>p{font-size:28px}.desk-note-content>p br{display:none}.desk-affiliations{justify-content:flex-start;gap:20px}.cds-wordmark{width:110px}.founder{font-size:9px}.founder .kinitech-logo{width:83px}.founder .kinitech-logo img{width:130px;left:-24px;top:-20px}.games-window{grid-column:1/-1;width:280px;justify-self:end;--base-turn:4deg;margin-top:0}.game-cartridges{padding:18px 16px}.game-cartridges img{width:58px;height:58px}.cards-window{grid-column:1;grid-row:5;width:100%;--base-turn:-5deg}.toy-window{grid-column:2;grid-row:5;width:100%;--base-turn:5deg;margin-top:18px}.bank-fan{height:170px}.collect-card{width:150px;height:95px;left:50%;margin-left:-75px}.card-front strong{font-size:33px}.desk-bottom{position:absolute;bottom:0;left:0;right:0}.tidy-button{display:none}.desk-explore{padding:10px 16px;font-size:11px}.work-section{padding-top:55px;padding-bottom:70px}.work-heading h2{font-size:62px}.project-stack{gap:35px}.project-copy{padding:25px}.project-copy h3{font-size:27px}.project-dorm{width:100%}.project-bitmo,.project-note{width:95%}.project-visual{min-height:240px}.dorm-large-icon{width:65px}.dorm-visual-name{font-size:31px}.visual-dorm,.project-links{gap:17px}.text-link{font-size:11px}.note-handwriting{font-size:20px}.contact-row{grid-template-columns:105px 1fr 32px;gap:17px;padding:24px}.email-link{font-size:27px;gap:12px}.email-link svg{width:19px}.copy-button{width:32px;height:32px}.contact-heading h2{font-size:68px}.hello-star{font-size:37px}}@media(max-width:580px){:root{scroll-padding-top:83px}.section-wrap{width:calc(100% - 40px)}.menubar{height:66px;padding-inline:18px;gap:0;justify-content:space-between}.site-name{font-size:18px;gap:7px}.site-name>img{width:25px;height:25px}nav{gap:17px;margin-left:auto;margin-right:18px}nav a{font-size:10px}.menu-right{margin-left:0}.theme-switch{width:29px;height:29px}.desk-stage{width:calc(100% - 40px);gap:24px 16px}.desk-intro{padding-top:11px}.desk-intro h1{font-size:clamp(110px,26vw,150px);margin-left:-4px}.desk-intro p{font-size:12px;line-height:1.8;margin-top:17px;max-width:350px}.hello-note{font-size:19px}.desk-sticker{top:250px;right:-5px;font-size:20px;z-index:8;pointer-events:none}.desk-sticker svg{width:52px;height:44px;margin-left:35px}.photo-window{width:260px;justify-self:start;margin-left:10px;margin-top:8px}.window-handle{height:31px;font-size:9px}.photo-signature{padding:9px 12px 12px}.photo-signature>span:first-child{font-size:26px}.note-window{width:95%;justify-self:end;--base-turn:3deg}.desk-note-content{padding:17px}.desk-note-content>p{font-size:26px}.desk-affiliations{gap:11px;margin-top:18px}.cds-wordmark{width:100px}.academic-affiliation{font-size:9px}.note-rule{height:22px}.founder{font-size:8px}.founder .kinitech-logo{width:73px}.founder .kinitech-logo img{width:114px;left:-21px;top:-17.5px}.games-window{width:265px;justify-self:end;--base-turn:-3deg;margin-top:3px}.game-cartridges img{width:54px;height:54px}.game-cartridges figcaption{font-size:9px}.cards-window{width:100%}.toy-window{width:100%;margin-top:15px}.bank-fan{height:140px}.cards-window .collect-card{top:48px}.collect-card{width:126px;height:80px;left:50%;margin-left:-63px;top:33px;padding:8px 10px}.card-front strong{font-size:28px}.card-small{font-size:6px}.card-bottom{font-size:7px}.card-chip{width:15px;height:11px}.card-back{transform:translate(5px,-16px) rotate(13deg)}.card-middle{transform:translate(-7px,-5px) rotate(-10deg)}.desk-explore{font-size:11px}.work-heading{gap:17px;margin-bottom:32px}.work-heading h2{font-size:55px}.folder-symbol{width:39px;height:28px;border-width:1.5px}.folder-symbol:before{border-width:1.5px;width:19px;height:8px;top:-8px;left:-1.5px}.project-stack{gap:31px}.project-body{grid-template-columns:1fr;min-height:0}.project-copy{padding:24px;order:2}.project-visual{min-height:230px;border-left:0;border-bottom:1px solid var(--line);order:1}.project-copy h3{font-size:28px}.project-copy>p{font-size:12px;margin-top:12px}.project-links{margin-top:18px}.project-bar{padding:8px 11px;font-size:10px}.project-window{box-shadow:5px 6px #193993}.project-bitmo,.project-note{width:97%}.visual-dorm{gap:29px}.dorm-large-icon{width:90px}.dorm-visual-name{font-size:43px}.large-x{font-size:190px}.note-handwriting{font-size:24px;right:5%;bottom:20px}.watch-band{height:250px}.about-section{padding-block:65px;gap:27px}.about-label h2{font-size:49px}.hand-note{font-size:20px}.about-document{width:100%;transform:rotate(-.7deg);box-shadow:4px 5px color-mix(in srgb,var(--line) 30%,transparent)}.document-content{padding:24px 20px}.about-introduction{gap:12px}.about-avatar{width:43px;height:43px;flex-shrink:0}.about-introduction h3{font-size:22px;margin-bottom:11px}.about-introduction p{font-size:12px;line-height:1.85}.education{margin-top:24px;gap:12px}.education strong{font-size:11px}.education-school>div>span,.education-company>span:not(.kinitech-logo){font-size:10px}.tool-group>div{gap:12px 14px}.skill-item{font-size:10px}.skill-item img{width:17px;height:17px}.life-section{grid-template-columns:1fr;gap:26px}.life-section h3{font-size:13px}.life-games li{font-size:11px}.life-cards p{font-size:12px}.bank-fan.compact{height:140px;width:240px;transform:scale(.85);margin-top:10px;margin-bottom:-15px}.bank-fan.compact .collect-card{width:165px;height:102px;left:50%;margin-left:-82px;top:28px}.bank-fan.compact .card-front strong{font-size:36px}.contact-section{padding-bottom:65px}.contact-heading{margin-bottom:25px}.contact-heading h2{font-size:65px;gap:12px;margin-top:6px}.hello-star{font-size:34px;margin-left:4px}.mail-bar{padding:10px 16px;font-size:10px}.contact-row{grid-template-columns:1fr 32px;gap:15px 10px;padding:22px 18px}.contact-person{grid-column:1/-1;flex-direction:row;align-items:center;justify-content:space-between;font-size:11px}.contact-person>span:last-child{order:-1}.contact-avatar{width:29px;height:29px}.email-link{font-size:clamp(22px,6.5vw,29px);gap:9px;line-height:1.4;overflow-wrap:anywhere}.email-link svg{width:17px}.copy-button{width:30px;height:30px}.social-links{padding:9px 14px;gap:12px;margin:0}.social-buttons{gap:4px}.social-links a{width:32px;height:32px}.education-school{gap:10px}.education-company{padding-left:13px;margin-left:0}.site-footer{display:grid;grid-template-columns:1fr 1fr;gap:23px 15px;padding-block:25px 30px}.footer-signature>img{width:34px;height:34px}.footer-signature>span{font-size:30px}.site-footer>span{grid-row:2;font-size:10px}.back-top{justify-self:end;font-size:10px;gap:8px}.back-top svg{width:14px}}@media(max-width:360px){.menubar{padding-inline:14px}.site-name{font-size:16px;gap:6px}.site-name>img{width:23px;height:23px}nav{gap:13px;margin-right:14px}.theme-switch{width:27px;height:27px}.desk-stage,.section-wrap{width:calc(100% - 32px)}.desk-intro h1{font-size:109px}.photo-window{width:235px;margin-left:4px}.desk-sticker{top:245px;font-size:18px;right:-3px}.note-window{width:98%}.desk-note-content{padding:14px}.desk-note-content>p{font-size:24px}.desk-affiliations{gap:8px}.cds-wordmark{width:88px}.founder{font-size:8px}.founder .kinitech-logo{width:65px}.founder .kinitech-logo img{width:102px;left:-19px;top:-15.7px}.games-window{width:245px}.window-dots{gap:3px;margin-right:4px}.window-dots>i{width:5px;height:5px}.window-handle{padding-inline:8px;gap:5px;font-size:8px}.collect-card{width:112px;height:73px;margin-left:-56px;padding:7px 8px}.card-front strong{font-size:25px}.card-small{font-size:5px}.card-bottom{font-size:6px}.bank-fan{height:128px}.cards-window .collect-card{top:46px}.contact-heading h2{font-size:57px}.hello-star{font-size:29px}.contact-row{padding:20px 15px}.email-link{font-size:22px;gap:7px}.document-content{padding:21px 17px}.about-label h2{font-size:44px}.about-introduction{display:block}.about-avatar{float:left;margin-right:12px;margin-bottom:4px}.life-games li{font-size:10px}.work-heading h2{font-size:51px}}}
