.home-header[data-astro-cid-j7pv25f6]{margin-top:0;margin-bottom:0}.home-grid-section[data-astro-cid-j7pv25f6]{border-bottom:none;padding-bottom:0;margin-bottom:var(--space-xl)}@media(min-width:640px){.home-grid-section[data-astro-cid-j7pv25f6]{height:107px;margin-bottom:var(--space-lg)}}.section-header[data-astro-cid-j7pv25f6]{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:var(--space-md);padding-bottom:var(--space-xs);border-bottom:1px solid var(--color-border)}.section-header[data-astro-cid-j7pv25f6] h2[data-astro-cid-j7pv25f6]{font-size:var(--step--2);font-family:var(--font-mono);font-weight:500;text-transform:uppercase;letter-spacing:.1em;color:var(--grid-meta)}.view-all[data-astro-cid-j7pv25f6]{font-size:var(--step--1);color:var(--color-text-secondary);font-weight:500}.post-list[data-astro-cid-j7pv25f6]{list-style:none;margin:0 calc(var(--space-md) * -1)}.post-item[data-astro-cid-j7pv25f6],.project-item-compact[data-astro-cid-j7pv25f6],.reading-item-compact[data-astro-cid-j7pv25f6]{position:relative;isolation:isolate;border-radius:2px;border:1px solid transparent}.post-item[data-astro-cid-j7pv25f6]:before,.project-item-compact[data-astro-cid-j7pv25f6]:before,.reading-item-compact[data-astro-cid-j7pv25f6]:before{content:"";position:absolute;inset:-1px;z-index:-1;border:1px solid rgba(33,28,22,.08);border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .2s var(--ease-smooth)}.post-item[data-astro-cid-j7pv25f6]:before{background-color:var(--paper)}@media(hover:hover){.post-item[data-astro-cid-j7pv25f6]:hover:before{opacity:1}}.post-item[data-astro-cid-j7pv25f6]:has(:focus-visible):before{opacity:1}.post-link[data-astro-cid-j7pv25f6]{display:block;padding:var(--space-md);text-decoration:none}.post-link[data-astro-cid-j7pv25f6]:hover{text-decoration:none}.post-meta[data-astro-cid-j7pv25f6]{display:flex;gap:var(--space-sm);font-size:var(--step--2);color:var(--color-text-secondary);margin-bottom:var(--space-xs);text-transform:capitalize;font-family:var(--font-mono)}.post-type[data-astro-cid-j7pv25f6]:after{content:"·";margin-left:var(--space-sm)}.post-title[data-astro-cid-j7pv25f6]{display:block;font-family:var(--font-serif);font-size:var(--step-0);font-weight:500;color:var(--color-text);margin-bottom:var(--space-xs);letter-spacing:-.01em}.post-summary[data-astro-cid-j7pv25f6]{display:block;font-size:var(--step--1);color:var(--color-text-secondary);line-height:1.5}@supports (text-box: trim-both cap alphabetic){.post-list[data-astro-cid-j7pv25f6]{--rule: round(nearest, calc(var(--step--1) * 1.5), 2px)}.post-item[data-astro-cid-j7pv25f6]:before{background-image:linear-gradient(rgba(59,74,153,.06) 1px,transparent 1px);background-size:100% var(--rule);background-position:0 calc(var(--rule) / 2)}.post-link[data-astro-cid-j7pv25f6]{padding-top:calc(var(--rule) / 2);padding-bottom:calc(var(--rule) * 1.5)}.post-meta[data-astro-cid-j7pv25f6],.post-title[data-astro-cid-j7pv25f6],.post-summary[data-astro-cid-j7pv25f6]{margin-top:calc(var(--rule) - 1cap);margin-bottom:0;line-height:var(--rule)}.post-meta[data-astro-cid-j7pv25f6]>[data-astro-cid-j7pv25f6],.post-title[data-astro-cid-j7pv25f6],.post-summary[data-astro-cid-j7pv25f6]{text-box:trim-both cap alphabetic}}.empty-state[data-astro-cid-j7pv25f6]{color:var(--color-text-secondary);font-size:var(--step--1)}.empty-state[data-astro-cid-j7pv25f6] code[data-astro-cid-j7pv25f6]{background:color-mix(in srgb,var(--color-surface) 50%,var(--color-border));padding:2px 6px;border-radius:4px;font-size:.85em}.recent-projects[data-astro-cid-j7pv25f6]{margin-top:var(--space-xl)}.project-list-compact[data-astro-cid-j7pv25f6]{list-style:none;margin:0 calc(var(--space-md) * -1)}.project-list-compact[data-astro-cid-j7pv25f6],.reading-list-compact[data-astro-cid-j7pv25f6]{--cell: 12px}.project-link-compact[data-astro-cid-j7pv25f6],.reading-item-compact[data-astro-cid-j7pv25f6]{padding-block:calc(var(--cell) - 1px);line-height:calc(var(--cell) * 2)}.project-link-compact[data-astro-cid-j7pv25f6] time[data-astro-cid-j7pv25f6],.reading-status[data-astro-cid-j7pv25f6]{line-height:1}.project-item-compact[data-astro-cid-j7pv25f6]:before{background-color:var(--paper);background-image:linear-gradient(to right,rgba(59,74,153,.055) 1px,transparent 1px),linear-gradient(to bottom,rgba(59,74,153,.055) 1px,transparent 1px);background-size:var(--cell) var(--cell);background-origin:border-box;background-clip:padding-box;background-repeat:round}@media(hover:hover){.project-item-compact[data-astro-cid-j7pv25f6]:hover:before{opacity:1}}.project-item-compact[data-astro-cid-j7pv25f6]:has(:focus-visible):before{opacity:1}.project-link-compact[data-astro-cid-j7pv25f6]{display:flex;align-items:baseline;gap:var(--space-md);padding-inline:var(--space-md);text-decoration:none}.project-link-compact[data-astro-cid-j7pv25f6]:hover{text-decoration:none}.project-link-compact[data-astro-cid-j7pv25f6] time[data-astro-cid-j7pv25f6]{font-size:var(--step--2);color:var(--color-text-secondary);min-width:48px;font-family:var(--font-mono)}.project-title-compact[data-astro-cid-j7pv25f6]{font-family:var(--font-serif);font-size:var(--step-0);font-weight:500;color:var(--color-text);letter-spacing:-.01em}.recent-reading[data-astro-cid-j7pv25f6]{margin-top:var(--space-xl)}.reading-list-compact[data-astro-cid-j7pv25f6]{--row-meta-width: calc(12ch + .36em) ;list-style:none;margin:0 calc(var(--space-md) * -1)}.reading-item-compact[data-astro-cid-j7pv25f6]{display:flex;align-items:baseline;gap:var(--space-md);padding-inline:var(--space-md)}.reading-item-compact[data-astro-cid-j7pv25f6]:before{background:linear-gradient(var(--color-accent),var(--color-accent)) no-repeat left var(--space-md) bottom 3px / calc(100% - 2 * var(--space-md)) 1px,var(--paper-card)}@media(hover:hover){.reading-item-compact[data-astro-cid-j7pv25f6]:hover:before{opacity:1}}.reading-status[data-astro-cid-j7pv25f6]{font-size:var(--step--2);color:var(--color-text-secondary);flex:0 0 var(--row-meta-width);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.03em}.reading-title-compact[data-astro-cid-j7pv25f6]{font-family:var(--font-serif);font-size:var(--step-0);font-weight:500;color:var(--color-text);letter-spacing:-.01em}
