/* ============================================================
   BRIDGEVANTI blog: post list, article text, related guides.
   Loaded after styles.css on /blog/ pages and on any page with
   a "Related guides" section.
   ============================================================ */

/* ---------- Blog index ---------- */
.post-list { list-style: none; padding: 0; border-top: 1px solid var(--line); max-width: 820px; }
.post-list li { padding: 32px 0; border-bottom: 1px solid var(--line); }
.post-list time { display: block; color: var(--mute); font-size: 0.92rem; margin-bottom: 10px; }
.post-list h2 { font-size: clamp(1.6rem, 3vw, 2.4rem); letter-spacing: -0.03em; line-height: 1.05; margin-bottom: 12px; }
.post-list h2 a { text-decoration: none; }
.post-list h2 a:hover { color: var(--gold); }
.post-list p { color: var(--mute); }

/* ---------- Article ---------- */
.article { max-width: 760px; }
.article .byline { color: var(--mute); font-size: 0.95rem; margin-top: 28px; }
.article .byline a { color: var(--paper); }
.article-body { font-size: 1.1rem; line-height: 1.7; }
.article-body > * + * { margin-top: 20px; }
.article-body .lead { font-size: 1.25rem; line-height: 1.6; }
.article-body .lead strong { font-weight: 600; }
.article-body h2 { font-size: clamp(1.7rem, 3.2vw, 2.5rem); letter-spacing: -0.03em; line-height: 1.05; margin-top: 64px; }
.article-body h3 { font-family: var(--font-body); font-size: 1.15rem; font-weight: 600; letter-spacing: 0; line-height: 1.35; margin-top: 32px; }
.article-body h3 + p { margin-top: 8px; }
.article-body ul, .article-body ol { padding-left: 1.4em; }
.article-body li + li { margin-top: 10px; }
.article-body li::marker { color: var(--gold); }
.article-body a:not(.btn) { color: var(--gold); text-underline-offset: 3px; }
.article-body .table-scroll { overflow-x: auto; }
.article-body table { width: 100%; min-width: 560px; border-collapse: collapse; font-size: 1rem; line-height: 1.5; text-align: left; }
.article-body th { font-size: 0.9rem; font-weight: 600; color: var(--mute); padding: 0 16px 12px 0; border-bottom: 1.5px solid var(--line-strong, var(--line)); }
.article-body td { padding: 16px 16px 16px 0; border-bottom: 1px solid var(--line); vertical-align: top; }
.article-cta { margin-top: 64px; padding: clamp(28px, 4vw, 44px); border: 1px solid var(--line); border-radius: var(--radius-s, 16px); }
.article-cta h2 { margin-top: 0; }
.article-cta .btn-row { margin-top: 24px; }
.article-author { margin-top: 48px; padding-top: 28px; border-top: 1px solid var(--line); color: var(--mute); font-size: 1rem; }
.article-author strong { color: var(--paper); }

/* ---------- Related guides (inner pages) ---------- */
.related-guides { padding-block: clamp(48px, 6vw, 80px); border-top: 1px solid var(--line); }
.related-guides h2 { font-family: var(--font-body); font-size: 0.95rem; font-weight: 600; letter-spacing: 0; color: var(--gold); margin-bottom: 16px; }
.related-guides ul { list-style: none; padding: 0; display: grid; gap: 10px; }
.related-guides a { font-family: var(--font-display); font-size: clamp(1.15rem, 1.8vw, 1.4rem); font-weight: 600; letter-spacing: -0.02em; text-decoration: none; }
.related-guides a:hover { color: var(--gold); }
