:root{--brand:#b91c1c;--amber:#f97316;--ink:#101223;--slate:#33384f;--muted:#5b6178;--line:#e7dcd6;--soft:#f8efe9;--grad:linear-gradient(135deg,#b91c1c,#f97316)}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:'Inter',system-ui,sans-serif;color:var(--ink);line-height:1.6;background:#fff;-webkit-font-smoothing:antialiased}
a{color:var(--brand);text-decoration:none}
.wrap{max-width:1140px;margin:0 auto;padding:0 24px}
/* the header/nav bar lives in /nav.css — shared with the home page */
.logo{display:flex;align-items:center;gap:10px;font-weight:900;font-size:19px;letter-spacing:-.02em;color:var(--ink)}
.logo .m{width:32px;height:32px;border-radius:9px;background:var(--grad);display:grid;place-items:center}
.sp{flex:1}
.btn{display:inline-flex;align-items:center;gap:7px;font-weight:700;font-size:14px;padding:10px 18px;border-radius:11px;border:1px solid transparent;cursor:pointer}
.btn.p{background:var(--grad);color:#fff}.btn.g{border-color:#e2e8f0;color:var(--ink)}.btn.g:hover{border-color:var(--brand);color:var(--brand)}
.crumb{color:var(--muted);font-size:13px;padding:22px 0 0}.crumb a{color:var(--muted)}
h1{font-size:40px;font-weight:900;letter-spacing:-.02em;margin:12px 0;line-height:1.1}
h2{font-size:26px;font-weight:800;margin:38px 0 12px;letter-spacing:-.01em}
.lead{font-size:18px;color:var(--slate);max-width:660px}
p{margin:12px 0;color:var(--slate)}
section{padding:14px 0}
.hero{padding:26px 0 10px}
table.cmp{width:100%;border-collapse:collapse;margin:20px 0;font-size:15px;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.cmp th,.cmp td{padding:13px 16px;text-align:left;border-bottom:1px solid var(--line)}
.cmp thead th{background:var(--ink);color:#fff;font-size:14px}
.cmp thead th:nth-child(2){background:var(--brand)}
.cmp td:first-child{font-weight:600;color:var(--ink)}
.cmp tr:last-child td{border-bottom:0}
.yes{color:#16a34a;font-weight:700}.no{color:#94a3b8}
.cards{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:18px 0}
.cardo{border:1px solid var(--line);border-radius:14px;padding:20px}
.cardo h2,.cardo h3{font-size:16px;margin-bottom:8px}
.honest{background:var(--soft);border:1px solid #f0c5a9;border-radius:14px;padding:22px;margin:24px 0}
.honest h2,.honest h3{font-size:17px;margin-bottom:6px}
.cta{background:var(--ink);color:#fff;border-radius:16px;padding:30px;text-align:center;margin:36px 0}
.cta h2,.cta h3{font-size:22px;margin-bottom:8px}.cta p{color:#cbd5e1;margin-bottom:16px}
.faq h3{font-size:16px;margin-top:18px}.faq p{color:var(--muted)}
footer{border-top:1px solid var(--line);padding:40px 0;color:var(--muted);font-size:14px;margin-top:40px}
footer .cols{display:flex;gap:50px;flex-wrap:wrap;margin-bottom:24px}
footer .cols a{display:block;color:var(--slate);margin:6px 0}footer .cols a:hover{color:var(--brand)}
footer .cols b{color:var(--ink)}
footer .logo{font-size:18px}
/* nav breakpoints live in /nav.css */
@media(max-width:860px){h1{font-size:30px}}
/* same phone gutter as the home page, so the header lines up edge-to-edge across the site */
@media(max-width:560px){.wrap{padding:0 18px}}

.cards.hub .cardo{display:block;color:var(--ink);transition:.15s}
.cards.hub .cardo:hover{border-color:var(--brand);box-shadow:0 14px 34px -18px rgba(185,28,28,.45);transform:translateY(-2px)}
.cards.hub .go{color:var(--brand);font-weight:700;font-size:13.5px}

/* ---- phones ----------------------------------------------------------------
 * Two things used to break the compare pages on a phone:
 *   1. the card grid never collapsed. `.cards.hub` re-declared the same
 *      `1fr 1fr` the base `.cards` rule already sets, but with two classes it
 *      outranked the responsive override — so the hub sat at two ~165px columns
 *      on a 390px screen. The redundant declaration is gone; one rule collapses
 *      both grids here.
 *   2. the comparison table's minimum content width (~460px) was wider than the
 *      phone itself, so the whole PAGE scaled down to fit it and every other
 *      block on the page shrank with it. Tighter cells + breakable text bring it
 *      under the viewport; if a future row is still too wide, the table scrolls
 *      inside its own box instead of dragging the page along.
 */
@media(max-width:640px){
  .cards{grid-template-columns:1fr}
  table.cmp{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;font-size:13px}
  /* `anywhere` (not `break-word`) is deliberate: only `anywhere` shrinks a cell's
     min-content width, which is what lets the table fit a 390px screen at all.
     `hyphens:auto` then makes the rare forced break land on a real syllable with a
     hyphen instead of splitting a word mid-air. */
  .cmp th,.cmp td{padding:9px 8px;overflow-wrap:anywhere;hyphens:auto}
  .cmp thead th{font-size:13px}
}
