/* ============================================================
   MemoryPing — SEO content pages (/vs, /use-cases, /how-to)
   Extends legal.css with comparison tables, verdict cards,
   CTA band, and step lists. Same neobrutalist tokens.
   ============================================================ */

/* ---------- comparison table ---------- */
.table-wrap { overflow-x: auto; margin: 1.25rem 0; }
.compare-table {
  width: 100%; min-width: 560px; border-collapse: collapse;
  background: var(--color-surface);
  border: var(--nb-border) solid var(--color-ink);
  box-shadow: 6px 6px 0 var(--color-ink);
  font-size: 0.92rem;
}
.compare-table th, .compare-table td {
  border: 2px solid var(--color-ink);
  padding: 0.65rem 0.85rem; text-align: left; vertical-align: top;
}
.compare-table thead th {
  font-family: var(--font-display); text-transform: uppercase; font-size: 0.8rem;
  background: var(--color-brand-yellow);
}
.compare-table thead th:nth-child(2) { background: var(--color-brand-green); }
.compare-table tbody th[scope="row"] { font-weight: 700; background: var(--color-bg-soft); width: 30%; }
.compare-table tbody td:first-of-type { background: #f2fff5; }

/* ---------- verdict cards ---------- */
.verdict-grid { display: grid; gap: 1rem; grid-template-columns: 1fr; margin: 1.25rem 0; }
@media (min-width: 640px) { .verdict-grid { grid-template-columns: 1fr 1fr; } }
.verdict-card {
  border: var(--nb-border) solid var(--color-ink);
  box-shadow: 5px 5px 0 var(--color-ink);
  padding: 1.1rem 1.25rem; background: var(--color-surface);
}
.verdict-card.us { background: #f2fff5; }
.verdict-card h3 { margin: 0 0 0.5rem; font-family: var(--font-display); font-size: 0.95rem; text-transform: uppercase; }
.verdict-card ul { margin: 0; padding-left: 1.15rem; }
.verdict-card li { margin: 0.35rem 0; }

/* ---------- step list ---------- */
ol.steps { counter-reset: step; list-style: none; padding: 0; margin: 1.25rem 0; }
ol.steps li {
  counter-increment: step; position: relative;
  border: var(--nb-border) solid var(--color-ink);
  box-shadow: 4px 4px 0 var(--color-ink);
  background: var(--color-surface);
  padding: 0.9rem 1rem 0.9rem 3.4rem; margin: 0.8rem 0;
}
ol.steps li::before {
  content: counter(step);
  position: absolute; left: 0.85rem; top: 50%; transform: translateY(-50%);
  width: 1.9rem; height: 1.9rem; display: flex; align-items: center; justify-content: center;
  font-family: var(--font-display); font-size: 0.95rem;
  background: var(--color-brand-pink); border: 2px solid var(--color-ink);
}

/* ---------- CTA band ---------- */
.cta-band {
  margin-top: 2.5rem; padding: 1.5rem 1.5rem 1.7rem; text-align: center;
  background: var(--color-brand-yellow);
  border: var(--nb-border) solid var(--color-ink);
  box-shadow: 8px 8px 0 var(--color-ink);
}
.cta-band h2 { margin: 0 0 0.35rem; font-family: var(--font-display); text-transform: uppercase; font-size: 1.25rem; }
.cta-band p { margin: 0 0 1rem; font-weight: 600; }
.cta-row { display: flex; gap: 0.75rem; justify-content: center; flex-wrap: wrap; }
.cta-band .cta-button {
  display: inline-block; background: var(--color-brand-pink);
  border: var(--nb-border) solid var(--color-ink); box-shadow: 3px 3px 0 var(--color-ink);
  border-radius: 999px; padding: 0.6rem 1.2rem;
  font-family: var(--font-display); text-transform: uppercase; text-decoration: none; font-size: 0.8rem;
  transition: transform 0.12s, box-shadow 0.12s;
}
.cta-band .cta-button.alt { background: var(--color-brand-green); }
.cta-band .cta-button.ghost { background: var(--color-surface); }
.cta-band .cta-button:hover { transform: translate(-2px, -2px); box-shadow: 5px 5px 0 var(--color-ink); }

/* ---------- footer ---------- */
.content-footer {
  border-top: var(--nb-border) solid var(--color-ink);
  background: var(--color-brand-yellow);
  text-align: center; padding: 1.5rem 1.25rem; margin-top: 3rem;
  font-size: 0.9rem; font-weight: 600;
}
.content-footer p { margin: 0 0 0.4rem; }
.content-footer nav a { margin: 0 0.15rem; }
