/* Shared by the search-facing guide pages (voice-journaling, prompts, vs-rosebud).
   Layered on styles.css's legal-page template; spec in tasks/seo.md. */
.guide h3 { font-family: var(--font-display); font-weight: 700; letter-spacing: -.02em; font-size: 1.15rem; margin: var(--s-5, 28px) 0 var(--s-2); }
.guide .q-list { list-style: none; padding: 0; margin: 0; }
.guide .q-list li { padding: 10px 0; border-top: 1px solid var(--line); color: var(--ink-2); line-height: 1.5; }
.guide .q-list li:first-child { border-top: none; }
.guide .meta { color: var(--ink-3, var(--ink-2)); font-size: .9rem; margin: 0 0 var(--s-3, 16px); }
.guide .faq-q { margin: var(--s-5, 28px) 0 var(--s-2); font-weight: 600; color: var(--ink); }
.guide .faq-q + p { margin-top: 0; }
.guide .theme-lede { margin: 0 0 var(--s-2); }
.table-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; margin: var(--s-3, 16px) 0; }
.compare { width: 100%; min-width: 560px; border-collapse: collapse; font-size: .95rem; }
.compare th, .compare td { text-align: left; vertical-align: top; padding: 12px 12px 12px 0; border-top: 1px solid var(--line); color: var(--ink-2); line-height: 1.5; }
.compare th { color: var(--ink); font-weight: 600; width: 22%; }
.compare thead th { border-top: none; font-family: var(--font-display); font-size: 1rem; color: var(--ink); }
.compare tbody tr:last-child td, .compare tbody tr:last-child th { border-bottom: 1px solid var(--line); }
.cta-panel p { margin-top: 0; }
