@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600&family=Special+Elite&display=swap";:root{font-family:IBM Plex Mono,monospace;color:#c5c7c5;background:#111212;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:#111212}body:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.16;background:repeating-linear-gradient(to bottom,transparent 0,transparent 3px,#000 4px)}a{color:inherit}.site-shell{min-height:100vh;display:flex;flex-direction:column;overflow:hidden}.site-header,.site-footer,.section-wrap{width:min(1120px,calc(100% - 48px));margin:0 auto}.site-header{height:84px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #303332}.wordmark{font-family:Special Elite,monospace;color:#eceeeb;text-decoration:none;letter-spacing:-.04em}.prompt,.eyebrow,h1 span{color:#a8b0aa}nav{display:flex;gap:24px;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}nav a{color:#808681;text-decoration:none;padding:7px 0}nav a:hover,nav a.active{color:#eceeeb}main{flex:1}.section-wrap{padding:90px 0}.hero{min-height:545px;display:flex;flex-direction:column;justify-content:center;border-bottom:1px solid #303332}.eyebrow{margin:0 0 18px;font-size:.69rem;letter-spacing:.13em;font-weight:600}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:#e4e6e2;font-weight:500}h1{max-width:820px;margin-bottom:26px;font-family:Special Elite,monospace;font-size:clamp(2.5rem,6vw,5.5rem);line-height:1.08;letter-spacing:-.055em}.hero h1,.projects-page>h1{font-family:IBM Plex Mono,monospace;font-size:clamp(2.3rem,5vw,4.6rem);font-weight:500;line-height:1.16;letter-spacing:-.075em}h2{font-size:clamp(1.7rem,3vw,2.35rem);letter-spacing:-.06em}h3{font-size:1rem}.hero-copy,.body-copy,.project-summary{max-width:650px;color:#a9aeaa;font-size:1rem;line-height:1.8}.hero-actions{display:flex;gap:25px;align-items:center;margin-top:14px}.button-link{display:inline-flex;align-items:center;gap:12px;width:-moz-fit-content;width:fit-content;padding:12px 16px;color:#e1e4df;background:#282b29;border:1px solid #464a46;text-decoration:none;font-size:.78rem;transition:background .2s,border-color .2s}.button-link:hover{background:#353936;border-color:#6a706b}.text-link,.back-link,.project-links a{color:#acb3ad;font-size:.78rem;text-underline-offset:4px}.split-section{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;border-bottom:1px solid #303332}.split-section h2{margin-bottom:0}.skills-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:38px}.skill-group,.project-card{background:#191b1a;border:1px solid #303332}.skill-group{padding:20px}.skill-group h3{margin-bottom:16px;font-size:.83rem}.skill-group ul{padding:0;margin:0;list-style:none;color:#929892;font-size:.78rem;line-height:2}.skill-group li:before{content:"\203a  ";color:#6f7770}.section-heading{display:flex;justify-content:space-between;align-items:flex-end}.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:38px}.project-card{display:flex;min-height:280px;padding:25px;flex-direction:column}.project-card h3{margin-bottom:13px;font-size:1.35rem}.project-card>p:not(.eyebrow){color:#a0a59f;font-size:.84rem;line-height:1.7}.project-card .button-link{margin-top:auto}.tech-list{display:flex;flex-wrap:wrap;gap:7px;margin:18px 0 22px}.tech-badge{display:inline-flex;align-items:center;gap:6px;color:#9fa69f;font-size:.65rem;white-space:nowrap}.tech-badge b{display:inline-grid;min-width:20px;height:20px;padding:0 3px;place-items:center;color:#d5d9d4;background:#303431;border:1px solid #555a55;font-size:.55rem}.contact-section{border-top:1px solid #303332}.contact-section .button-link{margin-top:7px}.projects-page{padding-top:105px}.projects-page>.body-copy{margin-bottom:45px}.projects-page .project-grid{margin-top:0}.experience-section{border-top:1px solid #303332}.experience-entry{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;margin-top:38px;padding:28px 0;border-top:1px solid #303332;border-bottom:1px solid #303332}.experience-entry h3{margin-bottom:0;font-size:1rem}.experience-date,.experience-role{margin:0;color:#a9aeaa;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase}.experience-role{margin-bottom:13px;color:#c5c9c5}.experience-entry .body-copy{margin:0;font-size:.85rem}.project-detail{padding-top:55px}.back-link{display:inline-block;margin-bottom:55px}.project-intro{display:grid;grid-template-columns:1fr 260px;gap:80px;padding-bottom:55px;border-bottom:1px solid #303332}.project-intro h1{font-size:clamp(2.5rem,5vw,4.7rem)}.project-intro aside{padding-top:54px}.project-intro aside h2{margin:0 0 14px;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em}.project-intro .tech-list{margin-top:0}.project-links{display:grid;gap:10px}.markdown-content{max-width:730px;padding-top:55px;color:#acb1ac;line-height:1.85}.markdown-content h1{font-family:IBM Plex Mono,monospace;font-size:1.7rem;letter-spacing:-.04em;margin-bottom:20px}.markdown-content h2{margin:42px 0 14px;font-size:1.25rem}.markdown-content p{margin-bottom:20px}.markdown-content ul{padding-left:20px}.markdown-content li{margin-bottom:8px}.empty-state{min-height:55vh}.site-footer{display:flex;justify-content:space-between;align-items:center;padding:28px 0;border-top:1px solid #303332;color:#777d78;font-size:.68rem}.site-footer p{margin:0}.social-links{display:flex;gap:17px}.social-links a{color:#9da39d}@media (max-width: 700px){.site-header,.site-footer,.section-wrap{width:min(100% - 32px,1120px)}.site-header{height:70px}.section-wrap{padding:65px 0}.hero{min-height:500px}.split-section,.project-intro,.experience-entry{grid-template-columns:1fr;gap:28px}.skills-grid,.project-grid{grid-template-columns:1fr}.section-heading{display:block}.section-heading .text-link{display:inline-block;margin-top:4px}.project-intro aside{padding-top:0}.site-footer{align-items:flex-start;gap:15px;flex-direction:column}.hero-actions{gap:18px}.project-detail{padding-top:40px}}
