/* ==========================================================================
   Page – Insights index, archives, single article, search
   ========================================================================== */

.vg-blog__filters { margin-bottom: var(--vg-space-6); }
.vg-blog__featured { margin-bottom: var(--vg-space-7); }
.vg-blog__featured .vg-post--row { border-top: 0; padding: 0; }
.vg-blog__featured .vg-post__title { font-size: var(--vg-text-2xl); }
.vg-blog__featured .vg-post__excerpt { font-size: var(--vg-text-md); }
@media (min-width: 700px) { .vg-blog__featured .vg-post--row { grid-template-columns: 7fr 5fr; align-items: center; } }

/* ---- Article ---- */
.vg-article__header { padding-top: clamp(2rem, 1.5rem + 2vw, 3.5rem); }
.vg-article__cat { text-decoration: none; }
.vg-article__title { font-size: clamp(2rem, 1.4rem + 2.6vw, 3.5rem); max-width: 22ch; margin: 0; }
.vg-article__intro { margin-top: var(--vg-space-5); }
.vg-article__meta { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem 1.25rem; margin-top: var(--vg-space-5); font-size: var(--vg-text-sm); color: var(--vg-text-muted); }
.vg-article__author { display: inline-flex; align-items: center; gap: .6rem; color: var(--vg-text); font-weight: 500; }
.vg-avatar { width: var(--size, 32px); height: var(--size, 32px); border-radius: 50%; object-fit: cover; }
.vg-avatar--initials { display: inline-grid; place-items: center; background: var(--vg-black); color: var(--vg-green); font-family: var(--vg-font-display); font-weight: 700; font-size: calc(var(--size, 32px) * .38); letter-spacing: .02em; }
.vg-article__media { margin-top: var(--vg-space-6); }
.vg-article__layout { display: grid; gap: var(--vg-space-6); padding-block: var(--vg-space-7) var(--vg-section); }
@media (min-width: 1024px) {
  .vg-article__layout { grid-template-columns: minmax(0, 260px) minmax(0, var(--vg-container-text)); column-gap: clamp(2rem, 6vw, 6rem); justify-content: center; }
  .vg-article__aside { position: sticky; top: calc(var(--vg-header-h) + 1.5rem); align-self: start; }
}
.vg-article__body { margin-inline: auto; width: 100%; }
@media (min-width: 1024px) { .vg-article__layout:not(:has(.vg-article__aside)) { grid-template-columns: minmax(0, var(--vg-container-text)); } }
.vg-toc { border-top: var(--vg-border-strong); padding-top: 1rem; }
.vg-toc__title { font-size: var(--vg-text-xs); font-weight: 600; letter-spacing: var(--vg-tracking-caps); text-transform: uppercase; color: var(--vg-text-muted); margin: 0 0 .75rem; }
.vg-toc__list { list-style: none; margin: 0; padding: 0; display: grid; gap: .35rem; font-size: var(--vg-text-sm); }
.vg-toc__item a { text-decoration: none; display: block; padding: .25rem 0; color: var(--vg-text); border-left: 2px solid transparent; }
.vg-toc__item a:hover { color: var(--vg-accent-text); }
.vg-toc__item--h3 a { padding-left: 1rem; color: var(--vg-text-muted); }
.vg-toc__cta { margin-top: 1.5rem; border-top: var(--vg-border); padding-top: 1rem; }
.vg-article__tags { margin-top: 2.5rem; }
.vg-article__service { margin-top: 3rem; padding: clamp(1.25rem, 1rem + 1.5vw, 2rem); background: var(--vg-black); color: var(--vg-offwhite); border-radius: var(--vg-radius-md); }
.vg-article__service .vg-eyebrow { color: var(--vg-text-on-dark-muted); margin-bottom: .75rem; }
.vg-article__service h2 { margin-top: 0; }
.vg-article__service p { color: var(--vg-text-on-dark-muted); }
.vg-article__service .vg-btn--dark { background: var(--vg-green); color: var(--vg-black); border-color: var(--vg-green); }
.vg-article__service .vg-btn--ghost { color: var(--vg-offwhite); }
.vg-article__authorbox { margin-top: 3rem; padding-top: 2rem; border-top: var(--vg-border-strong); display: grid; grid-template-columns: 72px 1fr; gap: 1.25rem; align-items: start; }

.vg-article__authorbox p { font-size: var(--vg-text-sm); }
