/* Pricing page. Extends platform.css only. No inline styles by CSP. */

/* Hero: nav already draws the top rule, so no border here */
.sec-hero{ padding-block:var(--s-20) var(--s-16); }
.sec-hero .plain{ margin-top:var(--s-8); }

/* Definition rows: term plus description, rules not cards.
   Used for price determinants and quote inclusions. */
.defrows{ list-style:none; display:grid; border-top:1px solid var(--rule); }
.defrows li{
  display:grid; grid-template-columns:280px minmax(0,1fr);
  gap:var(--s-2) var(--s-6); padding:var(--s-4) 0;
  border-bottom:1px solid var(--rule); align-items:start;
}
.defrows .term{ display:flex; align-items:center; flex-wrap:wrap; gap:var(--s-2); }
.defrows .term b{ font-size:var(--fs-2); font-weight:600; color:var(--ink); }
.defrows p{ font-size:var(--fs-2); line-height:1.55; color:var(--ink-2); max-width:66ch; }

/* Evaluation steps: numbered rows with a counter, no cards */
.steps{ list-style:none; counter-reset:step; display:grid; border-top:1px solid var(--rule); }
.steps li{
  counter-increment:step;
  display:grid; grid-template-columns:44px minmax(0,1fr);
  gap:var(--s-1) var(--s-5); padding:var(--s-5) 0;
  border-bottom:1px solid var(--rule);
}
.steps li::before{
  content:counter(step, decimal-leading-zero);
  grid-row:1 / span 2; padding-top:3px;
  font-size:var(--fs-2); font-weight:700; letter-spacing:.06em;
  color:var(--ink-3); font-variant-numeric:tabular-nums;
}
.steps h3{ font-size:var(--fs-3); grid-column:2; }
.steps p{ font-size:var(--fs-2); line-height:1.55; color:var(--ink-2); grid-column:2; max-width:66ch; }

/* Final CTA */
.cta-close .lede{ margin-top:var(--s-4); }

@media (max-width:700px){
  .defrows li{ grid-template-columns:1fr; }
}
