.rb-page-pricing .rb-pricing-hero { container-type: inline-size; text-align: center; padding-bottom: var(--rb-space-16); }
.rb-page-pricing .rb-pricing-hero > .rb-body { max-width: 680px; margin: var(--rb-space-6) auto; }
.rb-page-pricing .rb-pricing-text-link { text-decoration: underline; text-underline-offset: 5px; }
.rb-page-pricing .rb-pricing-text-link:hover { color: var(--rb-accent); }
.rb-page-pricing .rb-pricing-plan-heading { display: flex; align-items: end; justify-content: space-between; gap: var(--rb-space-8); margin-bottom: var(--rb-space-8); }
.rb-page-pricing .rb-pricing-plan-heading .rb-body { margin-top: var(--rb-space-3); }
.rb-page-pricing .rb-pricing-billing { flex: none; border: 0; padding: 0; margin: 0; }
.rb-page-pricing .rb-pricing-billing legend { margin-bottom: var(--rb-space-2); }
.rb-page-pricing .rb-pricing-billing > div { display: flex; border: 1px solid var(--rb-line); border-radius: var(--rb-radius-control); padding: var(--rb-space-1); gap: var(--rb-space-1); background: var(--rb-soft); }
.rb-page-pricing .rb-pricing-billing button { min-height: 44px; flex: 1; padding: var(--rb-space-2) var(--rb-space-6); border: 0; border-radius: var(--rb-radius-control); color: var(--rb-ink); background: transparent; font: inherit; }
.rb-page-pricing .rb-pricing-billing button[aria-pressed="true"] { background: var(--rb-ink); color: var(--rb-page); }
.rb-page-pricing .rb-pricing-billing > p { margin-top: var(--rb-space-2); }
.rb-page-pricing .rb-pricing-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--rb-space-4); align-items: stretch; }
.rb-page-pricing .rb-pricing-card { min-width: 0; padding: var(--rb-space-6); display: flex; flex-direction: column; }
.rb-page-pricing .rb-pricing-card--trial { border: 2px solid var(--rb-accent); padding: calc(var(--rb-space-6) - 1px); background: var(--rb-soft); }
.rb-page-pricing .rb-pricing-card-top { min-height: 146px; }
.rb-page-pricing .rb-pricing-card-top > * + * { margin-top: var(--rb-space-3); }
.rb-page-pricing .rb-pricing-trial-label { color: var(--rb-accent); font-weight: 600; }
.rb-page-pricing .rb-pricing-price { margin-block: var(--rb-space-6); min-height: 126px; }
.rb-page-pricing .rb-pricing-amount { font: 600 52px/1.16 var(--rb-font-heading); letter-spacing: -.045em; font-variant-numeric: tabular-nums; }
.rb-page-pricing .rb-pricing-price > .rb-meta { margin-top: var(--rb-space-2); }
.rb-page-pricing .rb-pricing-card > .rb-button { width: 100%; gap: var(--rb-space-2); }
.rb-page-pricing .rb-pricing-card-note { margin-top: var(--rb-space-3); min-height: 36px; }
.rb-page-pricing .rb-pricing-features { padding: var(--rb-space-6) 0 0; margin: var(--rb-space-4) 0 0; list-style: none; border-top: 1px solid var(--rb-line); }
.rb-page-pricing .rb-pricing-features li { padding-left: var(--rb-space-4); position: relative; }
.rb-page-pricing .rb-pricing-features li::before { content: ''; position: absolute; left: 0; top: .75em; width: 4px; height: 4px; border-radius: 50%; background: var(--rb-accent); }
.rb-page-pricing .rb-pricing-features li + li { margin-top: var(--rb-space-3); }
.rb-page-pricing .rb-pricing-direct { margin-top: var(--rb-space-6); }
.rb-page-pricing .rb-pricing-credit-note { margin-top: var(--rb-space-6); max-width: 900px; }
.rb-page-pricing .rb-pricing-status { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.rb-page-pricing .rb-pricing-intro { max-width: 760px; }
.rb-page-pricing .rb-pricing-scroll-hint { margin-bottom: var(--rb-space-3); }
.rb-page-pricing .rb-pricing-table-wrap { overflow-x: auto; border: 1px solid var(--rb-line); border-radius: var(--rb-radius); }
.rb-page-pricing .rb-pricing-table { width: 100%; min-width: 800px; border-collapse: separate; border-spacing: 0; text-align: left; }
.rb-page-pricing .rb-pricing-table caption { text-align: left; padding: var(--rb-space-4) var(--rb-space-6); font-weight: 600; background: var(--rb-soft); }
.rb-page-pricing .rb-pricing-table :is(th, td) { padding: var(--rb-space-4) var(--rb-space-6); border-top: 1px solid var(--rb-line); vertical-align: top; }
.rb-page-pricing .rb-pricing-table th { font-weight: 600; }
.rb-page-pricing .rb-pricing-table thead th { background: var(--rb-soft); }
.rb-page-pricing .rb-pricing-table th:first-child { width: 28%; }
.rb-page-pricing .rb-pricing-service-grid { display: grid; grid-template-columns: 1fr 1fr; gap: var(--rb-column-gap); align-items: center; }
.rb-page-pricing .rb-pricing-free { background: var(--rb-inverse-panel); scroll-margin-top: var(--rb-space-8); }
.rb-page-pricing .rb-pricing-enterprise { display: flex; align-items: center; justify-content: space-between; gap: var(--rb-space-8); border-bottom: 1px solid var(--rb-line); }
.rb-page-pricing .rb-pricing-enterprise .rb-body { margin-top: var(--rb-space-6); }
.rb-page-pricing .rb-pricing-enterprise > .rb-button { flex: none; }
.rb-page-pricing .rb-pricing-faq { display: grid; grid-template-columns: 1fr 1.3fr; gap: var(--rb-column-gap); }
@media (max-width: 1150px) {
  .rb-page-pricing .rb-pricing-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--rb-space-6); }
  .rb-page-pricing .rb-pricing-card-top { min-height: 130px; }
}
@media (max-width: 800px) {
  .rb-page-pricing .rb-pricing-plan-heading, .rb-page-pricing .rb-pricing-enterprise { flex-direction: column; align-items: start; }
  .rb-page-pricing .rb-pricing-service-grid, .rb-page-pricing .rb-pricing-faq { grid-template-columns: 1fr; }
  .rb-page-pricing .rb-pricing-faq .rb-section-heading { margin-bottom: 0; }
}
@media (max-width: 600px) {
  .rb-page-pricing .rb-pricing-grid { grid-template-columns: 1fr; }
  .rb-page-pricing .rb-pricing-card-top { min-height: 0; }
  .rb-page-pricing .rb-pricing-price { min-height: 0; }
  .rb-page-pricing .rb-pricing-card-note { min-height: 0; }
  .rb-page-pricing .rb-pricing-billing { width: 100%; }
  .rb-page-pricing .rb-pricing-table :is(th, td) { padding: var(--rb-space-4); }
}
