@import url("https://fonts.googleapis.com/css2?family=DM+Mono:wght@300;400;500&family=Manrope:wght@400;500;600;700&family=Playfair+Display:ital,wght@1,500&display=swap");
/*
! tailwindcss v3.1.8 | MIT License | https://tailwindcss.com
*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}body{line-height:inherit}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{text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }::-webkit-backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }.mx-4{margin-left:1rem;margin-right:1rem}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.h-auto{height:auto}.h-9{height:2.25rem}.h-8{height:2rem}.h-10{height:2.5rem}.w-full{width:100%}.w-9{width:2.25rem}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.items-center{align-items:center}.justify-center{justify-content:center}.gap-4{gap:1rem}.gap-2{gap:.5rem}.whitespace-nowrap{white-space:nowrap}.rounded-xl{border-radius:.75rem}.rounded-md{border-radius:calc(var(--radius) - 2px)}.border{border-width:1px}.border-input{border-color:hsl(var(--input))}.bg-neutral-100{--tw-bg-opacity:1;background-color:rgb(245 245 245/var(--tw-bg-opacity))}.bg-blue-500{--tw-bg-opacity:1;background-color:rgb(59 130 246/var(--tw-bg-opacity))}.bg-primary{background-color:hsl(var(--primary))}.bg-destructive{background-color:hsl(var(--destructive))}.bg-background{background-color:hsl(var(--background))}.bg-secondary{background-color:hsl(var(--secondary))}.from-black{--tw-gradient-from:#000;--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.via-black{--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-from),#000,var(--tw-gradient-to)}.to-black{--tw-gradient-to:#000}.px-4{padding-left:1rem;padding-right:1rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-8{padding-left:2rem;padding-right:2rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-medium{font-weight:500}.text-primary-foreground{color:hsl(var(--primary-foreground))}.text-destructive-foreground{color:hsl(var(--destructive-foreground))}.text-secondary-foreground{color:hsl(var(--secondary-foreground))}.text-primary{color:hsl(var(--primary))}.underline-offset-4{text-underline-offset:4px}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.shadow,.shadow-sm{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.outline{outline-style:solid}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,fill,stroke,-webkit-text-decoration-color;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,-webkit-text-decoration-color;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}@-webkit-keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0) scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1)) rotate(var(--tw-enter-rotate,0))}}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0) scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1)) rotate(var(--tw-enter-rotate,0))}}@-webkit-keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0) scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1)) rotate(var(--tw-exit-rotate,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0) scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1)) rotate(var(--tw-exit-rotate,0))}}:root{--ink:#07080b;--surface:#0d0f14;--surface-2:#12151c;--line:hsla(0,0%,100%,.11);--line-bright:hsla(0,0%,100%,.2);--text:#f5f5f2;--muted:#9599a3;--violet:#9b8cff;--cyan:#7ee7dc;--radius:1.4rem}.light{--ink:#f4f5f7;--surface:#fff;--surface-2:#e9ebef;--line:rgba(14,18,27,.12);--line-bright:rgba(14,18,27,.24);--text:#11131a;--muted:#646a76;--violet:#6555d9;--cyan:#087e78}.aero{--ink:#dff5ff;--surface:#f7fdff;--surface-2:#c8efff;--line:rgba(2,75,127,.2);--line-bright:rgba(2,75,127,.38);--text:#07365a;--muted:#326986;--violet:#087ed0;--cyan:#009f75}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--ink);color-scheme:dark}html.aero,html.light{color-scheme:light}body{margin:0;min-height:100vh;background:var(--ink);color:var(--text);font-family:Manrope,sans-serif;-webkit-font-smoothing:antialiased;transition:background-color .35s,color .35s}.aero body{background:linear-gradient(180deg,#78cef7,#dff7ff 35rem,#f5fff4 72rem,#dff5ff)}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}::-moz-selection{background:var(--violet);color:#07080b}::selection{background:var(--violet);color:#07080b}.site-shell{width:min(1180px,calc(100% - 40px));margin:0 auto;position:relative;overflow:hidden}.site-shell:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.16;z-index:20;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='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.18'/%3E%3C/svg%3E")}.ambient{position:absolute;width:42rem;aspect-ratio:1;border-radius:50%;pointer-events:none;filter:blur(110px);opacity:.12;z-index:-1;-webkit-animation:drift 14s ease-in-out infinite alternate;animation:drift 14s ease-in-out infinite alternate}.ambient-one{background:var(--violet);top:8rem;right:-22rem}.ambient-two{background:var(--cyan);top:58rem;left:-30rem;-webkit-animation-delay:-7s;animation-delay:-7s}.site-nav{position:relative;z-index:10;margin-top:22px;height:64px;padding:8px 10px 8px 14px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border:1px solid var(--line);border-radius:18px;background:rgba(11,13,17,.72);box-shadow:0 16px 60px rgba(0,0,0,.3);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.light .site-nav{background:hsla(0,0%,100%,.76);box-shadow:0 16px 60px rgba(28,33,43,.1)}.aero .site-nav{border-color:hsla(0,0%,100%,.72);background:linear-gradient(180deg,hsla(0,0%,100%,.84),rgba(218,246,255,.67));box-shadow:inset 0 2px 0 hsla(0,0%,100%,.8),0 14px 36px rgba(0,91,150,.2)}.brand-mark{display:flex;align-items:center;gap:9px;font:500 12px DM Mono,monospace;letter-spacing:.08em}.brand-mark i{display:block;width:5px;height:5px;border-radius:50%;background:var(--cyan);box-shadow:0 0 14px var(--cyan)}.nav-links{display:flex;gap:4px}.nav-link{padding:9px 14px;border-radius:10px;color:var(--muted);font:500 12px DM Mono,monospace;transition:color .25s,background .25s}.nav-link-active,.nav-link:hover{color:var(--text);background:hsla(0,0%,100%,.065)}.nav-actions{justify-self:end}.nav-actions,.nav-contact{display:flex;align-items:center;gap:7px}.nav-contact{padding:10px 14px;border-radius:11px;background:var(--text);color:var(--ink);font:600 12px DM Mono,monospace;transition:transform .25s,box-shadow .25s}.nav-contact:hover{transform:translateY(-2px);box-shadow:0 10px 30px hsla(0,0%,100%,.12)}.theme-toggle{position:relative;width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;padding:0;overflow:hidden;border:1px solid var(--line);border-radius:11px;color:var(--muted);background:hsla(0,0%,100%,.025);cursor:pointer;transition:color .25s,background .25s,border-color .25s,transform .25s}.theme-toggle:hover{color:var(--text);border-color:var(--line-bright);background:hsla(0,0%,100%,.06);transform:translateY(-2px)}.theme-toggle:focus-visible{outline:2px solid var(--violet);outline-offset:3px}.theme-icon{position:absolute;transition:transform .4s cubic-bezier(.2,.8,.2,1),opacity .25s}.theme-icon-aero,.theme-icon-sun{opacity:0;transform:rotate(-70deg) scale(.45)}.light .theme-icon-sun,.theme-icon-moon{opacity:1;transform:rotate(0) scale(1)}.aero .theme-icon-moon,.light .theme-icon-moon{opacity:0;transform:rotate(70deg) scale(.45)}.aero .theme-icon-aero{opacity:1;transform:rotate(0) scale(1)}.light .theme-toggle{background:rgba(17,19,26,.035)}.aero .theme-toggle{color:#0874b8;border-color:hsla(0,0%,100%,.9);background:linear-gradient(180deg,#fff,#bcecff);box-shadow:inset 0 1px 0 #fff,0 4px 12px rgba(0,98,159,.18)}.aero .ambient{opacity:.28;filter:blur(90px)}.aero .ambient-one{background:#fff36d}.aero .ambient-two{background:#35ce68}.hero{min-height:710px;padding:96px 4vw 74px;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:7vw;align-items:center;border-bottom:1px solid var(--line)}.hero-copy{position:relative;z-index:2}.availability{display:inline-flex;align-items:center;gap:8px;margin-bottom:30px;padding:7px 11px;border:1px solid var(--line);border-radius:99px;color:#b6bac4;background:hsla(0,0%,100%,.025);font:400 10px DM Mono,monospace;text-transform:uppercase;letter-spacing:.08em}.light .availability{color:#555c68;background:rgba(17,19,26,.025)}.aero .availability{color:#07527c;border-color:hsla(0,0%,100%,.75);background:hsla(0,0%,100%,.48);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.9)}.availability>span{width:6px;height:6px;border-radius:50%;background:#6ef0a8;box-shadow:0 0 10px #6ef0a8}.hero h1{margin:0;max-width:760px;font-size:clamp(3.7rem,7.5vw,7.2rem);line-height:.93;letter-spacing:-.07em;font-weight:500}.hero h1 em,.section-heading h2 em{color:var(--violet);font-family:Playfair Display,serif;font-weight:500;letter-spacing:-.04em}.hero-deck{max-width:620px;margin:34px 0 0;color:#aaaeb7;font-size:clamp(1rem,1.6vw,1.18rem);line-height:1.75}.light .hero-deck{color:#555c68}.aero .hero-deck{color:#205c79}.hero-actions{display:flex;flex-wrap:wrap;gap:11px;margin-top:34px}.button{display:inline-flex;align-items:center;gap:10px;padding:13px 17px;border-radius:12px;font:500 12px DM Mono,monospace;transition:transform .25s,background .25s,border-color .25s}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--text);color:var(--ink)}.button-ghost{border:1px solid var(--line);background:hsla(0,0%,100%,.025);color:#d1d2d7}.light .button-ghost{background:rgba(17,19,26,.025);color:#3d434e}.aero .button-primary,.aero .nav-contact,.aero .submit-button{color:#fff;background:linear-gradient(180deg,#34c869,#079242);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.55),0 7px 18px rgba(0,116,61,.25)}.aero .button-ghost{color:#07527c;border-color:hsla(0,0%,100%,.8);background:linear-gradient(180deg,hsla(0,0%,100%,.8),rgba(201,239,255,.68));box-shadow:inset 0 1px 0 #fff}.button-ghost:hover{border-color:var(--line-bright);background:hsla(0,0%,100%,.055)}.portrait-wrap{width:min(100%,360px);justify-self:end;position:relative}.portrait-glow{position:absolute;inset:12% -12% -12%;background:radial-gradient(circle at 50% 50%,rgba(155,140,255,.45),transparent 68%);filter:blur(28px)}.portrait-frame{aspect-ratio:.76;position:relative;overflow:hidden;border:1px solid hsla(0,0%,100%,.18);border-radius:42% 42% 24px 24px;box-shadow:0 35px 100px rgba(0,0,0,.55);transform:rotate(2deg);transition:transform .7s cubic-bezier(.2,.8,.2,1)}.portrait-wrap:hover .portrait-frame{transform:rotate(0) scale(1.015)}.portrait-frame img{filter:saturate(.72) contrast(1.08)}.portrait-shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(6,7,10,.85))}.portrait-label{position:absolute;left:20px;right:20px;bottom:18px;display:flex;justify-content:space-between;color:hsla(0,0%,100%,.72);font:400 9px DM Mono,monospace;text-transform:uppercase;letter-spacing:.08em}.orbit{position:absolute;border:1px solid hsla(0,0%,100%,.18);border-radius:50%;pointer-events:none}.orbit-one{width:48px;height:48px;top:8%;right:-7%;-webkit-animation:float 5s ease-in-out infinite;animation:float 5s ease-in-out infinite}.orbit-two{width:14px;height:14px;background:var(--cyan);border:0;left:-4%;bottom:22%;box-shadow:0 0 24px rgba(126,231,220,.7);-webkit-animation:float 4s ease-in-out -2s infinite;animation:float 4s ease-in-out -2s infinite}.work-section{padding:120px 4vw 140px}.github-section{padding:118px 4vw 126px;border-bottom:1px solid var(--line)}.github-heading{display:grid;grid-template-columns:1.2fr .75fr auto;gap:4vw;align-items:end;margin-bottom:54px}.github-kicker{display:flex;align-items:center;gap:9px;margin:0 0 20px;color:var(--cyan);font:400 10px DM Mono,monospace;text-transform:uppercase;letter-spacing:.13em}.live-dot{width:6px;height:6px;border-radius:50%;background:#6ef0a8;box-shadow:0 0 11px #6ef0a8;-webkit-animation:pulse 2.2s ease-in-out infinite;animation:pulse 2.2s ease-in-out infinite}.github-heading h2{margin:0;font-size:clamp(2.8rem,5vw,5rem);font-weight:500;line-height:.96;letter-spacing:-.055em}.github-heading h2 em{color:var(--violet);font-family:Playfair Display,serif;font-weight:500}.github-intro{margin:0;color:var(--muted);font-size:14px;line-height:1.75}.github-profile-link{display:inline-flex;align-items:center;gap:8px;padding:11px 13px;border:1px solid var(--line);border-radius:11px;color:var(--muted);font:500 11px DM Mono,monospace;transition:color .25s,border-color .25s,transform .25s}.github-profile-link:hover{color:var(--text);border-color:var(--line-bright);transform:translateY(-2px)}.github-dashboard{display:grid;grid-template-columns:1.35fr .65fr;border:1px solid var(--line);border-radius:24px;overflow:hidden;background:hsla(0,0%,100%,.018);box-shadow:0 28px 90px rgba(0,0,0,.18)}.github-calendar-card{min-width:0;padding:28px;border-right:1px solid var(--line)}.calendar-meta{display:flex;justify-content:space-between;gap:20px;margin-bottom:24px;color:#777c87;font:400 9px DM Mono,monospace;text-transform:uppercase;letter-spacing:.1em}.contribution-grid{display:grid;grid-auto-flow:column;grid-template-rows:repeat(7,1fr);grid-auto-columns:minmax(5px,1fr);gap:4px;min-height:114px}.contribution-cell{min-width:4px;aspect-ratio:1;border-radius:2px;background:hsla(0,0%,100%,.055)}.contribution-cell.level-1{background:rgba(126,231,220,.28)}.contribution-cell.level-2{background:rgba(126,231,220,.48)}.contribution-cell.level-3{background:rgba(126,231,220,.72)}.contribution-cell.level-4{background:var(--cyan);box-shadow:0 0 8px rgba(126,231,220,.2)}.github-big-number{display:flex;align-items:end;gap:18px;margin-top:30px}.github-big-number strong{font:500 clamp(3.5rem,7vw,6.8rem)/.8 DM Mono,monospace;letter-spacing:-.09em;color:var(--text)}.github-big-number span{padding-bottom:2px;color:var(--muted);font:400 10px/1.45 DM Mono,monospace;text-transform:uppercase;letter-spacing:.08em}.github-stats{display:grid;grid-template-columns:1fr 1fr;margin:0}.github-stats div{min-height:126px;padding:24px;border-bottom:1px solid var(--line)}.github-stats div:nth-child(odd){border-right:1px solid var(--line)}.github-stats dt{color:#777c87;font:400 9px DM Mono,monospace;text-transform:uppercase;letter-spacing:.09em}.github-stats dd{margin:22px 0 0;font:500 2.1rem DM Mono,monospace;letter-spacing:-.06em}.github-stats small{color:var(--muted);font-size:9px;letter-spacing:0}.github-feed,.github-languages{padding:28px;border-top:1px solid var(--line)}.github-languages{border-right:1px solid var(--line)}.language-bar{height:7px;display:flex;gap:3px;margin-bottom:22px}.language-bar i{min-width:3px;border-radius:99px;background:var(--violet)}.language-bar i:nth-child(2){background:var(--cyan)}.language-bar i:nth-child(3){background:#f0ce73}.language-bar i:nth-child(4){background:#ec8ea8}.language-bar i:nth-child(5){background:#7aa7e8}.github-languages ul{display:grid;grid-template-columns:repeat(2,1fr);gap:12px 28px;margin:0;padding:0;list-style:none}.github-languages li{display:flex;justify-content:space-between;color:#b9bbc1;font:400 11px DM Mono,monospace}.github-languages li b{color:#6f737d;font-weight:400}.commit-row{display:grid;grid-template-columns:18px minmax(0,1fr) auto;gap:10px;align-items:start;padding:11px 0;border-top:1px solid var(--line);color:var(--muted)}.commit-row span{min-width:0}.commit-row b,.commit-row small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.commit-row b{color:#c9cbd1;font-size:11px;font-weight:500}.commit-row small,.commit-row time{margin-top:4px;font:400 9px DM Mono,monospace}.github-note{margin:14px 2px 0;color:#626670;font:400 9px DM Mono,monospace;text-align:right;text-transform:uppercase;letter-spacing:.07em}.light .contribution-cell,.light .github-dashboard{background:rgba(17,19,26,.025)}.light .commit-row b{color:#404650}.aero .github-dashboard{border-color:hsla(0,0%,100%,.78);background:linear-gradient(145deg,hsla(0,0%,100%,.72),rgba(211,244,255,.46));box-shadow:inset 0 1px 0 #fff,0 24px 70px rgba(0,103,163,.14)}.aero .contribution-cell{background:rgba(4,90,126,.08)}.aero .commit-row b{color:#174e69}.section-heading{display:grid;grid-template-columns:.7fr 1.4fr 1fr;gap:4vw;align-items:end;margin-bottom:68px}.section-heading>p{align-self:start;margin:8px 0;color:var(--cyan);font:400 10px DM Mono,monospace;text-transform:uppercase;letter-spacing:.13em}.section-heading h2{margin:0;font-size:clamp(2.7rem,5vw,5rem);font-weight:500;line-height:.98;letter-spacing:-.055em}.section-heading>span{color:var(--muted);line-height:1.7;font-size:14px}.work-list{border-top:1px solid var(--line)}.work-row{display:grid;grid-template-columns:54px 1.4fr .7fr 34px;gap:18px;align-items:center;min-height:92px;border-bottom:1px solid var(--line);transition:padding .35s,background .35s,border-color .35s}.work-row:hover{padding:0 14px;background:linear-gradient(90deg,rgba(155,140,255,.08),rgba(126,231,220,.025));border-color:rgba(155,140,255,.32)}.work-index{color:#60646d;font:400 10px DM Mono,monospace}.light .work-index{color:#858b95}.aero .work-index{color:#4b89a7}.work-company{font-size:clamp(1.02rem,2vw,1.28rem);font-weight:600}.work-company small,.work-meta small{display:block;margin-top:6px;color:#797d86;font:400 10px DM Mono,monospace}.light .work-company small,.light .work-meta small{color:#707681}.aero .work-company small,.aero .work-meta small{color:#43758e}.work-meta{color:#b9bbc1;text-align:right;font-size:12px}.light .work-meta{color:#555b66}.aero .work-meta{color:#245f7c}.aero .work-row:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.58),rgba(54,203,102,.12));border-color:rgba(0,145,76,.32)}.work-arrow{justify-self:end;width:32px;height:32px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--muted);transform:rotate(0);transition:transform .35s,color .35s,background .35s}.work-row:hover .work-arrow{transform:rotate(45deg);color:var(--ink);background:var(--cyan)}.page-section{padding:92px 4vw 140px;min-height:70vh}.page-eyebrow{color:var(--cyan);font:400 10px DM Mono,monospace;text-transform:uppercase;letter-spacing:.13em}.page-title{margin:18px 0 54px;max-width:800px;font-size:clamp(3rem,6vw,6.2rem);line-height:.95;letter-spacing:-.06em;font-weight:500}.post-list{border-top:1px solid var(--line)}.post-card{display:grid;grid-template-columns:1fr auto 34px;gap:20px;align-items:center;padding:26px 8px;border-bottom:1px solid var(--line);transition:background .3s,padding .3s}.post-card:hover{padding-left:18px;background:hsla(0,0%,100%,.035)}.post-card h2{margin:0;font-size:clamp(1.05rem,2vw,1.4rem);font-weight:500}.post-card time{color:var(--muted);font:400 10px DM Mono,monospace}.post-body{max-width:760px}.post-body p{color:#b9bbc2;font-size:17px;line-height:1.85;margin:0 0 24px}.light .post-body p{color:#4f5662}.aero .post-body p{color:#245f7c}.back-link{display:inline-flex;gap:8px;align-items:center;color:var(--muted);font:400 11px DM Mono,monospace}.back-link:hover{color:var(--text)}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw;padding:100px 4vw 140px;min-height:72vh;align-items:start}.contact-copy h1{margin:18px 0 24px;font-size:clamp(3.5rem,6vw,6.5rem);line-height:.92;letter-spacing:-.065em;font-weight:500}.contact-copy h1 em{font-family:Playfair Display,serif;color:var(--violet);font-weight:500}.contact-copy>p{color:var(--muted);line-height:1.7;max-width:420px}.social-links{display:flex;gap:18px;margin-top:30px;color:#c6c8ce;font:400 11px DM Mono,monospace}.light .social-links{color:#505762}.aero .social-links{color:#1d6283}.social-links a:hover{color:var(--cyan)}.contact-form{padding:32px;border:1px solid var(--line);border-radius:var(--radius);background:hsla(0,0%,100%,.025);box-shadow:0 30px 90px rgba(0,0,0,.22)}.aero .contact-form{border-color:hsla(0,0%,100%,.78);background:linear-gradient(145deg,hsla(0,0%,100%,.72),rgba(211,244,255,.52));box-shadow:inset 0 1px 0 #fff,0 24px 70px rgba(0,103,163,.16)}.field{margin-bottom:22px}.field label{display:block;margin-bottom:9px;color:#848892;font:400 10px DM Mono,monospace;text-transform:uppercase;letter-spacing:.08em}.field input,.field textarea{width:100%;padding:13px 0;border:0;border-bottom:1px solid var(--line);outline:0;background:transparent;color:var(--text);transition:border-color .25s}.field textarea{min-height:130px;resize:vertical}.field input:focus,.field textarea:focus{border-color:var(--violet)}.submit-button{width:100%;display:flex;justify-content:center;align-items:center;gap:9px;margin-top:8px;padding:14px;border:0;border-radius:12px;background:var(--text);color:var(--ink);font:600 11px DM Mono,monospace;cursor:pointer}.form-message{padding:16px;border:1px solid var(--line);border-radius:12px;color:#c9cbd1}.light .form-message{color:#4f5662}.aero .form-message{color:#245f7c}.site-footer{height:90px;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);color:#686c74;font:400 9px DM Mono,monospace;text-transform:uppercase;letter-spacing:.09em}.paint-stage{position:relative;min-height:calc(100vh - 176px);overflow:hidden}.paint-stage-closed{display:grid;place-items:center}.paint-window{position:absolute;z-index:2;width:380px;left:50%;top:50%;translate:-50% -50%;color:#111;background:#d4d8dc;border:2px solid #fff;box-shadow:0 34px 90px rgba(0,0,0,.65),0 0 0 1px hsla(0,0%,100%,.12);font-family:Arial,sans-serif}.paint-window-maximized{width:min(760px,calc(100% - 40px))}.paint-window-minimized{top:auto;bottom:32px;translate:-50% 0}.paint-titlebar{height:30px;display:flex;align-items:center;justify-content:space-between;padding:0 5px 0 8px;color:#fff;background:linear-gradient(90deg,#1746a0,#3060ad);font-size:13px;cursor:move;-webkit-user-select:none;-moz-user-select:none;user-select:none}.paint-window-controls{display:flex;align-items:center;gap:2px}.paint-window-controls button{width:27px;height:23px;border:0;display:grid;place-items:center;padding:0;color:#fff;background:transparent;cursor:pointer;font-size:12px}.paint-window-controls button:hover{background:hsla(0,0%,100%,.2)}.paint-window-controls button:last-child:hover{background:#d93434}.paint-menu{min-height:31px;display:flex;align-items:center;gap:2px;padding:3px 6px;border-bottom:1px solid #a7acb1;background:#d4d8dc}.paint-menu button{min-height:24px;padding:2px 9px;border:1px solid transparent;background:transparent;color:#111;font-size:12px;cursor:pointer}.paint-menu button:hover:not(:disabled){border-color:#989da2;background:#e8eaec}.paint-menu button:disabled{opacity:.42;cursor:default}.paint-workspace{display:grid;grid-template-columns:38px minmax(0,1fr)}.paint-tools{padding:4px;border-right:1px solid #a5aab0;background:#cbd0d5}.paint-tools button{width:29px;height:29px;min-width:0;padding:4px;border-radius:2px;color:#111}.paint-tools button:hover{color:#111;background:#e6e8ea}.paint-tools .paint-tool-active{border:1px solid #8d9298;background:#b9bec4;box-shadow:inset 1px 1px 2px rgba(0,0,0,.28)}.paint-canvas-wrap{aspect-ratio:1;overflow:hidden;border:1px solid #888f96;background:#fff}.paint-canvas-wrap canvas{display:block;width:100%;height:100%;touch-action:none;cursor:crosshair}.paint-palette{display:grid;grid-template-columns:repeat(14,1fr);gap:4px;padding:7px;border-top:1px solid #a5aab0;background:#d4d8dc}.paint-palette button{min-width:0;width:100%;aspect-ratio:1;padding:0;border:1px solid #777;cursor:pointer;box-shadow:inset 1px 1px 0 hsla(0,0%,100%,.65)}.paint-palette .paint-swatch-active{outline:2px solid #111;outline-offset:1px}.paint-status{display:flex;justify-content:space-between;padding:4px 7px;border-top:1px solid #a5aab0;color:#444;background:#cbd0d5;font-size:10px}.paint-reopen{padding:13px 18px;border:1px solid var(--line-bright);border-radius:12px;color:var(--text);background:hsla(0,0%,100%,.06);font:500 11px DM Mono,monospace;cursor:pointer}.paint-reopen:hover{background:hsla(0,0%,100%,.11)}.paint-stage:before{content:"";position:absolute;width:520px;height:520px;left:50%;top:50%;translate:-50% -50%;border-radius:50%;background:radial-gradient(circle,rgba(155,140,255,.17),transparent 67%);filter:blur(34px);pointer-events:none}@-webkit-keyframes drift{to{transform:translate3d(2rem,3rem,0) scale(1.08)}}@keyframes drift{to{transform:translate3d(2rem,3rem,0) scale(1.08)}}@-webkit-keyframes float{50%{transform:translateY(-12px)}}@keyframes float{50%{transform:translateY(-12px)}}@-webkit-keyframes pulse{50%{opacity:.45;transform:scale(.75)}}@keyframes pulse{50%{opacity:.45;transform:scale(.75)}}@media (max-width:760px){.site-shell{width:min(100% - 24px,1180px)}.site-nav{height:58px;margin-top:12px;padding:7px 8px 7px 11px;grid-template-columns:auto 1fr auto;border-radius:15px}.nav-links{justify-self:center}.nav-link{min-height:38px;display:inline-flex;align-items:center;padding:8px;font-size:10px}.nav-contact{width:36px;height:36px;padding:0;justify-content:center;font-size:0}.hero{padding:64px 12px 74px;grid-template-columns:1fr;min-height:0;gap:58px}.hero h1{font-size:clamp(3rem,15vw,5rem);overflow-wrap:anywhere}.hero-deck{font-size:1rem;line-height:1.65}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .button{justify-content:center;min-height:46px}.portrait-wrap{justify-self:center;width:min(82vw,330px)}.section-heading{grid-template-columns:1fr;gap:18px}.github-section{padding:88px 12px 96px}.github-heading{grid-template-columns:1fr;gap:22px;align-items:start}.github-profile-link{justify-self:start}.github-dashboard{grid-template-columns:1fr;border-radius:18px}.github-calendar-card,.github-languages{border-right:0}.github-feed,.github-stats{border-top:1px solid var(--line)}.contribution-grid{gap:3px;min-height:92px;overflow:hidden}.github-big-number strong{font-size:clamp(3.1rem,16vw,5rem)}.section-heading>span{max-width:460px}.page-section,.work-section{padding:88px 12px 100px}.work-row{grid-template-columns:28px minmax(0,1fr) 32px;min-height:90px;gap:9px}.work-company{overflow-wrap:anywhere}.work-meta{display:none}.contact-grid{grid-template-columns:1fr;gap:52px;padding:70px 12px 90px}.contact-copy h1{font-size:clamp(3rem,15vw,5rem)}.contact-form{padding:24px 20px}.post-card{grid-template-columns:1fr 28px}.post-card time{display:none}.paint-stage{min-height:calc(100svh - 148px);overflow:visible}.paint-window,.paint-window-maximized{width:calc(100vw - 36px);max-width:420px}.paint-window-minimized{bottom:22px}.paint-titlebar{height:34px;cursor:default}.paint-window-controls button{width:34px;height:30px}.paint-menu button{min-height:36px;padding-inline:12px}.paint-tools{padding:5px}.paint-tools button{width:34px;height:34px;margin-bottom:5px}.paint-workspace{grid-template-columns:44px minmax(0,1fr)}.paint-palette{gap:5px;grid-template-columns:repeat(10,1fr)}.site-footer{height:78px;gap:16px}}@media (max-width:420px){.brand-mark{font-size:10px}.brand-mark i{display:none}.nav-links{gap:0}.nav-link{padding-inline:6px;font-size:9px}.availability{max-width:100%;font-size:9px;letter-spacing:.04em}.page-title{font-size:clamp(2.75rem,14vw,4rem);overflow-wrap:anywhere}.post-card{padding-inline:2px;gap:12px}.site-footer{align-items:flex-start;flex-direction:column;justify-content:center}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{-webkit-animation-duration:.01ms!important;animation-duration:.01ms!important;-webkit-animation-iteration-count:1!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.hover\:bg-primary\/90:hover{background-color:hsl(var(--primary)/.9)}.hover\:bg-destructive\/90:hover{background-color:hsl(var(--destructive)/.9)}.hover\:bg-accent:hover{background-color:hsl(var(--accent))}.hover\:bg-secondary\/80:hover{background-color:hsl(var(--secondary)/.8)}.hover\:text-accent-foreground:hover{color:hsl(var(--accent-foreground))}.hover\:underline:hover{-webkit-text-decoration-line:underline;text-decoration-line:underline}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-1:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color:hsl(var(--ring))}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-50:disabled{opacity:.5}.dark .dark\:bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}@media (min-width:768px){.md\:mx-0{margin-left:0;margin-right:0}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}