@import url("https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&display=swap");:root{--bg:#f4f1ea;--ink:#171816;--muted:#686b64;--line:#d8d4ca;--accent:#d8ff45;--dark:#171816}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Manrope,system-ui,sans-serif}a{color:inherit;text-decoration:none}.shell{width:min(1180px,calc(100% - 48px));margin:auto}.nav{height:86px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font-size:26px;font-weight:800;letter-spacing:-.08em}.brand span{color:#7c8f18}.navlinks{display:flex;gap:30px;font-size:13px;color:var(--muted)}.contact-links a:hover,.navlinks a:hover{text-decoration:underline}.hero{padding:110px 0 65px}.eyebrow,.role span,.section-label,.stats span,.tag{font:500 11px DM Mono,monospace;letter-spacing:.12em;text-transform:uppercase}.eyebrow{color:var(--muted);margin-bottom:24px}.hero h1{font-size:clamp(56px,8vw,108px);line-height:.94;letter-spacing:-.075em;margin:0;max-width:1000px}.contact h2 em,.hero em{font-family:Georgia,serif;font-weight:400}.hero-copy{max-width:660px;font-size:20px;line-height:1.65;color:var(--muted);margin:35px 0}.actions{display:flex;gap:12px;flex-wrap:wrap}.button{display:inline-block;border:1px solid var(--ink);padding:14px 20px;font-size:13px;font-weight:700}.button.primary{background:var(--ink);color:#fff}.stats{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);margin-top:90px;padding-top:24px;grid-gap:20px;gap:20px}.stats strong{display:block;font-size:28px;letter-spacing:-.05em}.stats span{display:block;color:var(--muted);margin-top:5px}.section{padding:125px 0}.section-label{color:var(--muted);margin-bottom:50px}.split{display:grid;grid-template-columns:1fr 1.2fr;grid-gap:80px;gap:80px}.contact h2,.section h2{font-size:clamp(42px,5vw,70px);line-height:.98;letter-spacing:-.065em;margin:0}.prose{font-size:18px;line-height:1.8;color:#555851}.prose p{margin-top:0;margin-bottom:26px}.projects{border-top:1px solid var(--line)}.project{display:grid;grid-template-columns:120px 1fr;grid-gap:25px;gap:25px;padding:48px 0;border-bottom:1px solid var(--line)}.project-number{font:500 12px DM Mono,monospace;color:var(--muted)}.project h3{font-size:34px;letter-spacing:-.045em;margin:10px 0 14px}.project p{max-width:780px;color:var(--muted);line-height:1.7;margin:0 0 18px}.tag{color:#73766d}.stack{font:400 12px DM Mono,monospace;color:#7a7d74;margin:18px 0}.project ul{display:flex;flex-wrap:wrap;gap:9px 28px;padding:0;margin:0;list-style:none}.project li{font-size:13px}.project li:before{content:"↳";margin-right:8px;color:#7d8c2a}.dark{background:var(--dark);color:#fff}.dark .section-label{color:#8f918a}.skills{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid #3b3d39}.skill{padding:28px 20px 35px 0;border-bottom:1px solid #3b3d39}.skill h3{font-size:17px;margin:0 0 10px}.skill p{color:#a8aaa2;line-height:1.7;margin:0;font-size:14px}.timeline{padding-bottom:120px}.role{display:grid;grid-template-columns:230px 1fr;border-top:1px solid var(--line);padding:35px 0}.role span{color:var(--muted)}.role h3{margin:0 0 7px;font-size:25px}.role p{margin:5px 0;color:var(--muted);font-size:14px;line-height:1.6}.contact{background:var(--accent);padding:110px 0 90px}.contact .section-label{color:#596022}.contact h2{font-size:clamp(50px,7vw,92px);margin-bottom:55px}.email{font-size:clamp(22px,3vw,36px);font-weight:700;letter-spacing:-.04em;border-bottom:2px solid var(--ink)}.contact-links{gap:10px;margin-top:30px;font:500 12px DM Mono,monospace}.contact-links,.footer{display:flex;text-transform:uppercase}.footer{padding:25px 0;justify-content:space-between;font:400 10px DM Mono,monospace;color:var(--muted)}@media(max-width:760px){.shell{width:min(100% - 32px,1180px)}.navlinks{display:none}.hero{padding-top:75px}.hero h1{font-size:55px}.hero-copy{font-size:17px}.stats{grid-template-columns:repeat(2,1fr);margin-top:60px}.split{grid-template-columns:1fr;gap:40px}.section{padding:85px 0}.project{grid-template-columns:45px 1fr}.project h3{font-size:27px}.role,.skills{grid-template-columns:1fr}.role{gap:15px}.footer{flex-direction:column;gap:8px}}