/* Blog Post */
.blog-post-page { padding-bottom: 120px; }
.blog-post-hero, .blog-related-section {
  width: 100%; max-width: 1280px; margin: 0 auto; padding-left: 48px; padding-right: 48px;
}
.blog-post-hero { padding-top: 156px; padding-bottom: 52px; }
.blog-post-header { display: grid; gap: 18px; max-width: 900px; margin-bottom: 28px; }
.blog-post-header h1, .blog-post-content h2, .blog-post-content h3, .blog-post-not-found h1 {
  margin: 0; font-family: 'Nasalization RG', sans-serif; letter-spacing: -0.04em;
}
.blog-post-header h1 { font-size: clamp(2.6rem, 5.5vw, 4.8rem); line-height: 0.98; }
.blog-post-excerpt, .blog-post-not-found p { margin: 0; max-width: 760px; color: var(--blog-text-soft); font-size: 1.08rem; }
.blog-post-author { font-size: 0.95rem; }
.blog-post-cover { border-radius: 32px; overflow: hidden; border: 1px solid rgba(168, 85, 247, 0.16); box-shadow: 0 30px 80px rgba(0, 0, 0, 0.26); }
.blog-post-cover img { width: 100%; max-height: 620px; object-fit: cover; }
.blog-post-content { width: 100%; max-width: 860px; margin: 0 auto; display: grid; gap: 22px; }
.blog-post-content p, .blog-post-content li { margin: 0; color: var(--blog-text-soft); font-size: 1.08rem; line-height: 1.85; }
.blog-post-content h2 { margin-top: 18px; font-size: clamp(1.8rem, 3vw, 2.7rem); line-height: 1.04; }
.blog-post-content h3 { margin-top: 12px; font-size: clamp(1.35rem, 2vw, 1.75rem); line-height: 1.1; }
.blog-related-section { padding-top: 88px; padding-bottom: 108px; }
.blog-post-not-found {
  width: 100%; max-width: 860px; margin: 0 auto; padding: 180px 48px 120px; display: grid; gap: 18px; text-align: center;
}
.blog-post-not-found .blog-chip, .blog-post-not-found .blog-hero-actions { justify-self: center; }
@media (max-width: 980px) {
  .blog-post-hero, .blog-related-section, .blog-post-not-found { padding-left: 24px; padding-right: 24px; }
  .blog-post-hero { padding-top: 132px; }
}