.article-page{background:var(--sf-bg)}
.article-header{max-width:820px;margin:0 auto;padding:28px 24px 0}
.article-hero-img{width:100%;height:420px;object-fit:cover;border-radius:2px;margin:18px 0}
.card-meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:12px;color:var(--sf-ink-soft);text-transform:uppercase;letter-spacing:0.4px}
.article-h1{
  font-family:Georgia,"Times New Roman",serif;
  font-size:38px;line-height:1.2;margin:14px 0 12px;color:var(--sf-ink);
}
.author-byline{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--sf-ink-soft);margin-bottom:18px}
.author-name{font-weight:700;color:var(--sf-ink)}
.author-sep{color:#aab5bb}
.article-lead{font-size:19px;color:var(--sf-ink-soft);margin-bottom:8px}

.article-body{max-width:760px;margin:0 auto;padding:0 24px 40px;font-size:17px;color:var(--sf-ink)}
.article-body p{margin-bottom:18px}
.article-body h2{font-family:Georgia,serif;font-size:26px;margin:32px 0 14px;color:var(--sf-ink)}
.article-body h3{font-size:20px;margin:24px 0 10px}
.article-body img{border-radius:2px;margin:20px 0}
.article-body ul,.article-body ol{margin:0 0 18px 22px}

.author-bio-card{
  max-width:760px;margin:32px auto;padding:22px;background:var(--sf-bg-alt);
  border:1px solid var(--sf-line);border-radius:4px;
  display:flex;gap:16px;align-items:flex-start;
}
.author-bio-avatar{width:56px;height:56px;border-radius:50%;object-fit:cover;flex-shrink:0}
.author-bio-name{font-weight:700;font-size:15px;color:var(--sf-ink);margin-bottom:2px}
.author-bio-title{font-size:12px;color:var(--sf-accent);text-transform:uppercase;letter-spacing:0.4px;margin-bottom:8px}
.author-bio-text{font-size:14px;color:var(--sf-ink-soft)}

.faq-section{max-width:760px;margin:36px auto;padding:0 24px}
.faq-section h2{font-family:Georgia,serif;font-size:24px;margin-bottom:16px}
#faq-items .faq-item{border-bottom:1px solid var(--sf-line);padding:14px 0}
#faq-items .faq-q{font-weight:700;margin-bottom:6px}
#faq-items .faq-a{color:var(--sf-ink-soft);font-size:15px}

.cta-banner{
  max-width:760px;margin:32px auto;padding:26px;background:var(--sf-ink);color:#fff;
  border-radius:4px;text-align:center;
}
.cta-banner a{color:#fff;font-weight:700;text-decoration:underline}

.related-section{max-width:1180px;margin:40px auto;padding:0 24px}
.related-section h2{font-family:Georgia,serif;font-size:22px;margin-bottom:16px}
.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.rel-card{border:1px solid var(--sf-line);border-radius:4px;overflow:hidden}
.rel-card img{height:140px;object-fit:cover}
.rel-title{padding:12px;font-size:14px;font-weight:700}

/* blog.html 文章卡片列表 */
.article-card{border-bottom:1px solid var(--sf-line);padding:26px 0;display:flex;gap:20px}
.article-thumb{width:180px;height:180px;border-radius:50%;object-fit:cover;flex-shrink:0}
.article-card .article-body{max-width:none;margin:0;padding:0;flex:1}
.article-card .article-meta{display:flex;gap:10px;font-size:12px;color:var(--sf-ink-soft);text-transform:uppercase;letter-spacing:0.4px;margin-bottom:8px}
.article-card .article-cat{color:var(--sf-accent);font-weight:700}
.article-card .article-date{color:#8a97a0}
.article-card .article-excerpt{font-size:15px;color:var(--sf-ink-soft);margin:8px 0 10px}
.article-card .article-link{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:0.4px;color:var(--sf-accent)}

@media (max-width:640px){
  .article-h1{font-size:28px}
  .article-hero-img{height:240px}
  .related-grid{grid-template-columns:1fr}
  .article-card{flex-direction:column}
  .article-thumb{width:120px;height:120px}
}
