@font-face{font-family:icomoon;src:url(/_next/static/media/icomoon.2ed713eb.eot);src:url(/_next/static/media/icomoon.2ed713eb.eot) format("embedded-opentype"),url(/_next/static/media/icomoon.904d1408.ttf) format("truetype"),url(/_next/static/media/icomoon.4b1117bd.woff) format("woff"),url(/_next/static/media/icomoon.2f3460b3.svg) format("svg");font-weight:400;font-style:normal;font-display:block}[class*=" icon-"],[class^=icon-]{font-family:icomoon!important;speak:never;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icon-gnubash:before{content:"";color:#4eaa25}.icon-pocketbase:before{content:"";color:#b8dbe4}.icon-caddy:before{content:"";color:#1f88c0}.icon-astro:before{content:"";color:#bc52ee}.icon-angular:before{content:"";color:#dd0031}.icon-blender:before{content:"";color:#f5792a}.icon-docker:before{content:"";color:#1488c6}.icon-markdown:before{content:""}.icon-nextcloud:before{content:"";color:#0082c9}.icon-raspberrypi:before{content:"";color:#c51a4a}.icon-sass:before{content:"";color:#c69}.icon-svelte:before{content:"";color:#ff3e00}.icon-next-dot-js:before{content:""}.icon-typescript:before{content:"";color:#007acc}.icon-linkedin-white:before{content:""}.icon-gmail-white:before{content:""}.icon-android:before{content:"";color:#3ddc84}.icon-css3:before{content:"";color:#1572b6}.icon-git:before{content:"";color:#f05032}.icon-html5:before{content:"";color:#e34f26}.icon-java:before{content:"";color:#007396}.icon-javascript:before{content:"";color:#f7df1e}.icon-latex:before{content:"";color:teal}.icon-linux:before{content:"";color:#fcc624}.icon-microsoftoffice:before{content:"";color:#e74025}.icon-python:before{content:"";color:#3776ab}.icon-spring:before{content:"";color:#6db33f}.icon-gmail:before{content:"";color:#d14836}.icon-linkedin:before{content:"";color:#0077b5}.icon-react:before{content:"";color:#61dafb}.icon-apache:before{content:"";color:#d22128}.icon-php:before{content:"";color:#777bb4}.icon-dart:before{content:"";color:#0175c2}.icon-flutter:before{content:"";color:#02569b}.icon-brave:before{content:"";color:#fb542b}.icon-brave-white:before{content:""}.icon-tailwindcss:before{content:"";color:#38b2ac}.icon-database:before{content:""}.icon-github-white:before{content:""}
/*
! tailwindcss v3.0.18 | 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{margin:0;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{color:inherit;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%;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:-ms-input-placeholder,textarea:-ms-input-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}[hidden]{display:none}h1{padding-top:1rem;padding-bottom:1rem;font-family:Press\ Start\ 2P;font-size:1.5rem;line-height:2rem;--tw-drop-shadow:drop-shadow(.25rem .25rem 0 rgba(0,0,0,.5));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}@media (min-width:768px){h1{font-size:1.875rem;line-height:2.25rem}}h2{margin:1rem;padding-top:1rem;font-family:Press\ Start\ 2P;font-size:1.125rem;line-height:1.75rem;--tw-drop-shadow:drop-shadow(.25rem .25rem 0 rgba(0,0,0,.5));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}@media (min-width:768px){h2{font-size:1.25rem;line-height:1.75rem}}h2:before{content:">";margin-right:.5em}h3{margin-bottom:.5rem;font-weight:700;--tw-drop-shadow:drop-shadow(.25rem .25rem 0 rgba(0,0,0,.5));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}@media (min-width:768px){h3{font-size:1.125rem;line-height:1.75rem}}*,:after,:before{--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:rgb(59 130 246/0.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: }.container{width:100%}@media (min-width:400px){.container{max-width:400px}}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{top:0;right:0;bottom:0;left:0}.top-0{top:0}.left-0{left:0}.top-1\/2{top:50%}.bottom-0{bottom:0}.top-5{top:1.25rem}.left-5{left:1.25rem}.left-1\/2{left:50%}.top-10{top:2.5rem}.right-10{right:2.5rem}.bottom-10{bottom:2.5rem}.right-8{right:2rem}.z-0{z-index:0}.z-20{z-index:20}.z-50{z-index:50}.z-10{z-index:10}.-z-10{z-index:-10}.z-40{z-index:40}.m-8{margin:2rem}.m-2{margin:.5rem}.m-1{margin:.25rem}.m-4{margin:1rem}.-m-\[8px\]{margin:-8px}.m-6{margin:1.5rem}.my-5{margin-top:1.25rem;margin-bottom:1.25rem}.my-2{margin-top:.5rem;margin-bottom:.5rem}.mx-auto{margin-left:auto;margin-right:auto}.-my-4{margin-top:-1rem;margin-bottom:-1rem}.my-4{margin-top:1rem;margin-bottom:1rem}.my-\[30vh\]{margin-top:30vh;margin-bottom:30vh}.-my-32{margin-top:-8rem;margin-bottom:-8rem}.mx-4{margin-left:1rem;margin-right:1rem}.my-8{margin-top:2rem;margin-bottom:2rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.my-1{margin-top:.25rem;margin-bottom:.25rem}.mt-auto{margin-top:auto}.mt-5{margin-top:1.25rem}.mb-5{margin-bottom:1.25rem}.mt-10{margin-top:2.5rem}.-mb-\[30vh\]{margin-bottom:-30vh}.mb-1{margin-bottom:.25rem}.mb-4{margin-bottom:1rem}.mt-2{margin-top:.5rem}.mb-2{margin-bottom:.5rem}.mb-6{margin-bottom:1.5rem}.ml-6{margin-left:1.5rem}.ml-4{margin-left:1rem}.mt-0{margin-top:0}.mt-1{margin-top:.25rem}.mr-1{margin-right:.25rem}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.aspect-video{aspect-ratio:16/9}.h-screen{height:100vh}.h-16{height:4rem}.h-1{height:.25rem}.h-full{height:100%}.h-36{height:9rem}.h-48{height:12rem}.h-\[50vh\]{height:50vh}.h-\[55vh\]{height:55vh}.h-\[60vh\]{height:60vh}.h-10{height:2.5rem}.h-\[calc\(100\%\+16px\)\]{height:calc(100% + 16px)}.h-12{height:3rem}.h-6{height:1.5rem}.h-24{height:6rem}.h-\[1em\]{height:1em}.h-\[200\%\]{height:200%}.h-64{height:16rem}.h-4{height:1rem}.max-h-full{max-height:100%}.min-h-screen{min-height:100vh}.min-h-\[3rem\]{min-height:3rem}.w-16{width:4rem}.w-full{width:100%}.w-36{width:9rem}.w-48{width:12rem}.w-\[calc\(100\%\+16px\)\]{width:calc(100% + 16px)}.w-12{width:3rem}.w-6{width:1.5rem}.w-24{width:6rem}.w-80{width:20rem}.w-44{width:11rem}.w-\[11520px\]{width:11520px}.w-4{width:1rem}.max-w-\[640px\]{max-width:640px}.max-w-\[100vw\]{max-width:100vw}.max-w-full{max-width:100%}.flex-shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.origin-right{transform-origin:right}.-translate-x-32{--tw-translate-x:-8rem}.-translate-x-32,.translate-x-32{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-32{--tw-translate-x:8rem}.-translate-x-1\/2{--tw-translate-x:-50%}.-translate-x-1\/2,.-translate-y-1\/2{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y:-50%}@-webkit-keyframes bounce{0%,to{transform:translateY(-25%);-webkit-animation-timing-function:cubic-bezier(.8,0,1,1);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:none;-webkit-animation-timing-function:cubic-bezier(0,0,.2,1);animation-timing-function:cubic-bezier(0,0,.2,1)}}@keyframes bounce{0%,to{transform:translateY(-25%);-webkit-animation-timing-function:cubic-bezier(.8,0,1,1);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:none;-webkit-animation-timing-function:cubic-bezier(0,0,.2,1);animation-timing-function:cubic-bezier(0,0,.2,1)}}.animate-bounce{-webkit-animation:bounce 1s infinite;animation:bounce 1s infinite}@-webkit-keyframes slide{0%{transform:translateZ(0)}to{transform:translate3d(-3840px,0,0)}}@keyframes slide{0%{transform:translateZ(0)}to{transform:translate3d(-3840px,0,0)}}.animate-slide{-webkit-animation:slide 60s linear infinite;animation:slide 60s linear infinite}.cursor-pointer{cursor:url(/images/pointer-hand.svg) 10 0,auto}.select-none{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.select-text{-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}.resize{resize:both}.list-disc{list-style-type:disc}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-center{align-items:center}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.gap-2{gap:.5rem}.gap-8{gap:2rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.self-start{align-self:flex-start}.overflow-hidden{overflow:hidden}.overflow-scroll{overflow:scroll}.whitespace-nowrap{white-space:nowrap}.rounded-full{border-radius:9999px}.rounded-xl{border-radius:.75rem}.border-2{border-width:2px}.border-black{--tw-border-opacity:1;border-color:rgb(0 0 0/var(--tw-border-opacity))}.bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity))}.bg-body{--tw-bg-opacity:1;background-color:rgb(7 11 46/var(--tw-bg-opacity))}.bg-headerFooter{--tw-bg-opacity:1;background-color:rgb(40 44 52/var(--tw-bg-opacity))}.bg-transparent{background-color:transparent}.bg-opacity-70{--tw-bg-opacity:0.7}.bg-opacity-50{--tw-bg-opacity:0.5}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-\[url\(\'\/images\/projects\/projects-slider\.png\'\)\]{background-image:url(/images/projects/projects-slider.png)}.from-red-450{--tw-gradient-from:#f45b5b;--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to,rgb(244 91 91/0))}.to-red-550{--tw-gradient-to:#e63535}.bg-contain{background-size:contain}.bg-repeat-x{background-repeat:repeat-x}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.p-2{padding:.5rem}.p-10{padding:2.5rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-8{padding-top:2rem;padding-bottom:2rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.pr-1{padding-right:.25rem}.pl-1{padding-left:.25rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-SfPixelate{font-family:SfPixelate}.font-PressStart2P{font-family:Press\ Start\ 2P}.text-2xl{font-size:1.5rem;line-height:2rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-5xl{font-size:3rem;line-height:1}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-6xl{font-size:3.75rem;line-height:1}.font-bold{font-weight:700}.font-medium{font-weight:500}.uppercase{text-transform:uppercase}.italic{font-style:italic}.leading-none{line-height:1}.tracking-wider{letter-spacing:.05em}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity))}.text-red-400{--tw-text-opacity:1;color:rgb(248 113 113/var(--tw-text-opacity))}.opacity-0{opacity:0}.opacity-70{opacity:.7}.outline{outline-style:solid}.blur{--tw-blur:blur(8px)}.blur,.blur-sm{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.blur-sm{--tw-blur:blur(4px)}.drop-shadow{--tw-drop-shadow:drop-shadow(0 1px 2px rgb(0 0 0/0.1)) drop-shadow(0 1px 1px rgb(0 0 0/0.06))}.drop-shadow,.drop-shadow-pixel-sm{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow-pixel-sm{--tw-drop-shadow:drop-shadow(.25rem .25rem 0 rgba(0,0,0,.5))}.drop-shadow-pixel{--tw-drop-shadow:drop-shadow(.5rem .5rem 0 rgba(0,0,0,.5))}.drop-shadow-2xl,.drop-shadow-pixel{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow-2xl{--tw-drop-shadow:drop-shadow(0 25px 25px rgb(0 0 0/0.15))}.drop-shadow-3xl{--tw-drop-shadow:drop-shadow(0 0 5rem rgba(0,0,0,.3))}.drop-shadow-3xl,.drop-shadow-xl{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow-xl{--tw-drop-shadow:drop-shadow(0 20px 13px rgb(0 0 0/0.03)) drop-shadow(0 8px 5px rgb(0 0 0/0.08))}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur{--tw-backdrop-blur:blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition{transition-property:color,background-color,border-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;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}.duration-500{transition-duration:.5s}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.bg-hero-brick-wall{background-image:url("data:image/svg+xml,%3Csvg width='42' height='44' viewBox='0 0 42 44' xmlns='http://www.w3.org/2000/svg'%3E%3Cg id='Page-1' fill='none' fill-rule='evenodd'%3E%3Cg id='brick-wall' fill='%239C92AC' fill-opacity='0.4'%3E%3Cpath d='M0 0h42v44H0V0zm1 1h40v20H1V1zM0 23h20v20H0V23zm22 0h20v20H22V23z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}.bg-hero-brick-wall-purple{background-image:url("data:image/svg+xml,%3Csvg width='42' height='44' viewBox='0 0 42 44' xmlns='http://www.w3.org/2000/svg'%3E%3Cg id='Page-1' fill='none' fill-rule='evenodd'%3E%3Cg id='brick-wall' fill='%233D2B7A' fill-opacity='0.4'%3E%3Cpath d='M0 0h42v44H0V0zm1 1h40v20H1V1zM0 23h20v20H0V23zm22 0h20v20H22V23z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}.animation-delay-300{-webkit-animation-delay:.3s;animation-delay:.3s}.animation-delay-600{-webkit-animation-delay:.6s;animation-delay:.6s}.clip-rounded-pixel{-webkit-clip-path:polygon(0 20px,4px 20px,4px 12px,8px 12px,8px 8px,12px 8px,12px 4px,16px 4px,20px 4px,20px 0,calc(100% - 20px) 0,calc(100% - 20px) 4px,calc(100% - 12px) 4px,calc(100% - 12px) 8px,calc(100% - 8px) 8px,calc(100% - 8px) 12px,calc(100% - 4px) 12px,calc(100% - 4px) 16px,calc(100% - 4px) 20px,100% 20px,100% calc(100% - 20px),calc(100% - 4px) calc(100% - 20px),calc(100% - 4px) calc(100% - 12px),calc(100% - 8px) calc(100% - 12px),calc(100% - 8px) calc(100% - 8px),calc(100% - 12px) calc(100% - 8px),calc(100% - 12px) calc(100% - 4px),calc(100% - 16px) calc(100% - 4px),calc(100% - 20px) calc(100% - 4px),calc(100% - 20px) 100%,20px 100%,20px calc(100% - 4px),12px calc(100% - 4px),12px calc(100% - 8px),8px calc(100% - 8px),8px calc(100% - 12px),4px calc(100% - 12px),4px calc(100% - 16px),4px calc(100% - 20px),0 calc(100% - 20px));clip-path:polygon(0 20px,4px 20px,4px 12px,8px 12px,8px 8px,12px 8px,12px 4px,16px 4px,20px 4px,20px 0,calc(100% - 20px) 0,calc(100% - 20px) 4px,calc(100% - 12px) 4px,calc(100% - 12px) 8px,calc(100% - 8px) 8px,calc(100% - 8px) 12px,calc(100% - 4px) 12px,calc(100% - 4px) 16px,calc(100% - 4px) 20px,100% 20px,100% calc(100% - 20px),calc(100% - 4px) calc(100% - 20px),calc(100% - 4px) calc(100% - 12px),calc(100% - 8px) calc(100% - 12px),calc(100% - 8px) calc(100% - 8px),calc(100% - 12px) calc(100% - 8px),calc(100% - 12px) calc(100% - 4px),calc(100% - 16px) calc(100% - 4px),calc(100% - 20px) calc(100% - 4px),calc(100% - 20px) 100%,20px 100%,20px calc(100% - 4px),12px calc(100% - 4px),12px calc(100% - 8px),8px calc(100% - 8px),8px calc(100% - 12px),4px calc(100% - 12px),4px calc(100% - 16px),4px calc(100% - 20px),0 calc(100% - 20px))}.clip-rounded-pixel-48{-webkit-clip-path:polygon(0 76px,4px 76px,4px 64px,8px 64px,8px 60px,8px 52px,12px 52px,12px 48px,16px 48px,16px 44px,16px 40px,20px 40px,20px 36px,24px 36px,24px 32px,28px 32px,28px 28px,32px 28px,32px 24px,36px 24px,36px 20px,40px 20px,40px 16px,44px 16px,48px 16px,48px 12px,52px 12px,52px 8px,56px 8px,60px 8px,64px 8px,64px 4px,68px 4px,72px 4px,76px 4px,76px 0,calc(100% - 76px) 0,calc(100% - 76px) 4px,calc(100% - 64px) 4px,calc(100% - 64px) 8px,calc(100% - 60px) 8px,calc(100% - 52px) 8px,calc(100% - 52px) 12px,calc(100% - 48px) 12px,calc(100% - 48px) 16px,calc(100% - 44px) 16px,calc(100% - 40px) 16px,calc(100% - 40px) 20px,calc(100% - 36px) 20px,calc(100% - 36px) 24px,calc(100% - 32px) 24px,calc(100% - 32px) 28px,calc(100% - 28px) 28px,calc(100% - 28px) 32px,calc(100% - 24px) 32px,calc(100% - 24px) 36px,calc(100% - 20px) 36px,calc(100% - 20px) 40px,calc(100% - 16px) 40px,calc(100% - 16px) 44px,calc(100% - 16px) 48px,calc(100% - 12px) 48px,calc(100% - 12px) 52px,calc(100% - 8px) 52px,calc(100% - 8px) 56px,calc(100% - 8px) 60px,calc(100% - 8px) 64px,calc(100% - 4px) 64px,calc(100% - 4px) 68px,calc(100% - 4px) 72px,calc(100% - 4px) 76px,100% 76px,100% calc(100% - 76px),calc(100% - 4px) calc(100% - 76px),calc(100% - 4px) calc(100% - 64px),calc(100% - 8px) calc(100% - 64px),calc(100% - 8px) calc(100% - 60px),calc(100% - 8px) calc(100% - 52px),calc(100% - 12px) calc(100% - 52px),calc(100% - 12px) calc(100% - 48px),calc(100% - 16px) calc(100% - 48px),calc(100% - 16px) calc(100% - 44px),calc(100% - 16px) calc(100% - 40px),calc(100% - 20px) calc(100% - 40px),calc(100% - 20px) calc(100% - 36px),calc(100% - 24px) calc(100% - 36px),calc(100% - 24px) calc(100% - 32px),calc(100% - 28px) calc(100% - 32px),calc(100% - 28px) calc(100% - 28px),calc(100% - 32px) calc(100% - 28px),calc(100% - 32px) calc(100% - 24px),calc(100% - 36px) calc(100% - 24px),calc(100% - 36px) calc(100% - 20px),calc(100% - 40px) calc(100% - 20px),calc(100% - 40px) calc(100% - 16px),calc(100% - 44px) calc(100% - 16px),calc(100% - 48px) calc(100% - 16px),calc(100% - 48px) calc(100% - 12px),calc(100% - 52px) calc(100% - 12px),calc(100% - 52px) calc(100% - 8px),calc(100% - 56px) calc(100% - 8px),calc(100% - 60px) calc(100% - 8px),calc(100% - 64px) calc(100% - 8px),calc(100% - 64px) calc(100% - 4px),calc(100% - 68px) calc(100% - 4px),calc(100% - 72px) calc(100% - 4px),calc(100% - 76px) calc(100% - 4px),calc(100% - 76px) 100%,76px 100%,76px calc(100% - 4px),64px calc(100% - 4px),64px calc(100% - 8px),60px calc(100% - 8px),52px calc(100% - 8px),52px calc(100% - 12px),48px calc(100% - 12px),48px calc(100% - 16px),44px calc(100% - 16px),40px calc(100% - 16px),40px calc(100% - 20px),36px calc(100% - 20px),36px calc(100% - 24px),32px calc(100% - 24px),32px calc(100% - 28px),28px calc(100% - 28px),28px calc(100% - 32px),24px calc(100% - 32px),24px calc(100% - 36px),20px calc(100% - 36px),20px calc(100% - 40px),16px calc(100% - 40px),16px calc(100% - 44px),16px calc(100% - 48px),12px calc(100% - 48px),12px calc(100% - 52px),8px calc(100% - 52px),8px calc(100% - 56px),8px calc(100% - 60px),8px calc(100% - 64px),4px calc(100% - 64px),4px calc(100% - 68px),4px calc(100% - 72px),4px calc(100% - 76px),0 calc(100% - 76px));clip-path:polygon(0 76px,4px 76px,4px 64px,8px 64px,8px 60px,8px 52px,12px 52px,12px 48px,16px 48px,16px 44px,16px 40px,20px 40px,20px 36px,24px 36px,24px 32px,28px 32px,28px 28px,32px 28px,32px 24px,36px 24px,36px 20px,40px 20px,40px 16px,44px 16px,48px 16px,48px 12px,52px 12px,52px 8px,56px 8px,60px 8px,64px 8px,64px 4px,68px 4px,72px 4px,76px 4px,76px 0,calc(100% - 76px) 0,calc(100% - 76px) 4px,calc(100% - 64px) 4px,calc(100% - 64px) 8px,calc(100% - 60px) 8px,calc(100% - 52px) 8px,calc(100% - 52px) 12px,calc(100% - 48px) 12px,calc(100% - 48px) 16px,calc(100% - 44px) 16px,calc(100% - 40px) 16px,calc(100% - 40px) 20px,calc(100% - 36px) 20px,calc(100% - 36px) 24px,calc(100% - 32px) 24px,calc(100% - 32px) 28px,calc(100% - 28px) 28px,calc(100% - 28px) 32px,calc(100% - 24px) 32px,calc(100% - 24px) 36px,calc(100% - 20px) 36px,calc(100% - 20px) 40px,calc(100% - 16px) 40px,calc(100% - 16px) 44px,calc(100% - 16px) 48px,calc(100% - 12px) 48px,calc(100% - 12px) 52px,calc(100% - 8px) 52px,calc(100% - 8px) 56px,calc(100% - 8px) 60px,calc(100% - 8px) 64px,calc(100% - 4px) 64px,calc(100% - 4px) 68px,calc(100% - 4px) 72px,calc(100% - 4px) 76px,100% 76px,100% calc(100% - 76px),calc(100% - 4px) calc(100% - 76px),calc(100% - 4px) calc(100% - 64px),calc(100% - 8px) calc(100% - 64px),calc(100% - 8px) calc(100% - 60px),calc(100% - 8px) calc(100% - 52px),calc(100% - 12px) calc(100% - 52px),calc(100% - 12px) calc(100% - 48px),calc(100% - 16px) calc(100% - 48px),calc(100% - 16px) calc(100% - 44px),calc(100% - 16px) calc(100% - 40px),calc(100% - 20px) calc(100% - 40px),calc(100% - 20px) calc(100% - 36px),calc(100% - 24px) calc(100% - 36px),calc(100% - 24px) calc(100% - 32px),calc(100% - 28px) calc(100% - 32px),calc(100% - 28px) calc(100% - 28px),calc(100% - 32px) calc(100% - 28px),calc(100% - 32px) calc(100% - 24px),calc(100% - 36px) calc(100% - 24px),calc(100% - 36px) calc(100% - 20px),calc(100% - 40px) calc(100% - 20px),calc(100% - 40px) calc(100% - 16px),calc(100% - 44px) calc(100% - 16px),calc(100% - 48px) calc(100% - 16px),calc(100% - 48px) calc(100% - 12px),calc(100% - 52px) calc(100% - 12px),calc(100% - 52px) calc(100% - 8px),calc(100% - 56px) calc(100% - 8px),calc(100% - 60px) calc(100% - 8px),calc(100% - 64px) calc(100% - 8px),calc(100% - 64px) calc(100% - 4px),calc(100% - 68px) calc(100% - 4px),calc(100% - 72px) calc(100% - 4px),calc(100% - 76px) calc(100% - 4px),calc(100% - 76px) 100%,76px 100%,76px calc(100% - 4px),64px calc(100% - 4px),64px calc(100% - 8px),60px calc(100% - 8px),52px calc(100% - 8px),52px calc(100% - 12px),48px calc(100% - 12px),48px calc(100% - 16px),44px calc(100% - 16px),40px calc(100% - 16px),40px calc(100% - 20px),36px calc(100% - 20px),36px calc(100% - 24px),32px calc(100% - 24px),32px calc(100% - 28px),28px calc(100% - 28px),28px calc(100% - 32px),24px calc(100% - 32px),24px calc(100% - 36px),20px calc(100% - 36px),20px calc(100% - 40px),16px calc(100% - 40px),16px calc(100% - 44px),16px calc(100% - 48px),12px calc(100% - 48px),12px calc(100% - 52px),8px calc(100% - 52px),8px calc(100% - 56px),8px calc(100% - 60px),8px calc(100% - 64px),4px calc(100% - 64px),4px calc(100% - 68px),4px calc(100% - 72px),4px calc(100% - 76px),0 calc(100% - 76px))}.clip-rounded-pixel-24{-webkit-clip-path:polygon(0 36px,4px 36px,4px 32px,4px 24px,8px 24px,8px 20px,12px 20px,12px 16px,16px 16px,16px 12px,20px 12px,20px 8px,24px 8px,24px 4px,28px 4px,32px 4px,36px 4px,36px 0,calc(100% - 36px) 0,calc(100% - 36px) 4px,calc(100% - 32px) 4px,calc(100% - 24px) 4px,calc(100% - 24px) 8px,calc(100% - 20px) 8px,calc(100% - 20px) 12px,calc(100% - 16px) 12px,calc(100% - 16px) 16px,calc(100% - 12px) 16px,calc(100% - 12px) 20px,calc(100% - 8px) 20px,calc(100% - 8px) 24px,calc(100% - 4px) 24px,calc(100% - 4px) 28px,calc(100% - 4px) 32px,calc(100% - 4px) 36px,100% 36px,100% calc(100% - 36px),calc(100% - 4px) calc(100% - 36px),calc(100% - 4px) calc(100% - 32px),calc(100% - 4px) calc(100% - 24px),calc(100% - 8px) calc(100% - 24px),calc(100% - 8px) calc(100% - 20px),calc(100% - 12px) calc(100% - 20px),calc(100% - 12px) calc(100% - 16px),calc(100% - 16px) calc(100% - 16px),calc(100% - 16px) calc(100% - 12px),calc(100% - 20px) calc(100% - 12px),calc(100% - 20px) calc(100% - 8px),calc(100% - 24px) calc(100% - 8px),calc(100% - 24px) calc(100% - 4px),calc(100% - 28px) calc(100% - 4px),calc(100% - 32px) calc(100% - 4px),calc(100% - 36px) calc(100% - 4px),calc(100% - 36px) 100%,36px 100%,36px calc(100% - 4px),32px calc(100% - 4px),24px calc(100% - 4px),24px calc(100% - 8px),20px calc(100% - 8px),20px calc(100% - 12px),16px calc(100% - 12px),16px calc(100% - 16px),12px calc(100% - 16px),12px calc(100% - 20px),8px calc(100% - 20px),8px calc(100% - 24px),4px calc(100% - 24px),4px calc(100% - 28px),4px calc(100% - 32px),4px calc(100% - 36px),0 calc(100% - 36px));clip-path:polygon(0 36px,4px 36px,4px 32px,4px 24px,8px 24px,8px 20px,12px 20px,12px 16px,16px 16px,16px 12px,20px 12px,20px 8px,24px 8px,24px 4px,28px 4px,32px 4px,36px 4px,36px 0,calc(100% - 36px) 0,calc(100% - 36px) 4px,calc(100% - 32px) 4px,calc(100% - 24px) 4px,calc(100% - 24px) 8px,calc(100% - 20px) 8px,calc(100% - 20px) 12px,calc(100% - 16px) 12px,calc(100% - 16px) 16px,calc(100% - 12px) 16px,calc(100% - 12px) 20px,calc(100% - 8px) 20px,calc(100% - 8px) 24px,calc(100% - 4px) 24px,calc(100% - 4px) 28px,calc(100% - 4px) 32px,calc(100% - 4px) 36px,100% 36px,100% calc(100% - 36px),calc(100% - 4px) calc(100% - 36px),calc(100% - 4px) calc(100% - 32px),calc(100% - 4px) calc(100% - 24px),calc(100% - 8px) calc(100% - 24px),calc(100% - 8px) calc(100% - 20px),calc(100% - 12px) calc(100% - 20px),calc(100% - 12px) calc(100% - 16px),calc(100% - 16px) calc(100% - 16px),calc(100% - 16px) calc(100% - 12px),calc(100% - 20px) calc(100% - 12px),calc(100% - 20px) calc(100% - 8px),calc(100% - 24px) calc(100% - 8px),calc(100% - 24px) calc(100% - 4px),calc(100% - 28px) calc(100% - 4px),calc(100% - 32px) calc(100% - 4px),calc(100% - 36px) calc(100% - 4px),calc(100% - 36px) 100%,36px 100%,36px calc(100% - 4px),32px calc(100% - 4px),24px calc(100% - 4px),24px calc(100% - 8px),20px calc(100% - 8px),20px calc(100% - 12px),16px calc(100% - 12px),16px calc(100% - 16px),12px calc(100% - 16px),12px calc(100% - 20px),8px calc(100% - 20px),8px calc(100% - 24px),4px calc(100% - 24px),4px calc(100% - 28px),4px calc(100% - 32px),4px calc(100% - 36px),0 calc(100% - 36px))}@font-face{font-family:SfPixelate;src:url(/fonts/SfPixelate-wBgw.ttf)}@font-face{font-family:Press Start\ 2P;src:url(/fonts/PressStart2P-Regular.ttf)}@font-face{font-family:Fira Code;src:url(/fonts/FiraCode-Regular.ttf)}::-webkit-scrollbar{width:auto}::-webkit-scrollbar-track{background-color:transparent}::-webkit-scrollbar-thumb{border-radius:9999px;--tw-bg-opacity:1;background-color:rgb(34 27 84/var(--tw-bg-opacity))}::-webkit-scrollbar-thumb:hover{--tw-bg-opacity:1;background-color:rgb(61 43 122/var(--tw-bg-opacity))}::-webkit-scrollbar-corner{background-color:transparent}::-moz-selection{--tw-bg-opacity:1;background-color:rgb(248 113 113/var(--tw-bg-opacity));--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}::selection{--tw-bg-opacity:1;background-color:rgb(248 113 113/var(--tw-bg-opacity));--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}:root{--tw-bg-opacity:1;background-color:rgb(7 11 46/var(--tw-bg-opacity));background-image:url("data:image/svg+xml,%3Csvg width='42' height='44' viewBox='0 0 42 44' xmlns='http://www.w3.org/2000/svg'%3E%3Cg id='Page-1' fill='none' fill-rule='evenodd'%3E%3Cg id='brick-wall' fill='%233D2B7A' fill-opacity='0.4'%3E%3Cpath d='M0 0h42v44H0V0zm1 1h40v20H1V1zM0 23h20v20H0V23zm22 0h20v20H22V23z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}body{overflow:overlay}a{cursor:url(/images/pointer-hand.svg) 10 0,auto}.my-link{position:relative}.group:focus .my-link,.group:hover .my-link{--tw-text-opacity:1;color:rgb(248 113 113/var(--tw-text-opacity));background-size:0 100%}.my-link{text-decoration:none;background-image:linear-gradient(180deg,transparent calc(100% - 1px),currentColor 1px);background-repeat:no-repeat;background-size:100% 100%;transition:background-size .3s ease-in-out,color .3s ease-in-out}.my-link:focus,.my-link:hover{background-size:0 100%;--tw-text-opacity:1;color:rgb(248 113 113/var(--tw-text-opacity))}.my-link[hover-info]:before{position:absolute;left:50%;bottom:0;display:block;transform-origin:left;white-space:nowrap;border-radius:.75rem;background-color:rgb(0 0 0/var(--tw-bg-opacity));--tw-bg-opacity:0.5;padding:1em;font-size:.8em;--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity));content:attr(hover-info);transform:scale(0) translateX(-50%);transition:transform .15s ease-out,bottom .15s ease-out}.my-link[hover-info]:hover:before{background-color:rgb(0 0 0/var(--tw-bg-opacity));--tw-bg-opacity:0.5;transform:scale(1) translateX(-50%);bottom:100%}.my-qualification{position:relative}.my-qualification[hover-info]:after{position:absolute;display:block;white-space:nowrap;border-radius:.75rem;background-color:rgb(0 0 0/var(--tw-bg-opacity));--tw-bg-opacity:0.5;padding:1em;text-align:center;font-family:SfPixelate;font-size:.8rem;--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity));content:attr(hover-info);bottom:0;left:50%;transform:scale(0);transition:transform .15s ease-out,bottom .15s ease-out}.my-qualification[hover-info]:hover:after{background-color:rgb(0 0 0/var(--tw-bg-opacity));--tw-bg-opacity:0.5;transform:scale(1);transform:translateX(-50%);bottom:100%}span.ripple{position:absolute;border-radius:50%;background-color:rgba(255,255,255,.5);opacity:1;transform:scale(0);-webkit-animation:ripple .6s linear forwards;animation:ripple .6s linear forwards}span.ripple-fade-out{opacity:0}@-webkit-keyframes ripple{to{transform:scale(3)}}@keyframes ripple{to{transform:scale(3)}}.react-pdf__Document{line-height:1}#blog-post-content .hljs{margin-top:1rem;margin-bottom:1rem;background-color:rgb(0 0 0/var(--tw-bg-opacity));--tw-bg-opacity:0.5;padding:1rem;font-family:Fira\ Code;-webkit-clip-path:polygon(0 20px,4px 20px,4px 12px,8px 12px,8px 8px,12px 8px,12px 4px,16px 4px,20px 4px,20px 0,calc(100% - 20px) 0,calc(100% - 20px) 4px,calc(100% - 12px) 4px,calc(100% - 12px) 8px,calc(100% - 8px) 8px,calc(100% - 8px) 12px,calc(100% - 4px) 12px,calc(100% - 4px) 16px,calc(100% - 4px) 20px,100% 20px,100% calc(100% - 20px),calc(100% - 4px) calc(100% - 20px),calc(100% - 4px) calc(100% - 12px),calc(100% - 8px) calc(100% - 12px),calc(100% - 8px) calc(100% - 8px),calc(100% - 12px) calc(100% - 8px),calc(100% - 12px) calc(100% - 4px),calc(100% - 16px) calc(100% - 4px),calc(100% - 20px) calc(100% - 4px),calc(100% - 20px) 100%,20px 100%,20px calc(100% - 4px),12px calc(100% - 4px),12px calc(100% - 8px),8px calc(100% - 8px),8px calc(100% - 12px),4px calc(100% - 12px),4px calc(100% - 16px),4px calc(100% - 20px),0 calc(100% - 20px));clip-path:polygon(0 20px,4px 20px,4px 12px,8px 12px,8px 8px,12px 8px,12px 4px,16px 4px,20px 4px,20px 0,calc(100% - 20px) 0,calc(100% - 20px) 4px,calc(100% - 12px) 4px,calc(100% - 12px) 8px,calc(100% - 8px) 8px,calc(100% - 8px) 12px,calc(100% - 4px) 12px,calc(100% - 4px) 16px,calc(100% - 4px) 20px,100% 20px,100% calc(100% - 20px),calc(100% - 4px) calc(100% - 20px),calc(100% - 4px) calc(100% - 12px),calc(100% - 8px) calc(100% - 12px),calc(100% - 8px) calc(100% - 8px),calc(100% - 12px) calc(100% - 8px),calc(100% - 12px) calc(100% - 4px),calc(100% - 16px) calc(100% - 4px),calc(100% - 20px) calc(100% - 4px),calc(100% - 20px) 100%,20px 100%,20px calc(100% - 4px),12px calc(100% - 4px),12px calc(100% - 8px),8px calc(100% - 8px),8px calc(100% - 12px),4px calc(100% - 12px),4px calc(100% - 16px),4px calc(100% - 20px),0 calc(100% - 20px))}#blog-post-content ul{margin-left:1.5rem;list-style-type:disc}#blog-post-content ul li{margin-bottom:1rem}#blog-post-content ol{margin-left:1.5rem;list-style-type:decimal}#blog-post-content ol li{margin-bottom:1rem}#blog-post-content h1 code,#blog-post-content h2 code,#blog-post-content h3 code,#blog-post-content h4 code,#blog-post-content h5 code,#blog-post-content h6 code,#blog-post-content li code,#blog-post-content p code{border-radius:.5rem;background-color:rgb(0 0 0/var(--tw-bg-opacity));--tw-bg-opacity:0.5;padding:.25rem .5rem;font-family:Fira\ Code}#blog-post-content p{margin-bottom:1rem;font-size:1.125rem;line-height:1.75rem}#blog-post-content table{margin-left:auto;margin-right:auto;margin-bottom:1rem;max-width:66%}#blog-post-content table td,#blog-post-content table th{border-width:1px;--tw-border-opacity:1;border-color:rgb(255 255 255/var(--tw-border-opacity));padding:.5rem}img.emoji{height:1em;width:1em;margin:0 .05em 0 .1em;vertical-align:-.1em;display:inline}.hover\:bg-gray-400:hover{--tw-bg-opacity:1;background-color:rgb(156 163 175/var(--tw-bg-opacity))}.hover\:bg-white:hover{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.hover\:bg-opacity-20:hover{--tw-bg-opacity:0.2}.hover\:bg-opacity-10:hover{--tw-bg-opacity:0.1}.hover\:font-bold:hover{font-weight:700}.hover\:text-github:hover{--tw-text-opacity:1;color:rgb(82 82 82/var(--tw-text-opacity))}.hover\:text-gmail:hover{--tw-text-opacity:1;color:rgb(220 66 52/var(--tw-text-opacity))}.hover\:text-linkedin:hover{--tw-text-opacity:1;color:rgb(2 116 179/var(--tw-text-opacity))}.hover\:opacity-20:hover{opacity:.2}.focus\:text-github:focus{--tw-text-opacity:1;color:rgb(82 82 82/var(--tw-text-opacity))}.focus\:text-gmail:focus{--tw-text-opacity:1;color:rgb(220 66 52/var(--tw-text-opacity))}.focus\:text-linkedin:focus{--tw-text-opacity:1;color:rgb(2 116 179/var(--tw-text-opacity))}.group:hover .group-hover\:text-brave{--tw-text-opacity:1;color:rgb(254 53 22/var(--tw-text-opacity))}.group:hover .group-hover\:text-gmail{--tw-text-opacity:1;color:rgb(220 66 52/var(--tw-text-opacity))}.group:hover .group-hover\:text-linkedin{--tw-text-opacity:1;color:rgb(2 116 179/var(--tw-text-opacity))}.group:hover .group-hover\:text-github{--tw-text-opacity:1;color:rgb(82 82 82/var(--tw-text-opacity))}@media (min-width:640px){.sm\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}}@media (min-width:768px){.md\:top-5{top:1.25rem}.md\:top-16{top:4rem}.md\:my-10{margin-top:2.5rem;margin-bottom:2.5rem}.md\:my-\[5vh\]{margin-top:5vh;margin-bottom:5vh}.md\:mt-10{margin-top:2.5rem}.md\:mb-10{margin-bottom:2.5rem}.md\:mb-8{margin-bottom:2rem}.md\:mb-4{margin-bottom:1rem}.md\:flex{display:flex}.md\:h-2{height:.5rem}.md\:h-\[90vh\]{height:90vh}.md\:h-96{height:24rem}.md\:min-h-\[12rem\]{min-height:12rem}.md\:min-h-\[25rem\]{min-height:25rem}.md\:w-\[36rem\]{width:36rem}.md\:w-14{width:3.5rem}.md\:w-\[30rem\]{width:30rem}.md\:w-64{width:16rem}.md\:translate-x-1\/3{--tw-translate-x:33.333333%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:place-items-center{place-items:center}.md\:justify-center{justify-content:center}.md\:justify-between{justify-content:space-between}.md\:bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity))}.md\:bg-opacity-50{--tw-bg-opacity:0.5}.md\:text-center{text-align:center}.md\:text-lg{font-size:1.125rem;line-height:1.75rem}.md\:text-3xl{font-size:1.875rem;line-height:2.25rem}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}.md\:text-2xl{font-size:1.5rem;line-height:2rem}.md\:text-4xl{font-size:2.25rem;line-height:2.5rem}.md\:leading-none{line-height:1}.md\:drop-shadow-3xl{--tw-drop-shadow:drop-shadow(0 0 5rem rgba(0,0,0,.3))}.md\:drop-shadow-3xl,.md\:drop-shadow-pixel{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.md\:drop-shadow-pixel{--tw-drop-shadow:drop-shadow(.5rem .5rem 0 rgba(0,0,0,.5))}}@media (min-width:1024px){.lg\:row-span-2{grid-row:span 2/span 2}.lg\:h-48{height:12rem}.lg\:w-48{width:12rem}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:text-base{font-size:1rem;line-height:1.5rem}.lg\:clip-rounded-pixel-48{-webkit-clip-path:polygon(0 76px,4px 76px,4px 64px,8px 64px,8px 60px,8px 52px,12px 52px,12px 48px,16px 48px,16px 44px,16px 40px,20px 40px,20px 36px,24px 36px,24px 32px,28px 32px,28px 28px,32px 28px,32px 24px,36px 24px,36px 20px,40px 20px,40px 16px,44px 16px,48px 16px,48px 12px,52px 12px,52px 8px,56px 8px,60px 8px,64px 8px,64px 4px,68px 4px,72px 4px,76px 4px,76px 0,calc(100% - 76px) 0,calc(100% - 76px) 4px,calc(100% - 64px) 4px,calc(100% - 64px) 8px,calc(100% - 60px) 8px,calc(100% - 52px) 8px,calc(100% - 52px) 12px,calc(100% - 48px) 12px,calc(100% - 48px) 16px,calc(100% - 44px) 16px,calc(100% - 40px) 16px,calc(100% - 40px) 20px,calc(100% - 36px) 20px,calc(100% - 36px) 24px,calc(100% - 32px) 24px,calc(100% - 32px) 28px,calc(100% - 28px) 28px,calc(100% - 28px) 32px,calc(100% - 24px) 32px,calc(100% - 24px) 36px,calc(100% - 20px) 36px,calc(100% - 20px) 40px,calc(100% - 16px) 40px,calc(100% - 16px) 44px,calc(100% - 16px) 48px,calc(100% - 12px) 48px,calc(100% - 12px) 52px,calc(100% - 8px) 52px,calc(100% - 8px) 56px,calc(100% - 8px) 60px,calc(100% - 8px) 64px,calc(100% - 4px) 64px,calc(100% - 4px) 68px,calc(100% - 4px) 72px,calc(100% - 4px) 76px,100% 76px,100% calc(100% - 76px),calc(100% - 4px) calc(100% - 76px),calc(100% - 4px) calc(100% - 64px),calc(100% - 8px) calc(100% - 64px),calc(100% - 8px) calc(100% - 60px),calc(100% - 8px) calc(100% - 52px),calc(100% - 12px) calc(100% - 52px),calc(100% - 12px) calc(100% - 48px),calc(100% - 16px) calc(100% - 48px),calc(100% - 16px) calc(100% - 44px),calc(100% - 16px) calc(100% - 40px),calc(100% - 20px) calc(100% - 40px),calc(100% - 20px) calc(100% - 36px),calc(100% - 24px) calc(100% - 36px),calc(100% - 24px) calc(100% - 32px),calc(100% - 28px) calc(100% - 32px),calc(100% - 28px) calc(100% - 28px),calc(100% - 32px) calc(100% - 28px),calc(100% - 32px) calc(100% - 24px),calc(100% - 36px) calc(100% - 24px),calc(100% - 36px) calc(100% - 20px),calc(100% - 40px) calc(100% - 20px),calc(100% - 40px) calc(100% - 16px),calc(100% - 44px) calc(100% - 16px),calc(100% - 48px) calc(100% - 16px),calc(100% - 48px) calc(100% - 12px),calc(100% - 52px) calc(100% - 12px),calc(100% - 52px) calc(100% - 8px),calc(100% - 56px) calc(100% - 8px),calc(100% - 60px) calc(100% - 8px),calc(100% - 64px) calc(100% - 8px),calc(100% - 64px) calc(100% - 4px),calc(100% - 68px) calc(100% - 4px),calc(100% - 72px) calc(100% - 4px),calc(100% - 76px) calc(100% - 4px),calc(100% - 76px) 100%,76px 100%,76px calc(100% - 4px),64px calc(100% - 4px),64px calc(100% - 8px),60px calc(100% - 8px),52px calc(100% - 8px),52px calc(100% - 12px),48px calc(100% - 12px),48px calc(100% - 16px),44px calc(100% - 16px),40px calc(100% - 16px),40px calc(100% - 20px),36px calc(100% - 20px),36px calc(100% - 24px),32px calc(100% - 24px),32px calc(100% - 28px),28px calc(100% - 28px),28px calc(100% - 32px),24px calc(100% - 32px),24px calc(100% - 36px),20px calc(100% - 36px),20px calc(100% - 40px),16px calc(100% - 40px),16px calc(100% - 44px),16px calc(100% - 48px),12px calc(100% - 48px),12px calc(100% - 52px),8px calc(100% - 52px),8px calc(100% - 56px),8px calc(100% - 60px),8px calc(100% - 64px),4px calc(100% - 64px),4px calc(100% - 68px),4px calc(100% - 72px),4px calc(100% - 76px),0 calc(100% - 76px));clip-path:polygon(0 76px,4px 76px,4px 64px,8px 64px,8px 60px,8px 52px,12px 52px,12px 48px,16px 48px,16px 44px,16px 40px,20px 40px,20px 36px,24px 36px,24px 32px,28px 32px,28px 28px,32px 28px,32px 24px,36px 24px,36px 20px,40px 20px,40px 16px,44px 16px,48px 16px,48px 12px,52px 12px,52px 8px,56px 8px,60px 8px,64px 8px,64px 4px,68px 4px,72px 4px,76px 4px,76px 0,calc(100% - 76px) 0,calc(100% - 76px) 4px,calc(100% - 64px) 4px,calc(100% - 64px) 8px,calc(100% - 60px) 8px,calc(100% - 52px) 8px,calc(100% - 52px) 12px,calc(100% - 48px) 12px,calc(100% - 48px) 16px,calc(100% - 44px) 16px,calc(100% - 40px) 16px,calc(100% - 40px) 20px,calc(100% - 36px) 20px,calc(100% - 36px) 24px,calc(100% - 32px) 24px,calc(100% - 32px) 28px,calc(100% - 28px) 28px,calc(100% - 28px) 32px,calc(100% - 24px) 32px,calc(100% - 24px) 36px,calc(100% - 20px) 36px,calc(100% - 20px) 40px,calc(100% - 16px) 40px,calc(100% - 16px) 44px,calc(100% - 16px) 48px,calc(100% - 12px) 48px,calc(100% - 12px) 52px,calc(100% - 8px) 52px,calc(100% - 8px) 56px,calc(100% - 8px) 60px,calc(100% - 8px) 64px,calc(100% - 4px) 64px,calc(100% - 4px) 68px,calc(100% - 4px) 72px,calc(100% - 4px) 76px,100% 76px,100% calc(100% - 76px),calc(100% - 4px) calc(100% - 76px),calc(100% - 4px) calc(100% - 64px),calc(100% - 8px) calc(100% - 64px),calc(100% - 8px) calc(100% - 60px),calc(100% - 8px) calc(100% - 52px),calc(100% - 12px) calc(100% - 52px),calc(100% - 12px) calc(100% - 48px),calc(100% - 16px) calc(100% - 48px),calc(100% - 16px) calc(100% - 44px),calc(100% - 16px) calc(100% - 40px),calc(100% - 20px) calc(100% - 40px),calc(100% - 20px) calc(100% - 36px),calc(100% - 24px) calc(100% - 36px),calc(100% - 24px) calc(100% - 32px),calc(100% - 28px) calc(100% - 32px),calc(100% - 28px) calc(100% - 28px),calc(100% - 32px) calc(100% - 28px),calc(100% - 32px) calc(100% - 24px),calc(100% - 36px) calc(100% - 24px),calc(100% - 36px) calc(100% - 20px),calc(100% - 40px) calc(100% - 20px),calc(100% - 40px) calc(100% - 16px),calc(100% - 44px) calc(100% - 16px),calc(100% - 48px) calc(100% - 16px),calc(100% - 48px) calc(100% - 12px),calc(100% - 52px) calc(100% - 12px),calc(100% - 52px) calc(100% - 8px),calc(100% - 56px) calc(100% - 8px),calc(100% - 60px) calc(100% - 8px),calc(100% - 64px) calc(100% - 8px),calc(100% - 64px) calc(100% - 4px),calc(100% - 68px) calc(100% - 4px),calc(100% - 72px) calc(100% - 4px),calc(100% - 76px) calc(100% - 4px),calc(100% - 76px) 100%,76px 100%,76px calc(100% - 4px),64px calc(100% - 4px),64px calc(100% - 8px),60px calc(100% - 8px),52px calc(100% - 8px),52px calc(100% - 12px),48px calc(100% - 12px),48px calc(100% - 16px),44px calc(100% - 16px),40px calc(100% - 16px),40px calc(100% - 20px),36px calc(100% - 20px),36px calc(100% - 24px),32px calc(100% - 24px),32px calc(100% - 28px),28px calc(100% - 28px),28px calc(100% - 32px),24px calc(100% - 32px),24px calc(100% - 36px),20px calc(100% - 36px),20px calc(100% - 40px),16px calc(100% - 40px),16px calc(100% - 44px),16px calc(100% - 48px),12px calc(100% - 48px),12px calc(100% - 52px),8px calc(100% - 52px),8px calc(100% - 56px),8px calc(100% - 60px),8px calc(100% - 64px),4px calc(100% - 64px),4px calc(100% - 68px),4px calc(100% - 72px),4px calc(100% - 76px),0 calc(100% - 76px))}}@media (min-width:1280px){.xl\:hidden{display:none}.xl\:max-w-\[1024px\]{max-width:1024px}.xl\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.xl\:gap-14{gap:3.5rem}}@media (min-width:1536px){.\32xl\:max-w-\[1280px\]{max-width:1280px}}@media (min-width:400px){.xs\:inline{display:inline}}@media (max-width:767px){.ltmd\:absolute{position:absolute}.ltmd\:inset-0{top:0;right:0;bottom:0;left:0}.ltmd\:left-0{left:0}.ltmd\:bottom-5{bottom:1.25rem}.ltmd\:bottom-16{bottom:4rem}.ltmd\:-z-10{z-index:-10}.ltmd\:-m-\[8px\]{margin:-8px}.ltmd\:mx-auto{margin-left:auto;margin-right:auto}.ltmd\:mt-20{margin-top:5rem}.ltmd\:hidden{display:none}.ltmd\:h-\[calc\(100\%\+16px\)\]{height:calc(100% + 16px)}.ltmd\:w-full{width:100%}.ltmd\:w-\[calc\(100\%\+16px\)\]{width:calc(100% + 16px)}.ltmd\:origin-bottom{transform-origin:bottom}.ltmd\:flex-col{flex-direction:column}.ltmd\:items-center{align-items:center}.ltmd\:bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity))}.ltmd\:bg-opacity-50{--tw-bg-opacity:0.5}.ltmd\:text-xs{font-size:.75rem;line-height:1rem}.ltmd\:text-sm{font-size:.875rem;line-height:1.25rem}.ltmd\:blur-sm{--tw-blur:blur(4px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}}@media (max-width:1023px){.ltlg\:row-start-3{grid-row-start:3}.ltlg\:row-start-4{grid-row-start:4}.ltlg\:row-start-5{grid-row-start:5}.ltlg\:row-start-6{grid-row-start:6}}@media (max-width:1279px){.ltxl\:hidden{display:none}}@-webkit-keyframes react-loading-skeleton{to{-webkit-transform:translateX(100%);transform:translateX(100%)}}@keyframes react-loading-skeleton{to{-webkit-transform:translateX(100%);transform:translateX(100%)}}.react-loading-skeleton{--base-color:#ebebeb;--highlight-color:#f5f5f5;--animation-duration:1.5s;--animation-direction:normal;--pseudo-element-display:block;background-color:var(--base-color);width:100%;border-radius:.25rem;display:inline-flex;line-height:1;position:relative;overflow:hidden;z-index:1}.react-loading-skeleton:after{content:" ";display:var(--pseudo-element-display);position:absolute;top:0;left:0;right:0;height:100%;background-repeat:no-repeat;background-image:linear-gradient(90deg,var(--base-color),var(--highlight-color),var(--base-color));-webkit-transform:translateX(-100%);transform:translateX(-100%);-webkit-animation-name:react-loading-skeleton;animation-name:react-loading-skeleton;-webkit-animation-direction:var(--animation-direction);animation-direction:var(--animation-direction);-webkit-animation-duration:var(--animation-duration);animation-duration:var(--animation-duration);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite}