/* Blog posts and the Blogs page. Uses the site's colour and type tokens. */
#lnv-landing .blog-table-wrap{overflow-x:auto;margin-top:8px}
#lnv-landing .blog-compare{width:100%;border-collapse:collapse;background:var(--card);font-size:.95rem;line-height:1.5}
#lnv-landing .blog-compare caption{text-align:left;font-size:.82rem;color:var(--text-2);padding:0 0 8px}
#lnv-landing .blog-compare th,#lnv-landing .blog-compare td{border:1px solid var(--line);padding:12px 14px;text-align:left;vertical-align:top}
#lnv-landing .blog-compare thead th{background:var(--ink);color:var(--on-dark);font-weight:600}
#lnv-landing .blog-compare tbody th{font-weight:500;color:var(--text);width:28%}
#lnv-landing .blog-compare td{color:var(--text-2)}
#lnv-landing .blog-compare td.gold{color:var(--accent);font-weight:700;font-size:1.05rem}
#lnv-landing .blog-sub{font-size:1.6rem;line-height:1.2;margin:40px 0 4px}
#lnv-landing .prose ol{padding-left:24px}
#lnv-landing .prose ol li{margin:10px 0}
#lnv-landing .blog-view{margin-top:24px;padding:14px 18px;background:#fff5d8;border-left:3px solid #c99b1b;color:#514b3b;max-width:78ch}
#lnv-landing .blog-proscons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:28px}
#lnv-landing .blog-proscons>div{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);padding:26px;min-width:0}
#lnv-landing .blog-proscons h3{font-size:1.5rem;margin-bottom:6px}
#lnv-landing .blog-proscons .pc-label{font-weight:600;color:var(--text);margin-top:14px}
#lnv-landing .blog-proscons ul{padding-left:20px;color:var(--text-2);margin:6px 0 0}
#lnv-landing .blog-proscons li{margin-top:6px}

#lnv-landing .text-link-inline{color:var(--accent);text-decoration:underline;text-underline-offset:4px}
@media(max-width:700px){#lnv-landing .blog-proscons{grid-template-columns:1fr}#lnv-landing .blog-compare{font-size:.86rem}#lnv-landing .blog-compare th,#lnv-landing .blog-compare td{padding:10px}}
/* Compact Blogs pages (15 Oct): tighter section spacing and smaller section headings than the marketing pages, so a post
   reads as one article. Applies only to pages that load blog.css: every page except the homepage (from 16 Oct; see pages.css). */
#lnv-landing .page-hero{padding-bottom:52px}
#lnv-landing .page-hero h1{font-size:clamp(2.2rem,4.4vw,3.4rem);max-width:24ch}
#lnv-landing main>.section{padding:clamp(44px,5.5vw,72px) 0}
#lnv-landing main>.section .section-head{margin-bottom:22px}
#lnv-landing main>.section .section-head h2{font-size:clamp(1.75rem,3vw,2.4rem)}
#lnv-landing main>.simple-cta{padding:clamp(52px,6.5vw,84px) 0}
#lnv-landing .simple-cta h2{font-size:clamp(1.9rem,3.6vw,2.8rem);margin:16px 0}
#lnv-landing .cta-actions{display:flex;flex-wrap:wrap;gap:12px}
#lnv-landing .blog-cols{display:grid;grid-template-columns:1fr 1fr;gap:20px 48px;margin-top:8px}
#lnv-landing .blog-cols .blog-sub{margin-top:0}
#lnv-landing .blog-today{margin-bottom:22px;max-width:80ch}
#lnv-landing .blog-prompt{display:flex;align-items:center;justify-content:space-between;gap:14px 28px;flex-wrap:wrap;margin-top:28px;padding:18px 22px;background:var(--card);border:1px solid var(--line);border-left:4px solid #f4c84f;border-radius:12px}
#lnv-landing .blog-prompt p{margin:0;color:var(--text-2);max-width:60ch}
#lnv-landing .blog-prompt strong{color:var(--text)}
#lnv-landing .blog-prompt .btn{flex:none}
#lnv-landing .blog-more{margin-top:22px;border-top:1px solid var(--line);padding-top:6px}
#lnv-landing .blog-more summary{cursor:pointer;color:var(--accent);font-weight:600;min-height:44px;padding:10px 0;display:flex;align-items:center}
#lnv-landing .blog-jump{display:flex;flex-wrap:wrap;gap:8px;margin:-4px 0 4px}
#lnv-landing .blog-jump a{font-size:.85rem;padding:7px 13px;border:1px solid var(--line);border-radius:999px;background:var(--card);color:var(--text);min-height:36px;display:inline-flex;align-items:center}
#lnv-landing .blog-jump a:hover{border-color:var(--ink)}
#lnv-landing .blog-jump+.blog-prompt{margin:18px 0 22px}
@media (max-width:760px){#lnv-landing .blog-cols{grid-template-columns:1fr}#lnv-landing .blog-prompt .btn{width:100%}}
/* Post heroes: the explainer video sits under the headline, in place of the intro paragraph. */
#lnv-landing .hero-media{max-width:760px;margin-top:clamp(22px,3vw,32px)}
#lnv-landing .hero-media + .article-byline{margin-top:16px}
#lnv-landing .hero-media video{display:block;width:100%;height:auto;aspect-ratio:16/9;border-radius:14px;background:var(--ink);border:1px solid var(--line-dark);box-shadow:0 30px 80px rgba(0,0,0,.35)}
