:root{--bg: #faf8f3;--ink: #1f1a14;--muted: #7a7268;--rule: rgba(31, 26, 20, .08);--accent: oklch(.5 .07 155);--logo: var(--accent);--font-slab: "Zilla Slab", Georgia, serif;--font-sans: "Inter", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;color-scheme:light dark}@media (prefers-color-scheme: dark){:root{--bg: #15110d;--ink: #ece8df;--muted: #8a8479;--rule: rgba(236, 232, 223, .1);--accent: oklch(.7 .08 150)}}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body{min-height:100vh}a{color:inherit}.logo{display:inline-flex;align-items:center;justify-content:center;line-height:0}.logo svg{width:100%;height:100%;display:block}.logo svg,.logo svg *{fill:var(--logo)}.splash{display:grid;place-items:center;min-height:100vh;padding:64px;text-align:center;position:relative}.splash .stack{display:flex;flex-direction:column;align-items:center;gap:28px;max-width:560px}.splash .logo{width:96px;height:96px}.splash .wordmark{font-family:var(--font-slab);font-weight:600;font-size:64px;line-height:1;letter-spacing:-.02em;margin:0;color:var(--ink)}.splash .tagline{font-size:18px;line-height:1.55;color:var(--muted);margin:0;max-width:46ch}.splash .tagline strong{color:var(--ink);font-weight:500}.splash .links{display:flex;gap:24px;font-family:var(--font-mono);font-size:13px;letter-spacing:.02em;flex-wrap:wrap;justify-content:center}.splash .links a{text-decoration:none;color:var(--ink);border-bottom:1px solid var(--rule);padding-bottom:2px;transition:border-color .15s}.splash .links a:hover{border-color:var(--ink)}.splash .status{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:6px 12px;border:1px solid var(--rule);border-radius:999px}.splash .status .dot{width:7px;height:7px;border-radius:50%;background:var(--accent);display:inline-block}.splash .corner,.splash .corner-r{position:absolute;bottom:24px;font-family:var(--font-mono);font-size:11px;color:var(--muted);letter-spacing:.06em;text-transform:uppercase}.splash .corner{left:24px}.splash .corner-r{right:24px}@media (max-width: 640px){.splash{padding:32px 24px 80px}.splash .wordmark{font-size:48px}.splash .corner,.splash .corner-r{font-size:10px;bottom:16px}.splash .corner{left:16px}.splash .corner-r{right:16px}}.proj{min-height:100vh;padding:48px 64px 64px;display:flex;flex-direction:column;gap:32px;max-width:1280px;margin:0 auto}.proj .head{display:flex;align-items:center;justify-content:space-between;gap:24px}.proj .brand{display:flex;align-items:center;gap:14px}.proj .brand .logo{width:32px;height:32px}.proj .brand .name{font-family:var(--font-slab);font-weight:600;font-size:20px;letter-spacing:-.01em}.proj .brand .name a{text-decoration:none;color:inherit}.proj nav{display:flex;gap:24px;font-family:var(--font-mono);font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.proj nav a{text-decoration:none;color:inherit;transition:color .15s}.proj nav a:hover{color:var(--ink)}.proj .title-row{display:flex;align-items:baseline;justify-content:space-between;gap:32px;border-bottom:1px solid var(--rule);padding-bottom:20px}.proj h1{font-family:var(--font-slab);font-weight:600;font-size:56px;line-height:1;letter-spacing:-.02em;margin:0}.proj .title-row .sub{font-family:var(--font-mono);font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;text-align:right;max-width:26ch;line-height:1.6}.proj-list{list-style:none;padding:0;margin:0}.proj-list li>a{text-decoration:none;color:inherit;display:block}.proj-row{display:grid;grid-template-columns:70px 1.6fr 1fr 90px 70px 32px;align-items:baseline;gap:24px;padding:22px 0;border-bottom:1px solid var(--rule);transition:padding-left .2s;cursor:pointer}.proj-row:hover{padding-left:12px}.proj-row:hover .arrow{transform:translate(4px);color:var(--accent)}.proj-row .yr{font-family:var(--font-mono);font-size:12px;color:var(--muted)}.proj-row .nm{font-family:var(--font-slab);font-size:24px;font-weight:500;letter-spacing:-.01em}.proj-row .nm .domain{font-family:var(--font-mono);font-size:11px;color:var(--muted);margin-left:10px;text-transform:lowercase;letter-spacing:.02em;font-weight:400}.proj-row .blurb{font-size:14px;line-height:1.5;color:var(--muted)}.proj-row .role,.proj-row .status{font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.proj-row .status.active{color:var(--accent)}.proj-row .status.archived{opacity:.6}.proj-row .arrow{font-family:var(--font-mono);font-size:18px;color:var(--muted);justify-self:end;transition:transform .2s,color .2s}.proj .foot{display:flex;justify-content:space-between;align-items:center;font-family:var(--font-mono);font-size:11px;color:var(--muted);letter-spacing:.06em;text-transform:uppercase;padding-top:12px;border-top:1px solid var(--rule);margin-top:auto}.proj .foot a{color:inherit;text-decoration:none;border-bottom:1px solid var(--rule);padding-bottom:1px}.proj .foot a:hover{color:var(--ink);border-color:var(--ink)}@media (max-width: 900px){.proj{padding:32px 24px 48px}.proj h1{font-size:40px}.proj .title-row{flex-direction:column;align-items:flex-start;gap:12px}.proj .title-row .sub{text-align:left}.proj-row{grid-template-columns:60px 1fr 32px;grid-template-areas:"yr nm arrow" ".  blurb arrow" ".  meta arrow";row-gap:6px}.proj-row .yr{grid-area:yr}.proj-row .nm{grid-area:nm;font-size:20px}.proj-row .blurb{grid-area:blurb}.proj-row .role{display:none}.proj-row .status{grid-area:meta}.proj-row .arrow{grid-area:arrow;align-self:center}}
