.nav__list{display:flex;margin-right:1.5em}.nav__list-item{margin-left:1.5em}.app .nav__hamburger{display:none}.nav__theme{margin-top:.4em}@media (max-width:600px){.nav__list{align-items:center;background-color:var(--clr-bg);display:none;flex-direction:column;height:100%;inset:0;justify-content:center;position:fixed;width:100%;z-index:2}.nav__list-item{margin:.5em 0}.app .nav__hamburger{display:flex;margin-left:.8em;z-index:2}}.header{height:4em;justify-content:flex-end;margin:0 auto;max-width:1100px;width:95%}@media (max-width:600px){.header{height:6em}}.about{align-items:flex-start;display:flex;flex-direction:column;margin-top:3.5em}.about__eyebrow{color:var(--clr-primary);font-family:var(--font-mono);font-size:.8rem;font-weight:500;letter-spacing:.02em;margin-bottom:.7em}.about__name{color:var(--clr-fg-alt);font-size:3.4rem;font-weight:700;letter-spacing:-.035em;line-height:1.05}.about__desc__and__img{align-items:center;display:flex;flex-direction:row;gap:1.5rem;justify-content:space-between}.about__image{border-radius:50%;box-shadow:0 0 0 1px var(--clr-glass-hover),var(--shadow);flex-shrink:0;height:8em;object-fit:cover;position:relative;width:8em}.about__desc{color:var(--clr-fg);font-size:.98rem;line-height:1.6;max-width:600px}.about__contact,.about__desc{margin-top:1.8em}.about .link--icon{margin-right:.9em;transition:color .2s ease,-webkit-transform .2s ease;transition:color .2s ease,transform .2s ease;transition:color .2s ease,transform .2s ease,-webkit-transform .2s ease}.about .link--icon:hover{color:var(--clr-primary);-webkit-transform:translateY(-2px);transform:translateY(-2px)}.about .btn--outline{margin-right:0}@media (max-width:600px){.app .about{align-items:flex-start;margin-top:2.5em}.about__name{font-size:2.6rem}.about__desc__and__img{align-items:flex-start;flex-direction:column-reverse;gap:1.2rem}.about__image{height:6.5em;width:6.5em}}.projects__list{margin:0 auto;max-width:1100px;padding:0}.project__item{border-bottom:1px solid var(--clr-divider);padding:1.6rem 0;transition:all .2s ease}.project__item:last-child{border-bottom:none}.project__header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:.8rem}.project__title-section{display:flex;flex:1 1;flex-direction:column;gap:.4rem}.project__name{color:var(--clr-fg);font-size:1.1rem;font-weight:600;line-height:1.3;margin:0}.project__links{display:flex;flex-shrink:0;gap:.5rem}.project__btn{align-items:center;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);background-color:var(--itemcolour);border:1px solid var(--shadowmore);border-radius:5px;box-shadow:0 1px 2px 0 rgba(0,77,64,.2);color:var(--textcolour);display:inline-flex;font-size:.75rem;font-weight:500;gap:.3rem;padding:.4rem .7rem;text-decoration:none;transition:-webkit-transform .2s ease;transition:transform .2s ease;transition:transform .2s ease,-webkit-transform .2s ease;white-space:nowrap}.project__btn:hover{-webkit-transform:translateY(-2px);transform:translateY(-2px)}.project__btn svg{height:14px;width:14px}.project__description{color:var(--clr-fg-alt);font-size:.85rem;line-height:1.5;margin:0 0 1rem}.project__tech-stack{display:flex;flex-wrap:wrap;gap:.3rem}.project__tech{backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);background-color:var(--itemcolour);border:1px solid var(--shadowmore);border-radius:5px;box-shadow:0 1px 2px 0 rgba(0,77,64,.2);color:var(--textcolour);font-family:var(--font-mono);font-size:.68rem;font-weight:500;padding:.2rem .45rem}@media (max-width:768px){.projects__list{padding:0 1rem}.project__item{padding:1.2rem 0}.project__header{align-items:flex-start;flex-direction:column;gap:.8rem}.project__links{justify-content:flex-start;width:100%}.project__name{font-size:1rem}}@media (max-width:480px){.project__links{flex-wrap:wrap}}.resume__item{border-bottom:1px solid var(--clr-divider);padding:1.6rem 0}.resume__item:last-child{border-bottom:none}.resume__header{align-items:baseline;display:flex;gap:1rem;justify-content:space-between;margin-bottom:.8rem}.resume__role-company{display:flex;flex-direction:column;gap:.25rem}.resume__role{color:var(--clr-fg-alt);font-size:1.05rem;font-weight:600;line-height:1.3;margin:0}.resume__company{color:var(--clr-primary);font-size:.85rem;font-weight:500;transition:opacity .2s ease;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}a.resume__company:hover{opacity:.7}.resume__dates{color:var(--clr-fg);flex-shrink:0;font-family:var(--font-mono);font-size:.72rem;white-space:nowrap}.resume__description{color:var(--clr-fg-alt);font-size:.85rem;line-height:1.6;margin:0 0 1rem;white-space:pre-wrap}.resume__skills{display:flex;flex-wrap:wrap;gap:.3rem}.resume__skills-item{backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);background-color:var(--itemcolour);border:1px solid var(--shadowmore);border-radius:5px;box-shadow:0 1px 2px 0 rgba(0,77,64,.2);color:var(--textcolour);font-family:var(--font-mono);font-size:.68rem;font-weight:500;padding:.2rem .45rem}@media (max-width:768px){.resume__header{align-items:flex-start;flex-direction:column;gap:.4rem}}.experience__list,.skills__list{margin:0 auto;max-width:1100px}.skills__list{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:center;padding:0}.skills__item{backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);background-color:var(--itemcolour);border:1px solid var(--shadowmore);border-radius:6px;box-shadow:0 1px 2px 0 rgba(0,77,64,.2);color:var(--textcolour);font-family:var(--font-mono);font-size:.72rem;font-weight:500;padding:.35rem .65rem}@media (max-width:768px){.skills__list{padding:0 1rem}}.scroll-top{background-color:initial;bottom:2em;position:fixed;right:4em}@media (max-width:900px){.scroll-top{display:none}}.contact{flex-direction:column;margin:0 auto;max-width:1100px;text-align:center}.contact__text{color:var(--clr-fg);font-size:.9rem;line-height:1.5;margin:0}.contact__link{color:var(--clr-primary);text-decoration:none;transition:color .2s ease}.contact__link:hover{color:var(--clr-primary);text-decoration:underline}@media (max-width:768px){.contact{padding:0 1rem}}.footer{font-size:.66rem;margin-top:4em;padding:3em 0;text-align:center}.footer div:first-child{margin-bottom:20px}.footer__link{color:var(--clr-fg);font-weight:600}@media (max-width:600px){.footer{margin-top:3em;padding:2em}}.project__stack_page{display:flex;flex-wrap:wrap;justify-content:left;margin:0}.project__stack_page-item{color:var(--clr-fg-alt);font-size:.8rem;font-weight:500;margin:.5em}.main-container{margin:0 auto;max-width:1100px;padding:20px}.headline-image{border-radius:15px;box-shadow:5px 5px 15px rgba(0,0,0,.3);display:block;height:20%;margin-bottom:40px;margin-left:auto;margin-right:auto;max-height:450px;object-fit:cover;width:100%}.title-container{display:inline-block;margin-bottom:10px}.title-heading{display:inline;margin:0}.info-paragraph{margin-bottom:10px}body{background-color:#ededed;margin:0;padding:0}.app,body{min-height:100vh}.app{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-font-feature-settings:"cv11","ss01";font-feature-settings:"cv11","ss01";background:transparent;color:var(--clr-fg);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.9rem;isolation:isolate;letter-spacing:-.011em;line-height:1.5;position:relative}:root{--font-mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace;--x:50%;--y:50%}::selection{background:var(--clr-primary);color:var(--clr-bg)}.app:before{background-image:radial-gradient(var(--clr-grid) 1.4px,transparent 1.5px);background-size:28px 28px;content:"";z-index:-2}.app:before,.grain{inset:0;pointer-events:none;position:fixed}.grain{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='a'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23a)'/%3E%3C/svg%3E");background-size:160px 160px;opacity:.04;z-index:1}.app:after{background-image:radial-gradient(var(--clr-grid-glow) 1.4px,transparent 1.5px);background-size:28px 28px;content:"";inset:0;-webkit-mask-image:radial-gradient(circle 400px at 50% 50%,#000 0,transparent 100%);-webkit-mask-image:radial-gradient(circle 400px at var(--x) var(--y),#000 0,transparent 100%);mask-image:radial-gradient(circle 400px at 50% 50%,#000 0,transparent 100%);mask-image:radial-gradient(circle 400px at var(--x) var(--y),#000 0,transparent 100%);pointer-events:none;position:fixed;z-index:-1}.light{--clr-bg:#ededed;--clr-divider:rgba(0,0,0,.1);--clr-grid:rgba(0,0,0,.06);--clr-grid-glow:rgba(41,120,181,.38);--clr-glass:#d1d0d012;--clr-glass-hover:#fff;--clr-hover:#fff;--clr-glow:#fff;--clr-bg-alt:#fff;--clr-fg:#555;--textcolour:#555;--itemcolour:#ffffff9c;--clr-fg-alt:#444;--clr-primary:#2978b5;--shadow:hsla(240,5%,41%,.2) 0px 7px 29px 0px,rgba(0,0,0,.06) 0px 0px 0px 1px;--shadowmore:rgba(0,0,0,.16) 5px 15px 15px 2px,rgba(38,38,38,.06) 0px 0px 0px 1px;--unicolour:#00ab75;--personalcolour:#a0a;--image-filter:none}.dark{--clr-bg:#0e172a;--clr-divider:hsla(0,0%,100%,.09);--clr-grid:hsla(0,0%,100%,.05);--clr-grid-glow:rgba(144,160,217,.45);--clr-glass:#ffffff12;--clr-glass-hover:#576689;--clr-hover:#132042;--textcolour:#fff;--itemcolour:#0000009c;--clr-glow:#132042;--clr-bg-alt:#2a2f4c;--clr-fg:#f0f0f0;--clr-fg-alt:#cdcdff;--clr-primary:#90a0d9;--shadow:rgba(0,0,0,.16) 0px 10px 36px 0px,rgba(0,0,0,.06) 0px 0px 0px 1px;--shadowmore:rgba(0,0,0,.16) 5px 15px 15px 2px,hsla(0,0%,100%,.06) 0px 0px 0px 1px;--unicolour:#40ffc2;--personalcolour:#ff51ff;--image-filter:invert(100%)}main{margin:0 auto;max-width:1100px;width:95%}.section{margin-top:4.5em}.section__title{align-items:center;display:flex;font-size:1.4rem;font-weight:700;gap:.7rem;letter-spacing:-.02em;margin-bottom:1.4em;text-align:left;text-transform:none}.section__title:before{background:var(--clr-primary);border-radius:2px;content:"";height:2px;opacity:.8;width:1.7rem}@-webkit-keyframes fade-up{0%{opacity:0;-webkit-transform:translateY(14px);transform:translateY(14px)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes fade-up{0%{opacity:0;-webkit-transform:translateY(14px);transform:translateY(14px)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}main>*{-webkit-animation:fade-up .6s cubic-bezier(.22,1,.36,1) both;animation:fade-up .6s cubic-bezier(.22,1,.36,1) both}main>:first-child{-webkit-animation-delay:0s;animation-delay:0s}main>:nth-child(2){-webkit-animation-delay:.08s;animation-delay:.08s}main>:nth-child(3){-webkit-animation-delay:.16s;animation-delay:.16s}main>:nth-child(4){-webkit-animation-delay:.24s;animation-delay:.24s}main>:nth-child(5){-webkit-animation-delay:.32s;animation-delay:.32s}*{scrollbar-color:var(--clr-primary) transparent;scrollbar-width:thin}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-thumb{background:var(--clr-primary);border-radius:8px}::-webkit-scrollbar-track{background:transparent}@media (prefers-reduced-motion:reduce){main>*{-webkit-animation:none;animation:none}html{scroll-behavior:auto}}.center{align-items:center;display:flex}.link{padding:0;position:relative}.link,.link:hover{color:var(--clr-primary)}.link:before{background-color:var(--clr-primary);bottom:0;content:"";display:inline;height:.2em;position:absolute;transition:width .2s ease-in;width:0}.link:focus:before,.link:hover:before{width:100%}.link--nav{font-weight:500;text-transform:lowercase}.link--icon,.link--nav{color:var(--clr-fg)}.btn{backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);background-color:var(--itemcolour);border:1px solid var(--shadowmore);border-radius:5px;box-shadow:0 1px 2px 0 rgba(0,77,64,.2);color:var(--textcolour);cursor:pointer;display:block;font-size:.9rem;font-weight:500;padding:.8em 1.4em;text-align:center;text-transform:lowercase;transition:-webkit-transform .2s ease-in-out;transition:transform .2s ease-in-out;transition:transform .2s ease-in-out,-webkit-transform .2s ease-in-out}.btn--outline{border:2px solid var(--clr-primary);color:var(--clr-primary);overflow:hidden;position:relative;z-index:1}.btn--outline:focus,.btn--outline:hover{color:var(--clr-bg)}.btn--outline:before{background-color:var(--clr-primary);bottom:0;content:"";left:0;position:absolute;right:100%;top:0;transition:right .2s ease-in-out;z-index:-1}.btn--outline:focus:before,.btn--outline:hover:before{right:0}.btn--plain{background-color:var(--clr-bg-alt);border:0;box-shadow:0 3px 3px 0 rgba(0,0,0,.15);text-transform:none}.btn--plain:hover{-webkit-transform:translateY(-4px);transform:translateY(-4px)}.btn--icon{padding:0}.btn--icon:focus,.btn--icon:hover{color:var(--clr-primary)}.btn--icon:active{-webkit-transform:translateY(-5px);transform:translateY(-5px)}@media (max-width:600px){.section{margin-top:4em}}*{background-color:inherit;border:0;box-shadow:none;box-sizing:border-box;color:inherit;font-family:inherit;font-size:inherit;margin:0;outline:0;padding:0}html{scroll-behavior:smooth}h1,h2,h3,h4{color:var(--clr-fg-alt);letter-spacing:-.02em;line-height:1.2}h1{font-size:4rem;letter-spacing:-.035em}h2{font-size:2rem}h3{font-size:1.5rem}h4{font-size:1.3rem}ul{list-style-type:none}a{text-decoration:none}button{cursor:pointer}@media (max-width:900px){h1{font-size:2.6rem}}
/*# sourceMappingURL=main.0c3d0c3b.css.map*/