/* Blog Lumipair — complète site.css */
.lang a { color:var(--muted); padding:4px 9px; font-size:13px; text-decoration:none; }
.lang a.sel { background:var(--accent); color:#1c1c1e; font-weight:600; }
.crumbs { font-size:13.5px; color:var(--muted); margin-bottom:14px; } .crumbs a { color:var(--muted); }
.article { max-width:760px; padding-top:40px; padding-bottom:56px; }
.article h1 { font-size:38px; line-height:1.15; letter-spacing:-.4px; margin-bottom:12px; }
.meta { color:var(--muted); font-size:13.5px; margin-bottom:28px; }
.prose { font-size:17px; line-height:1.75; color:#dcd8d1; }
.prose h2 { font-size:25px; line-height:1.3; margin:40px 0 12px; color:var(--txt); letter-spacing:-.2px; }
.prose h3 { font-size:19px; margin:28px 0 8px; color:var(--txt); }
.prose p, .prose ul, .prose ol, .prose table, .prose blockquote { margin-bottom:18px; }
.prose ul, .prose ol { padding-left:24px; } .prose li { margin-bottom:6px; }
.prose strong { color:var(--txt); }
.prose a { color:var(--accent2); }
.prose blockquote { border-left:3px solid var(--accent); padding:4px 0 4px 18px; color:#cfcbc4; }
.prose table { width:100%; border-collapse:collapse; font-size:15px; display:block; overflow-x:auto; }
.prose th, .prose td { border:1px solid #333338; padding:8px 10px; text-align:left; vertical-align:top; }
.prose th { background:var(--panel2); color:var(--txt); }
.prose code { background:var(--panel2); padding:1px 5px; border-radius:4px; font-size:.9em; }
.blog-cta { background:linear-gradient(135deg,#2a2119,#1d1d21); border:1px solid #5a4330; border-radius:16px; padding:26px 28px; margin:36px 0; }
.blog-cta h2 { font-size:22px !important; margin:0 0 8px !important; }
.blog-cta p { color:#cfcbc4; font-size:15.5px; margin-bottom:14px; }
.blog-cta .note { color:var(--muted); font-size:13px; margin:10px 0 0; }
.disclaimer { color:var(--muted); font-size:13px; border-top:1px solid #2c2c30; padding-top:16px; }
.blog-index { padding-top:48px; padding-bottom:40px; max-width:900px; }
.blog-index h1 { font-size:40px; margin-bottom:8px; } .blog-index .sub { color:var(--muted); margin-bottom:30px; }
.posts { display:grid; gap:16px; }
.card.post { display:block; text-decoration:none; color:inherit; transition:border-color .15s; }
.card.post:hover { border-color:var(--accent); }
.card.post h2 { font-size:21px; color:var(--txt); margin:2px 0 8px; } .card.post .meta { margin:0; }
.card.post .more { color:var(--accent); font-size:14px; font-weight:600; }
@media (max-width:860px) { .article h1 { font-size:30px; } .prose { font-size:16.5px; } }
