:root{color-scheme:dark;--bg:#212529;--surface:#292f35;--text:#ced4da;--muted:#aeb8c1;--accent:#74c0fc;--heading:#f1f3f5;--border:#495057}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font:18px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:var(--accent);text-underline-offset:.22em}a:hover{text-decoration-thickness:2px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:5px}::selection{background:#74c0fc;color:#15212c}.shell{max-width:940px;margin:auto;padding:0 28px}.site-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:30px 0;border-bottom:1px solid var(--border)}.brand{font-size:1.18rem;font-weight:750;letter-spacing:-.035em;color:var(--heading);text-decoration:none}.nav{display:flex;align-items:center;gap:26px}.nav a{color:var(--muted);font-size:.9rem;text-decoration:none}.nav a:hover,.nav a[aria-current=page]{color:var(--accent)}.menu{display:none}.hero{padding:94px 0 76px;max-width:760px}.hero h1{font-size:clamp(2.7rem,7vw,5.25rem);letter-spacing:-.04em;line-height:1.08;margin:0 0 26px;color:var(--heading);font-weight:750}.hero p{max-width:60ch;font-size:1.1rem;color:var(--muted);margin:0 0 30px}.actions{display:flex;flex-wrap:wrap;gap:14px}.action{display:inline-flex;align-items:center;justify-content:center;padding:10px 18px;border:1px solid var(--border);border-radius:8px;color:var(--heading);text-decoration:none;font-size:.9rem;font-weight:600}.action.primary{background:var(--accent);color:#14202b;border-color:var(--accent)}.action:hover{border-color:var(--accent)}section{padding:24px 0 62px}h2{font-size:1.65rem;letter-spacing:-.025em;color:var(--heading);line-height:1.25;margin:0 0 20px}h3{margin:0 0 6px;font-size:1.16rem;color:var(--heading)}.section-intro{max-width:66ch;color:var(--muted)}.project{display:grid;grid-template-columns:1fr auto;gap:20px;padding:26px 0;border-top:1px solid var(--border)}.project p{margin:8px 0 12px;max-width:66ch;color:var(--muted)}.project a{text-decoration:none;font-weight:650}.tags{display:flex;flex-wrap:wrap;gap:8px}.tag{font-size:.76rem;padding:3px 9px;border:1px solid var(--border);border-radius:5px;color:var(--muted)}.prose{max-width:70ch}.prose p{margin:0 0 18px}.empty{border-top:1px solid var(--border);padding:30px 0;color:var(--muted)}.footer{border-top:1px solid var(--border);padding:28px 0 42px;color:var(--muted);font-size:.8rem}.footer a{color:inherit}@media(max-width:600px){body{font-size:16px}.shell{padding:0 20px}.site-header{padding:20px 0;align-items:flex-start}.menu{display:block;position:relative}.menu summary{cursor:pointer;list-style:none;padding:5px 0;color:var(--accent);font-size:.92rem}.menu summary::-webkit-details-marker{display:none}.nav.desktop{display:none}.menu .nav{display:flex;flex-direction:column;align-items:flex-end;gap:10px;padding:16px 0}.hero{padding:66px 0 50px}.hero h1{font-size:clamp(2.55rem,11vw,4rem)}.project{grid-template-columns:1fr;gap:6px}section{padding-bottom:42px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}