/* FFLW blog styles — layered on top of styles.css (nav/footer reused). */
:root{
  --ink:#0f172a; --ink-soft:#334155; --muted:#64748b;
  --navy:#1e40af; --navy-deep:#1e3a8a; --gold:#f59e0b;
  --line:#e2e8f0; --bg-soft:#f8fafc;
}
.post, .blog-index{font-family:'Inter',system-ui,sans-serif;color:var(--ink);background:#fff}
.post-inner{max-width:760px;margin:0 auto;padding:120px 22px 80px}
.post-crumbs{font-size:.8rem;color:var(--muted);margin-bottom:18px}
.post-crumbs a{color:var(--navy);text-decoration:none}
.post-eyebrow{font:700 .78rem/1 'Inter';letter-spacing:.12em;text-transform:uppercase;color:var(--navy);margin:0 0 14px}
.post-title{font-family:'Outfit',sans-serif;font-weight:900;font-size:clamp(2rem,5vw,3.1rem);line-height:1.08;letter-spacing:-.02em;margin:0 0 18px}
.post-byline{color:var(--muted);font-size:.92rem;margin:0 0 36px;padding-bottom:24px;border-bottom:1px solid var(--line)}
.post-body{font-size:1.12rem;line-height:1.75;color:var(--ink-soft)}
.post-body h2{font-family:'Outfit',sans-serif;font-weight:800;font-size:1.7rem;line-height:1.2;color:var(--ink);margin:48px 0 16px;letter-spacing:-.01em}
.post-body h3{font-weight:800;font-size:1.25rem;color:var(--ink);margin:34px 0 12px}
.post-body p{margin:0 0 20px}
.post-body a{color:var(--navy);text-decoration:underline;text-underline-offset:2px}
.post-body strong{color:var(--ink)}
.post-body ul,.post-body ol{margin:0 0 22px;padding-left:1.3em}
.post-body li{margin:0 0 10px}
.post-body blockquote{margin:28px 0;padding:18px 24px;border-left:4px solid var(--navy);background:var(--bg-soft);font-size:1.18rem;font-weight:600;color:var(--ink);border-radius:0 10px 10px 0}
/* Stat callout */
.stat-card{display:flex;gap:18px;align-items:baseline;background:var(--navy);color:#fff;border-radius:14px;padding:24px 28px;margin:30px 0}
.stat-card .stat-num{font-family:'Outfit',sans-serif;font-weight:900;font-size:2.6rem;line-height:1;color:#fff;white-space:nowrap}
.stat-card .stat-txt{font-size:1rem;line-height:1.5;color:#dbeafe}
/* Data tables */
.post-body table{width:100%;border-collapse:collapse;margin:28px 0;font-size:.98rem}
.post-body th,.post-body td{padding:11px 14px;border-bottom:1px solid var(--line);text-align:left}
.post-body thead th{background:var(--bg-soft);font-weight:800;color:var(--ink);border-bottom:2px solid var(--navy)}
.post-body tbody tr:nth-child(even){background:#fbfcfe}
/* Bar chart (pure CSS) */
.chart{margin:30px 0;padding:22px 24px;border:1px solid var(--line);border-radius:14px;background:var(--bg-soft)}
.chart-title{font-weight:800;color:var(--ink);margin:0 0 16px;font-size:1rem}
.chart-row{display:grid;grid-template-columns:130px 1fr auto;gap:12px;align-items:center;margin:0 0 12px;font-size:.9rem}
.chart-label{color:var(--ink-soft);font-weight:600}
.chart-track{background:#e2e8f0;border-radius:6px;height:22px;overflow:hidden}
.chart-fill{height:100%;background:linear-gradient(90deg,var(--navy),#3b82f6);border-radius:6px}
.chart-val{font-weight:800;color:var(--navy);white-space:nowrap}
.chart-src{font-size:.78rem;color:var(--muted);margin:8px 0 0}
/* Key takeaway box (AEO quotable) */
.answer-box{background:#eff6ff;border:1px solid #bfdbfe;border-left:4px solid var(--navy);border-radius:0 12px 12px 0;padding:20px 24px;margin:0 0 32px;font-size:1.1rem;line-height:1.65;color:var(--ink)}
.answer-box strong{color:var(--navy-deep)}
/* FAQ */
.post-faq{margin:56px 0 0;border-top:1px solid var(--line);padding-top:36px}
.post-faq h2{font-family:'Outfit',sans-serif;font-weight:800;font-size:1.6rem;margin:0 0 18px}
.faq-item{border:1px solid var(--line);border-radius:12px;padding:4px 20px;margin:0 0 12px;background:#fff}
.faq-item summary{font-weight:700;color:var(--ink);cursor:pointer;padding:14px 0;list-style:none;font-size:1.05rem}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:'+';float:right;color:var(--navy);font-weight:800}
.faq-item[open] summary::after{content:'–'}
.faq-a{padding:0 0 16px;color:var(--ink-soft);line-height:1.7}
/* CTA */
.post-cta{margin:56px 0 0;background:linear-gradient(135deg,var(--navy-deep),var(--navy));color:#fff;border-radius:18px;padding:42px 36px;text-align:center}
.post-cta h2{font-family:'Outfit',sans-serif;font-weight:900;font-size:1.7rem;line-height:1.2;color:#fff;margin:0 0 12px}
.post-cta p{color:#dbeafe;font-size:1.05rem;margin:0 0 24px;max-width:46ch;margin-left:auto;margin-right:auto}
.post-sources-note{margin:40px 0 0;font-size:.86rem;color:var(--muted);line-height:1.6}
.post-sources-note a{color:var(--navy)}
/* Blog index */
.blog-index{padding-top:96px}
.blog-hero{max-width:820px;margin:0 auto;padding:40px 22px 20px;text-align:center}
.blog-hero .hero-label{color:var(--navy);font-weight:700;letter-spacing:.12em;text-transform:uppercase;font-size:.8rem}
.blog-hero h1{font-family:'Outfit',sans-serif;font-weight:900;font-size:clamp(2.2rem,6vw,3.6rem);line-height:1.05;letter-spacing:-.02em;margin:10px 0 16px}
.blog-hero-sub{color:var(--muted);font-size:1.15rem;line-height:1.6;max-width:60ch;margin:0 auto}
.blog-grid{max-width:1080px;margin:40px auto 0;padding:0 22px;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:22px}
.blog-card{display:flex;flex-direction:column;gap:10px;border:1px solid var(--line);border-radius:16px;padding:24px;text-decoration:none;color:inherit;background:#fff;transition:transform .15s ease,box-shadow .15s ease,border-color .15s}
.blog-card:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(15,23,42,.08);border-color:#cbd5e1}
.blog-card-cluster{font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--navy)}
.blog-card h2{font-family:'Outfit',sans-serif;font-weight:800;font-size:1.2rem;line-height:1.25;margin:0;color:var(--ink)}
.blog-card p{color:var(--muted);font-size:.95rem;line-height:1.55;margin:0;flex:1}
.blog-card-meta{font-size:.8rem;color:#94a3b8;font-weight:600}
@media(max-width:640px){.post-inner{padding-top:100px}.chart-row{grid-template-columns:96px 1fr auto}}
