:root{font-family:DM Sans,sans-serif;font-optical-sizing:auto;font-weight:400;font-style:normal;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}.dark a:hover{cursor:pointer;color:#fff}.light a:hover{cursor:pointer;color:#008770}.homepage{display:flex;flex-direction:column;align-items:center;height:100%;max-width:700px;min-height:90vh;margin-left:auto;margin-right:auto;padding-left:3rem;padding-right:3rem}.big-ol-div{height:25vh}.home-statement{margin-top:2rem;font-size:36px;margin-bottom:4rem}.socials{display:flex;flex-direction:row;justify-content:center}.socials .social-link{height:24px;margin:0 .5rem}.light .social-link{filter:brightness(0) saturate(100%) invert(20%) sepia(72%) saturate(663%) hue-rotate(124deg) brightness(100%) contrast(102%)}.light .social-link:hover{cursor:pointer;filter:brightness(0) saturate(100%) invert(36%) sepia(29%) saturate(2219%) hue-rotate(132deg) brightness(99%) contrast(101%)}.dark .social-link{filter:brightness(0) saturate(100%) invert(95%) sepia(11%) saturate(131%) hue-rotate(98deg) brightness(97%) contrast(94%)}.dark .social-link:hover{cursor:pointer;filter:brightness(0) saturate(100%) invert(100%) sepia(1%) saturate(265%) hue-rotate(319deg) brightness(115%) contrast(100%)}@media (max-width: 600px){.homepage{min-height:100vh}}.projects{margin-top:3rem;height:100%;min-height:100vh;max-width:1000px;margin-left:auto;margin-right:auto;padding-left:3rem;padding-right:3rem;margin-bottom:4rem}.projects .sub-heading-box{display:flex;flex-direction:row;justify-content:center}.project-cards{display:flex;flex-direction:column;justify-content:space-around}.project-card{width:auto;height:fit-content;display:flex;flex-direction:row;justify-content:space-around;padding:2rem}.dark .project-card{border-top:2px solid #008770}.light .project-card{border-top:2px solid #ffffff}.image-box{width:45%}.image-box .card-image{width:100%;height:auto;max-height:100%;object-fit:contain}.card-description{position:relative;display:flex;flex-direction:column;align-items:flex-start;padding-bottom:2rem;width:45%}.card-description .project-title{font-size:24px;margin-bottom:1rem}.card-description .project-description{margin-bottom:1rem}.project-links{position:absolute;bottom:0;right:0;width:100%;display:flex;flex-direction:row;justify-content:flex-end}.project-link{height:24px;margin:0 .5rem}.project-read-more{text-decoration:underline}.techstack-list{list-style-type:disc;margin-left:1.5rem;margin-bottom:1rem}.techstack-list li{margin-bottom:.25rem}.techstack-list b{font-weight:600}@media (max-width: 600px){.projects{min-height:130vh}.project-card{width:auto;height:auto;display:flex;flex-direction:column;padding:2rem}.image-box{max-width:80%;margin:auto;padding-bottom:1rem}.image-box .card-image{width:auto;height:auto;max-height:100%;max-width:100%}.card-description{width:100%}}.light .project-link{filter:brightness(0) saturate(100%) invert(20%) sepia(72%) saturate(663%) hue-rotate(124deg) brightness(100%) contrast(102%)}.light .project-link:hover{cursor:pointer;filter:brightness(0) saturate(100%) invert(36%) sepia(29%) saturate(2219%) hue-rotate(132deg) brightness(99%) contrast(101%)}.dark .project-link{filter:brightness(0) saturate(100%) invert(95%) sepia(11%) saturate(131%) hue-rotate(98deg) brightness(97%) contrast(94%)}.dark .project-link:hover{cursor:pointer;filter:brightness(0) saturate(100%) invert(100%) sepia(1%) saturate(265%) hue-rotate(319deg) brightness(115%) contrast(100%)}.avatar{height:14rem;width:14rem;border-radius:100%;margin:3rem}.dark .avatar{background-color:#e0ece6}.light .avatar{background-color:#004d40}.about{display:flex;flex-direction:column;align-items:center;height:100%;max-width:1000px;min-height:100vh;margin-left:auto;margin-right:auto;padding-left:3rem;padding-right:3rem}.about .about-me{height:auto;padding-bottom:3rem}@media (max-width: 600px){.about{height:calc(100vh + 250px)!important;padding-bottom:3rem}}.blog{box-sizing:border-box;width:100%;max-width:760px;min-height:100vh;margin:3rem auto 0;padding:3rem 3rem 6rem}.dark .blog{color-scheme:light;background-color:#e0ece6;color:#004d40}.light .blog{color-scheme:dark;background-color:#004d40;color:#e0ece6}.blog a{color:inherit}.dark .blog a:hover{color:#008770}.light .blog a:hover{color:#fff}.blog-intro{line-height:1.6;margin-bottom:3rem;text-align:center}.blog-list{list-style:none}.blog-entry{border-top:1px solid currentColor;padding:1.5rem 0 2rem}.blog-entry time,.blog-post time{display:block;font-size:.875rem;margin-bottom:.75rem;opacity:.75}.blog-entry h2{font-size:1.5rem;line-height:1.3;margin-bottom:.75rem}.blog-entry h2 a{text-decoration:none}.blog-entry h2 a:hover,.blog-back:hover{text-decoration:underline}.blog-entry p,.blog-body{line-height:1.7}.blog-back{display:inline-block;margin-bottom:3rem;text-decoration:none}.blog-post h1{font-size:2.25rem;line-height:1.2;margin-bottom:2.5rem}.blog-body>*{margin-bottom:1.5rem}.blog-body h2,.blog-body h3{font-weight:600;line-height:1.3;margin-top:2.5rem}.blog-body h2{font-size:1.5rem}.blog-body h3{font-size:1.2rem}.blog-body a{text-decoration:underline}.blog-body ul,.blog-body ol{padding-left:1.5rem}.blog-body ul{list-style:disc}.blog-body ol{list-style:decimal}.blog-body li{margin-bottom:.5rem}.blog-body img{display:block;height:auto;max-width:100%}.blog-body iframe{aspect-ratio:16/9;border:0;display:block;height:auto;max-width:560px;width:100%;margin:auto}.blog-body pre{overflow-x:auto;padding:1rem}.blog-body blockquote{border-left:2px solid currentColor;padding-left:1rem}.blog-body em{font-style:italic}.blog-body strong{font-weight:700}@media (max-width: 600px){.blog{margin-top:2rem;padding:2rem 1.5rem 6rem}.blog-post h1{font-size:1.9rem}}.header{display:flex;flex-direction:row;width:auto;align-items:center;padding-bottom:.5rem;z-index:1}.navigation-bar{flex:1;display:flex;justify-content:flex-start;align-items:center}.switches{display:flex;justify-content:flex-end}.switch{padding:1.5rem 2rem}.link.home{white-space:nowrap}.home-short{display:none}.dark .header{background-color:#004d4084;color:#e0ece6;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.light .header{background-color:#e0ece684;color:#004d40;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.small-display-bar{position:absolute;top:0;right:0;visibility:hidden}.small-display-bar .switches{position:absolute;right:0}@media (min-width: 751px){.header{max-width:inherit;position:sticky;top:0;left:0}.navigation-bar{display:flex;flex-direction:row}.navigation-bar .link{padding:1.5rem 1rem;text-align:center}.dark .header .link:hover{color:#fff}.light .header .link:hover{color:#008770;border-bottom-width:20%}}@media (max-width: 750px){.header{width:100%;position:fixed;bottom:0;left:0}.navigation-bar{width:100%;justify-content:space-around}.navigation-bar .link{padding:.9rem .5rem;font-size:.9rem}.home-name,.header .switches{display:none}.home-short{display:inline}.small-display-bar{position:fixed;visibility:visible;z-index:2}.small-display-bar .switches{visibility:visible}.dark .small-display-bar.retrospective-switch .lightswitch{filter:brightness(0) saturate(100%) invert(20%) sepia(72%) saturate(663%) hue-rotate(124deg) brightness(100%) contrast(102%)}.light .small-display-bar.retrospective-switch .lightswitch{filter:brightness(0) saturate(100%) invert(95%) sepia(11%) saturate(131%) hue-rotate(98deg) brightness(97%) contrast(94%)}.dark .navigation-bar .link:hover{color:#fff}.light .navigation-bar .link:hover{color:#008770}}.lightswitch{height:24px}.light .lightswitch{filter:brightness(0) saturate(100%) invert(20%) sepia(72%) saturate(663%) hue-rotate(124deg) brightness(100%) contrast(102%)}.light .lightswitch:hover{cursor:pointer;filter:brightness(0) saturate(100%) invert(36%) sepia(29%) saturate(2219%) hue-rotate(132deg) brightness(99%) contrast(101%)}.dark .lightswitch{filter:brightness(0) saturate(100%) invert(95%) sepia(11%) saturate(131%) hue-rotate(98deg) brightness(97%) contrast(94%)}.dark .lightswitch:hover{cursor:pointer;filter:brightness(0) saturate(100%) invert(100%) sepia(1%) saturate(265%) hue-rotate(319deg) brightness(115%) contrast(100%)}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{color:inherit;margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:"";content:none}table{border-collapse:collapse;border-spacing:0}a:hover{color:inherit}#root{width:100%}:root{--shadow-color: 86deg 12% 52%;--shadow-elevation-low: .3px .5px .7px hsl(var(--shadow-color) / .4), .4px .9px 1.1px -1.2px hsl(var(--shadow-color) / .4), 1.1px 2.2px 2.8px -2.5px hsl(var(--shadow-color) / .4);--shadow-elevation-medium: .3px .5px .7px hsl(var(--shadow-color) / .42), .9px 1.7px 2.2px -.8px hsl(var(--shadow-color) / .42), 2.2px 4.4px 5.5px -1.7px hsl(var(--shadow-color) / .42), 5.4px 10.8px 13.6px -2.5px hsl(var(--shadow-color) / .42);--shadow-elevation-high: .3px .5px .7px hsl(var(--shadow-color) / .39), 1.6px 3.3px 4.1px -.4px hsl(var(--shadow-color) / .39), 3.1px 6.2px 7.8px -.7px hsl(var(--shadow-color) / .39), 5.1px 10.2px 12.8px -1.1px hsl(var(--shadow-color) / .39), 8.2px 16.4px 20.6px -1.4px hsl(var(--shadow-color) / .39), 12.8px 25.6px 32.2px -1.8px hsl(var(--shadow-color) / .39), 19.5px 39px 49.1px -2.1px hsl(var(--shadow-color) / .39), 28.8px 57.5px 72.3px -2.5px hsl(var(--shadow-color) / .39)}::selection{background:#fa9b6b}.light{background-color:#e0ece6;color:#004d40}.dark{background-color:#004d40;color:#e0ece6}.link:hover{cursor:pointer}.sub-heading-box{display:flex;justify-content:center;margin:auto;margin-bottom:2.5rem}.sub-heading{font-size:32px}.body-text{margin-bottom:1.5rem;line-height:24px}
