/* blog-post.css */
.post-main { padding: 40px 24px 80px; }
.post-container { max-width: 760px; margin: 0 auto; padding: 48px 52px; }
@media(max-width:640px) { .post-container { padding: 32px 24px; } }
.back-link { display: inline-block; font-family: var(--font-head); font-size: .82rem; font-weight: 700; color: var(--muted); text-decoration: none; margin-bottom: 28px; transition: color .15s; }
.back-link:hover { color: var(--teal-dark); }
.post-cover { width: 100%; max-height: 400px; object-fit: cover; border-radius: var(--r-md); margin-bottom: 32px; }
.post-header { margin-bottom: 36px; }
.post-date { font-family: var(--font-head); font-size: .72rem; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; color: var(--muted); margin-bottom: 12px; }
.post-title { font-size: clamp(1.8rem,4vw,2.8rem); line-height: 1.15; margin-bottom: 14px; }
.post-excerpt { font-size: 1.08rem; color: var(--muted); line-height: 1.7; }
.post-content { line-height: 1.85; color: var(--text-mid); }
.post-content h1,.post-content h2,.post-content h3 { margin: 36px 0 14px; color: var(--text); }
.post-content h2 { font-size: 1.5rem; }
.post-content h3 { font-size: 1.2rem; }
.post-content p { margin-bottom: 20px; }
.post-content ul,.post-content ol { margin: 0 0 20px 24px; }
.post-content li { margin-bottom: 8px; line-height: 1.75; }
.post-content blockquote { border-left: 3px solid var(--teal); padding: 12px 20px; margin: 24px 0; background: rgba(42,138,126,0.06); border-radius: 0 var(--r-sm) var(--r-sm) 0; color: var(--text-mid); font-style: italic; }
.post-content img { max-width: 100%; border-radius: var(--r-md); margin: 20px 0; }
.post-content a { color: var(--teal); }
.post-content strong { color: var(--text); }
