/* Shared by the trust pages (pricing, terms, privacy, refund, contact).
   Same stage as the landing: white, system type, near-black ink, one accent. */
* { margin: 0; padding: 0; box-sizing: border-box; }
body {
  background: #ffffff; color: #1d1d1f;
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Inter, sans-serif;
  -webkit-font-smoothing: antialiased;
  min-height: 100vh; display: flex; flex-direction: column;
}
a { color: inherit; }
header { padding: 22px 24px; }
header a { font-size: 17px; font-weight: 600; letter-spacing: -0.01em; text-decoration: none; }
header .nora { color: #7033ff; }
main { flex: 1; width: 100%; max-width: 680px; margin: 0 auto; padding: 40px 24px 72px; }
h1 { font-size: clamp(32px, 6vw, 44px); font-weight: 600; letter-spacing: -0.02em; line-height: 1.1; }
.updated { margin-top: 10px; font-size: 13px; color: #a1a1a6; }
.lead { margin-top: 22px; font-size: 18px; line-height: 1.55; color: #6e6e73; }
h2 { margin-top: 40px; font-size: 19px; font-weight: 600; letter-spacing: -0.01em; }
p, li { font-size: 15.5px; line-height: 1.65; color: #424245; }
p { margin-top: 12px; }
ul { margin: 12px 0 0 20px; }
li { margin-top: 6px; }
main a { color: #7033ff; text-decoration: none; }
main a:hover { text-decoration: underline; }
b, strong { color: #1d1d1f; font-weight: 600; }

.tiers { margin-top: 32px; display: grid; gap: 12px; grid-template-columns: repeat(4, 1fr); }
.tier { border: 1px solid #e8e8ed; background: #fafafc; border-radius: 14px; padding: 18px 16px; }
.tier .name { font-size: 14px; color: #6e6e73; }
.tier .price { margin-top: 6px; font-size: 28px; font-weight: 600; letter-spacing: -0.02em; font-variant-numeric: tabular-nums; }
.tier .price small { display: block; margin-top: 2px; font-size: 12.5px; font-weight: 400; color: #a1a1a6; letter-spacing: 0; }
.tier p { margin-top: 10px; font-size: 13.5px; line-height: 1.5; color: #6e6e73; }
.note { margin-top: 20px; border: 1px solid #e8e8ed; border-radius: 14px; padding: 16px 18px; }
.note p { margin-top: 0; font-size: 14.5px; }

dl { margin-top: 24px; border-top: 1px solid #e8e8ed; }
dl div { display: grid; grid-template-columns: 160px 1fr; gap: 16px; padding: 14px 0; border-bottom: 1px solid #e8e8ed; }
dt { font-size: 13.5px; color: #a1a1a6; }
dd { font-size: 15.5px; line-height: 1.55; color: #1d1d1f; }

footer { text-align: center; padding: 28px 24px 34px; font-size: 12px; color: #a1a1a6; line-height: 1.9; }
footer nav a { margin: 0 8px; text-decoration: none; color: #86868b; }
footer nav a:hover { color: #1d1d1f; }

@media (max-width: 640px) {
  .tiers { grid-template-columns: repeat(2, 1fr); }
  dl div { grid-template-columns: 1fr; gap: 2px; }
}

/* ---- plan comparison (home + pricing) ---- */
.tier .state { margin-top: 10px; display: inline-block; font-size: 11.5px; letter-spacing: .02em; padding: 3px 9px; border-radius: 999px; background: #f0f0f3; color: #6e6e73; }
.tier.now { background: #ffffff; border-color: #1d1d1f; }
.tier.now .state { background: #1d1d1f; color: #ffffff; }
.compare-wrap { margin-top: 28px; overflow-x: auto; -webkit-overflow-scrolling: touch; }
table.compare { width: 100%; min-width: 580px; border-collapse: collapse; font-size: 14px; }
.compare th, .compare td { text-align: left; padding: 12px 12px 12px 0; border-bottom: 1px solid #e8e8ed; vertical-align: top; line-height: 1.45; }
.compare thead th { font-size: 13px; font-weight: 600; color: #1d1d1f; border-bottom-color: #1d1d1f; }
.compare tbody th { font-weight: 400; color: #6e6e73; width: 30%; }
.compare td { color: #1d1d1f; font-variant-numeric: tabular-nums; }
.compare tr.group th { padding-top: 26px; font-size: 11.5px; letter-spacing: .12em; text-transform: uppercase; color: #a1a1a6; border-bottom-color: #e8e8ed; }
.compare .yes { color: #1d1d1f; }
.compare .muted { color: #a1a1a6; }
