@font-face{font-family:Inter;src:url(/fonts/inter-latin.woff2)format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Fragment Mono;src:url(/fonts/fragment-mono.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}:root{--white:#fff;--paper:#fafafa;--paper-deep:#f4f4f3;--ink:#171717;--muted:#6f6f6d;--quiet:#767674;--line:#ececea;--dot:#e2e2df;--green:#20bd67;--blue:#2f6cff;--content:608px;--ease:cubic-bezier(.2, .8, .2, 1)}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--white)}body{color:var(--ink);background:var(--white);-webkit-font-smoothing:antialiased;margin:0;font:400 16px/1.48 Inter,system-ui,sans-serif}button,input,textarea{font:inherit}a{color:inherit}::selection{color:var(--white);background:var(--ink)}.skip-link{z-index:100;color:var(--white);background:var(--ink);border-radius:8px;padding:8px 12px;position:fixed;top:12px;left:12px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.noise{z-index:20;pointer-events:none;opacity:.018;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.9'/%3E%3C/svg%3E");position:fixed;inset:0}.shell{width:min(calc(100% - 40px), var(--content));margin-inline:auto}.intro{padding:48px 0 32px}.system-line,.section-label,.meta,.card-caption,.weather-location,.footer-weather{letter-spacing:.025em;color:var(--quiet);font-family:Fragment Mono,monospace;font-size:11px;line-height:1.4}.system-line{justify-content:space-between;margin-bottom:52px;display:flex}.clock{align-items:center;gap:8px;display:inline-flex}.clock svg,.read-time svg{fill:none;stroke:currentColor;stroke-width:1.5px;width:14px;height:14px}.identity{align-items:center;gap:14px;display:flex}.avatar-wrap{flex:none;position:relative}.avatar-wrap img{object-fit:cover;filter:saturate(.9)contrast(1.04);border-radius:14px;width:64px;height:64px;display:block;box-shadow:0 0 0 1px #0000000d,0 8px 24px #00000012}.availability{background:var(--green);border:3px solid #fff;border-radius:50%;width:15px;height:15px;position:absolute;bottom:-3px;right:-3px}h1{letter-spacing:-.015em;margin:0 0 1px;font-size:17px;font-weight:560}.verified{color:#25a7ec;vertical-align:1px;font-size:14px}.role{color:var(--muted);margin:0}.intro-copy{color:var(--muted);margin-top:30px}.intro-copy p{margin:0}.inline-chip{color:var(--ink);white-space:nowrap;text-decoration:none}.inline-chip span,.company-mark{color:#fff;background:var(--ink);width:21px;height:21px;transition:transform .25s var(--ease), border-radius .25s var(--ease);border-radius:6px;place-items:center;font:11px/1 Fragment Mono,monospace;display:inline-grid}.inline-chip:hover span{border-radius:50%;transform:rotate(-8deg)scale(1.08)}.key-command{color:var(--muted);cursor:pointer;background:0 0;border:0;margin:24px 0 0;padding:0}kbd{color:#555;background:#f4f4f2;border:1px solid #e2e2df;border-radius:6px;place-items:center;min-width:20px;height:20px;padding:0 5px;font:12px/1 Fragment Mono,monospace;display:inline-grid;box-shadow:0 1px 1px #0000000f}.section{scroll-margin-top:96px}.section-intro{padding:10px 0 20px}.section-label{margin:0 0 17px}.section-intro>p:last-child,.section-copy{color:var(--muted);margin:0}.work-canvas{perspective:1200px;height:540px;margin-top:4px;position:relative;overflow:hidden}.dot-field{opacity:.74;background-image:radial-gradient(circle, var(--dot) 1px, transparent 1.25px);background-size:8px 8px;position:absolute;inset:0;mask-image:linear-gradient(#0000,#000 7% 92%,#0000)}.project-card{--rx:0deg;--ry:0deg;color:#e8e8e8;width:300px;height:246px;transform:rotate(var(--angle)) rotateX(var(--rx)) rotateY(var(--ry)) translateZ(0);transition:transform .28s var(--ease), box-shadow .28s var(--ease), z-index 0s;will-change:transform;background:#171717;border:5px solid #fff;border-radius:13px;outline:none;padding:12px;position:absolute;box-shadow:0 0 0 1px #00000014,0 18px 38px #00000024}.project-card:hover,.project-card:focus-visible{z-index:5;transform:rotate(0deg) rotateX(var(--rx)) rotateY(var(--ry)) translateY(-10px) scale(1.035);box-shadow:0 0 0 1px #00000014,0 28px 55px #00000030}.mail-card{--angle:-4deg;top:82px;left:calc(50% - 410px)}.lucid-card{--angle:2deg;top:42px;left:calc(50% - 150px)}.idx-card{--angle:5deg;top:152px;left:calc(50% + 110px)}.card-top{justify-content:space-between;align-items:center;margin-bottom:10px;font-size:11px;display:flex}.status-dot{background:#b1ff28;border-radius:50%;width:7px;height:7px;box-shadow:0 0 10px #b1ff2880}.status-dot.mint{background:#65efc3}.status-dot.blue{background:#4f8cff}.card-caption{color:#777;justify-content:space-between;margin-top:10px;font-size:8px;display:flex}.mail-ui{background:#202020;border:1px solid #343434;border-radius:7px;grid-template-columns:32px 75px 1fr;height:175px;display:grid;overflow:hidden}.mail-rail{background:#191919;padding:9px 8px}.mail-rail i{background:#474747;border-radius:3px;width:13px;height:4px;margin-bottom:9px;display:block}.mail-rail i:first-child{background:#fafafa;height:13px}.mail-list{border-right:1px solid #343434;padding:11px 8px;font-size:7px}.mail-list b{margin-bottom:11px;font-size:8px;display:block}.mail-list span{background:#292929;border-radius:3px;height:19px;margin-bottom:4px;display:block}.mail-message{padding:18px 12px}.mail-message small{color:#777;margin-bottom:18px;font-size:7px;display:block}.mail-message strong{margin-bottom:7px;font-size:10px;display:block}.mail-message p{color:#8b8b8b;margin:0;font-size:7px;line-height:1.5}.lucid-card{color:var(--ink);background:#eff1f5}.lucid-ui{place-items:center;height:175px;padding:18px;display:grid}.study-sheet{background:#fff;border-radius:7px;width:190px;padding:24px 18px 16px;box-shadow:0 8px 25px #3237421f}.study-sheet small{color:#9b9b9b;margin-bottom:15px;font:7px/1 Fragment Mono,monospace;display:block}.study-sheet strong{margin-bottom:22px;font-size:12px;line-height:1.3;display:block}.study-sheet span{color:#8f8f8f;font-size:8px}.study-progress{gap:3px;margin-top:11px;display:flex}.study-progress i{background:#d7d8dc;border-radius:3px;width:14px;height:3px}.study-progress i:first-child,.study-progress i:nth-child(2){background:#292929}.idx-ui{background:#e4e6e3;border-radius:7px;height:175px;position:relative;overflow:hidden}.map-grid{background:linear-gradient(35deg,#0000 44%,#c5c7c2 45% 47%,#0000 48%),linear-gradient(118deg,#0000 47%,#caccc7 48% 50%,#0000 51%),linear-gradient(70deg,#0000 60%,#bfc2bc 61% 63%,#0000 64%);position:absolute;inset:0}.map-grid:after{content:"";border:7px solid #79a1b799;border-left-color:#0000;border-radius:50%;width:110px;height:95px;position:absolute;top:44px;left:10px;transform:rotate(24deg)}.pin{z-index:2;background:#1a1a1a;border:3px solid #fff;border-radius:50%;width:11px;height:11px;position:absolute;box-shadow:0 2px 6px #00000026}.p1{top:32px;left:54px}.p2{top:102px;left:104px}.p3{top:56px;right:35px}.listing{color:#222;background:#ffffffeb;border-radius:7px;width:118px;padding:12px;position:absolute;bottom:10px;right:10px;box-shadow:0 6px 20px #0000001a}.listing small{color:#979797;font:6px/1 Fragment Mono,monospace}.listing strong{margin:8px 0 13px;font-size:10px;display:block}.listing div{gap:4px;display:flex}.listing div span{color:#797979;background:#f0f0ef;border-radius:3px;padding:3px 5px;font:6px/1 Fragment Mono,monospace}.flow{padding-top:8px}.compact{padding:44px 0}.experience-list{margin-top:28px}.experience-list article{grid-template-columns:112px 1fr;gap:12px;margin-bottom:27px;display:grid}.experience-list h2{letter-spacing:-.01em;margin:-2px 0 4px;font-size:15px;font-weight:520}.experience-list p{color:var(--muted);margin:0;font-size:14px}.company-mark{vertical-align:1px;width:18px;height:18px;margin:0 1px;font-size:9px}.testimonial-card{border:1px solid var(--line);background:var(--white);min-height:230px;transition:transform .3s var(--ease), box-shadow .3s var(--ease);border-radius:13px;padding:20px}.testimonial-card:hover{transform:translateY(-4px);box-shadow:0 14px 35px #0000000f}.testimonial-card blockquote{letter-spacing:-.03em;margin:0;font-size:clamp(20px,4vw,29px);line-height:1.25}.testimonial-person{align-items:center;margin-top:82px;display:flex}.mini-avatar{color:#fff;background:#222;border-radius:50%;place-items:center;width:32px;height:32px;margin-right:10px;font:12px/1 Fragment Mono,monospace;display:grid}.testimonial-person div{flex-direction:column;font-size:13px;display:flex}.testimonial-person strong{font-weight:540}.testimonial-person div span{color:var(--muted)}.public-note{color:var(--quiet);margin-left:auto;font:10px/1 Fragment Mono,monospace}.tool-row{flex-wrap:wrap;gap:13px;display:flex}.tool{outline:none;width:42px;height:42px;position:relative}.tool>span{color:#fff;width:42px;height:42px;transition:transform .3s var(--ease), border-radius .3s var(--ease);background:#171717;border:1px solid #0000000f;border-radius:12px;place-items:center;font:11px/1 Fragment Mono,monospace;display:grid;box-shadow:inset 0 1px #ffffff24}.tool small{z-index:3;color:#4f4f4f;white-space:nowrap;opacity:0;pointer-events:none;background:#f2f2f0;border-radius:6px;padding:5px 7px;font-size:11px;transition:opacity .18s,transform .18s;position:absolute;top:calc(100% + 9px);left:50%;transform:translate(-50%,-5px)}.tool:hover>span,.tool:focus-visible>span{border-radius:50%;transform:translateY(-4px)rotate(-5deg)}.tool:hover small,.tool:focus-visible small{opacity:1;transform:translate(-50%)}.tool.blue>span{background:#3178c6}.tool.cyan>span{color:#61dafb;background:#20252d}.tool.warm>span{background:#f05138}.tool.green>span{background:#2b9f72}.tool.amber>span{color:#28211c;background:#f6a627}.tool.coral>span{background:#f05133}.tool.violet>span{background:linear-gradient(135deg,#f24e1e,#a259ff 52%,#1abcfe)}.venture-list,.writing-list,.social-list{display:grid}.venture-row{min-height:64px;transition:background-color .22s ease, transform .22s var(--ease);border-radius:10px;outline:none;grid-template-columns:42px minmax(0,1fr) auto 18px;align-items:center;gap:13px;margin:0 -12px;padding:7px 12px;display:grid}.venture-row:hover,.venture-row:focus-visible{background:var(--paper);transform:translate(4px)}.venture-mark{color:#fff;background:#1c1c1c;border-radius:11px;place-items:center;width:42px;height:42px;font:14px/1 Fragment Mono,monospace;display:grid}.venture-row:nth-child(2) .venture-mark{color:#1a1a1a;background:#dfff37}.venture-row:nth-child(3) .venture-mark{background:#3b6cf6}.venture-row:nth-child(4) .venture-mark{color:#171717;background:#efefed}.venture-copy{flex-direction:column;min-width:0;display:flex}.venture-copy strong{font-size:14px;font-weight:520}.venture-copy small,.venture-status{color:var(--muted);font-size:13px}.venture-status{white-space:nowrap}.arrow{color:var(--muted);transition:transform .22s var(--ease), color .22s ease}.venture-row:hover .arrow{color:var(--ink);transform:translate(2px,-2px)}.writing-row{min-height:43px;transition:background-color .2s ease, padding .2s var(--ease);border-radius:8px;outline:none;grid-template-columns:92px 1fr auto;align-items:center;margin:0 -12px;padding:0 12px;display:grid}.writing-row:hover,.writing-row:focus-visible{background:var(--paper);padding-inline:17px}.writing-row strong{font-size:14px;font-weight:480}.draft{color:var(--quiet);font:10px/1 Fragment Mono,monospace}.read-time{color:var(--muted);align-items:center;gap:6px;font-size:12px;display:flex}.read-time svg{width:13px;height:13px}.personal-grid{gap:12px;margin-top:22px;display:grid}.weather-card,.desk-card{border:1px solid var(--line);background:var(--paper);border-radius:13px}.weather-card{justify-content:space-between;align-items:center;min-height:92px;padding:16px;display:flex}.weather-card>div{align-items:center;gap:14px;display:flex}.weather-icon{color:#222;background:#fff;border-radius:11px;place-items:center;width:48px;height:48px;font-size:22px;display:grid;box-shadow:0 3px 10px #0000000d}.weather-card strong,.weather-card small{display:block}.weather-card strong{font-size:18px;font-weight:530}.weather-card small{color:var(--muted)}.weather-location{text-align:right}.desk-card{background-image:radial-gradient(circle at 50% 20%,#fff 0,#f7f7f5 30%,#eee 100%);height:218px;position:relative;overflow:hidden}.code-window,.terminal-window{border:5px solid #fff;border-radius:10px;position:absolute;box-shadow:0 12px 27px #00000021}.code-window{color:#909090;background:#1f1f1f;width:280px;height:130px;padding:17px;top:42px;left:58px;transform:rotate(-4deg)}.code-window i{background:#3a3a3a;border-radius:5px;width:72%;height:5px;margin:0 0 11px;display:block}.code-window i:nth-child(2){background:#656565;width:52%;margin-left:18px}.code-window i:nth-child(3){width:63%;margin-left:30px}.code-window span{font:9px/1 Fragment Mono,monospace;position:absolute;bottom:12px;left:17px}.terminal-window{background:#fff;width:225px;height:110px;padding:17px;bottom:30px;right:50px;transform:rotate(5deg)}.terminal-window span{color:var(--quiet);margin-bottom:23px;font:8px/1 Fragment Mono,monospace;display:block}.terminal-window b{font:11px/1.3 Fragment Mono,monospace}.contact form{margin-top:20px}.form-row{grid-template-columns:1fr 1fr;gap:8px;display:grid}.contact label{display:block}.contact label>span{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.contact input,.contact textarea{width:100%;color:var(--ink);background:#f7f7f6;border:1px solid #0000;border-radius:9px;outline:none;transition:border-color .2s,background-color .2s,box-shadow .2s}.contact input{height:42px;padding:0 12px}.contact textarea{resize:vertical;min-height:150px;margin-top:8px;padding:12px}.contact input:hover,.contact textarea:hover{background:#f3f3f1}.contact input:focus,.contact textarea:focus{background:#fff;border-color:#c9c9c5;box-shadow:0 0 0 3px #f0f0ee}.contact input::placeholder,.contact textarea::placeholder{color:#aaa}.honey{position:absolute;left:-9999px}.form-actions{justify-content:space-between;align-items:center;margin-top:10px;display:flex}.form-actions button{color:#fff;background:var(--ink);cursor:pointer;height:38px;transition:transform .2s var(--ease), opacity .2s ease;border:0;border-radius:9px;padding:0 14px}.form-actions button:hover{transform:translateY(-2px)}.form-actions button:disabled{opacity:.45;cursor:wait}.submit-hint,.form-status{color:var(--muted);font-size:12px}.submit-hint kbd{min-width:18px;height:18px;font-size:10px}.form-status{min-height:18px;margin:10px 0 0}.social-list{margin-top:28px}.social-list a{min-height:39px;color:var(--muted);border-radius:7px;justify-content:space-between;align-items:center;margin:0 -10px;padding:0 10px;font-size:13px;text-decoration:none;transition:color .2s,background .2s;display:flex}.social-list a:hover{color:var(--ink);background:var(--paper)}.footer{text-align:center;color:var(--quiet);padding:90px 0 52px;font-size:11px}.signature-mark{color:var(--ink);letter-spacing:-.08em;margin-bottom:18px;font-family:Fragment Mono,monospace;font-size:22px;transform:rotate(-4deg)}.footer p{margin:5px 0}.footer-weather{text-align:left;justify-content:space-between;margin-top:55px;display:flex}.dock{z-index:15;backdrop-filter:blur(14px)saturate(1.2);background:#fafaf9d6;border:1px solid #0001;border-radius:14px;gap:1px;padding:5px;display:flex;position:fixed;bottom:19px;left:50%;transform:translate(-50%);box-shadow:0 8px 25px #00000017,inset 0 1px #fff}.dock a{color:#7e7e7e;width:38px;height:38px;transition:color .2s ease, background .2s ease, transform .2s var(--ease);border-radius:10px;place-items:center;text-decoration:none;display:grid;position:relative}.dock a:hover,.dock a:focus-visible,.dock a[data-active]{color:#1d1d1d;background:#fff;outline:none;transform:translateY(-2px);box-shadow:0 1px 6px #0000000d}.dock svg{fill:none;stroke:currentColor;stroke-width:1.45px;stroke-linecap:round;stroke-linejoin:round;width:19px;height:19px}.dock a>span{color:#525252;opacity:0;pointer-events:none;background:#f1f1ef;border-radius:6px;padding:5px 7px;font-size:11px;transition:opacity .16s,transform .16s;position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%,4px)}.dock a:hover>span,.dock a:focus-visible>span{opacity:1;transform:translate(-50%)}.svg-sprite{width:0;height:0;position:absolute;overflow:hidden}.reveal{opacity:0;transition:opacity .7s var(--ease), transform .7s var(--ease);transform:translateY(16px)}.reveal.is-visible{opacity:1;transform:translateY(0)}:focus-visible{outline-offset:3px;outline:2px solid #1d1d1d}@media (width<=820px){.work-canvas{height:470px}.project-card{width:255px;height:216px}.mail-ui,.lucid-ui,.idx-ui{height:145px}.mail-card{left:calc(50% - 315px)}.lucid-card{left:calc(50% - 125px)}.idx-card{left:calc(50% + 65px)}}@media (width<=640px){.intro{padding-top:28px}.system-line{margin-bottom:40px}.work-canvas{height:600px}.project-card{width:242px}.mail-card{top:60px;left:calc(50% - 205px)}.lucid-card{top:205px;left:calc(50% - 72px)}.idx-card{top:340px;left:calc(50% - 180px)}.experience-list article{grid-template-columns:78px 1fr}.venture-row{grid-template-columns:42px minmax(0,1fr) 16px}.venture-status{display:none}.writing-row{grid-template-columns:55px 1fr;gap:7px;padding-block:8px}.read-time{grid-column:2}.form-row{grid-template-columns:1fr}.desk-card{height:200px}.code-window{left:20px}.terminal-window{right:15px}.dock{scrollbar-width:none;gap:0;max-width:calc(100% - 20px);overflow-x:auto}.dock a{flex:0 0 35px;width:35px}.footer{padding-bottom:90px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal{opacity:1;transform:none}}
