/* Blog post — reading view */
.post-wrap { max-width: 640px; margin: 0 auto; padding: 160px 28px 100px; }
.post-meta { display: flex; gap: 14px; align-items: center; color: var(--ink-blog-2); font-size: 13px; letter-spacing: 0.04em; margin-bottom: 28px; }
.post-meta .cat { letter-spacing: 0.08em; text-transform: uppercase; font-size: 11px; }
.post-meta .dot { width: 3px; height: 3px; border-radius: 50%; background: var(--ink-blog-2); opacity: 0.5; }

.post-wrap h1 { font-size: clamp(1.875rem, 4vw, 2.625rem); font-weight: 500; letter-spacing: -0.022em; line-height: 1.15; color: var(--ink-blog); margin: 0 0 32px; text-wrap: balance; }
.post-wrap p { font-size: 1.125rem; line-height: 1.75; color: var(--ink-blog); margin: 0 0 24px; text-wrap: pretty; }
.post-wrap p.lede { font-size: 1.25rem; }
.post-wrap blockquote { font-family: var(--font-serif); font-style: italic; font-size: 1.5rem; line-height: 1.45; color: var(--ink-blog); border-left: 1px solid rgba(232,227,216,0.20); padding: 4px 0 4px 28px; margin: 36px 0; }
.post-wrap h2 { font-size: 1.5rem; font-weight: 500; letter-spacing: -0.01em; margin: 48px 0 20px; color: var(--ink-blog); }
.post-wrap a { color: #93C5FD; }
.post-wrap hr { border: 0; border-top: 1px solid rgba(232,227,216,0.10); margin: 56px 0; }

.post-cta { padding: 36px 32px; border: 1px solid rgba(232,227,216,0.12); border-radius: 14px; margin: 48px 0 0; }
.post-cta p { font-size: 15px; color: var(--ink-blog-2); margin: 0 0 18px; line-height: 1.55; }

/* Sources block — quiet bibliography at the bottom of posts that
   ship the `sources` field. Italic, smaller, ink-3 colored — skippable
   for casual readers, useful for verifiers + AI crawlers. Pattern
   borrowed from NYT/Atlantic health-section convention. */
.post-sources {
  margin: 48px 0 0;
  padding: 28px 0 0;
  border-top: 1px solid rgba(232,227,216,0.10);
}
.post-sources-eyebrow {
  font-size: 11px !important;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--ink-blog-2) !important;
  font-weight: 600;
  margin: 0 0 14px !important;
}
.post-sources-list {
  margin: 0;
  padding: 0 0 0 22px;
  font-size: 13.5px !important;
  line-height: 1.6 !important;
  color: var(--ink-blog-2) !important;
  font-style: italic;
}
.post-sources-list li {
  margin: 0 0 10px;
  padding-left: 4px;
}
.post-sources-list li:last-child { margin-bottom: 0; }
.post-sources-list a {
  color: var(--ink-blog) !important;
  text-decoration: underline;
  text-decoration-color: rgba(147,197,253,0.4);
  text-underline-offset: 2px;
  font-style: italic;
}
.post-sources-list a:hover {
  color: #93C5FD !important;
  text-decoration-color: #93C5FD;
  opacity: 1;
}
.post-sources-list em { color: var(--ink-blog-2); font-style: italic; }

.related { padding: 0 0 60px; margin-top: 48px; }
.related h6 { font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; color: var(--ink-blog-2); margin: 0 0 18px; }
.related a { display: block; padding: 18px 0; border-top: 1px solid rgba(232,227,216,0.08); color: var(--ink-blog); font-size: 1.125rem; font-weight: 500; }
.related a:hover { color: #93C5FD; opacity: 1; }
