.page{max-width:var(--container-max);margin:0 auto}.grid{grid-template-columns:repeat(6,minmax(0,1fr));grid-auto-rows:90px;grid-auto-flow:dense;gap:var(--space-grid-gap);padding:var(--space-xl) var(--gutter);display:grid}.tile{background:var(--color-paper-2);border:1px solid var(--color-rule);border-radius:var(--radius-card);padding:var(--space-lg);color:inherit;transition:border-color var(--dur-short) var(--ease-out), transform var(--dur-short) var(--ease-out);flex-direction:column;text-decoration:none;display:flex;overflow:hidden}a.tile:hover{border-color:var(--color-rule-heavy);transform:translateY(-1px)}.eyebrow{font:600 var(--text-xs) var(--font-mono);color:var(--color-accent);letter-spacing:.04em;text-transform:uppercase;flex-shrink:0}.eyebrow.dot{text-transform:none}.about{z-index:1;transition:border-color var(--dur-short) var(--ease-out), box-shadow var(--dur-long) var(--ease-out);grid-area:1/1/4/4;justify-content:space-between;position:relative;overflow:visible}.about:hover{z-index:20;border-color:var(--color-rule-heavy);box-shadow:0 24px 48px -16px #00000059}.about:hover .about-body,.about:hover .about-more{opacity:0;pointer-events:none}.about-body{font:500 var(--text-lg) / 1.4 var(--font-display);color:var(--color-ink);margin:var(--space-sm) 0;transition:opacity var(--dur-short) var(--ease-out);flex:1;overflow:hidden}.about-more{align-items:center;gap:var(--space-2xs);font:600 var(--text-xs) var(--font-mono);color:var(--color-accent);letter-spacing:.04em;text-transform:uppercase;transition:opacity var(--dur-short) var(--ease-out);flex-shrink:0;align-self:flex-start;display:inline-flex}.about-more-arrow{transition:transform var(--dur-short) var(--ease-out)}.about:hover .about-more-arrow{transform:translate(2px,-2px)}.about-detail{background:var(--color-paper-2);border:1px solid var(--color-rule-heavy);border-radius:var(--radius-card);height:auto;min-height:100%;padding:var(--space-lg);align-items:center;gap:var(--space-lg);opacity:0;pointer-events:none;transition:opacity var(--dur-long) var(--ease-out), transform var(--dur-long) var(--ease-out);grid-template-columns:1.4fr 1fr;display:grid;position:absolute;top:0;left:0;right:0;transform:scale(.98)}.about:hover .about-detail{opacity:1;pointer-events:auto;transform:scale(1)}.about-detail-info{gap:var(--space-2xs);flex-direction:column;min-width:0;display:flex}.about-name{font:600 var(--text-xl) var(--font-display);color:var(--color-ink)}.about-role{font:500 var(--text-sm) var(--font-mono);color:var(--color-accent)}.about-detail-body{font:400 var(--text-sm) / 1.5 var(--font-body);color:var(--color-ink-2);margin:var(--space-xs) 0 0}.about-detail-photo{justify-content:center;align-items:center;display:flex}.about-photo{aspect-ratio:1;border-radius:var(--radius-card);border:1px solid var(--color-accent-border);object-fit:cover;width:100%;max-width:140px;height:auto}.contact{background:var(--color-accent-soft);border-color:var(--color-accent-border);justify-content:center;gap:var(--space-sm);grid-area:1/4/3/7}.latest{grid-area:3/4/5/7;justify-content:space-between}.latest.empty{border-style:dashed}.latest-title{font:600 var(--text-lg) / 1.35 var(--font-display);color:var(--color-ink);margin:var(--space-sm) 0;-webkit-line-clamp:2;line-clamp:2;text-overflow:ellipsis;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.latest-title.empty-title{color:var(--color-muted)}.latest-summary{font:400 var(--text-sm) / 1.5 var(--font-body);color:var(--color-ink-2);opacity:0;max-height:0;transition:opacity var(--dur-long) var(--ease-out), max-height var(--dur-long) var(--ease-out), margin var(--dur-long) var(--ease-out);margin:0;overflow:hidden}.latest:hover .latest-summary{opacity:1;max-height:4.5em;margin:var(--space-xs) 0}.latest-meta{font:400 var(--text-xs) var(--font-mono);color:var(--color-muted);transition:opacity var(--dur-short) var(--ease-out);justify-content:space-between;display:flex}.latest:hover .latest-meta{opacity:0}.latest-meta .arrow{color:var(--color-accent)}.stack{justify-content:center;gap:var(--space-xs);z-index:1;transition:border-color var(--dur-short) var(--ease-out), box-shadow var(--dur-long) var(--ease-out);grid-area:4/1/5/4;position:relative;overflow:visible}.stack:hover{z-index:20;border-color:var(--color-rule-heavy);box-shadow:0 24px 48px -16px #00000059}.stack:hover .chips-wrap{opacity:0;pointer-events:none}.stack-categories{left:calc(var(--space-lg) * -1);right:calc(var(--space-lg) * -1);background:var(--color-paper-2);border:1px solid var(--color-rule-heavy);border-radius:var(--radius-card);padding:var(--space-lg);gap:var(--space-md);opacity:0;pointer-events:none;transition:opacity var(--dur-long) var(--ease-out), transform var(--dur-long) var(--ease-out);flex-direction:column;display:flex;position:absolute;top:50%;transform:translateY(-50%)scaleY(.4)}.stack:hover .stack-categories{opacity:1;pointer-events:auto;transform:translateY(-50%)scaleY(1)}.stack-category{gap:var(--space-2xs);flex-direction:column;display:flex}.stack-category-label{font:600 var(--text-xs) var(--font-mono);color:var(--color-muted);letter-spacing:.04em;text-transform:uppercase}.stack-category .chips{flex-wrap:wrap;padding-right:0;overflow:visible}.subscribe-tile{grid-area:5/1/6/5;padding:0}.subscribe-tile :global(.band){width:100%}.socials{justify-content:center;gap:var(--space-2xs);grid-area:5/5/6/7}.social-links{align-items:center;gap:var(--space-md);display:flex}.social-links a{color:var(--color-ink-2);width:2.25rem;height:2.25rem;transition:color var(--dur-short) var(--ease-out);justify-content:center;align-items:center;margin:-.5rem;display:flex}.social-links a:hover{color:var(--color-accent)}.chips-wrap{transition:opacity var(--dur-short) var(--ease-out);flex-shrink:0;position:relative;overflow:hidden}.chips{gap:var(--space-2xs);flex-wrap:nowrap;padding-right:1.5rem;display:flex;overflow:hidden}.chips-more{width:1.5rem;color:var(--color-accent);font:600 var(--text-sm) var(--font-mono);background:linear-gradient(to right, transparent, var(--color-paper-2) 55%);justify-content:center;align-items:center;display:flex;position:absolute;top:0;bottom:0;right:0}.chip{font:400 var(--text-xs) var(--font-body);color:var(--color-ink-2);background:var(--color-rule);padding:var(--space-3xs) var(--space-sm);white-space:nowrap;border-radius:20px;flex-shrink:0}.recent{padding:var(--space-lg) var(--gutter) var(--space-xl)}.recent-head{justify-content:space-between;align-items:baseline;gap:var(--space-md);margin:0 0 var(--space-md);flex-wrap:wrap;display:flex}.recent-head h2{font:600 var(--text-lg) var(--font-display);color:var(--color-ink);margin:0}.archive-link{font:500 var(--text-sm) var(--font-mono);color:var(--color-accent);transition:border-color var(--dur-short) var(--ease-out);border-bottom:1px solid #0000;text-decoration:none}.archive-link:hover{border-color:var(--color-accent)}.post-grid{gap:var(--space-grid-gap);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.empty-tile{border:1px dashed var(--color-rule-heavy);border-radius:var(--radius-card);min-height:140px;font:400 var(--text-sm) var(--font-mono);color:var(--color-muted);text-align:center;padding:var(--space-lg);justify-content:center;align-items:center;display:flex}.closing{justify-content:center;align-items:center;gap:var(--space-md);text-align:center;margin:var(--space-lg) var(--gutter) 0;padding:var(--space-2xl) var(--gutter);background:var(--color-accent-soft);border:1px solid var(--color-accent-border);border-radius:var(--radius-card);transition:box-shadow var(--dur-long) var(--ease-out), border-color var(--dur-short) var(--ease-out), transform var(--dur-short) var(--ease-out);flex-direction:column;text-decoration:none;display:flex;box-shadow:0 24px 48px -16px #00000059}.closing:hover{border-color:var(--color-accent);transform:translateY(-2px);box-shadow:0 32px 64px -16px #0006}.closing-eyebrow{font:600 var(--text-xs) var(--font-mono);color:var(--color-accent);letter-spacing:.04em;text-transform:uppercase}.closing-headline{font:600 var(--text-2xl) / 1.3 var(--font-display);color:var(--color-ink);max-width:640px}.closing-cta{font:600 var(--text-sm) var(--font-mono);background:var(--color-accent);color:var(--color-accent-ink);padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-input);transition:box-shadow var(--dur-short) var(--ease-out)}.closing:hover .closing-cta{box-shadow:0 0 0 4px oklch(55% .19 275/.2)}@media (width<=768px){.grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:auto}.tile{grid-area:auto/span 2!important}.post-grid{grid-template-columns:1fr}.about-detail{text-align:left;grid-template-columns:1fr}.about-detail-photo{justify-content:flex-start}.about-photo{max-width:96px}}@media (width<=640px){.closing-headline{font-size:var(--text-xl)}}.post-card{color:inherit;background:var(--color-paper-2);border:1px solid var(--color-rule);border-radius:var(--radius-card);padding:var(--space-lg);justify-content:space-between;gap:var(--space-md);min-height:180px;transition:border-color var(--dur-short) var(--ease-out), transform var(--dur-short) var(--ease-out);flex-direction:column;text-decoration:none;display:flex}.post-card:hover{border-color:var(--color-rule-heavy);transform:translateY(-1px)}.post-card.featured{background:var(--color-accent-soft);border-color:var(--color-accent-border);grid-column:span 2;min-height:220px}.post-card__track{font:600 var(--text-xs) var(--font-mono);letter-spacing:.04em;text-transform:uppercase}.post-card__title{font:600 var(--text-md) / 1.35 var(--font-display);color:var(--color-ink)}.post-card.featured .post-card__title{font-size:var(--text-lg)}.post-card__meta{font:500 var(--text-xs) var(--font-mono);color:var(--color-muted);font-variant-numeric:tabular-nums}@media (width<=640px){.post-card.featured{grid-column:span 1}}svg{width:1.1em;height:1.1em;display:block}.contact.spacer{visibility:hidden}.tile-fixed{z-index:var(--z-modal);border-radius:var(--radius-card);background:var(--color-paper-2);transition:top var(--dur-long) var(--ease-out), left var(--dur-long) var(--ease-out), width var(--dur-long) var(--ease-out), height var(--dur-long) var(--ease-out), border-radius var(--dur-long) var(--ease-out), background var(--dur-long) var(--ease-out);position:fixed;box-shadow:0 24px 48px -16px #00000059}.contact-head{align-items:center;gap:var(--space-sm);display:flex}.contact-body{font:600 var(--text-lg) var(--font-display);color:var(--color-ink);-webkit-line-clamp:2;line-clamp:2;text-overflow:ellipsis;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.agent-head{flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.agent-close{font:600 1.25rem var(--font-mono);color:var(--color-ink-2);cursor:pointer;padding:var(--space-2xs) var(--space-xs);background:0 0;border:none;line-height:1}.agent-close:hover{color:var(--color-accent)}.agent-messages{gap:var(--space-sm);padding:var(--space-md) 0;flex-direction:column;flex:1;width:100%;max-width:640px;margin:0 auto;display:flex;overflow-y:auto}.agent-message{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-input);background:var(--color-paper);color:var(--color-ink);font:400 var(--text-sm) var(--font-body);align-self:flex-start;max-width:75%;margin:0}.agent-message.from-user{background:var(--color-accent);color:var(--color-accent-ink);align-self:flex-end}.agent-thinking{opacity:.6}.agent-form{gap:var(--space-xs);flex-shrink:0;display:flex}.agent-form input{min-width:0;font:400 var(--text-sm) var(--font-body);padding:var(--space-sm) var(--space-md);border:1px solid var(--color-rule-heavy);border-radius:var(--radius-input);background:var(--color-input);color:var(--color-ink);flex:1}.agent-form input::placeholder{color:var(--color-muted)}.agent-form input:focus-visible{outline:2px solid var(--color-focus);outline-offset:-2px}.agent-form input:disabled{cursor:not-allowed;opacity:.7}.agent-form button{font:600 var(--text-xs) var(--font-mono);padding:var(--space-sm) var(--space-md);background:var(--color-accent);color:var(--color-accent-ink);border-radius:var(--radius-input);letter-spacing:.03em;white-space:nowrap;cursor:pointer;transition:background-color var(--dur-short) var(--ease-out), box-shadow var(--dur-short) var(--ease-out);border:none}.agent-form button:hover:not(:disabled){background:var(--color-accent-2);color:var(--color-accent-ink);box-shadow:0 0 0 4px oklch(55% .19 275/.2)}.agent-form button:disabled{cursor:not-allowed;opacity:.6}
