/* Static product documentation; shared product header/footer remain familiar. */
.faresight-guide .guide-intro { padding-block: 1.5rem 3rem; }
.breadcrumbs ol { display:flex; flex-wrap:wrap; gap:.4rem 1rem; list-style:none; padding:0; margin:0 0 2rem; font-size:.82rem; color:var(--muted); }
.breadcrumbs li + li::before { content:"/"; margin-right:1rem; color:#66758b; }
.faresight-guide .breadcrumbs a { text-decoration:underline; text-underline-offset:.2em; }
.faresight-guide .guide-intro h1 { max-width:19ch; font-size:clamp(2rem,4vw,3.2rem); line-height:1.12; }
.faresight-guide .guide-lead { color:var(--muted); max-width:45rem; font-size:1.1rem; margin-top:1.4rem; }
.guide-layout { display:grid; grid-template-columns:13rem minmax(0,1fr); gap:3rem; padding-bottom:4rem; }
.guide-sidebar nav { display:grid; gap:.4rem; border-top:1px solid var(--line); padding-top:1rem; }
.faresight-guide .guide-sidebar a { display:flex; align-items:center; min-height:44px; padding:.5rem .7rem; border-radius:7px; font-size:.9rem; color:var(--muted); }
.faresight-guide a[aria-current="page"] { color:var(--brand-deep); font-weight:700; }
.guide-sidebar a[aria-current="page"] { background:#edf2ff; }
.faresight-guide .guide-body { max-width:49rem; }
.faresight-guide .guide-body section { padding-block:2rem; border-top:1px solid var(--line); }
.faresight-guide .guide-body h2 { font-size:1.6rem; line-height:1.3; margin-bottom:1rem; letter-spacing:-.025em; }
.faresight-guide .guide-body p + p { margin-top:1rem; }
.faresight-guide .guide-body p, .guide-body li, .guide-body dd { color:#31445f; }
.faresight-guide .guide-body a:not(.cta):not(.guide-card) { color:var(--brand-deep); text-decoration:underline; text-underline-offset:.2em; }
.guide-body ol, .guide-body ul { padding-left:1.4rem; margin-block:1rem; }
.guide-body li + li { margin-top:.8rem; }
.guide-steps li { padding-left:.35rem; }
.guide-steps h3 { margin-bottom:.4rem; }
.guide-definitions { margin:0 0 1rem; }
.guide-definitions div { padding:.75rem 0; }
.guide-definitions dt { font-weight:700; }
.guide-definitions dd { margin:.2rem 0 0; }
.guide-cards { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; margin-bottom:2rem; }
.faresight-guide .guide-card { display:flex; flex-direction:column; gap:1rem; border:1px solid #bac9df; border-radius:12px; padding:1.3rem; background:#f7f9fc; }
.faresight-guide .guide-card:hover { border-color:var(--brand); }
.faresight-guide .guide-card h2 { font-size:1.35rem; margin:0; }
.guide-card .eyebrow { font-size:.65rem; margin:0!important; }
.guide-card .text-link { margin-top:auto; }
.faresight-guide .guide-capture { margin:1.5rem 0 0; max-width:420px; }
.guide-capture img { width:100%; border-radius:12px; border:1px solid #b9c6d8; }
.guide-capture figcaption { font-size:.8rem; color:var(--muted); margin-top:.7rem; }
.guide-body details { border-bottom:1px solid var(--line); padding-block:.8rem; }
.guide-body summary { cursor:pointer; padding:.4rem 0; font-weight:650; min-height:44px; }
.guide-body details p { padding-bottom:.5rem; }
.faresight-guide .guide-download { margin-top:1rem; }
.faresight-guide .guide-download .hero-actions { align-items:center; }
@media(max-width:1000px) {
  .guide-layout { grid-template-columns:11rem minmax(0,1fr); gap:1.5rem; }
  .guide-cards { grid-template-columns:1fr; }
}
@media(max-width:700px) {
  .guide-layout { grid-template-columns:1fr; gap:1.5rem; }
  .guide-sidebar nav { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .faresight-guide .guide-intro { padding-bottom:2rem; }
  .faresight-guide .guide-body h2 { font-size:1.4rem; }
  .breadcrumbs ol { margin-bottom:1.5rem; }
}
.guide-toc { margin-bottom:1.5rem; }
.faresight-guide .guide-toc ul { display:flex; flex-wrap:wrap; gap:.25rem 1.25rem; list-style:none; margin:.5rem 0 0; padding:0; }
.faresight-guide .guide-toc li { margin:0; }
.guide-toc a { display:inline-flex; align-items:center; min-height:44px; font-size:.85rem; }

.plan-comparison { width:100%; border-collapse:collapse; table-layout:fixed; margin:1.5rem 0; font-size:.92rem; }
.plan-comparison caption { text-align:left; font-weight:700; margin-bottom:.75rem; }
.plan-comparison th,.plan-comparison td { border-bottom:1px solid var(--line); padding:.85rem .65rem; text-align:left; vertical-align:top; overflow-wrap:anywhere; }
.plan-comparison thead { background:#edf2ff; }
.plan-comparison th:first-child { width:40%; }
@media(max-width:420px) { .plan-comparison { font-size:.9rem; } .plan-comparison th,.plan-comparison td { padding:.7rem .35rem; } }
