@import"https://fonts.googleapis.com/css2?family=Fira+Code:wght@300..700&display=swap";@import"https://fonts.googleapis.com/css2?family=Fira+Code:wght@300..700&family=Press+Start+2P&display=swap";.fira-code-regular{font-family:Fira Code,monospace;font-optical-sizing:auto;font-weight:400;font-style:normal}.press-start-2p-regular{font-family:"Press Start 2P",system-ui;font-weight:400;font-style:normal}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--colour-primary: #df7126;--colour-primary-dark: #8f563b;--colour-primary-text: #222034;--colour-secondary: #d9a066;--font-primary: "Fira Code", monospace;--font-secondary: "Press Start 2P", system-ui}*,*:before,*:after{box-sizing:border-box}a{font-weight:500;color:var(--colour-secondary);text-decoration:inherit}a:hover{color:var(--colour-secondary)}body{margin:0;display:flex;min-width:320px;min-height:100vh;background-color:var(--colour-primary-text)}h1{font-family:var(--font-secondary);color:var(--colour-primary);margin:20px}button{padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;cursor:pointer;transition:border-color .25s}button:hover{border-color:var(--colour-primary)}main{width:75vw}#root{flex-grow:1;display:flex;flex-direction:column;align-items:center;padding:20px}@media(prefers-color-scheme:light){:root{color:var(--colour-primary-text);background-color:#fff}a:hover{color:var(--colour-secondary)}button{background-color:#f9f9f9}}@media(max-width:767px){#root{padding:0}main{width:100vw}}.hover-image-container{position:relative;width:45vw;height:45vw;overflow:hidden}.hover-image__title{position:absolute;bottom:0;left:10px;color:var(--colour-primary);font-family:var(--font-secondary);font-size:medium;padding:5px 10px;background-color:var(--colour-primary-text);z-index:20}.hover-image{position:absolute;width:45vw;height:45vw;object-fit:cover}.hover-image--hover{position:absolute;opacity:0;transition:opacity .1s ease-in-out;z-index:10}.hover-image--hover:hover{opacity:1}.hover-image--hover:target{opacity:1}@media(min-width:768px){.hover-image-container,.hover-image,.hover-image--hover{width:300px;height:300px}.hover-image__title{position:absolute;bottom:0;left:10px;color:var(--colour-primary);font-family:var(--font-secondary);padding:5px 10px;background-color:var(--colour-primary-text);z-index:20}}.tech-label{display:flex;background-color:var(--colour-primary);color:var(--colour-primary-text);padding:4px 8px;font-size:.875rem;font-weight:500;margin:2px;box-shadow:7px 7px 0 0 var(--colour-primary-dark)}.topic-container{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:10px;margin:20px}.home__techstack{display:flex;flex-wrap:wrap;justify-content:center;margin:20px;font-family:var(--font-primary)}.home__title{font-family:var(--font-secondary);color:var(--colour-primary);font-size:2.5rem;margin:20px}.home__bio{font-family:var(--font-primary);color:var(--colour-primary);font-size:1.125rem;margin:20px}@media(min-width:767px){.topic-container{gap:20px}}.header{display:flex;flex-direction:column;width:100vw;background-color:var(--colour-primary);padding:20px}.header__title-container{margin:0 auto;display:flex;flex-direction:column}.header__title{font-family:var(--font-secondary);color:var(--colour-primary-text);margin:0;font-size:3.2em}.header__subtitle{font-family:var(--font-primary);color:var(--colour-secondary);margin:5px 0 0}.header__nav{display:flex;flex-direction:row;gap:15px;align-items:center}.nav__link{font-family:var(--font-primary);color:var(--colour-primary-text);text-decoration:none}@media(min-width:768px){.header{flex-direction:row;align-items:center;width:75vw;box-shadow:10px 10px 0 0 var(--colour-primary-dark)}.header__nav{margin-left:auto;margin-right:15%;display:flex;flex-direction:column;gap:15px;border-left:var(--colour-primary-dark) 2px solid}.nav__link{margin:0 15px;font-weight:600;transition:all .3s ease}.nav__link:hover{translate:20px 0}}.footer{padding:20px;display:flex;background-color:var(--colour-primary);width:100vw}.footer__logo{height:40px;margin:0 10px}.footer__text{margin:0 auto;font-family:var(--font-primary);color:var(--colour-primary-text)}@media(min-width:768px){.footer{flex-direction:row;align-items:center;width:75vw;box-shadow:10px 10px 0 0 var(--colour-primary-dark)}}
