.layout{flex-direction:column;flex:1;height:100vh;display:flex;overflow:hidden}.outlet{flex:1;padding-top:.5rem;display:flex;overflow:auto;-webkit-mask-image:linear-gradient(#0000,#000 10px calc(100% - 20px),#0000 100%);mask-image:linear-gradient(#0000,#000 10px calc(100% - 20px),#0000 100%)}.outlet:has(.home-main){-webkit-mask-image:none;mask-image:none}.outlet main{width:100%;padding:0 3rem}.header,.footer{flex-direction:row;flex:none;padding:.5rem;display:flex;position:sticky}.header{justify-content:space-between;padding-bottom:0}.footer{justify-content:center}.navlink{color:var(--text);padding:.75rem;text-decoration:none;transition:all .2s ease-out;display:inline-block}.navlink.active{font-weight:700}.external-link-icon svg{width:auto;max-height:25px}.external-link-icon svg path{fill:var(--text);transition:all .2s ease-out}.navlink:hover{color:var(--highlight);scale:1.1}.navlink:hover path{fill:var(--highlight)}.navlink-list,.mode-buttons{display:flex}.mode-buttons{border-radius:30px;margin:auto 0 auto .5rem;padding:7px}.mode{background-color:#0000;margin:auto;padding:0}.mode:hover{background-color:#0000;scale:1.5}@media screen and (max-width:600px){.outlet main{padding:1rem}.navlink{padding:.5rem}.external-link-icon{display:none}}.headers-wrapper{flex-direction:column;display:flex}.name-header{margin:5rem 0 0}.name-svg{max-height:45vh;padding:0 0 0 5rem;display:block}.home-main{flex-direction:column;justify-content:space-between;display:flex}.subheader{align-self:start}.bottom-text{align-self:end;transition:all .2s ease-out}.bottom-text:hover{font-weight:800}@media screen and (max-width:600px){.name-svg{max-width:90vw;padding:0}}.projects-header{margin-bottom:0}.projects-header svg{max-height:23vh}.projects{padding-bottom:3rem}.pr-card{justify-content:space-around;align-items:center;margin:3rem 0;display:flex}.pr-card:first-child{margin-top:0}.pr-card img{border-radius:5px;max-width:50vw;margin-left:2rem}.pr-card.reverse{flex-direction:row-reverse}.pr-card.reverse img{margin-left:0;margin-right:2rem}#web-portfolio img{max-height:200px}.pr-card-text{padding-bottom:5px}.project-title{margin:0}.techstack{margin:5px;font-style:italic}.highlights{margin-left:2rem}@media screen and (max-width:800px){.pr-card,.pr-card.reverse{flex-direction:column-reverse}.pr-card img,.pr-card.reverse img{max-width:80vw;margin:0 0 1rem}}.intro{align-items:center;display:flex}.about-svg{display:inline}.focuses{text-align:right;flex-direction:column;align-items:end;padding-bottom:3rem;font-weight:450;display:flex}.focuses .focus{max-width:70vw;margin-bottom:1rem}.focuses .focus.left{text-align:start;align-self:start}.focuses .focus a{transition:all .2s ease-out}.focuses .focus a:hover{font-weight:480}.focuses h3{margin-bottom:.5rem}@media screen and (max-width:600px){.about-svg{margin-bottom:1rem}.about-svg,.intro{text-align:right;display:block}.focuses .focus{max-width:95vw}}.contact-wrapper{padding-bottom:1rem;display:flex}.linklist{flex-direction:column;justify-content:space-between;align-items:center;height:50vh;margin:5px 1.5rem;display:flex}.linklist svg,.linklist path{fill:var(--text);transition:all .2s ease-out}.linklist svg{max-width:100px;display:block}.linklist svg:hover{scale:1.1}.linklist svg:hover path{fill:var(--highlight)}.linkline{background-color:var(--text);flex:1;width:5px}#contact-form{flex-direction:column;flex:1;margin:0 5vw .5rem 10vw;display:flex}.formfield{flex-direction:column;margin-bottom:.5rem;display:flex}.formfield input,.formfield textarea{border:2px solid var(--text);background-color:var(--background02);border-radius:1px;padding:5px}.formfield .label-error{justify-content:space-between;display:flex}.formfield .field-error{color:var(--highlight)}.formfield:has(textarea){flex:1}.formfield:has(textarea) textarea{flex:1}button{background:var(--text);color:var(--background02);border:none;border-radius:1px;align-self:flex-end;margin-top:.5rem;padding:.75rem 4rem;font-family:Jost;transition:all .2s ease-out}button:hover{background-color:var(--highlight);scale:1.05}.error,.pending,.success{text-align:center;flex-direction:column;margin:0 auto;display:flex}.error .sub-error,.pending .sub-error,.success .sub-error{padding:2rem}.error button,.pending button,.success button{align-self:center}@media screen and (max-width:600px){.contact-wrapper{flex-direction:column;align-items:center}.linklist{flex-direction:row;width:80vw;height:auto;margin-bottom:2rem}.linkline{height:5px}#contact-form{min-width:80vw;margin:0 1rem .5rem}}@font-face{font-family:jost;src:local(jost),url(/static/font/Jost-VariableFont_wght.3d252ad3.ttf)format("truetype-variations")}.jost{font-family:jost,Jost,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}@font-face{font-family:jost-italic;src:local(jost-italic),url(/static/font/Jost-Italic-VariableFont_wght.73518983.ttf)format("truetype-variations")}.jost-italic{font-family:jost-italic,Jost,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}.light-18{font-size:18px;font-weight:150}.light-24{font-size:24px;font-weight:150}.light-36{font-size:36px;font-weight:150}.light-48{font-size:48px;font-weight:150}.light-60{font-size:60px;font-weight:150}.light-72{font-size:72px;font-weight:150}.normal-18{font-size:18px;font-weight:400}.normal-24{font-size:24px;font-weight:400}.normal-36{font-size:36px;font-weight:400}.normal-48{font-size:48px;font-weight:400}.normal-60{font-size:60px;font-weight:400}.normal-72{font-size:72px;font-weight:400}.heavy-18{font-size:18px;font-weight:700}.heavy-24{font-size:24px;font-weight:700}.heavy-36{font-size:36px;font-weight:700}.heavy-48{font-size:48px;font-weight:700}.heavy-60{font-size:60px;font-weight:700}.heavy-72{font-size:72px;font-weight:700}:root{--purple:#49007f;--cream:#fff9c5;--pink:#ffa3b3;--lightningcss-light: ;--lightningcss-dark:initial;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}#root:has(.high-contrast-mode){--text:white;--highlight:greenyellow;--background01:black;--background02:black}#root:has(.dark-mode){--text:var(--cream);--highlight:var(--pink);--background01:var(--purple);--background02:black}#root:has(.light-mode){--text:black;--highlight:var(--purple);--background01:var(--cream);--background02:var(--pink)}#root:has(.light-mode) .light-18{font-size:18px;font-weight:200}#root:has(.light-mode) .light-24{font-size:24px;font-weight:200}#root:has(.light-mode) .light-36{font-size:36px;font-weight:200}#root:has(.light-mode) .light-48{font-size:48px;font-weight:200}#root:has(.light-mode) .light-60{font-size:60px;font-weight:200}#root:has(.light-mode) .light-72{font-size:72px;font-weight:200}#root:has(.light-mode){--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}#root:has(.light-mode) input{border-color:var(--purple);background-color:var(--cream)}#root:has(.light-mode) textarea{border-color:var(--purple);background-color:var(--cream)}#root:has(.light-mode) button:not(.mode){color:var(--cream)}#root:has(.light-mode) .mode-buttons{background-color:var(--purple)}#root{background-image:linear-gradient(var(--background01)0% 10%,var(--background02)80% 100%)}body,#root,html{height:100%;color:var(--text);flex-direction:column;flex:1;margin:0;font-family:Jost;display:flex}a{color:var(--highlight)}h1{margin-top:0}h1 svg{width:auto;max-width:70vw;height:auto;max-height:20vh;padding:0 3rem}h1 svg path{fill:var(--text)}@media screen and (max-width:600px){h1 svg{padding:0}}