*,*:before,*:after{box-sizing:border-box}*{margin:0}body{line-height:1.5;-webkit-font-smoothing:antialiased}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}p{text-wrap:pretty}h1,h2,h3,h4,h5,h6{text-wrap:balance}:root{--text-primary: #e8eef5;--text-secondary: #b8c5d6;--text-accent: #7dd3fc;--text-muted: #64748b;--bg-primary: #0f172a;--bg-accent: #1e293b;--accent-warm: #06b6d4}html{font-size:16px;scroll-padding-top:3rem}body{display:flex;justify-content:center;background:var(--bg-primary);color:var(--text-primary);font-family:Geist,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;padding-inline:40px;line-height:1.6}.app{max-width:1000px;min-width:0}header{display:none;padding-block:.5rem;padding-inline:2rem;background-color:var(--bg-primary);position:sticky;top:0;z-index:1000;border-bottom:1px solid rgba(125,211,252,.2)}.shown{display:block;animation:fadein .6s ease-in-out}header li{padding-block:.4rem}a{text-decoration:none;-webkit-user-select:none;user-select:none}button{background:none;padding:0;border:none}a,button{cursor:pointer;color:var(--text-primary);transition:color .1s ease-in-out}a:hover,button:hover{color:var(--text-accent);text-decoration:underline}section{display:grid;align-content:start;padding-block:4rem}section.hero{margin-top:6rem}footer{display:grid;align-content:center;padding-block:4rem}h1,h2,h3,h4,h5,h6{font-family:"Noto Serif",system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;font-weight:500}h1{color:var(--text-primary);font-size:2.5rem;margin-bottom:.5rem;line-height:1.2}h2{color:var(--text-primary);margin-bottom:1.5rem;font-size:1.75rem;position:relative;display:inline-block}h2:after{content:"";position:absolute;bottom:-8px;left:0;width:40px;height:3px;background:var(--accent-warm)}h3{color:var(--text-primary);font-size:1.2rem}.role{color:var(--text-accent);font-size:1.2rem;font-weight:500;margin-bottom:.5rem}.description{color:var(--text-secondary);margin-top:1.5rem;font-size:1.1rem;line-height:1.7;max-width:600px}.links{display:flex;gap:1.5rem;flex-wrap:wrap;margin-top:2rem;padding:0;list-style-type:none}.links a{font-weight:500}.listitem{padding:1rem 0}.listitem:not(:first-child){margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid rgba(92,61,46,.1)}.listitem__heading{margin-bottom:.8rem;font-size:1.1rem;color:var(--text-primary)}.listitem li:not(:first-child){margin-top:.8rem}.listitem__description{color:var(--text-secondary);font-size:.95rem}.duration{font-weight:400;text-transform:lowercase}.experience a{display:inline-block;margin:1rem 1rem 0 0}.projects__container{display:grid;gap:2rem}.project{margin-bottom:1.5rem}.project__links{display:flex;column-gap:1rem;font-size:1.4rem}summary{margin-block:1.5rem;font-size:1.3rem;font-weight:600;transition:color .2s ease;cursor:pointer;color:var(--text-primary);list-style:none}summary:hover{color:var(--accent-warm)}button[aria-label="go to top"]{display:none;position:fixed;bottom:2rem;right:2rem;font-size:2rem}button[aria-label="go to top"].shown{display:inline-block}.footer__description{margin-bottom:2rem}.footer__link{font-size:1.2rem;margin-right:.8rem;text-decoration:none}@keyframes fadein{0%{opacity:0}to{opacity:1}}@media (max-width: 1024px){html{font-size:14px}}
