/* ============================================================
   NexoFlow — Seção de Planos (Cards / Tabela / Compacto)
   ============================================================ */

/* Cartões de plano */
.plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:52px;align-items:start}
.plan{
  background:#fff;border:1px solid var(--line);border-radius:20px;
  padding:32px;box-shadow:var(--shadow-sm);position:relative;
  transition:transform .2s,box-shadow .2s;
}
.plan:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}
.plan.featured{border:2px solid var(--blue);box-shadow:var(--shadow-lg);transform:scale(1.03)}
.plan.featured:hover{transform:scale(1.03) translateY(-4px)}
.plan .pop{
  position:absolute;top:-14px;left:50%;transform:translateX(-50%);
  background:var(--cta);color:#fff;font-family:var(--font-head),sans-serif;
  font-weight:700;font-size:12px;letter-spacing:.04em;
  padding:6px 16px;border-radius:999px;text-transform:uppercase;
  white-space:nowrap;box-shadow:var(--shadow-cta);
}
.plan .p-name{font-family:var(--font-head),sans-serif;font-weight:800;font-size:21px}
.plan .p-aud{color:var(--ink-faint);font-size:14px;margin-top:4px}
.plan .p-price{margin-top:22px;display:flex;align-items:flex-end;gap:6px;flex-wrap:nowrap;white-space:nowrap}
.plan .p-price b{font-family:var(--font-head),sans-serif;font-weight:800;font-size:42px;line-height:1;white-space:nowrap}
.plan .p-price.text b{font-size:30px}
.plan .p-price span{color:var(--ink-faint);font-size:15px;padding-bottom:6px}
.plan .p-cta{margin-top:22px}
.plan ul{
  list-style:none;margin:24px 0 0;padding:22px 0 0;
  border-top:1px solid var(--line-soft);display:flex;flex-direction:column;gap:13px;
}
.plan ul li{display:flex;gap:11px;align-items:flex-start;font-size:15px;color:var(--ink-soft)}
.plan ul .ck{
  width:21px;height:21px;border-radius:6px;background:var(--green-50);color:var(--green-600);
  display:grid;place-items:center;flex:none;margin-top:1px;
}
.plan ul .ck svg{width:13px;height:13px}
.plan ul li.muted{color:var(--ink-faint)}
.plan ul li.muted .ck{background:var(--line-soft);color:var(--ink-faint)}

/* Tabela comparativa */
.ptable-wrap{
  margin-top:52px;background:#fff;border:1px solid var(--line);
  border-radius:20px;overflow:hidden;box-shadow:var(--shadow-md);
}
.ptable{width:100%;border-collapse:collapse}
.ptable th,.ptable td{
  padding:18px 22px;text-align:left;border-bottom:1px solid var(--line-soft);
  font-size:15px;vertical-align:middle;
}
.ptable thead th{background:#fbfcfe;vertical-align:bottom}
.ptable thead .pt-name{font-family:var(--font-head),sans-serif;font-weight:800;font-size:19px;color:var(--ink)}
.ptable thead .pt-aud{font-weight:500;color:var(--ink-faint);font-size:13px;margin-top:2px}
.ptable thead .pt-price{font-family:var(--font-head),sans-serif;font-weight:800;font-size:22px;color:var(--blue);margin-top:10px}
.ptable thead th.feat{background:var(--blue-50)}
.ptable td.feat{background:var(--blue-50)}
.pt-pop{
  background:var(--blue);color:#fff;font-family:var(--font-head),sans-serif;
  font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;
  margin:-18px -22px 16px;padding:7px;text-align:center;
}
.ptable .rowlab{font-weight:600;color:var(--ink)}
.ptable td.cell{text-align:center}
.ptable .ck-y{color:var(--green-600)}
.ptable .x{color:var(--line)}
.ptable tfoot td,.ptable tr.cta-row td{text-align:center;padding:24px 18px}
.ptable th.feat .pt-price{color:var(--blue)}
