.article__header[data-astro-cid-fcutuirf]{padding-block:var(--space-7) var(--space-5);text-align:center}.article__cat[data-astro-cid-fcutuirf]{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:var(--tracking-eyebrow);color:var(--brand-cyan);font-size:11px;font-weight:600}.article__title[data-astro-cid-fcutuirf]{letter-spacing:var(--tracking-h1);margin:var(--space-3) auto var(--space-4);max-width:22ch;font-size:max(32px,min(5vw,56px));font-weight:800;line-height:1.1}.article__meta[data-astro-cid-fcutuirf]{justify-content:center;gap:var(--space-2);font-family:var(--font-mono);color:var(--fg-3);margin-bottom:var(--space-6);flex-wrap:wrap;font-size:12px;display:flex}.article__hero[data-astro-cid-fcutuirf]{width:100%;max-width:1080px;margin:var(--space-5) auto 0;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);aspect-ratio:16/9;object-fit:cover}.article__body-wrap[data-astro-cid-fcutuirf]{gap:var(--space-8);padding-block:var(--space-7);grid-template-columns:260px 1fr;align-items:start;display:grid}@media (max-width:1024px){.article__body-wrap[data-astro-cid-fcutuirf]{grid-template-columns:1fr}}.article__toc[data-astro-cid-fcutuirf]{align-self:start;position:sticky;top:80px}.article__toc-title[data-astro-cid-fcutuirf]{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:var(--tracking-eyebrow);color:var(--fg-3);margin-bottom:var(--space-3);font-size:11px;font-weight:600}.article__toc[data-astro-cid-fcutuirf] ol[data-astro-cid-fcutuirf]{gap:var(--space-2);counter-reset:toc;flex-direction:column;padding:0;list-style:none;display:flex}.article__toc[data-astro-cid-fcutuirf] li[data-astro-cid-fcutuirf]{counter-increment:toc}.article__toc[data-astro-cid-fcutuirf] a[data-astro-cid-fcutuirf]{gap:var(--space-2);color:var(--fg-2);font-size:var(--fs-small);border-left:2px solid var(--border);padding-block-start:4px;padding-block-end:4px;padding-left:var(--space-3);line-height:1.4;text-decoration:none;display:flex}.article__toc[data-astro-cid-fcutuirf] a[data-astro-cid-fcutuirf]:before{content:counter(toc,decimal-leading-zero);color:var(--brand-cyan);font-family:var(--font-mono);font-size:11px;font-weight:600}.article__toc[data-astro-cid-fcutuirf] a[data-astro-cid-fcutuirf]:hover{color:var(--fg-1);border-color:var(--brand-purple)}[data-astro-cid-fcutuirf][data-theme=dark] .article__toc[data-astro-cid-fcutuirf] a[data-astro-cid-fcutuirf]:hover{border-color:var(--brand-cyan)}.article__body[data-astro-cid-fcutuirf]{font-family:var(--font-body);color:var(--fg-1);max-width:72ch;font-size:17px;line-height:1.75}.article__body[data-astro-cid-fcutuirf] h2{font-family:var(--font-display);font-size:var(--fs-h3);margin:var(--space-8) 0 var(--space-4);color:var(--fg-1);scroll-margin-top:80px;font-weight:700;line-height:1.2}.article__body[data-astro-cid-fcutuirf] h2:first-child{margin-top:0}.article__body[data-astro-cid-fcutuirf] h3{font-family:var(--font-display);font-size:var(--fs-h4);margin:var(--space-6) 0 var(--space-3);color:var(--fg-1);font-weight:700;line-height:1.25}.article__body[data-astro-cid-fcutuirf] p{color:var(--fg-2);margin-bottom:var(--space-4)}.article__body[data-astro-cid-fcutuirf] strong{color:var(--fg-1);font-weight:600}.article__body[data-astro-cid-fcutuirf] ul,.article__body[data-astro-cid-fcutuirf] ol{margin:0 0 var(--space-4) var(--space-5);padding:0}.article__body[data-astro-cid-fcutuirf] li{color:var(--fg-2);margin-bottom:var(--space-2);list-style:outside}.article__body[data-astro-cid-fcutuirf] ol li{list-style:decimal}.article__body[data-astro-cid-fcutuirf] blockquote{margin:var(--space-5) 0;padding:var(--space-3) var(--space-5);border-left:4px solid var(--brand-magenta);background:var(--bg-surface);border-radius:0 var(--radius-md) var(--radius-md) 0;color:var(--fg-1);font-style:italic}.article__body[data-astro-cid-fcutuirf] table{border-collapse:collapse;width:100%;margin:var(--space-5) 0;font-size:var(--fs-small);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.article__body[data-astro-cid-fcutuirf] th,.article__body[data-astro-cid-fcutuirf] td{padding:var(--space-3);text-align:left;border-bottom:1px solid var(--border-soft)}.article__body[data-astro-cid-fcutuirf] th{background:var(--bg-surface);font-family:var(--font-display);color:var(--fg-1);font-weight:700}.article__body[data-astro-cid-fcutuirf] code{font-family:var(--font-mono);background:var(--bg-surface);border-radius:var(--radius-sm);color:var(--brand-purple);padding:2px 6px;font-size:.9em}[data-astro-cid-fcutuirf][data-theme=dark] .article__body[data-astro-cid-fcutuirf] code{color:var(--brand-cyan)}.article__footer[data-astro-cid-fcutuirf]{padding-block:var(--space-5) var(--space-7)}.author-card[data-astro-cid-fcutuirf]{gap:var(--space-4);padding:var(--space-5);background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);grid-template-columns:80px 1fr;display:grid}.author-card[data-astro-cid-fcutuirf] img[data-astro-cid-fcutuirf]{object-fit:cover;border-radius:50%;width:80px;height:80px}.author-card__role[data-astro-cid-fcutuirf]{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:var(--tracking-eyebrow);color:var(--fg-3);margin:0;font-size:11px;font-weight:600}.author-card__name[data-astro-cid-fcutuirf]{font-family:var(--font-display);font-size:var(--fs-h5);color:var(--fg-1);margin:4px 0 2px;font-weight:700}.author-card__title[data-astro-cid-fcutuirf]{color:var(--brand-purple-ink);font-size:var(--fs-small);margin-bottom:var(--space-2)}[data-astro-cid-fcutuirf][data-theme=dark] .author-card__title[data-astro-cid-fcutuirf]{color:var(--brand-cyan)}.author-card__bio[data-astro-cid-fcutuirf]{color:var(--fg-2);font-size:var(--fs-small);margin:0;line-height:1.55}.related-article[data-astro-cid-fcutuirf]{padding:var(--space-5);gap:var(--space-3);color:var(--fg-1);flex-direction:column;text-decoration:none;display:flex}.related-article__cat[data-astro-cid-fcutuirf]{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:var(--tracking-eyebrow);color:var(--brand-cyan);font-size:11px;font-weight:600}.related-article__title[data-astro-cid-fcutuirf]{font-family:var(--font-display);font-size:var(--fs-h5);color:var(--fg-1);flex:1;margin:0;font-weight:700;line-height:1.3}
