.blog-index-lead{max-width:640px;font-size:17px;line-height:1.7;color:var(--router-muted)}.blog-card small,.blog-meta{font-family:var(--font-mono);font-size:11px;color:var(--router-dim)}.blog-meta{display:flex;flex-wrap:wrap;gap:6px 18px;margin:-8px 0 28px}.blog-cover{display:block;width:100%;height:auto;border:1px solid var(--router-border);border-radius:8px;margin:0 0 28px}.blog-article h3{font-size:18px;margin:28px 0 10px}.blog-article img{max-width:100%;height:auto;border-radius:8px}.blog-article ol{padding-left:20px}.blog-article blockquote{margin:24px 0;padding:4px 0 4px 18px;border-left:3px solid var(--router-border)}.blog-table{overflow-x:auto;margin:24px 0}.blog-article td a{color:var(--router-text);text-decoration:underline;text-underline-offset:3px}.blog-faq,.blog-related{margin-top:48px}.blog-card-image{display:block;border-radius:10px;overflow:hidden;border:1px solid var(--router-border);background:var(--router-panel-2)}.blog-card-image img{display:block;width:100%;height:auto;aspect-ratio:1200/630;object-fit:cover;transition:transform .3s ease}.blog-card:hover .blog-card-image img{transform:scale(1.02)}.blog-card-body h2,.blog-card-body h3{margin:6px 0 10px;line-height:1.25}.blog-card-body h2{font-size:30px}.blog-card-body h3{font-size:19px}.blog-card-body h2 a,.blog-card-body h3 a{color:var(--router-text);text-decoration:none}.blog-card-body h2 a:hover,.blog-card-body h3 a:hover{text-decoration:underline;text-underline-offset:4px}.blog-card-body p:not(.discovery-kicker){margin:0 0 12px;font-size:14px;line-height:1.7;color:var(--router-muted);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.blog-card--featured{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);grid-gap:40px;gap:40px;align-items:center;margin-top:36px;padding-bottom:40px;border-bottom:1px solid var(--router-border)}.blog-card--compact .blog-card-body,.blog-card--grid .blog-card-body{margin-top:16px}.blog-grid{margin:40px 0 0;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:40px 28px;gap:40px 28px}.blog-grid,.blog-related ul{list-style:none;padding:0;display:grid}.blog-related ul{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-gap:24px;gap:24px}.blog-related .blog-card-body h3{font-size:15px}.blog-cover{aspect-ratio:1200/630}@media (max-width:820px){.blog-card--featured{grid-template-columns:minmax(0,1fr);gap:20px}.blog-card-body h2{font-size:24px}}