/* Insights (blog) pages. Loaded with styles.css; tokens come from :root and .section-light. */
.blog-hero{padding:76px 0 54px;border-bottom:1px solid var(--line)}
.blog-hero h1{font-size:clamp(34px,4.2vw,56px);letter-spacing:-.045em;max-width:900px}
.blog-hero h1 span{color:var(--accent)}
.blog-hero .eyebrow a{color:inherit}
.blog-hero .hero-description{max-width:560px}
.blog-meta{margin-top:22px;font-size:14px;color:var(--muted)}
.blog-inner{max-width:780px}
.blog-feature{margin:0 0 36px}.blog-feature img{width:100%;border-radius:var(--radius)}
.blog-prose{font-size:17px;line-height:1.75}
.blog-prose>*+*{margin-top:18px}
.blog-prose h2{font-size:clamp(26px,3vw,34px);margin-top:44px}
.blog-prose h3{font-size:21px;margin-top:30px}
.blog-prose a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
.blog-prose ul,.blog-prose ol{padding-left:24px;display:grid;gap:8px;color:var(--muted)}
.blog-prose li::marker{color:var(--accent)}
.blog-prose blockquote{margin:0;padding:6px 0 6px 20px;border-left:3px solid var(--accent);font-style:italic}
.blog-prose blockquote p+p{margin-top:10px}
.blog-prose figure{margin:28px 0}.blog-prose figure img{width:100%;border-radius:var(--radius)}
.blog-prose figcaption{margin-top:8px;font-size:13px;color:var(--muted)}
.blog-prose hr{border:0;border-top:1px solid var(--line);margin:32px 0}
.blog-prose .table-scroll{overflow-x:auto}
.blog-prose table{border-collapse:collapse;width:100%;font-size:15px}
.blog-prose th,.blog-prose td{border:1px solid var(--line);padding:10px 12px;text-align:left;color:var(--muted)}
.blog-prose th{background:#fff;color:var(--text);font-weight:600}
.blog-prose blockquote.tldr{padding:20px 24px;background:#fff;border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:var(--radius);font-style:normal}
.blog-prose blockquote.tldr .tldr-label{margin:0 0 8px;font-weight:600;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}
.blog-prose blockquote.tldr ul{margin-top:10px;padding-left:20px}
.blog-author{margin-top:56px;padding-top:28px;border-top:1px solid var(--line)}
.blog-author-name{color:var(--text);font-weight:600;font-size:17px}
.blog-author p+p{margin-top:6px;font-size:14px}
.blog-author .text-link{margin-top:16px}
.blog-back{margin-top:36px}
.blog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:22px}
.blog-card{display:flex;flex-direction:column;overflow:hidden;border-radius:var(--radius);border:1px solid var(--line);background:#fff;transition:transform .25s var(--ease),border-color .25s}
.blog-card:hover{transform:translateY(-4px);border-color:var(--accent)}
.blog-card-media{display:block;aspect-ratio:16/9;background:#dfe8f3}
.blog-card-media img{width:100%;height:100%;object-fit:cover}
.blog-card-body{display:flex;flex-direction:column;gap:10px;padding:24px}
.blog-card-meta{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
.blog-card h2{font-size:21px;line-height:1.25;letter-spacing:-.02em}
.blog-card p{font-size:14.5px;line-height:1.6}
.blog-card-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}
.blog-tag{padding:4px 10px;border-radius:999px;border:1px solid var(--line);font-size:12px;color:var(--muted)}
.blog-empty{font-size:17px}
@media(max-width:850px){.blog-hero{padding:52px 0 40px}.blog-prose{font-size:16px}}
