@import"https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,600;9..144,700;9..144,800;9..144,900&family=Instrument+Sans:ital,wght@0,400;0,500;0,600;0,700;1,500&family=IBM+Plex+Mono:wght@500;600&display=swap";:root{--bg: #0a0d0b;--surface: #171c15;--ink: #f5f7f3;--ink-soft: #99a396;--line: #465243;--accent: #35a663;--accent-bright: #43c479;--accent-deep: #1b4332;--accent-ink: #06120c;--font-display: "Fraunces", Georgia, serif;--font-sans: "Instrument Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, monospace;--nav-h: 76px;--max: 880px;--radius: 16px;--radius-sm: 10px;--radius-pill: 999px}*{box-sizing:border-box}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-sans);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:var(--radius-sm)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:-100%;left:12px;z-index:50;background:var(--accent);color:var(--accent-ink);font-family:var(--font-mono);font-size:.85rem;font-weight:600;padding:12px 20px;border-radius:var(--radius-sm);transition:top .15s ease}.skip-link:focus{top:12px}p{margin:0 0 1.15em;max-width:62ch;color:var(--ink-soft)}h1,h2,h3{font-family:var(--font-display);font-weight:700;margin:0;color:var(--ink);letter-spacing:-.01em}.eyebrow{font-family:var(--font-mono);font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);display:inline-block;margin-bottom:12px}.topnav{position:sticky;top:0;z-index:20;height:var(--nav-h);display:flex;align-items:center;justify-content:space-between;padding:0 32px;background:#0a0d0be6;backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.topnav .word{font-family:var(--font-display);font-weight:800;font-size:1.2rem;color:var(--ink)}.topnav nav{display:flex;gap:8px}.topnav a.link{display:inline-flex;align-items:center;min-height:44px;padding:0 8px;white-space:nowrap;font-family:var(--font-mono);font-size:.8rem;font-weight:500;letter-spacing:.02em;color:var(--ink-soft);transition:color .15s ease}.topnav a.link:hover,.topnav a.link[aria-current=page]{color:var(--accent)}main{display:block}.wrap{max-width:var(--max);margin:0 auto;padding:0 32px}.hero{position:relative;padding:96px 32px 0;overflow:hidden}.hero-inner{position:relative;max-width:var(--max);margin:0 auto}.hero-inner:before{content:"";display:block;width:64px;height:6px;background:var(--accent);border-radius:var(--radius-pill);margin-bottom:28px}.pill{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:.78rem;font-weight:500;color:var(--accent-bright);background:var(--accent-deep);border:1px solid var(--accent);padding:7px 14px;border-radius:var(--radius-pill);margin-bottom:24px}.pill .dot{width:6px;height:6px;border-radius:50%;background:var(--accent-bright)}h1.display{font-weight:900;font-size:clamp(3.2rem,8vw,6.2rem);line-height:.98;letter-spacing:-.02em;max-width:13ch;text-transform:uppercase}.hero-lede{margin-top:26px;font-size:1.2rem;max-width:52ch;color:var(--ink-soft)}.hero-actions{display:flex;gap:14px;margin-top:32px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:.86rem;font-weight:600;padding:13px 24px;border-radius:var(--radius-pill);transition:background .15s ease,color .15s ease,border-color .15s ease,transform .15s ease}.btn.primary{background:var(--accent);color:var(--accent-ink)}.btn.primary:hover{background:var(--accent-bright);transform:translateY(-1px)}.btn.ghost{border:1px solid var(--line);color:var(--ink)}.btn.ghost:hover{border-color:var(--accent);color:var(--accent)}.ledger{margin:48px 0 8px}.ledger-row{display:grid;grid-template-columns:72px 1fr;gap:16px;align-items:baseline;padding:16px 0;border-top:1px solid var(--line)}.ledger-row:last-child{border-bottom:1px solid var(--line)}.ledger-row .year{font-family:var(--font-mono);font-size:.8rem;font-weight:600;color:var(--ink-soft)}.ledger-row.current .year{color:var(--accent-bright)}.ledger-row .org{font-family:var(--font-display);font-size:1.05rem;font-weight:700;color:var(--ink)}.ledger-row .role{font-family:var(--font-sans);font-size:.92rem;color:var(--ink-soft)}section.block{padding:64px 0;border-top:1px solid var(--line)}section.block:first-of-type{border-top:none}.section-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:28px;gap:16px;flex-wrap:wrap}.section-head h2{font-size:1.9rem;text-transform:uppercase}.section-head .see-all{font-family:var(--font-mono);font-size:.82rem;font-weight:600;color:var(--accent);white-space:nowrap}.work-list{display:flex;flex-direction:column;gap:12px}.work-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:20px;padding:24px 26px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);transition:border-color .15s ease,transform .15s ease}.work-list a.work-row:hover{border-color:var(--accent);transform:translateY(-2px)}.work-row .status{font-family:var(--font-mono);font-size:.72rem;font-weight:600;color:var(--accent-ink);background:var(--accent);padding:5px 12px;border-radius:var(--radius-pill);white-space:nowrap}.work-row h3{font-size:1.3rem;font-weight:700;margin-bottom:5px}.work-row .hook{color:var(--ink-soft);font-size:.96rem;margin:0;max-width:56ch}.writing-card{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:36px}.writing-card h2{font-size:1.6rem;margin-bottom:12px;text-transform:uppercase}.writing-row{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:18px 0;border-top:1px solid var(--line)}.writing-row:first-of-type{border-top:none}.writing-row:hover h3{color:var(--accent)}.writing-row h3{font-size:1.05rem;font-weight:700;margin-bottom:5px}.writing-row .hook{color:var(--ink-soft);font-size:.92rem;margin:0;max-width:56ch}.writing-row .status{font-family:var(--font-mono);font-size:.72rem;font-weight:600;color:var(--ink-soft);padding-top:3px}.back-link{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:.85rem;font-weight:600;color:var(--ink-soft);margin-bottom:30px}.back-link:hover{color:var(--accent)}.detail-head{margin-bottom:8px;font-size:clamp(2.1rem,4.5vw,3rem);text-transform:uppercase}.detail-meta{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0 42px}.detail-meta .chip{font-family:var(--font-mono);font-size:.78rem;font-weight:500;color:var(--ink-soft);background:var(--surface);border:1px solid var(--line);padding:6px 14px;border-radius:var(--radius-pill)}.detail-meta .chip strong{color:var(--accent);font-weight:600}article.prose h2{font-size:1.35rem;margin:2em 0 .6em;text-transform:uppercase}article.prose p{max-width:68ch}.placeholder{background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--accent);padding:12px 16px;font-family:var(--font-mono);font-size:.84rem;color:var(--accent);border-radius:var(--radius-sm);margin:1.4em 0}.resume-entry{display:grid;grid-template-columns:1fr auto;align-items:baseline;gap:4px 20px;padding:24px 26px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:12px}.resume-entry .dates{font-family:var(--font-mono);font-size:.8rem;color:var(--ink-soft);white-space:nowrap}.resume-entry h3{font-size:1.1rem;margin-bottom:4px}.resume-entry .org{font-family:var(--font-mono);font-size:.8rem;font-weight:600;color:var(--accent);margin-bottom:9px;display:block;text-transform:uppercase}footer.sitefoot{padding:44px 0 64px;font-family:var(--font-mono);font-size:.8rem;color:var(--ink-soft);display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px}@media (max-width: 640px){.topnav{height:auto;flex-direction:column;align-items:flex-start;padding:14px 20px;row-gap:4px}.topnav nav{width:100%;justify-content:space-between;gap:4px}.hero{padding:64px 20px 0}.wrap{padding:0 20px}.ledger-row{grid-template-columns:1fr;gap:2px}.resume-entry,.work-row{grid-template-columns:1fr}.work-row .status{justify-self:start}}
