:root{--primary-color:#111;--primary-color-hover:#242424;--secondary-color:#007aff;--secondary-color-hover:#006be0;--gray-1:#eee;--gray-2:#ddd;--gray-3:#ccc;--gray-4:#bbb;--gray-5:#9a9a9a;--gray-6:#777;--primary-font:"Inter", sans-serif;--secondary-font:"JetBrains Mono", monospace}::selection{color:#fff;background:var(--secondary-color)}html{scroll-behavior:smooth}body{box-sizing:border-box;color:var(--primary-color);font-family:var(--primary-font);margin:0;padding:0}p,h1,h2,h3,h4,h5,h6{letter-spacing:-1%;margin:0;padding:0}a{text-decoration:none}a.link{z-index:99;position:absolute;inset:0}section{padding-bottom:6.25em}@media (width<=48em){section{padding-bottom:4em}}.container{max-width:48rem;margin:0 auto;padding-inline:1.5em}@media (width<=48em){.container{padding-inline:1.25em}}.btn{font-family:var(--primary-font);cursor:pointer;border:0;outline:#0000;justify-content:center;align-items:center;display:flex;position:relative}.btn-primary{color:#fff;background-color:var(--primary-color);stroke:red;&:hover{background-color:var(--primary-color-hover)}}.btn-outline{color:var(--primary-color);border:1px solid var(--gray-3);background-color:#fff;border-radius:.5em;transition:all .1s ease-in-out;&:hover{background-color:var(--primary-color);color:#fff;border-color:#0000}}.btn-sm{border-radius:.25em;gap:.25em;min-height:2rem;padding:0 1em;font-size:.875rem;& .icon{font-size:1rem}}.btn-lg{border-radius:.25em;gap:.5em;min-height:2.5rem;padding:0 1em;font-size:1rem;font-weight:500;& .icon{font-size:1.5rem}}.project-cards-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:auto;gap:2.75em 1.5em;display:grid}@media (width<=30em){.project-cards-grid{grid-template-columns:1fr;row-gap:2em}}header{justify-content:space-between;align-items:center;padding:1em 1.5em;display:flex;& .header-title{font-family:var(--secondary-font);font-size:1.125rem;& a{color:var(--primary-color);font-weight:500;text-decoration:none}& span{color:var(--gray-5);font-size:.875rem}}& .header-nav{flex-grow:0;align-items:center;gap:1em;display:flex;& .header-nav-social{gap:.75em;display:flex}& .header-nav-social a{line-height:0}& .header-nav-social a i svg{min-width:1.5rem;min-height:1.5rem;color:var(--primary-color)}}}@media (width<=48em){header{padding:.75em 1.25em}header .header-title{font-size:1rem}header .header-title span{font-size:.75rem}header .header-nav .header-nav-social{gap:.25em}header .header-nav .header-nav-social a i svg{min-width:1.25rem;min-height:1.25rem}}@media (width<=30em){header .header-title span{display:none}header .header-nav{gap:.75em}}footer{background:linear-gradient(#007aff1a 0%,#fff 100%);& .footer-cta{padding:6.25em 0;& .footer-cta-content{text-align:center;flex-direction:column;gap:1.25em;margin-bottom:2.25em;display:flex;& .email{justify-content:center;align-items:center;gap:.75em;display:flex}& p{color:var(--gray-6)}& .email a{color:var(--primary-color);font-size:clamp(1.5rem,2.5vw + .5rem,2rem);font-weight:600;line-height:1}& .email a:hover{color:var(--secondary-color)}& .email i:hover{color:var(--gray-6);cursor:pointer}& .email .icon{color:var(--gray-4);font-size:1.125rem}}& .footer-cta-links{& .footer-social{justify-content:center;gap:.75em;display:flex}& .footer-social a i{aspect-ratio:1;border:1.5px solid var(--gray-2);border-radius:100%;justify-content:center;align-items:center;height:3rem;display:flex}& .footer-social a i svg{aspect-ratio:1;height:1.5rem;fill:var(--primary-color)}& .footer-social a i:hover svg{fill:#fff;border-color:#0000}& .footer-social a i:hover{background-color:var(--primary-color)}}}& .footer-credits{color:var(--gray-6);border-top:1px solid var(--gray-1);justify-content:space-between;align-items:center;padding-block:1.5em;font-size:.875rem;display:flex;& .footer-social{gap:1em;display:flex}& .footer-social a i{height:2.5rem}& .footer-social a i svg{aspect-ratio:1;height:1.25rem;fill:var(--primary-color)}}}@media (width<=48em){footer{justify-content:center}footer .footer-credits{text-align:center;justify-content:center;padding-block:1em}footer .footer-credits .footer-social{display:none}}.project-card[data-astro-cid-y2vllrex]{position:relative;& img{object-fit:cover;border-radius:.5em;width:100%;min-height:17rem;margin-bottom:1.5em}& h4{margin-bottom:.25em;font-size:1.25rem;font-weight:500;line-height:1.45}& p{color:var(--gray-6);font-size:1rem;line-height:1.5}& a{color:inherit}& .project-stack{flex-wrap:wrap;gap:.5em;margin-top:1em;font-family:JetBrains Mono,monospace;display:flex}& .project-stack span{color:var(--secondary-color);background-color:#007bff14;border-radius:.25em;padding:.25em .5em;font-size:.875rem}}@media (width<=48em){.project-card[data-astro-cid-y2vllrex] h4[data-astro-cid-y2vllrex]{margin-bottom:.5em;font-size:1.125rem}}
