@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.8e0177b5.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.b97b3418.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.853070df.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_a71539c9-module__T19VSG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_a71539c9-module__T19VSG__variable{--font-geist-sans:"Geist","Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.c1fdd6c2.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.799d8ef8.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.dbea232f.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono","Geist Mono Fallback"}
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-space-y-reverse:0}}}@layer theme{:root,:host{--color-green-400:#05df72;--color-cyan-400:#00d2ef;--color-blue-400:#54a2ff;--color-gray-300:#d1d5dc;--color-gray-500:#6a7282;--spacing:.25rem;--default-font-family:var(--font-geist-sans);--default-mono-font-family:var(--font-geist-mono)}@supports (color:lab(0% 0 0)){:root,:host{--color-green-400:lab(78.503% -64.9265 39.7492);--color-cyan-400:lab(76.6045% -40.9406 -29.6231);--color-blue-400:lab(65.0361% -1.42065 -56.9802);--color-gray-300:lab(85.1236% -.612259 -3.7138);--color-gray-500:lab(47.7841% -.393182 -10.0268)}}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.static{position:static}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-4{margin-top:calc(var(--spacing)*4)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.mb-8{margin-bottom:calc(var(--spacing)*8)}.h-1{height:calc(var(--spacing)*1)}.h-2{height:calc(var(--spacing)*2)}.h-3{height:calc(var(--spacing)*3)}.grow{flex-grow:1}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}.text-blue-400{color:var(--color-blue-400)}.text-cyan-400{color:var(--color-cyan-400)}.text-gray-300{color:var(--color-gray-300)}.text-gray-500{color:var(--color-gray-500)}.text-green-400{color:var(--color-green-400)}.underline{text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}:root{--background:#0d1117;--foreground:#c9d1d9}*{box-sizing:border-box;margin:0;padding:0}body{color:#c9d1d9;background:#0d1117;justify-content:center;align-items:center;min-height:100vh;font-family:Monaco,Courier New,monospace;display:flex;overflow:hidden}.terminal-container{justify-content:center;align-items:center;width:100%;height:100vh;padding:20px;display:flex}.terminal-window{will-change:width,height,max-width,max-height;background:#0d1117;border:1px solid #ffffff1a;border-radius:13.2px;flex-direction:column;width:100%;max-width:660px;height:550px;transition:all .4s cubic-bezier(.25,.46,.45,.94);display:flex;overflow:hidden;box-shadow:0 22px 66px #00000080}.terminal-header{background:#161b22;border-bottom:1px solid #ffffff1a;align-items:center;gap:13.2px;padding:8.8px 13.2px;display:flex}.traffic-lights{flex-shrink:0;gap:8.8px;display:flex}.traffic-light{cursor:pointer;border:none;border-radius:50%;width:13.2px;height:13.2px;transition:all .2s cubic-bezier(.4,0,.2,1);transform:scale(1)}.traffic-light:hover{opacity:.8;transform:scale(1.1)}.traffic-light:active{transform:scale(.95)}.traffic-light-close{background:#ff5f56}.traffic-light-minimize{background:#ffbd2e}.traffic-light-maximize{background:#27c93f}.terminal-tabs{flex:1;gap:2.2px;display:flex}.terminal-tab{color:#8b949e;cursor:pointer;background:0 0;border:none;border-radius:6.6px 6.6px 0 0;padding:6.6px 17.6px;font-family:Monaco,Courier New,monospace;font-size:14.3px;transition:all .25s cubic-bezier(.4,0,.2,1);position:relative}.terminal-tab:hover{color:#c9d1d9;background:#ffffff0d;transform:translateY(-1px)}.terminal-tab.active{color:#c9d1d9;background:#0d1117;border-bottom:2px solid #58a6ff}.terminal-body{background:#0d1117;flex:1;height:495px;padding:22px;font-family:Monaco,Courier New,monospace;overflow:hidden auto}.terminal-body::-webkit-scrollbar{width:8px}.terminal-body::-webkit-scrollbar-track{background:0 0}.terminal-body::-webkit-scrollbar-thumb{opacity:0;background:#fff3;border-radius:4px;transition:opacity .2s}.terminal-body:hover::-webkit-scrollbar-thumb{opacity:1}.terminal-body::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.terminal-body{scrollbar-width:thin;scrollbar-color:#fff3 transparent}.terminal-content{color:#c9d1d9;font-size:15.4px;line-height:1.5}.terminal-content>div{margin-bottom:8.8px}.terminal-content .space-y-2>*{margin-bottom:11px}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.cursor-blink{vertical-align:middle;background:#58a6ff;width:8.8px;height:17.6px;margin-left:2.2px;animation:1s infinite blink;display:inline-block}.language-switcher{z-index:1000;align-items:center;gap:8.8px;font-family:Monaco,Courier New,monospace;font-size:14.3px;display:flex;position:fixed;top:22px;right:22px}.cv-download{z-index:1000;font-family:Monaco,Courier New,monospace;font-size:14.3px;position:fixed;top:22px;left:22px}.cv-link{color:#8b949e;cursor:pointer;background:0 0;border:none;padding:4.4px 8.8px;font-family:Monaco,Courier New,monospace;font-size:14.3px;text-decoration:underline;transition:all .25s cubic-bezier(.4,0,.2,1);display:inline-block;transform:scale(1)}.cv-link:hover{color:#c9d1d9;transform:scale(1.1)}.cv-link:active{transform:scale(.95)}.lang-btn{color:#8b949e;cursor:pointer;background:0 0;border:none;padding:4.4px 8.8px;font-family:Monaco,Courier New,monospace;font-size:14.3px;transition:all .25s cubic-bezier(.4,0,.2,1);transform:scale(1)}.lang-btn:hover{color:#c9d1d9;transform:scale(1.1)}.lang-btn.active{color:#58a6ff;font-weight:600}.lang-btn:active{transform:scale(.95)}.lang-separator{color:#8b949e;-webkit-user-select:none;user-select:none}.contact-label{color:#ffa657;font-weight:600}.contact-label-link{cursor:pointer;text-decoration:underline;transition:all .2s cubic-bezier(.4,0,.2,1)}.contact-label-link:hover{color:#ffbd2e;opacity:.9}.contact-item{align-items:baseline;gap:0;display:flex}.contact-item>div{display:inline-block}.contact-item .contact-label{display:inline}.contact-link{color:#79c0ff;text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1)}.contact-link:hover{color:#58a6ff;text-decoration:underline;transform:translate(2px)}.experience-title-line{white-space:nowrap;flex-wrap:nowrap;align-items:baseline;gap:8.8px;margin-top:8.8px;margin-bottom:4.4px;display:flex}.experience-date-range{color:#79c0ff;white-space:nowrap;flex-shrink:0;font-weight:500}.experience-title{color:#ffa657;white-space:nowrap;font-weight:600}.experience-title-link{color:#ffa657;white-space:nowrap;font-weight:600;text-decoration:underline;transition:all .2s cubic-bezier(.4,0,.2,1)}.experience-title-link:hover{color:#ffbd2e;text-decoration:underline}.experience-skills{color:#a5d6ff}.review-quote{color:#c9d1d9;font-style:italic}.review-name{color:#ffa657;font-weight:600}.review-date{color:#8b949e}.review-link{color:#79c0ff;text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1)}.review-link:hover{color:#58a6ff;text-decoration:underline}.terminal-window.maximized{border-radius:8px;width:80vw;max-width:80vw;height:80vh}.terminal-window.maximized .terminal-body{height:calc(80vh - 50px);transition:height .4s cubic-bezier(.25,.46,.45,.94)}.macos-alert-overlay{z-index:10000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0009;justify-content:center;align-items:center;animation:.2s cubic-bezier(.4,0,.2,1) fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.macos-alert{background:#0d1117;border:1px solid #ffffff1a;border-radius:13.2px;min-width:440px;max-width:550px;padding:0;animation:.3s cubic-bezier(.25,.46,.45,.94) slideUp;overflow:hidden;box-shadow:0 22px 66px #000c}.macos-alert-header{background:#0d1117;border-bottom:1px solid #ffffff1a;padding:17.6px 26.4px}.macos-alert-icon{text-align:center;margin-bottom:17.6px;font-size:52.8px}.macos-alert-title{color:#ff5f56;text-align:center;margin-bottom:13.2px;font-family:Monaco,Courier New,monospace;font-size:19.8px;font-weight:600}.macos-alert-body{background:#0d1117;padding:26.4px}.macos-alert-message{color:#c9d1d9;text-align:center;margin-bottom:26.4px;font-family:Monaco,Courier New,monospace;font-size:15.4px;line-height:1.6}.macos-alert-link{color:#79c0ff;text-decoration:underline;transition:all .2s cubic-bezier(.4,0,.2,1)}.macos-alert-link:hover{color:#58a6ff}.macos-alert-buttons{justify-content:center;gap:12px;display:flex}.macos-alert-button{color:#0d1117;cursor:pointer;background:#58a6ff;border:none;border-radius:6.6px;padding:8.8px 26.4px;font-family:Monaco,Courier New,monospace;font-size:14.3px;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1);transform:scale(1)}.macos-alert-button:hover{background:#79c0ff;transform:scale(1.05)}.macos-alert-button:active{transform:scale(.98)}.minimized-icon{cursor:pointer;z-index:1000;background:#161b22;border:1px solid #ffffff1a;border-radius:13.2px;justify-content:center;align-items:center;width:66px;height:66px;margin:0;padding:0;transition:all .3s cubic-bezier(.25,.46,.45,.94);animation:.4s cubic-bezier(.25,.46,.45,.94) slideUpIcon;display:flex;position:fixed;bottom:22px;left:50%;transform:translate(-50%);box-shadow:0 4.4px 13.2px #0000004d}@keyframes slideUpIcon{0%{opacity:0;transform:translate(-50%)translateY(20px)scale(.8)}to{opacity:1;transform:translate(-50%)translateY(0)scale(1)}}.minimized-icon:hover{background:#1f2329;transform:translate(-50%)scale(1.1);box-shadow:0 6px 16px #0006}.minimized-icon:active{transform:translate(-50%)scale(.95)}.minimized-icon-content{color:#58a6ff;font-family:Monaco,Courier New,monospace;font-size:35.2px;font-weight:700}@media (max-width:768px){.terminal-window{max-width:95vw;height:80vh}.terminal-body{height:calc(80vh - 50px);padding:20px}.terminal-header{gap:12px;padding:8px 12px}.traffic-light{width:12px;height:12px}.traffic-lights{gap:8px}.terminal-tab{border-radius:6px 6px 0 0;padding:6px 16px;font-size:13px}.terminal-tabs{gap:2px}.terminal-content{font-size:14px}.cursor-blink{width:8px;height:16px;margin-left:2px}.language-switcher{gap:8px;font-size:13px;top:20px;right:20px}.lang-btn{padding:4px 8px;font-size:13px}.terminal-content>div{margin-bottom:8px}.terminal-content .space-y-2>*{margin-bottom:10px}.experience-title-line{gap:8px;margin-top:8px;margin-bottom:4px}.macos-alert{border-radius:12px;min-width:400px;max-width:500px;box-shadow:0 20px 60px #000c}.macos-alert-header{padding:16px 24px}.macos-alert-body{padding:24px}.macos-alert-icon{margin-bottom:16px;font-size:48px}.macos-alert-title{margin-bottom:12px;font-size:18px}.macos-alert-message{margin-bottom:24px;font-size:14px}.macos-alert-button{border-radius:6px;padding:8px 24px;font-size:13px}.minimized-icon{border-radius:12px;width:60px;height:60px;bottom:20px;box-shadow:0 4px 12px #0000004d}.minimized-icon-content{font-size:32px}.traffic-light-minimize,.traffic-light-maximize{display:none}.terminal-tabs{-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;gap:0;overflow:auto hidden}.terminal-tabs::-webkit-scrollbar{display:none}.terminal-tab{white-space:nowrap;flex-shrink:0;padding:6px 10px}.experience-title-line{white-space:normal;flex-wrap:wrap}.experience-date-range,.experience-title,.experience-title-link{white-space:normal}}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}
