.project-header[data-astro-cid-s35pujdj]{padding-block:var(--space-6) var(--space-8)}.back[data-astro-cid-s35pujdj]{gap:var(--space-1);margin-bottom:var(--space-8);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-secondary);display:inline-flex}.back[data-astro-cid-s35pujdj]:hover{color:var(--color-text)}.intro[data-astro-cid-s35pujdj]{align-items:end}.intro__copy[data-astro-cid-s35pujdj]{grid-column:1/span 7}.intro__copy[data-astro-cid-s35pujdj]>[data-astro-cid-s35pujdj]+[data-astro-cid-s35pujdj]{margin-top:var(--space-2)}.intro--wrap[data-astro-cid-s35pujdj]{display:flow-root}.intro--wrap[data-astro-cid-s35pujdj] .meta[data-astro-cid-s35pujdj]{margin-top:var(--space-5)}.visual[data-astro-cid-s35pujdj].visual--float{float:right;width:min(58%,720px);margin:0 0 var(--space-3) var(--space-6)}@media (width<=719px){.visual[data-astro-cid-s35pujdj].visual--float{float:none;width:100%;margin:0 0 var(--space-5)}}.meta[data-astro-cid-s35pujdj]{grid-column:9/span 4}.meta[data-astro-cid-s35pujdj]>div[data-astro-cid-s35pujdj]{justify-content:space-between;align-items:center;gap:var(--space-2);border-top:1px solid var(--color-border);font-size:var(--text-sm);padding-block:12px;display:flex}.meta[data-astro-cid-s35pujdj] dd[data-astro-cid-s35pujdj]{text-align:right}.chips[data-astro-cid-s35pujdj]{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.visual[data-astro-cid-s35pujdj]{margin-top:var(--space-8);padding-block:var(--space-4);border-block:1px solid var(--color-border);color:var(--color-accent)}.visual--media[data-astro-cid-s35pujdj]{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);padding:0;position:relative;overflow:hidden}.expand[data-astro-cid-s35pujdj]{background:color-mix(in srgb, var(--color-bg) 78%, transparent);-webkit-backdrop-filter:blur(8px);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text);cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out);align-items:center;gap:6px;padding:6px 10px;font-size:.6875rem;display:inline-flex;position:absolute;top:12px;right:12px}.expand[data-astro-cid-s35pujdj]:hover{border-color:var(--color-text)}.expand[data-astro-cid-s35pujdj]:focus-visible,.lightbox__close[data-astro-cid-s35pujdj]:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.lightbox[data-astro-cid-s35pujdj]{width:min(1400px, calc(100vw - 2 * var(--gutter)));background:0 0;border:0;max-width:none;max-height:none;margin:auto;padding:0;overflow:visible}.lightbox[data-astro-cid-s35pujdj]::backdrop{backdrop-filter:blur(4px);background:#000000d1}.lightbox__inner[data-astro-cid-s35pujdj]{align-items:flex-end;gap:var(--space-1);flex-direction:column;display:flex}.lightbox__close[data-astro-cid-s35pujdj]{border-radius:var(--radius-md);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:#fff;cursor:pointer;background:0 0;border:1px solid #ffffff4d;gap:8px;padding:6px 10px;display:inline-flex}.lightbox__close[data-astro-cid-s35pujdj]:hover{border-color:#fff}.lightbox__video[data-astro-cid-s35pujdj]{border-radius:var(--radius-lg);background:#000;width:100%;max-height:calc(100vh - 120px);display:block}.media[data-astro-cid-s35pujdj]{width:100%;height:auto;display:block}.body[data-astro-cid-s35pujdj]{padding-block:var(--space-8) var(--space-12);align-items:start}.toc[data-astro-cid-s35pujdj]{top:calc(var(--header-height) + var(--space-4));grid-column:1/span 3;position:sticky}.toc[data-astro-cid-s35pujdj] ol[data-astro-cid-s35pujdj]{gap:var(--space-1);margin-top:var(--space-2);flex-direction:column;display:flex}.toc[data-astro-cid-s35pujdj] a[data-astro-cid-s35pujdj]{font-size:var(--text-sm);color:var(--color-text-secondary);transition:color var(--duration-fast) var(--ease-out);gap:12px;display:flex}.toc[data-astro-cid-s35pujdj] a[data-astro-cid-s35pujdj]:hover{color:var(--color-text)}.toc[data-astro-cid-s35pujdj] .mono[data-astro-cid-s35pujdj]{font-size:var(--text-xs);line-height:1.9}.prose[data-astro-cid-s35pujdj]{counter-reset:section;grid-column:5/span 7}.prose[data-astro-cid-s35pujdj] h2{counter-increment:section;margin-top:var(--space-8);padding-top:var(--space-3);border-top:1px solid var(--color-border);font-size:var(--text-2xl);letter-spacing:-.02em;scroll-margin-top:calc(var(--header-height) + var(--space-3));font-weight:540;line-height:1.2}.prose[data-astro-cid-s35pujdj] h2:first-child{margin-top:0}.prose[data-astro-cid-s35pujdj] h2:before{content:counter(section, decimal-leading-zero);margin-bottom:var(--space-1);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.08em;color:var(--color-text-muted);font-weight:400;display:block}.prose[data-astro-cid-s35pujdj] p,.prose[data-astro-cid-s35pujdj] ul,.prose[data-astro-cid-s35pujdj] ol{margin-top:var(--space-2);color:var(--color-text-secondary);font-size:1.0625rem;line-height:1.7}.prose[data-astro-cid-s35pujdj] strong{color:var(--color-text);font-weight:560}.prose[data-astro-cid-s35pujdj] a{color:var(--color-text);text-decoration:underline;text-decoration-color:var(--color-accent);text-underline-offset:3px}.prose[data-astro-cid-s35pujdj] code{background:var(--color-surface-elevated);border:1px solid var(--color-border);font-family:var(--font-mono);border-radius:4px;padding:1px 6px;font-size:.875em}.prose[data-astro-cid-s35pujdj] p:has(>img),.prose[data-astro-cid-s35pujdj] p:has(>a>img){margin-top:var(--space-4);font-size:var(--text-sm);color:var(--color-text-muted);line-height:1.5}.prose[data-astro-cid-s35pujdj] p>img,.prose[data-astro-cid-s35pujdj] p>a>img{width:100%;height:auto;margin-bottom:var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius-md);display:block}.prose[data-astro-cid-s35pujdj] a:has(>img){cursor:zoom-in;text-decoration:none;display:block}.prose[data-astro-cid-s35pujdj] p:has(img) em{font-style:normal}.prose[data-astro-cid-s35pujdj] h3{margin-top:var(--space-5);font-size:var(--text-lg);letter-spacing:-.01em;font-weight:540;line-height:1.3}.prose[data-astro-cid-s35pujdj] h2+h3{margin-top:var(--space-3)}.prose[data-astro-cid-s35pujdj] table{width:100%;margin-top:var(--space-3);border-collapse:collapse;font-size:var(--text-sm);line-height:1.5}.prose[data-astro-cid-s35pujdj] th{padding:0 var(--space-2) 10px 0;font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.08em;text-align:left;text-transform:uppercase;color:var(--color-text-muted);font-weight:400}.prose[data-astro-cid-s35pujdj] td{padding:10px var(--space-2) 10px 0;border-top:1px solid var(--color-border);vertical-align:top;color:var(--color-text-secondary)}.prose[data-astro-cid-s35pujdj] td:first-child{white-space:nowrap;color:var(--color-text)}.prose[data-astro-cid-s35pujdj] .swatch{vertical-align:-1px;border:1.5px solid var(--swatch);background:color-mix(in srgb, var(--swatch) 18%, transparent);border-radius:3px;width:12px;height:12px;margin-right:10px;display:inline-block}.prose[data-astro-cid-s35pujdj] .swatch--dashed{border-style:dashed}.prose[data-astro-cid-s35pujdj] blockquote{margin-top:var(--space-2);padding:12px var(--space-2);border:1px dashed var(--color-border-strong);border-radius:var(--radius-md);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted)}.prose[data-astro-cid-s35pujdj] blockquote p{font-size:inherit;color:inherit;margin:0}.next[data-astro-cid-s35pujdj]{border-top:1px solid var(--color-border)}.next__link[data-astro-cid-s35pujdj]{gap:var(--space-1);padding-block:var(--space-10);flex-direction:column;display:flex}.next__title[data-astro-cid-s35pujdj]{transition:color var(--duration-fast) var(--ease-out)}.next__arrow[data-astro-cid-s35pujdj]{transition:transform var(--duration-base) var(--ease-out);display:inline-block}.next__link[data-astro-cid-s35pujdj]:hover .next__title[data-astro-cid-s35pujdj]{color:var(--color-accent)}.next__link[data-astro-cid-s35pujdj]:hover .next__arrow[data-astro-cid-s35pujdj]{transform:translate(6px)}@media (width<=1023px){.intro__copy[data-astro-cid-s35pujdj],.meta[data-astro-cid-s35pujdj],.prose[data-astro-cid-s35pujdj]{grid-column:1/-1}.toc[data-astro-cid-s35pujdj]{display:none}}
