/* PhoneGoblin — Blog additions (loads AFTER legal.css) */
.post-hero{ margin:0 0 26px; }
.post-hero h1{ margin:14px 0 12px; }
.byline{
  display:flex; align-items:center; gap:10px; flex-wrap:wrap;
  color:var(--ink-faint); font-size:14px; margin:0 0 4px;
}
.byline .sep{ opacity:.5; }
.tag{
  display:inline-block; font-family:var(--font-display); font-weight:700;
  font-size:12px; letter-spacing:.04em; text-transform:uppercase;
  color:var(--violet-deep); background:var(--violet-wash);
  padding:5px 11px; border-radius:999px;
}
.lead{ font-size:19px; color:var(--ink-2); line-height:1.6; margin:0 0 22px; }
.doc-card h2{ scroll-margin-top:90px; }
.post-nav{
  display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap;
  margin-top:40px; padding-top:24px; border-top:1px solid var(--line);
}
.post-nav a{ font-family:var(--font-display); font-weight:700; font-size:15px; }
.cta-card{
  margin:34px 0 8px; padding:26px 28px;
  background:linear-gradient(135deg, var(--violet-wash), #fff);
  border:1px solid var(--line); border-radius:var(--r);
}
.cta-card h3{ margin:0 0 8px; font-family:var(--font-display); color:var(--ink); font-size:20px; }
.cta-card p{ margin:0 0 16px; color:var(--ink-soft); }
.cta-btn{
  display:inline-flex; align-items:center; gap:8px;
  font-family:var(--font-display); font-weight:800; font-size:15px;
  color:#fff; background:var(--violet); padding:12px 22px; border-radius:999px;
}
.cta-btn:hover{ text-decoration:none; filter:brightness(1.05); }
.blog-index-list{ list-style:none; padding:0; margin:24px 0 0; }
.blog-index-list li{
  padding:22px 0; border-bottom:1px solid var(--line);
}
.blog-index-list li:last-child{ border-bottom:none; }
.blog-index-list a{ font-family:var(--font-display); font-weight:800; font-size:21px; color:var(--ink); }
.blog-index-list a:hover{ color:var(--violet-deep); text-decoration:none; }
.blog-index-list .excerpt{ margin:8px 0 0; color:var(--ink-soft); font-size:15.5px; }
.blog-index-list .date{ color:var(--ink-faint); font-size:13px; }
