.blog-page{background:var(--color-surface)}.blog-hero,.post-header{border-block-end:1px solid var(--color-border);background:var(--color-surface-soft)}.blog-hero__layout{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-3) var(--space-8);padding-block:var(--page-start-space)}.blog-hero__label{grid-column:1 / -1;color:var(--color-primary-700);font-size:var(--text-sm);font-weight:900}.blog-hero h1{grid-column:1 / -1;min-width:0;margin:0;color:var(--color-ink);font-size:var(--text-display);font-weight:950;line-height:1.2;overflow-wrap:break-word;text-wrap:balance}.blog-hero__summary{display:flex;grid-column:1 / -1;align-items:flex-end;justify-content:space-between;gap:var(--space-6);margin-block-start:var(--space-5)}.blog-hero__summary p{max-width:70ch;color:var(--color-muted);font-size:var(--text-lg);line-height:2;text-wrap:pretty}.blog-hero__summary a{display:inline-flex;min-height:44px;align-items:center;gap:var(--space-2);color:var(--color-primary-700);font-size:var(--text-sm);font-weight:850}.blog-hero__summary a span{transition:transform var(--transition-fast)}.blog-hero__summary a:hover span,.blog-hero__summary a:focus-visible span{transform:translateY(3px)}.blog-archive{padding-block:var(--section-space)}.blog-archive__heading{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-8);margin-block-end:var(--space-10)}.blog-archive__heading>div:first-child{display:grid;gap:var(--space-3)}.blog-archive__heading h2,.related-posts h2{margin:0;color:var(--color-ink);font-size:var(--text-3xl);font-weight:950;line-height:1.45;text-wrap:balance}.blog-archive__heading p{color:var(--color-muted)}.blog-filter{display:flex;max-width:760px;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-2)}.blog-filter__button{min-height:44px;padding-inline:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-muted);cursor:pointer;font-size:var(--text-sm);font-weight:800;transition:border-color var(--transition-fast),background-color var(--transition-fast),color var(--transition-fast)}.blog-filter__button:hover,.blog-filter__button:focus-visible{border-color:var(--color-primary-500);color:var(--color-primary-700)}.blog-filter__button.is-active,.blog-filter__button[aria-pressed="true"]{border-color:var(--color-action);background:var(--color-action);color:var(--color-on-primary)}.blog-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--space-6);margin:0;padding:0;list-style:none}.blog-card{min-width:0;grid-column:span 4}.blog-card--lead,.blog-card--wide{grid-column:span 8}.blog-grid[data-active-filter]:not([data-active-filter="all"]) .blog-card{grid-column:span 4}.blog-card[hidden]{display:none}.blog-card__article,.blog-card__link{height:100%}.blog-card__link{position:relative;display:grid;min-height:390px;grid-template-rows:auto 1fr auto;gap:var(--space-8);padding:clamp(var(--space-6), 3vw, var(--space-8));border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-soft);transition:border-color var(--transition-base),background-color var(--transition-base),transform var(--transition-base)}.blog-card__link:hover,.blog-card__link:focus-visible{border-color:var(--color-primary-500);background:var(--color-primary-100);transform:translateY(-4px)}.blog-card__link:focus-visible{outline:0;box-shadow:var(--shadow-focus)}.blog-card--lead .blog-card__link{min-height:430px;border-color:var(--color-operations-border);background:var(--color-operations);color:var(--color-operations-text)}.blog-card--lead .blog-card__link:hover,.blog-card--lead .blog-card__link:focus-visible{border-color:var(--color-signal);background:var(--color-operations-elevated)}.blog-card__meta,.post-header__meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3) var(--space-5);color:var(--color-subtle);font-size:var(--text-sm);font-weight:750;font-variant-numeric:tabular-nums}.blog-card__meta span,.post-header__meta span:first-child{color:var(--color-primary-700)}.blog-card--lead .blog-card__meta{color:var(--color-operations-muted)}.blog-card--lead .blog-card__meta span{color:var(--color-signal-soft)}.blog-card__body{align-self:start}.blog-card h2{margin:0;color:var(--color-ink);font-size:var(--text-2xl);font-weight:900;line-height:1.5;overflow-wrap:break-word;text-wrap:balance}.blog-card__body p{margin:var(--space-5) 0 0;color:var(--color-muted);line-height:1.95;text-wrap:pretty}.blog-card--lead h2{color:var(--color-operations-text);font-size:var(--text-3xl);font-weight:950;line-height:1.45}.blog-card--lead .blog-card__body p{max-width:68ch;color:var(--color-operations-muted);font-size:var(--text-lg)}.blog-card__footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-5);padding-block-start:var(--space-5);border-block-start:1px solid var(--color-border)}.blog-card--lead .blog-card__footer{border-color:var(--color-operations-border)}.blog-card__number{color:var(--color-subtle);font-size:var(--text-sm);font-weight:850;font-variant-numeric:tabular-nums}.blog-card__read{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--color-primary-700);font-size:var(--text-sm);font-weight:850}.blog-card__read span{transition:transform var(--transition-fast)}.blog-card__link:hover .blog-card__read span,.blog-card__link:focus-visible .blog-card__read span{transform:translateX(-3px)}.blog-card--lead .blog-card__number{color:var(--color-operations-muted)}.blog-card--lead .blog-card__read{color:var(--color-signal-soft)}@media (min-width:1025px){.blog-grid:not([data-active-filter]) .blog-card--wide:not(.blog-card--lead) .blog-card__body,.blog-grid[data-active-filter="all"] .blog-card--wide:not(.blog-card--lead) .blog-card__body{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(240px,0.85fr);align-items:start;gap:var(--space-10)}.blog-grid:not([data-active-filter]) .blog-card--wide:not(.blog-card--lead) .blog-card__body p,.blog-grid[data-active-filter="all"] .blog-card--wide:not(.blog-card--lead) .blog-card__body p{margin:0}.blog-grid[data-active-filter]:not([data-active-filter="all"]) .blog-card[data-filter-span="half"]{grid-column:span 6}.blog-grid[data-active-filter]:not([data-active-filter="all"]) .blog-card[data-filter-span="wide"]{grid-column:3 / span 8}}.blog-load-more{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);margin-block-start:var(--space-10);padding-block-start:var(--space-8);border-block-start:1px solid var(--color-border)}.blog-load-more[hidden]{display:none}.blog-load-more p{color:var(--color-subtle);font-size:var(--text-sm);font-weight:750}.post-header__inner{padding-block:var(--page-start-space)}.breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-block-end:var(--space-10);color:var(--color-subtle);font-size:var(--text-sm)}.breadcrumbs a{display:inline-flex;min-height:44px;align-items:center}.breadcrumbs a:hover,.breadcrumbs a:focus-visible{color:var(--color-primary-700)}.post-header__meta{justify-content:flex-start;margin-block-end:var(--space-5)}.post-header h1{width:100%;margin:0;color:var(--color-ink);font-size:var(--text-display);font-weight:950;line-height:1.2;overflow-wrap:break-word;text-wrap:balance}.post-header__inner>p{max-width:72ch;margin:var(--space-8) 0 0;color:var(--color-muted);font-size:var(--text-lg);line-height:2;text-wrap:pretty}.post-layout{display:grid;grid-template-columns:minmax(210px,270px) minmax(0,1fr);gap:clamp(var(--space-10), 7vw, var(--space-24));padding-block:var(--section-space)}.post-toc{align-self:stretch}.post-toc__inner{position:sticky;max-height:calc(100vh - 132px);overflow-y:auto;inset-block-start:108px;scrollbar-width:thin}.post-toc__summary{display:block;margin:0 0 var(--space-5);color:var(--color-ink);font-size:var(--text-lg);font-weight:900;list-style:none}.post-toc__summary::-webkit-details-marker{display:none}.post-toc__summary>:last-child{display:none}.post-toc ol{display:grid;gap:var(--space-3);margin:0;padding:0;list-style:none}.post-toc a{display:flex;min-height:44px;align-items:center;padding-block:var(--space-1);color:var(--color-subtle);font-size:var(--text-sm);line-height:1.7}.post-toc a:hover,.post-toc a:focus-visible{color:var(--color-primary-700)}.post-content{width:100%;min-width:0;justify-self:start;color:var(--color-text);font-size:var(--text-md);line-height:2.05}.post-content>:first-child{margin-block-start:0}.post-content :where(h2,h3,h4){color:var(--color-ink);font-weight:900;scroll-margin-top:112px;text-wrap:balance}.post-content h2{margin:var(--space-16) 0 var(--space-5);font-size:var(--text-3xl);font-weight:950;line-height:1.45}.post-content h3{margin:var(--space-10) 0 var(--space-4);font-size:var(--text-xl);line-height:1.5}.post-content :where(p,ul,ol,blockquote,table){margin-block:0 var(--space-6)}.post-content :where(p,li){text-wrap:pretty}.post-content :where(ul,ol){display:grid;gap:var(--space-3);padding-inline-start:var(--space-6)}.post-content a{color:var(--color-primary-700);font-weight:700;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.25em}.post-content blockquote{padding-block:var(--space-5);border-block:1px solid var(--color-border-strong);color:var(--color-muted);font-size:var(--text-lg)}.post-content table{display:block;width:100%;overflow-x:auto;border-collapse:collapse}.post-content :where(th,td){min-width:140px;padding:var(--space-4);border-block-end:1px solid var(--color-border);text-align:start}.related-posts{padding-block:var(--section-space);border-block-start:1px solid var(--color-border);background:var(--color-surface-soft)}.related-posts header{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-5);margin-block-end:var(--space-8)}.related-posts header a{display:inline-flex;min-height:44px;align-items:center;color:var(--color-primary-700);font-size:var(--text-sm);font-weight:850}.related-posts ul{margin:0;padding:0;border-block-end:1px solid var(--color-border);list-style:none}.related-posts li{border-block-start:1px solid var(--color-border)}.related-posts li a{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-8);padding-block:var(--space-6)}.related-posts li span{color:var(--color-ink);font-size:var(--text-lg);font-weight:850}.related-posts li time{flex:0 0 auto;color:var(--color-subtle);font-size:var(--text-sm);font-variant-numeric:tabular-nums}@media (max-width:1024px){.blog-hero__layout{grid-template-columns:minmax(0,1fr)}.blog-hero__label{grid-column:auto}.blog-hero__summary{max-width:none}.blog-archive__heading{align-items:flex-start;flex-direction:column}.blog-filter{justify-content:flex-start}.blog-card,.blog-card--lead,.blog-card--wide,.blog-grid[data-active-filter]:not([data-active-filter="all"]) .blog-card{grid-column:span 6}.post-layout{grid-template-columns:minmax(180px,220px) minmax(0,1fr);gap:var(--space-10)}}@media (max-width:767px){.blog-hero__summary{align-items:flex-start;flex-direction:column}.blog-hero__summary p,.post-header__inner>p,.blog-card--lead .blog-card__body p{font-size:var(--text-md)}.blog-filter{width:100%;flex-wrap:nowrap;overflow-x:auto;padding-block-end:var(--space-2);scrollbar-width:thin}.blog-filter__button{flex:0 0 auto}.blog-card,.blog-card--lead,.blog-card--wide,.blog-grid[data-active-filter]:not([data-active-filter="all"]) .blog-card{grid-column:1 / -1}.blog-card__link,.blog-card--lead .blog-card__link{min-height:350px}.blog-load-more{align-items:stretch;flex-direction:column}.blog-load-more .button{width:100%}.post-layout{grid-template-columns:minmax(0,1fr)}.post-toc__inner{position:static;max-height:none;overflow:visible;padding-block-end:var(--space-8);border-block-end:1px solid var(--color-border)}.post-toc__summary{display:flex;min-height:44px;align-items:center;justify-content:space-between;gap:var(--space-4);margin:0;cursor:pointer}.post-toc__summary>:last-child{display:block;color:var(--color-primary-600);font-size:var(--text-xl);font-weight:700;line-height:1;transition:transform var(--transition-base)}.post-toc__details[open] .post-toc__summary{margin-block-end:var(--space-5)}.post-toc__details[open] .post-toc__summary>:last-child{transform:rotate(45deg)}.post-content{max-width:none;font-size:var(--text-md)}.related-posts header,.related-posts li a{align-items:flex-start;flex-direction:column}}@media (prefers-reduced-motion:reduce){.blog-hero__summary a span,.blog-card__link,.blog-card__read span,.post-toc__summary>:last-child{transition:none}}@media print{.blog-post-page .site-header,.blog-post-page .site-footer,.blog-post-page .post-toc,.blog-post-page .related-posts,.blog-post-page .back-to-top{display:none}.blog-post-page .post-layout{display:block;padding:0}}