@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&display=swap";:root{color:#f1f3f5;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#0c0d0e;font-family:Manrope,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;margin:0}button,a{font:inherit}a{color:inherit;text-decoration:none}.site{--bg:#0c0d0e;--surface:#131516;--text:#f1f3f5;--muted:#92999b;--line:#2a2e30;--accent:#b8f36b;--max:1160px;background:var(--bg);min-height:100vh;color:var(--text);transition:background .3s,color .3s}.site.light{--bg:#f5f5f1;--surface:#fff;--text:#151817;--muted:#68706d;--line:#dfe4dd;--accent:#548d18}.container{width:min(var(--max), calc(100% - 80px));margin:auto}.nav-wrap{border-bottom:1px solid var(--line)}.nav{justify-content:space-between;align-items:center;height:78px;display:flex}.brand{letter-spacing:-.03em;align-items:center;gap:10px;font-weight:700;display:flex}.brand-mark{place-items:center;width:34px;height:34px;display:grid;overflow:hidden}.brand-mark img{object-fit:contain;width:34px;height:34px}.nav-links{color:var(--muted);align-items:center;gap:32px;font-size:13px;display:flex}.nav-links a:hover,.text-link:hover{color:var(--accent)}.cv-button{background:var(--accent);align-items:center;gap:7px;padding:9px 12px;font-weight:700;display:inline-flex;color:var(--bg)!important}.cv-button:hover{opacity:.88;color:var(--bg)!important}.theme-button,.menu-button{color:var(--text);cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.theme-button{border-left:1px solid var(--line);padding-left:24px}.menu-button{font-size:23px;display:none}.hero{grid-template-columns:1.1fr .9fr;align-items:center;gap:10%;min-height:650px;padding-top:52px;display:grid}.eyebrow,.kicker,.project-type,.card-label,.skill-group>span{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font:11px DM Mono,monospace}.eyebrow{color:var(--accent);align-items:center;gap:10px;display:flex}.status-dot{background:var(--accent);width:7px;height:7px;box-shadow:0 0 0 5px color-mix(in srgb, var(--accent) 12%, transparent);border-radius:50%}h1,h2,h3,p{margin:0}h1{letter-spacing:-.07em;max-width:680px;margin:24px 0;font-size:clamp(42px,6vw,76px);line-height:.98}em{color:var(--accent);font-style:normal}.hero-text{max-width:510px;color:var(--muted);font-size:15px;line-height:1.75}.hero-actions{gap:12px;margin-top:34px;display:flex}.button{border:1px solid var(--line);align-items:center;gap:12px;padding:14px 18px;font-size:13px;font-weight:700;transition:transform .2s,background .2s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button.primary{background:var(--accent);color:#10140d;border-color:var(--accent)}.hero-meta{color:var(--muted);flex-wrap:wrap;gap:22px;margin-top:36px;font-size:11px;display:flex}.hero-card{background:var(--surface);border:1px solid var(--line);flex-direction:column;justify-content:flex-end;min-height:385px;padding:30px;display:flex;position:relative;overflow:hidden}.hero-card:before{content:"";background:radial-gradient(circle at 50% 38%, color-mix(in srgb, var(--accent) 18%, transparent), transparent 34%);position:absolute;inset:0}.orbit{border:1px solid color-mix(in srgb, var(--accent) 35%, transparent);border-radius:50%;position:absolute;transform:rotate(-26deg)}.orbit-one{width:320px;height:160px;top:73px;left:calc(50% - 160px)}.orbit-two{width:250px;height:120px;top:93px;left:calc(50% - 125px);transform:rotate(42deg)}.avatar{background:var(--accent);color:#15200c;width:74px;height:74px;box-shadow:0 0 0 13px color-mix(in srgb, var(--accent) 12%, transparent), 0 0 80px color-mix(in srgb, var(--accent) 30%, transparent);border-radius:50%;place-items:center;font-size:21px;font-weight:800;display:grid;position:absolute;top:118px;left:calc(50% - 37px)}.hero-card>:not(.orbit){z-index:1}.hero-card h2{letter-spacing:-.06em;margin:9px 0 50px;font-size:clamp(23px,3vw,31px);line-height:1.05}.hero-card h2 span{color:var(--muted)}.card-footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;padding-top:16px;font:11px DM Mono,monospace;display:flex}.section{padding-top:128px}.section-heading{justify-content:space-between;align-items:end;gap:40px;margin-bottom:40px;display:flex}.section-heading h2,.toolkit h2{letter-spacing:-.07em;margin-top:14px;font-size:clamp(31px,4vw,48px);line-height:1}.section-heading>p{max-width:280px;color:var(--muted);font-size:13px;line-height:1.6}.project-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.project-card{background:var(--surface);border:1px solid var(--line);flex-direction:column;min-height:290px;padding:25px;transition:border-color .2s,transform .2s;display:flex}.project-card:hover{border-color:color-mix(in srgb, var(--accent) 60%, var(--line));transform:translateY(-3px)}.project-card.featured{background:var(--accent);color:#151b0e;border-color:var(--accent);grid-column:span 2}.project-card.featured .project-type,.project-card.featured .project-number,.project-card.featured .project-top a{color:#3d5e1e}.project-card.featured .project-description{color:#43542f}.project-card.featured .tags span{border-color:#84bd46}.project-top{color:var(--accent);justify-content:space-between;display:flex}.project-number{font:12px DM Mono,monospace}.project-type{margin-top:53px}.project-card h3{letter-spacing:-.06em;margin:7px 0 12px;font-size:27px}.project-description{color:var(--muted);max-width:430px;font-size:13px;line-height:1.6}.tags{flex-wrap:wrap;gap:7px;margin-top:auto;padding-top:23px;display:flex}.tags span{border:1px solid var(--line);color:var(--muted);padding:5px 8px;font:10px DM Mono,monospace}.about{grid-template-columns:1fr 1fr;gap:15%;display:grid}.about-intro h2{letter-spacing:-.08em;margin:19px 0 27px;font-size:clamp(34px,5vw,58px);line-height:.98}.about-intro>p:not(.kicker){max-width:445px;color:var(--muted);font-size:14px;line-height:1.8}.text-link{color:var(--accent);align-items:center;gap:9px;margin-top:27px;font-size:13px;font-weight:700;display:inline-flex}.experience>.kicker{margin-bottom:18px}.experience-row{border-top:1px solid var(--line);grid-template-columns:110px 1fr;padding:18px 0;display:grid}.experience-row>span{color:var(--muted);padding-top:3px;font:10px DM Mono,monospace}.experience-row strong{font-size:14px}.experience-row p{color:var(--muted);margin-top:5px;font-size:12px}.toolkit{grid-template-columns:1fr 1fr;gap:15%;display:grid}.skills{grid-template-columns:1fr 1fr;gap:0 30px;display:grid}.skill-group{border-top:1px solid var(--line);padding:20px 0 25px}.skill-group p{color:var(--muted);margin-top:13px;font-size:13px;line-height:1.6}.contact{border-bottom:1px solid var(--line);margin-top:90px;padding-bottom:75px}.contact h2{letter-spacing:-.09em;margin:23px 0 40px;font-size:clamp(47px,8vw,95px);line-height:.9}.contact-email{border-bottom:1px solid var(--accent);color:var(--accent);align-items:center;gap:28px;padding-bottom:10px;font:500 clamp(18px,3vw,29px) DM Mono,monospace;display:inline-flex}.contact-bottom{color:var(--muted);justify-content:space-between;align-items:center;margin-top:72px;font-size:12px;display:flex}.contact-bottom a{color:var(--text);align-items:center;gap:9px;display:inline-flex}.footer{color:var(--muted);justify-content:space-between;padding:24px 0;font:10px DM Mono,monospace;display:flex}@media (width<=800px){.container{width:min(var(--max), calc(100% - 40px))}.nav{height:68px}.menu-button{display:grid}.nav-links{z-index:5;background:var(--surface);border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:20px;padding:24px 20px;display:none;position:absolute;top:68px;left:0;right:0}.nav-links.open{display:flex}.theme-button{border-left:0;padding-left:0}.hero{grid-template-columns:1fr;gap:60px;min-height:auto;padding-top:72px}.hero-card{min-height:330px}.section{padding-top:90px}.section-heading{display:block}.section-heading>p{margin-top:22px}.project-grid{grid-template-columns:1fr}.project-card.featured{grid-column:auto}.about,.toolkit{grid-template-columns:1fr;gap:60px}.contact{margin-top:40px}.contact-bottom,.footer{flex-direction:column;align-items:flex-start;gap:17px}}@media (width<=480px){.hero-actions{flex-direction:column;align-items:stretch}.button{justify-content:center}.hero-meta{flex-direction:column;gap:10px}.skills{grid-template-columns:1fr}.experience-row{grid-template-columns:92px 1fr}}
